This package makes it easy to send notifications using Zenvia with Laravel 7.x, 8.x, 9.x, 10.x, 11.x
You can install the package via composer:
composer require guiigaspar/laravel-zenvia-channelAdd your Zenvia Account, Password, and From Name (optional) to your .env:
ZENVIA_ACCOUNT=XYZ
ZENVIA_PASSWORD=XYZ
ZENVIA_FROM=XYZ # optionalRun php artisan vendor:publish --provider="NotificationChannels\LaravelZenviaChannel\ZenviaServiceProvider"
/config/zenvia-notification-channel.php
Now you can use the channel in your via() method inside the notification:
use NotificationChannels\LaravelZenviaChannel\ZenviaChannel;
use NotificationChannels\LaravelZenviaChannel\ZenviaSmsMessage;
use Illuminate\Notifications\Notification;
class AccountApproved extends Notification
{
public function via($notifiable)
{
return [ZenviaChannel::class];
}
public function toZenvia($notifiable)
{
return (new ZenviaSmsMessage())
->content("Your order {$notifiable->orderId} was approved!");
}
}In order to let your Notification know which phone are you sending/calling to, the channel will look for the phone_number attribute of the Notifiable model. If you want to override this behaviour, add the routeNotificationForZenvia method to your Notifiable model.
public function routeNotificationForZenvia()
{
return '+5511912345678';
}id(''): Accepts a ID to use as the notification identifier.content(''): Accepts a string value for the notification body.schedule(''): Accepts a string value for the notification schedule.
Please see CHANGELOG for more information what has changed recently.
$ composer testIf you discover any security related issues, please email [email protected] instead of using the issue tracker.
Please see CONTRIBUTING for details.
The MIT License (MIT). Please see License File for more information.