Discourse Mobile Push — push-уведомления FCM для мобильных приложений

Я разработал новый плагин для 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.

Обратная связь, сообщения об ошибках и предложения приветствуются.

1 лайк

Я с удовольствием поделюсь тем, как я реализовал это в своём Flutter-обёртке для моего форума на Discourse. Я пока не занимался версией для Apple, только для Android.