Symfony Notifier, un nuevo componente de Symfony

Los componentes de Symfony son una serie de librerías PHP desacopladas que resuelven problemas específicos normalmente relacionados con el desarrollo web. Además de usarlos en aplicaciones Symfony, puedes utilizarlos en cualquier otra aplicación PHP, lo que ha permitido que superen los 3.000 millones de descargas.

Durante la conferencia SymfonyLive London 2019 que se ha celebrado hoy, Fabien Potencier, líder del proyecto Symfony, ha presentado un nuevo componente llamado Notifier.

En primer lugar, el componente Symfony Mailer añadirá un nuevo tipo de email llamado "System Emails", que sirven para enviar notificaciones internas vía email (ej. un nuevo se ha registrado, una factura se ha pagado, ha habido un error crítico en una parte importante de la aplicación, etc.)

Estos emails ya están prediseñados y solo tienes que configurar el texto que contienen y opcionalmente, las URLs de las acciones disponibles en forma de botón dentro del email.

Partiendo de esos nuevos "System Emails", Symfony ha generalizado esa funcionalidad y también permite enviar esos avisos por otras vías, como mensajes SMS, chats y notificaciones normales para que las guardes en una base de datos.

Por ejemplo, para enviar un SMS via Twilio:

$sms = new SmsMEssage('+1415999888', 'El texto que verás en el mensaje.')
$twilio = Transport::from Dsn('twilio://SID:TOKEN@default?from=FROM');
$twilio->send($sms);

El nuevo componente Notifier permite agrupar todas esas notificaciones bajo una única interfaz de manera que puedas enviar el mismo mensaje a diferentes canales. Todas las notificaciones se pueden enviar de manera síncrona (por defecto) o asíncrona (cuando se usa el componente Messenger).

El componente se incluirá de manera experimental en Symfony 5.0 (que se publica a finales de noviembre de 2019). Inicialmente contará con soporte para enviar notificaciones vía email, Slack, Telegram, mensajes SMS, notificaciones en el navegador y Pusher (para aplicaciones iOS y Android).

Actualización: Fabien ha publicado su presentación, que incluye todos los dealles del nuevo componente y muchos ejemplos de código real:

Comentarios

Publicada el

13 de septiembre de 2019

Etiquetas

Proyectos Symfony destacados

La plataforma de eCommerce 100% Symfony que rivaliza con Magento y PrestaShop. Ver más

Síguenos en @symfony_es para acceder a las últimas noticias.