← 질문 목록
#93깊이 0
전송 성공은 단말 수신까지 뜻하는가?
아니다. 서버가 받은 메시지 ID는 FCM이 전달 요청을 접수했다는 뜻이다. 단말 도착이나 앱 처리를 보장하지 않는다.
- 앱 서버
그다음은 FCM입니다. 메시지를 접수한다
FCM그다음은 단말입니다. 연결 상태에 따라 전달을 시도한다
단말그다음은 앱 서버입니다. 처리 결과를 별도로 확인한다
앱 서버
오프라인과 Doze와 토큰 만료 때문에 지연되거나 유실될 수 있다. TTL이 지나거나 같은 collapse key의 새 메시지가 오면 대기 메시지가 버려질 수 있다.
백그라운드 알림 메시지는 시스템 트레이가 처리한다. 데이터 메시지의 앱 처리는 짧아야 하며 긴 후속 작업은 지속 작업으로 넘긴다.
업무상 전달 확인이 필요하면 앱이 처리 ACK를 서버에 보낸다. 서버는 이벤트 ID로 중복을 제거하고 누락 시 원본 데이터를 다시 동기화한다.