yieldstudio / laravel-brevo-notifier
Easily send Brevo transactional email and sms with Laravel notifier.
Installs: 11 213
Dependents: 0
Suggesters: 0
Security: 0
Stars: 3
Watchers: 2
Forks: 4
Open Issues: 2
Type:plugin
Requires
- php: ^8.1|^8.2
- illuminate/database: ^9|^10|^11
- illuminate/support: ^9|^10|^11
Requires (Dev)
- ciareis/bypass: ^1.0
- laravel/pint: ^1.16
- orchestra/testbench: ^7.22|^8.1
- pestphp/pest: ^2.34
- phpunit/phpunit: ^9.5|^10.5
This package is auto-updated.
Last update: 2024-12-16 10:25:44 UTC
README
Easily send Brevo transactional email and sms with Laravel.
Installation
You can install the package via composer:
composer require yieldstudio/laravel-brevo-notifier
Configure
Just define these environment variables:
BREVO_KEY= MAIL_FROM_ADDRESS= MAIL_FROM_NAME= BREVO_SMS_SENDER=
Make sure that MAIL_FROM_ADDRESS
is an authenticated email on Brevo. You can verify by logging in your Brevo account here https://app.brevo.com/senders
BREVO_SMS_SENDER
is limited to 11 for alphanumeric characters and 15 for numeric characters.
You can publish the configuration file with:
php artisan vendor:publish --provider="YieldStudio\LaravelBrevoNotifier\BrevoNotifierServiceProvider" --tag="config"
Usage
Now you can use the channel in your via() method inside the notification:
Send email
<?php namespace App\Notifications; use Illuminate\Notifications\Notification; use YieldStudio\LaravelBrevoNotifier\BrevoEmailChannel; use YieldStudio\LaravelBrevoNotifier\BrevoEmailMessage; class OrderConfirmation extends Notification { public function via(): array { return [BrevoEmailChannel::class]; } public function toBrevoEmail($notifiable): BrevoEmailMessage { return (new BrevoEmailMessage()) ->templateId(1) ->to($notifiable->firstname, $notifiable->email) ->params(['order_ref' => 'N°0000001']); } }
Send SMS
<?php namespace App\Notifications; use Illuminate\Notifications\Notification; use YieldStudio\LaravelBrevoNotifier\BrevoSmsChannel; use YieldStudio\LaravelBrevoNotifier\BrevoSmsMessage; class OrderConfirmation extends Notification { public function via(): array { return [BrevoSmsChannel::class]; } public function toBrevoSms($notifiable): BrevoSmsMessage { return (new BrevoSmsMessage()) ->from('YIELD') ->to('+33626631711') ->content('Your order is confirmed.'); } }
Unit tests
To run the tests, just run composer install
and composer test
.
Contact us
Our team at Yield Studio is ready to welcome you and make every interaction an exceptional experience. You can contact us.
Changelog
Please see CHANGELOG for more information on what has changed recently.
Contributing
Please see CONTRIBUTING for details.
Security
If you've found a bug regarding security please mail contact@yieldstudio.fr instead of using the issue tracker.
Credits
License
The MIT License (MIT). Please see License File for more information.