Install package with Composer:
composer require webregul/laravel-sms-ru-channel
Register provider:
// config/app.php
'providers' => [
...
Kafkiansky\SmsRuChannel\SmsRuProvider::class,
],
Add configuration in config/services.php
:
// config/services.php
'sms_ru' => [
'api_id' => env('SMS_RU_API_ID'),
'login' => env('SMS_RU_LOGIN', null),
'password' => env('SMS_RU_PASSWORD', null),
'partner_id' => env('SMS_RU_PARTNER', null),
'test' => env('SMS_RU_TEST', 1),
'json' => env('SMS_RU_JSON', 1),
'from' => env('SMS_RU_FROM', null),
],
Read more about configuration on official site.
Create notification message:
use Illuminate\Notifications\Notification;
use Kafkiansky\SmsRu\Message\SmsRuMessage;
use Kafkiansky\SmsRu\Message\To;
use Kafkiansky\SmsRuChannel\SmsRuChannel;
final class RegistrationComplete extends Notification
{
public function via($notifiable)
{
return [SmsRuChannel::class];
}
public function toSmsRu($notifiable)
{
return new SmsRuMessage(new To($notifiable->phone, 'Congratulations, you have become part of our application'));
}
}
Or create routeNotificationForSmsRu
method in notifiable instance:
use Illuminate\Notifications\Notifiable;
/**
* @property string $phone
*/
class User
{
use Notifiable;
public function routeNotificationForSmsRu()
{
return $this->phone; // can be array of phone numbers
}
}
In this case notification message should look like this:
use Illuminate\Notifications\Notification;
use Kafkiansky\SmsRuChannel\SmsRuChannel;
final class RegistrationComplete extends Notification
{
public function via($notifiable)
{
return [SmsRuChannel::class];
}
public function toSmsRu($notifiable)
{
return 'Congratulations, you have become part of our application';
}
}
$ composer test
The MIT License (MIT). See License File for more information.