asp.net - 如何将 ASP.NET/PushSharp 项目转换为 Azure 以发送推送通知?

标签 asp.net azure apple-push-notifications pushsharp azure-notificationhub

我一直在使用 ASP.NET 和 PushSharp 通过以下简单代码(在证书配置等之后)向我的 iOS 应用程序客户端发送推送通知:

//ASP.NET + PushSharp
AppleNotification notification = new AppleNotification(PushToken).WithAlert(message);
broker.QueueNotification<AppleNotification>(notification);

这在运行经典 IIS/ASP.NET 的隔离主机上完美运行,但现在我正在转向 Windows Azure。当我在 Windows Azure 上尝试此代码时,通知有时无法发送,重新启动网站(标准模式)会有所帮助。然而,由于这是一种不可靠的方法,我决定转向 Azure 的通知中心服务。我已经创建了中心,上传了我的证书,开始编码,但我找不到与之前的代码相同的内容。我不需要向所有用户广播消息,我需要向单个设备发送推送通知,因为我有推送 token 。我看过Windows Azure ServiceBus Push Notifications APNS Architecture但答案中提供的链接非常困惑,我无法理解。如何简单地将消息推送到 Windows Azure 上的推送 token ?我必须使用通知中心吗? (我不使用虚拟机)任何简单的方法都是受欢迎的,纯基于 ASP.NET/PushSharp 的方法是首选,因为我不需要更改整个代码库。

最佳答案

我不确定 PushToken 是什么类型的对象。通知中心的工作方式是,它不是提供一对一的消息传递模型(您必须识别消息的每个收件人,无论是通过 channel 、设备 token 还是注册 ID),而是提供一个标签 -为基础的模型。但是,这并不意味着标签对于各个用户来说不能是唯一的,事实上您可以使用几乎任何 token 作为标签。

这是一种新模型,与 Azure 移动服务或直接使用 APNS 不同,因此不太可能直接从现有代码移植。但是,在我看来,一旦您了解了标签,通知中心模型就很简单。它支持 native 有效负载(由发送通知的服务器构建)和模板有效负载(其中模板由接收设备构建并在注册时提供给通知中心,然后模板中的参数由服务器在注册时提供)将通知发送到模板)。

关于asp.net - 如何将 ASP.NET/PushSharp 项目转换为 Azure 以发送推送通知?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/21852526/

相关文章:

c# - 使用 LinqDataSource 和分页的 GridView 控件中的总行数

asp.net - 重新部署后不记名 token 失效

ios - 使用 parse.com 使用外部 json

c# - 在 ASP.Net 中注册事件的最佳位置

c# - 如何处理同时用于桌面和 Web 的库中的静态变量?

c# - 查找以 "+"或 "-"开头的字符串中的十进制数字

azure - 是否有一种用户友好的方式来对我的 Azure API 的用户进行身份验证,而无需传递订阅 key 或 token ?

c# - Azure 实例 - 我的直接更改丢失了

ios - 移动到 Amazon ec2 服务器后推送通知停止工作

ios - 从数据库中删除删除应用程序的用户 - iOS