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 라이선스로 배포됩니다.

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

2개의 좋아요

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

1개의 좋아요

사용자가 @plugin_authors 채널에 가입을 요청하여 Customization > Plugin 채널에서 이 내용을 공유할 수 있도록 하시는 것이 좋습니다.

2개의 좋아요

@Michael_Sandler 좋은 작업이네요. 저도 Discourse용 Flutter 앱을 개발하고 있으며, 최근 출시했습니다. 푸시 알림을 구현하는 방식이 여러분과 약간 다르며, 플러그인 설치가 필요하지 않지만 즉각적이지는 않습니다.

사용자가 많아지면 여러분의 방식과 같은 방향으로 진행할 것 같습니다.

확인해 주시고, 피드백을 주시면 감사하겠습니다. 또한 여러분의 구현 방식도 참고해 볼 수 있을 것 같습니다.