He creado un nuevo plugin de Discourse para enviar notificaciones push a aplicaciones nativas de Android/iOS utilizando Firebase Cloud Messaging (FCM).
¿Por qué?
El plugin existente discourse-fcm-notifications ofrece una funcionalidad similar, pero ya no está actualizado con las versiones actuales de Discourse. Instalarlo en una instalación actual de Discourse genera advertencias.
Tuvieron problemas para hacer que el plugin antiguo funcionara en los dispositivos de otros usuarios de prueba. En lugar de intentar actualizarlo, decidí construir una nueva implementación desde cero.
Características
- Notificaciones push de FCM para aplicaciones móviles nativas
- Múltiples dispositivos por usuario
- Registro y eliminación de dispositivos a través de una API
- Enlaces profundos (deep links) al tema, publicación o chat relevante de Discourse
- Eliminación automática de tokens de FCM inválidos o caducados
- Manejo de reintentos para fallos temporales de Firebase
- Modo de privacidad opcional con contenido de notificación genérico
- Diagnósticos de administrador y herramientas de notificación de prueba
- Utiliza el sistema de notificaciones y las preferencias existentes de Discourse
El plugin está diseñado para proporcionar la capa de entrega entre Discourse y una aplicación móvil nativa; Discourse sigue siendo responsable de decidir qué notificaciones recibe un usuario.
Desarrollo asistido por IA
Una parte significativa de este plugin se desarrolló con la ayuda de IA. Lo publico aquí en parte para obtener comentarios de desarrolladores experimentados de Discourse y para identificar cualquier cosa que deba cambiarse o mejorar.
Está bajo licencia MIT.
Se aceptan comentarios, informes de errores y sugerencias.