Provides Novu integration for Symfony Notifier.
NOVU_DSN=novu://API_KEY@default
class NovuNotification extends Notification implements PushNotificationInterface
{
public function asPushMessage(
NovuSubscriberRecipient|RecipientInterface $recipient,
?string $transport = null,
): ?PushMessage {
return new PushMessage(
$this->getSubject(),
$this->getContent(),
new NovuOptions(
$recipient->getSubscriberId(),
$recipient->getFirstName(),
$recipient->getLastName(),
$recipient->getEmail(),
$recipient->getPhone(),
$recipient->getAvatar(),
$recipient->getLocale(),
$recipient->getOverrides(),
[],
),
);
}
}
$notification = new NovuNotification;
$notification->subject('test');
$notification->channels(['push']);
$notification->content(
json_encode(
[
'param1' => 'Lorum Ipsum',
]
)
);
$this->notifier->send(
$notification,
new NovuSubscriberRecipient(
"123",
'Wouter',
'van der Loop',
'[email protected]',
null,
null,
null,
[
'email' => [
'from' => '[email protected]',
'senderName' => 'No-Reply',
],
],
),
);