edemsky/sms-ru
Smsc notifications channel for Laravel 10-13
This package makes it easy to send notifications with Laravel 10-13.
Supported versions:
- Laravel 10-13
- PHP 8.1-8.4
Contents
Installation
Install this package with Composer:
composer require edemsky/sms-ru
The service provider gets loaded automatically. Or you can do this manually:
// config/app.php
'providers' => [
...
NotificationChannels\SmsBee\SmsServiceProvider::class,
],
Setting up the SmscRu service
Add your SmscRu login, secret key (hashed password) and default sender name (or phone number) to your config/services.php:
// config/services.php
...
'sms' => [
'login' => env('SMS_LOGIN'),
'secret' => env('SMS_SECRET'),
'sender' => 'John_Doe',
'charset' => 'utf-8',
'extra' => [
// any other API parameters
// 'tinyurl' => 1
],
],
...
If you want use other host than sms, you MUST set custom host WITH trailing slash.
// .env
...
SMSCRU_HOST=http://www.sms.kz/
...
// config/services.php
...
'sms' => [
...
'host' => env('SMSCRU_HOST'),
...
],
...
Usage
You can use the channel in your via() method inside the notification:
use Illuminate\Notifications\Notification;
use NotificationChannels\SmsBee\SmsMessage;
use NotificationChannels\SmsBee\SmsChannel;
class AccountApproved extends Notification
{
public function via($notifiable)
{
return [SmsChannel::class];
}
public function toSms($notifiable)
{
return SmsMessage::create("Task #{$notifiable->id} is complete!");
}
}
In your notifiable model, make sure to include a routeNotificationForSms() method, which returns a phone number
or an array of phone numbers.
public function routeNotificationForSms(\Illuminate\Notifications\Notification $notification = null)
{
return $this->phone;
}
Available methods
from(): Sets the sender's name or phone number.
content(): Set a content of the notification message.
sendAt(): Set a time for scheduling the notification message.
Changelog
Please see CHANGELOG for more information what has changed recently.
Testing
$ composer test
Security
If you discover any security related issues, please email edemsky.m@gmail.com instead of using the issue tracker.
Contributing
Please see CONTRIBUTING for details.
Credits
License
The MIT License (MIT). Please see License File for more information.