Я разработал новый плагин для Discourse, отправляющий push-уведомления в нативные приложения для Android/iOS с использованием Firebase Cloud Messaging (FCM).
Зачем это нужно?
Существующий плагин discourse-fcm-notifications предоставляет аналогичную функциональность, но он больше не поддерживается в актуальных версиях Discourse. Установка этого плагина в текущей версии Discourse вызывает предупреждения.
У меня возникли трудности с запуском старого плагина на устройствах других тестировщиков. Вместо того чтобы пытаться его обновить, я решил создать новую реализацию с нуля.
Возможности
- Push-уведомления FCM для нативных мобильных приложений
- Поддержка нескольких устройств на одного пользователя
- Регистрация и удаление устройств через API
- Глубокие ссылки (deep links) на соответствующую тему, пост или чат в Discourse
- Автоматическое удаление недействительных или устаревших токенов FCM
- Обработка повторных попыток при временных сбоях Firebase
- Необязательный режим конфиденциальности с общим содержанием уведомлений
- Инструменты диагностики и тестовых уведомлений для администраторов
- Использование существующей системы уведомлений и настроек Discourse
Плагин предназначен для обеспечения слоя доставки между Discourse и нативным мобильным приложением; Discourse по-прежнему отвечает за определение того, какие уведомления получает пользователь.
Разработка с помощью ИИ
Значительная часть этого плагина была разработана с использованием искусственного интеллекта. Я публикую его здесь отчасти для получения обратной связи от опытных разработчиков Discourse и для выявления того, что следует изменить или улучшить.
Плагин распространяется по лицензии MIT.
Обратная связь, сообщения об ошибках и предложения приветствуются.