gpt4 book ai didi

Azure NotificationHub - 检测失败的通知

转载 作者:行者123 更新时间:2023-12-02 06:49:48 24 4
gpt4 key购买 nike

我正在尝试将失败的通知存储在db中,例如客户端无法访问互联网。这将使我能够从 backgroundService 检查是否缺少通知,然后从 backgroundService 创建它。

因此,我的 Azure App Service Mobile 上有以下内容:

var notStat = await hub.SendWindowsNativeNotificationAsync(wnsToast, tag);
telemetry.TrackTrace("failure : " + notStat.Failure + " | Results : " + notStat.Results + " | State : " + notStat.State + " | Success : " + notStat.Success + " | trackingID : " + notStat.TrackingId + ");

代码片段是为了测试来自客户端的影响,但无论我做什么,生成的日志都只是消息被排队

问题

那么如何检测失败的通知?

结论

总结对已接受答案的讨论:

发送通知后,NotificationId 和其他相关数据将存储在单独的表中。

接收到通知的客户端上的事件将向服务器发送一条消息,表明已收到通知。然后该条目将从表中删除。

客户端未收到的通知将通过后台任务找到。这将是每次后台任务触发时的情况,例如每 6 小时,后台任务 将检索所有丢失的通知。这使得后台任务能够创建相关通知,用户不会错过任何通知。

最佳答案

预计会返回enqueued - 请参阅troubleshooting guidance 。有关所发生情况的更多见解,请尝试设置 EnableTestSend -

“result.State 在执行结束时只会状态为 Enqueued,而不会了解您的推送发生了什么。现在您可以使用 EnableTestSend bool 值” (c) documentation

但请注意,启用 EnableTestSend 时,存在一些限制(在同一页面上进行了描述,因此不会将其复制粘贴到此处,以避免将来出现过时信息的问题)。

您也可以使用每消息遥测功能或 REST API - Fiddler+ some documentation

并且,作为后续问题,我看到一些关于 SO 的讨论可能会对您有所帮助:firstsecond

并且,作为最后一个,我强烈建议(如果您还没有)查看 FAQ - 了解不同平台如何处理通知很重要,以避免当您尝试调试通过设计完成的某些内容时出现的情况(例如,也许,如果设备离线,并且有通知,则只有最后一个会被接收)交付等)。

关于Azure NotificationHub - 检测失败的通知,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/36957489/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com