2014-05-23 2 views
6

이제 Apple 푸시 알림을 (APNS를 통해) 보내려면 PushSharp 라이브러리를 사용하고 있지만 견고성과 확장 성을 위해 Notification Hubs로 마이그레이션하고 싶습니다.Azure 알림 허브 등록 시간 (최대 90 일)

this article에서 설명한대로 백엔드 등록을 사용하여 Azure Notification Hubs를 통해 알림을 전송할 계획입니다. 따라서 :

  1. iOS 클라이언트가 푸시 토큰을 업데이트 할 때 호출하는 백엔드 API 메소드가 있습니다. 이 방법에서는 사용자 ID로 태그를 지정하여 등록합니다. (이전에는 DB의 사용자 링크에 푸시 토큰을 저장했습니다.)
  2. 특정 사용자에게 보낼 알림이 있으면 태그 (사용자 ID)를 사용하여 보냅니다. (이전에, 나는 DB에서 APNS 장치 토큰을 사용했습니다.)

이 작업 솔루션처럼 보이지만, Notification Hubs documentation에서이 말했다 것 :

등록이 일시적 참고하는 것이 중요하다. 포함 된 PNS 핸들과 유사하게 등록이 만료됩니다. Notification Hub에 등록 할 때 최대 생존 시간을 최대 90 일까지 설정할 수 있습니다. 이 제한은 주기적으로 새로 고쳐야하며 중요한 정보를 저장하는 유일한 저장소가 아니어야 함을 의미합니다. 이 자동 만료는 모바일 애플리케이션을 제거 할 때 정리 작업을 간소화합니다.

그리고 이것이 문제입니다. 때로는 90 일 동안 토큰을 업데이트하지 않은 장치에 알림을 보내야합니다. 따라서 APNS 토큰은 계속 활성화되지만 알림 허브의 등록은 무효화됩니다. 따라서 사용자의 커뮤니케이션 채널을 잃어 버렸습니다.

어떻게 처리합니까?

물론 토큰을 DB에 저장하고 주기적으로 등록을 업데이트하는 작업을 할 수 있습니다. 그러나 이는 알림 허브와 같은 푸시 알림 솔루션에서 기대하는 바가 아닙니다.

답변

2

답변이 2 세이므로 잠시만 기다려주세요. In this blogpost 하늘빛 상태 :

기본적으로 등록 및 설치가 더 이상 만료되지 않습니다.

이렇게하면 만료 필드가 혼란 스럽지만 더 이상 문제가되지 않는다고 가정합니다.

UPDATE

이전 알림 허브는 여전히이 문제를 가지고있다. 만료 시간을 무한대로 설정하려면 업데이트해야합니다 (instructions are found in this forum post). 새 허브는 자동으로 무한대로 설정됩니다.

6

응용 프로그램 또는 서버에서 등록을 새로 고칠 수 있습니다. 응용 프로그램에서이 작업을 수행하는 경우 등록을 새로 고치려면 사용자가 응용 프로그램을 시작해야합니다.

따라서 90 일 이상 실행되지 않은 앱의 경우에도 기기 등록이 활성 상태 여야하는 경우 서버를 통해 등록을 새로 고쳐야하고 서버에서 토큰을 새로 고치는 작업을 실행해야합니다. 너의 유일한 선택처럼.

본인은 Notification Hubs의 토큰 만료 결정이 이상하다고 생각합니다. 아마도 그들은 APNS 장치 토큰 또는 GCM 등록 ID보다 더 자주 만료되는 MPNS (Microsoft Push Notification Service) 알림 채널의 동작을 염두에 두었을 것입니다.

+1

서버 측 등록 새로 고침에 대한 구현은 어떻게됩니까? 세부 사항을 찾는 것이 아니라 일반적인 방향입니다. 감사. –

0

최신 알림 허브 설명서에 따르면이 90 일 한도가 연장되어 평생 90 일 후에 장치를 다시 등록 할 필요가 없습니다.