WEBBOOK CHAPTER

반응형 웹을 진짜 앱으로: 39장. Push는 힌트이고 권한 증명은 아니다

39장. Push는 힌트이고 권한 증명은 아니다

이 장에서 말하는 푸시 알림은 서버가 전달을 요청하는 신호이지, 사용자가 내용을 읽었거나 업무가 완료됐다는 증명이 아니다.

APNs/FCM token은 login user와 1:1 identity가 아니다. 한 사용자 여러 기기, logout, reinstall, token rotation, 환경 분리를 다룬다. server는 token state와 last seen, platform, app version을 보관하고 invalid receipt를 정리한다. 개인정보와 상세 점검 내용을 payload에 넣지 않는다.

push tap은 inspection id와 event id를 앱에 주지만 앱은 server에서 최신 상태와 권한을 다시 확인한다. duplicate와 out-of-order를 event id/version으로 처리한다. foreground에서는 조용한 in-app banner, background/terminated에서는 OS notification과 deep link를 시험한다. 사용자가 권한을 거부해도 inbox와 polling fallback이 있어야 한다.

배달 성공은 provider accept가 아니라 device 표시·tap·업무 동기화까지 단계가 다르다. metric을 accepted, delivered 가능한 신호, opened, resolved로 나누고 quiet hours와 긴급 안전 알림 정책을 조직과 합의한다. 인증 key rotation과 provider 장애 runbook을 둔다.