tomatophp / messagebird-notifications
MessageBird notification channel for Laravel 5.x
Requires
- php: ^8.0|^8.1
- ext-json: *
- guzzlehttp/guzzle: ^7.8
- illuminate/notifications: ^9.0|^10.0|^11.0
- illuminate/queue: ^9.0|^10.0|^11.0
- illuminate/support: ^9.0|^10.0|^11.0
Requires (Dev)
- mockery/mockery: ^1.4.4
- phpunit/phpunit: ^9.5.10|^10.0|^11.0
This package is auto-updated.
Last update: 2024-11-12 20:39:44 UTC
README
This package makes it easy to send Messagebird SMS notifications with Laravel.
Contents
- Requirements
- Installation
- Setting up your Messagebird account
- Usage
- Changelog
- Testing
- Security
- Contributing
- Credits
- License
Requirements
- Sign up for a free MessageBird account
- Create a new access_key in the developers sections
Installation
You can install the package via composer:
composer require laravel-notification-channels/messagebird
for Laravel 5.4 or lower, you must add the service provider to your config:
// config/app.php 'providers' => [ ... NotificationChannels\Messagebird\MessagebirdServiceProvider::class, ],
Setting up your Messagebird account
Add the environment variables to your config/services.php
:
// config/services.php ... 'messagebird' => [ 'access_key' => env('MESSAGEBIRD_ACCESS_KEY'), 'originator' => env('MESSAGEBIRD_ORIGINATOR'), 'recipients' => env('MESSAGEBIRD_RECIPIENTS'), ], ...
Add your Messagebird Access Key, Default originator (name or number of sender), and default recipients to your .env
:
// .env ... MESSAGEBIRD_ACCESS_KEY= MESSAGEBIRD_ORIGINATOR= MESSAGEBIRD_RECIPIENTS= ], ...
Notice: The originator can contain a maximum of 11 alfa-numeric characters.
Usage
Now you can use the channel in your via()
method inside the notification:
use NotificationChannels\Messagebird\MessagebirdChannel; use NotificationChannels\Messagebird\MessagebirdMessage; use Illuminate\Notifications\Notification; class VpsServerOrdered extends Notification { public function via($notifiable) { return [MessagebirdChannel::class]; } public function toMessagebird($notifiable) { return (new MessagebirdMessage("Your {$notifiable->service} was ordered!")); } }
Additionally you can add recipients (single value or array)
return (new MessagebirdMessage("Your {$notifiable->service} was ordered!"))->setRecipients($recipients);
In order to handle a status report you can also set a reference
return (new MessagebirdMessage("Your {$notifiable->service} was ordered!"))->setReference($id);
Changelog
Please see CHANGELOG for more information what has changed recently.
Testing
$ composer test
Security
If you discover any security related issues, please email psteenbergen@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.