![](/img/trans.png)
[英]Azure Notification Hubs increase “Registration Time to Live” using rest API and Powershell
[英]Azure Notification Hubs registration time to live (90 days limit)
現在我正在使用PushSharp庫發送Apple推送通知(通過APNS),但我想遷移到Notification Hubs以獲得穩健性和可擴展性。
我打算使用本文所述的后端注冊通過Azure通知中心實現發送通知。 所以:
它似乎是一個有效的解決方案,但在Notification Hubs文檔中說:
重要的是要注意注冊是暫時的。 與它們包含的PNS句柄類似,注冊過期。 您可以在通知中心設置注冊的生存時間,最長可達90天。 此限制意味着必須定期刷新它們,並且它們不應該是重要信息的唯一存儲。 此自動過期還可以在卸載移動應用程序時簡化清理。
這就是問題所在。 有時我需要向尚未更新令牌90天的設備發送通知,等等。 因此APNS令牌仍然有效,但Notification Hub的注冊將失效。 所以我只是失去了用戶的溝通渠道。
你怎么處理這個?
當然,我仍然可以在DB中存儲令牌,並且可以定期更新注冊。 但這不是您對通知中心等推送通知解決方案的期望。
您可以從應用程序或服務器刷新注冊。 如果您從應用程序執行此操作,則必須由用戶啟動該應用程序才能刷新注冊。
因此,如果您要求設備注冊即使對於未啟動超過90天的應用程序仍保持活動狀態,您必須通過服務器刷新注冊,並在服務器中運行可刷新令牌的作業似乎是您唯一的選擇。
我同意Notification Hubs讓令牌過期的決定似乎很奇怪。 也許他們考慮過MPNS(微軟推送通知服務)通知渠道的行為,這些渠道比APNS設備令牌或GCM注冊ID更頻繁地過期。
快速說明,因為答案是2歲。 在這篇博客中, Azure聲明:
請務必注意,默認情況下注冊和安裝不再過期。
我認為這會使過期字段混亂,但不再是問題。
UPDATE
較舊的通知中心仍然存在此問題。 您需要更新它們以將到期時間設置為無窮大, 可在此論壇帖子中找到說明 。 新的集線器自動設置為無窮大。
根據最新的通知中心文檔,這90天的限制已經延長到生命周期,這意味着您不需要在90天后重新注冊設備。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.