-
[Push] 4. 환영해요 ! Push Notification Console/Push Notification 2023. 7. 23. 16:18반응형
0. Apple Push Notification service (APNs) 와 작동방식
2. FCM으로 사용하는 방법을 알아보자.
3. FCM 없이 사용해보자.
안녕하세요 ! 아렉스입니다 !
이번 WWDC 23 에서 Meet Push Notification Console 세션을 통해서 Push Notification Console 이 공개되었어요 !
바로 구경해보시죠 ㄱㄱㄱ
https://developer.apple.com/notifications/push-notifications-console/
Push Notifications Console - Notifications - Apple Developer
The new Push Notifications Console makes it easy to send test notifications to Apple devices through the Apple Push Notification service (APNs)
developer.apple.com
Push Notification Console은 CloudKit Console 안에 내장되어있네요 !
화면은 상단 탭에 Send, Delivery Log, Tools 세가지 기능으로 이루어져있고,
좌측 화면에는 최근 보낸 푸시 테스트의 로그가 있습니다. 최근 이력부터 살펴보겠습니다 !상단 필터 아이콘을 통해서 Notification Type과 Development와 Production 환경 또한 필터링 기능을 제공합니다.
또한, 로그들은 Push Notification Console을 통해서 보낸 알림들만 30일간 제공이됩니다 !
Notification Type에 WWDC 23에 같이 소개된 Live Activity도 확인해볼 수 있네요 ㅎㅎ
Send
Send 기능이 제일 핵심일거같네요 !
General, Request Headers, Payload 세가지 섹션으로 이루어져있습니다
General 에는 Name, Environment, Device Token 으로 구성되어있네요 !
빠르게 채워넣어볼게요
Request Headers 도 쓱쓱 채워넣겠습니다 !
오오 선택한 것에 따라서 설명까지 ..! 친절하다 친절해 Payload 또한 JSON 을 직접 작성하지않아도 타입과 값을 정할 수가 있네요 !
너무 편해진거 같아요 !
게다가 apns-push-type 에 따라서 기본 Payload 또한 자동으로 변경이 되네요 !
그럼 Send를 눌러 작동 잘하는지 확인해볼게요 !!
짠 !!
잘 도착한 걸 볼 수 있어요 !
이제 Push Notification 테스트 하는거 안 무서워요 ~!!
Send 이후에 결과도 확인해볼수 있어요 !
Delivery Log
현재 Delivery Log는 개발 환경에서만 사용가능합니다 !! ㅜㅜ (진짜 필요한건 상용일거같은데 ㅜ 내년에 기대해봅니다..)
아쉬운 마음은 접어두고 기능에 대해서 알아볼게요 !
Delivery Log는 검색 기능과 최근 apns-unique-ids 를 통한 검색 기능을 제공해요 !!
이전 포스팅에서
인증 토큰 방식은 http/2 프로토콜로 통신하고 400, 410 과 같은 에러코드를 통해 즉각적인 결과를 알려주던 내용 기억나시나요 ?
그러한 APNs 스택에 쌓인 에러 로그들을 제공하는거 같네요 ???기계의 전력 상태에 따라서 stored 됐다고 나오네요 !
이런 결과는 priority 를 10이 아닌 1,5로 보냈을 때 나오겠죠 ?
저전력 모드를 해제하게 되면 stored 됐던 알림이 디바이스에 전달이 되는 것도 확인 가능해요 !
Send의 로그는 30일까지 확인가능했는데
Delivery Log 의 확인 가능한 날짜는 7일입니다 !!
예전에 Push가 오지않는다고 VOC가 인입된 적이 있었는데 그때 정말 뭐부터 확인해야하나 .. 하면서 막막했던 기억이 있었어요
그때 Delivery Log가 있었다면 개발환경이라도 테스트해보고 어떤걸 확인해봤어야할지 알았을거같네요 !
앞으로 그런 부분들을 기대해봐야겠어요 !
Tools
Tools는 JWT Validator, JWT Generator, Device Token Validator 세 가지 기능을 제공합니다 !
JWT Generator 먼저 알아볼게요 !!
인증 토큰 기반 연결은 공급자 서버와 APN 간의 안전하고 효율적인 인증을 위해 JSON 웹 토큰을 사용합니다.
Apple 개발자 계정과 연결된 개인 키로 서명된 토큰을 생성해야 합니다. 개인 키는 인증서처럼 만료되지 않습니다.
우리가 Apple Developer 사이트에서 만든 signning key가 있었죠 ??
이제 그 key를 사용할 때가 왔어요 !!
Choose file을 눌러서 .p8 파일포맷을 가진 signing key를 업로드해주고, Key ID를 작성해주면 끝이에요 !
엄청 쉽죠 ??
Console에서 유효성 검사 이후에 Token을 만들어줍니다 !이렇게 만들어진 토큰을 우리가 사용해볼 수도 있겠죠 !
JWT Validator 에 대해서 알아볼게요 !!
JWT Validator를 사용하여 인증 토큰의 유효성을 확인할 수 있어요 !
토큰이 유효한지 여부는 다음을 포함하되 이에 국한되지 않는 여러 요인에 따라 달라집니다.
토큰의 유효성은 세가지로 인해 결정됩니다 !
- .p8 key
- Team ID
- 시간 만료
issed at(lat) is old 를 보기위해서 1시간동안 존버를...했어요 !!
제가 궁금하기도 했고,, 여러분 보여드리고싶었거든요 ㅎㅎ
위에서 만든 토큰을 Encoded Token에 넣어볼게요 !
유효성에 대한 결과와 Header와 Payload에 대해서도 알려주네요 !
후아, 이제 Device Token Validator 만 남았어요 !!!
Send에 사용되었던 Device Token을 넣어볼게요 !!
push-type과 어떤 환경의 디바이스 토큰인지에 대해서 알려줍니다 !
Device Token String이 잘못되었다던지 !
Device에서 앱이 사라진 경우 또한 알려줍니다 !
설명한 양이 많았는데 이해가 잘 되셨나요 ?
간단하게 정리해볼게요 !- Send
- General
- Request Headers
- Payload
- Push Notification Console를 통해 Send 된 로그들은 30일간 확인 가능
- Delivery Log
- Development 환경에서만 가능
- apns-unique-ids
- Send 이후 7일간 검색 가능
- Tools
- JWT Validator
- JWT Generator
- Device Token Validator
새로나온 Push Notification Console의 제 감상평은 ..
앞으로 매우 편리한 푸시 테스트 웹 도구가 될거같아요 !입력해야 할 필드에 대해서도 설명이 되어있기에, 사용법을 숙지하지않더라도 사용하기에 매우 직관적인 도구 같다는 느낌이었습니다.
이제 Remote Push Notifications 공부할 때 실습 프로젝트에 FCM 안 써도 되서 제일 편리할거같아요 ㅎㅎㅎ
FCM은 필요할 때 연동해보는걸로 ...참고링크
' > Push Notification' 카테고리의 다른 글
FCM을 통한 Push Notification 서비스 - 1 프로젝트 생성, 설정 (0) 2023.11.23 [Push] 3. FCM 없이 사용해보자. (0) 2023.07.23 [Push] 2. FCM으로 사용하는 방법을 알아보자. (0) 2023.07.23 [Push] 1. .p12 인증서와 .p8 인증키 차이 (0) 2023.07.23 [Push] 0. Apple Push Notification service (APNs) 와 작동방식 (0) 2023.07.23