Discourse Mobile Push — 모바일 앱용 FCM 푸시 알림

Firebase Cloud Messaging(FCM)을 사용하여 네이티브 Android/iOS 앱으로 푸시 알림을 전송하기 위한 새로운 Discourse 플러그인을 개발했습니다.

왜 개발했나요?

기존의 discourse-fcm-notifications 플러그인은 유사한 기능을 제공하지만, 최신 Discourse 버전과 동기화되지 않고 있습니다. 현재 Discourse 설치 환경에서 이 플러그인을 설치하면 경고 메시지가 발생합니다.

기존 플러그인을 다른 테스터의 기기에서 작동시키는 데 어려움을 겪었습니다. 기존 플러그인을 업데이트하는 대신, 처음부터 새로운 구현체를 개발하기로 결정했습니다.

주요 기능

  • 네이티브 모바일 앱을 위한 FCM 푸시 알림
  • 사용자당 여러 기기 등록
  • API를 통한 기기 등록 및 삭제
  • 관련 Discourse 토픽, 게시물 또는 채팅으로의 딥 링크
  • 유효하지 않거나 만료된 FCM 토큰 자동 제거
  • 일시적인 Firebase 장애를 위한 재시도 처리
  • 일반 알림 내용을 사용하는 선택적 프라이버시 모드
  • 관리자용 진단 및 테스트 알림 도구
  • Discourse의 기존 알림 시스템 및 설정 활용

이 플러그인은 Discourse와 네이티브 모바일 앱 사이의 **전달 계층(delivery layer)**을 제공하는 것을 목표로 합니다. 사용자가 어떤 알림을 받을지 결정하는 책임은 여전히 Discourse가 담당합니다.

AI 지원 개발

이 플러그인의 상당 부분은 AI의 도움을 받아 개발되었습니다. 경험 있는 Discourse 개발자분들의 피드백을 받고, 변경하거나 개선해야 할 사항을 식별하기 위해 여기에 게시합니다.

MIT 라이선스로 배포됩니다.

피드백, 버그 리포트 및 제안은 언제나 환영합니다.

1개의 좋아요

디스코urs 포럼용 Flutter 래퍼 앱에서 이를 어떻게 구현했는지 공유하게 되어 기쁩니다. 아직 Apple은 하지 않았고, Android만 구현했습니다.