abuhawwa/textlocal

Textlocal SMS Channel for Laravel

dev-master 2020-05-31 12:49 UTC

This package is auto-updated.

Last update: 2022-07-29 02:27:42 UTC


README

Using Textlocal offical PHP Class, this package makes it easy sending SMS notifications in Laravel

Requirements

  • Sign up for a free Textlocal account
  • Create a new API Key in the settings section

Installation

You can install the package via composer

composer require abuhawwa/textlocal

step: 1

Add ServiceProvider to the providers array in your config/app.php

Abuhawwa\Textlocal\TextlocalServiceProvider::class,

step: 2

To copy the distribution configuration file to your app's config directory config/textlocal.php

php artisan vendor:publish --tag=textlocal

step: 3

Then update config/textlocal.php with your credentials. Alternatively, you can update your .env file with the following

TEXTLOCAL_KEY=""
TEXTLOCAL_SENDER=""

step: 4

Now you can use the channel in your via() method inside the notification:

use Abuhawwa\Textlocal\TextlocalChannel;
use Illuminate\Notifications\Notification;

class PostApproved extends Notification
{
    public function via($notifiable)
    {
        return [TextlocalChannel::class];
    }

    public function toTextlocal($notifiable)
    {
        return "Your {$notifiable->service} account was approved!"
    }
}

step: 5

In order to let your Notification know which phone are you sending to, the channel will look for the phone_number attribute of the Notifiable model. If you want to override this behaviour, add the routeNotificationForTextlocal method to your Notifiable model.

public function routeNotificationForTextlocal()
{
    return $this->mobile; // where 'mobile' is a field in users table;
}

License

The MIT License.