This package makes it easy to send notifications using AllMySms with Laravel 5.5+, 6.x and 7.x.
You can install the package via composer:
composer require laravel-notification-channels/all-my-smsAdd the following code to you config/services.php:
// config/services.php ... 'all_my_sms' => [ 'uri' => env('ALL_MY_SMS_URI', 'https://api.allmysms.com/http/9.0'), 'login' => env('ALL_MY_SMS_LOGIN'), 'api_key' => env('ALL_MY_SMS_API_KEY'), 'format' => env('ALL_MY_SMS_FORMAT', 'json'), 'sender' => env('ALL_MY_SMS_SENDER'), 'universal_to' => env('ALL_MY_SMS_UNIVERSAL_TO'), ], ...Now you can use the channel in your via() method inside the notification:
use NotificationChannels\AllMySms\AllMySmsChannel; use NotificationChannels\AllMySms\AllMySmsMessage; use Illuminate\Notifications\Notification; class ProjectCreated extends Notification { public function via($notifiable) { return [AllMySmsChannel::class]; // or 'all_my_sms' } public function toAllMySms($notifiable) { return new AllMySmsMessage('Content'); } }In order to let your Notification know which phone number to use, add the routeNotificationForAllMySms method to your Notifiable model.
This method needs to return a phone number.
public function routeNotificationForAllMySms(Notification $notification) { return $this->phone_number; }When developing an application that sends sms, you probably don't want to actually send sms to live phone numbers. You may set a universal recipient of all sms sent. This can be done by the ALL_MY_SMS_UNIVERSAL_TO environment variable or the universal_to option.
content(string $content): Accepts a string value for the sms content.sender(string $sender): Accepts a string value for the sender name.campaign(string $campaign): Accepts a string value for the sms campaign name.sendAt(\DateTimeInterface|string $sendAt): Accepts a DateTimeInterface or string for the sms due date.parameters(array $parameters): Accepts an array for the sms parameters.
Please see CHANGELOG for more information what has changed recently.
$ composer testIf you discover any security related issues, please email mikael.popowicz@gmail.com instead of using the issue tracker.
Please see CONTRIBUTING for details.
The MIT License (MIT). Please see License File for more information.