symfony/nexmo-notifier
Symfony Notifier bridge for Vonage (formerly Nexmo). Sends SMS notifications via the Notifier component, integrating with Symfony’s channel system. Configure Vonage credentials and deliver messages through a Nexmo/Vonage transport in your apps.
HttpClient, Messenger), this package could reduce boilerplate for SMS/voice notifications.symfony/http-client, symfony/options-resolver, or symfony/messenger (if installed as standalone).symfony/bridge or spatie/laravel-symfony-messenger could enable partial integration.vonage/client-php directly).Messenger component, this package could plug in as a transport with minimal changes. Example:
// Symfony Messenger config
services:
App\Message\SendSms:
tags: [messenger.message]
messenger:
transports:
nexmo: %env(NEXMO_DSN)%
routing:
'App\Message\SendSms': nexmo
vonage/client-php if integration complexity is prohibitive.vonage/client-php as backup).notifiable trait integration).symfony/http-client), which may conflict with Laravel’s HTTP stack.vonage/client-php (official SDK) suffice with less overhead?notifications-channels/nexmo (Laravel-specific) or laravel-notification-channels/nexmo.| Component | Fit Level | Notes |
|---|---|---|
| Symfony Messenger | High | Native support if using Symfony or spatie/laravel-symfony-messenger. |
| Laravel Queues | Medium | Requires wrapper to dispatch messages via Symfony bridge. |
| Laravel Notifications | Low | No direct Notifiable integration; manual message construction needed. |
| API Clients | Medium | Can use symfony/http-client or fallback to vonage/client-php. |
Mail, Nexmo classes).Messenger) are already in use.symfony/messenger and symfony/http-client to Laravel.NexmoNotifier).// app/Providers/NexmoServiceProvider.php
public function register() {
$this->app->singleton(NexmoNotifier::class, function ($app) {
return new NexmoNotifier(new \Symfony\Component\Notifier\Notifier(
new \Symfony\Component\Notifier\Bridge\Nexmo\NexmoBridge()
));
});
}
symfony/* dependencies (e.g., symfony/http-client).Messenger provides structured logging and retries.DebugBundle for transport visibility (if using Messenger).vonage/client-php community.HttpClient is performant; batch messages if volume is high.| Failure Scenario | Impact | Mitigation |
|---|---|---|
| Nexmo API downtime | Notifications fail silently. | Implement retries with exponential backoff. |
| Rate limiting | Messages drop or delay. | Queue throttling; monitor API usage. |
| Webhook delivery failures | Inbound messages lost. | Persist webhook payloads; use dead-letter queues. |
| Symfony component updates | Breaking changes in Laravel. | Pin versions; test in staging. |
| Laravel queue failures | Async messages pile up. | Monitor queue length; alert on backlog. |
Messenger or custom wrapper logic..env.How can I help you explore Laravel packages today?