This package makes it easy to send notifications using Novu
class InvoicePaidNotification extends Notification
{
// Trigger a specific notification event
public function toNovuEvent($notifiable)
{
return NovuMessage::create('workflow_1234')
->addVariable('invoice_id', $this->invoice->id)
->toSubscriberId('123456789');
}
}
The Novu notification channel can be installed easily via Composer:
$ composer require xcoorp/laravel-novu-notifications
In order to send a notification via the Novu channel, you'll need to specify the channel in the via()
method of your notification:
use NotificationChannels\Novu\NovuChannel;
public function via($notifiable)
{
return [
NovuChannel::class
]
}
Namespace: NotificationChannels\Novu\NovuMessage
The NovuMessage
class encompasses an entire message that will be sent to the Novu API.
static create(?string $workflowId)
Instantiates and returns a newNovuMessage
instance, optionally pre-configuring it with the workflow idworkflowId(string $workflowId)
Set theworkflowId
of the message (Your novu workflow trigger id)to(array $to)
Array of recipient information likesubscriberId
,phone
, etc...toSubscriber(string $subscriberId)
Set thesubscriberId
of the recipientvariables(array $variables)
Set the variables (payload
) of the message. Those are your novu event variablesaddVariable(string $key, $value)
Add a single variable to the messagetoArray()
Returns the data that will be sent to the Novu API as an array
Functionality of this package is tested with Pest PHP. You can run the tests with:
composer test
In order to ensure that the community is welcoming to all, please review and abide by the Code of Conduct.
Please review the security policy on how to report security vulnerabilities.
The MIT License (MIT). Please see License File for more information.