React Native

[React-Native] FCM을 이용해 알림 보내기

sayhee 2023. 4. 24. 19:23
728x90

FCM ( Firebase - Cloud - Messaging )

  • 무료로 메시지를 안정적으로 전송할 수 있는 교차 플랫폼 메시징 솔루션

FCM을 이용해 각 유저들에게 알림메시지를 전송하기 위해서는 TOKEN , TOPIC을 활용해 푸시 메시지를 보낼 수 있다.

 

✔️ TOKEN이란?

  • 앱이 FCM 서버와 통신하기 위해 사용되는 고유한 식별자
  • 앱은 서버와 통신할 때 토큰을 사용하여 FCM 서버에서 앱을 식별하고, 이를 통해 메시지 전송을 할 수 있다.
  • FCM의 토큰은 앱이 설치된 디바이스마다 고유하며 앱이 설치된 디바이스를 추가하거나 삭제할때 토큰이 변경될 수 있다. ( refresh )
  • 서버는 이러한 FCM 토큰을 사용하여 특정 디바이스에 메시지를 전송할 수 있다.

TOKEN은 Firebase에서 관리하는 기기의 고유 ID라고 볼 수 있다.

 

✔️ FCM을 사용해서 메시지를 보내는 과정

발로 그린 그림을 정리하자면...

1. 토큰 요청 및 획득

- 앱을 설치 후 최초로 실행하면 토큰을 얻기 위해 클라우드 서버에 요청을 보내고 토큰을 획득한다.

 

2. 서버에 토큰 저장

- 획득한 토큰을 서버로 전송하여 서버 DB에 저장한다.

 

서버에 토큰을 저장하는 이유?

토큰은 서버가 클라우드에게 메시지 전송을 요청할 때 어디로 보내는지 구분하기 위한 용도

 

3. 토큰을 이용해 메시지 전송 요청

- 서버에서 클라우드로 메시지 데이터와 토큰을 함께 보내 전송을 요청한다.

 

4. 메시지 전송

- 클라우드는 요청받은 메시지를 토큰에 해당하는 단말기에 전송한다.

 

5. 리스너를 통해 USER 에게 알림 메시지 전송

- 앱이 실행중이 아니더라도 리스너를 통해  user에게 알림 메시지를 전송할 수 있다.