将推送信息发送至云端最终发送到Windows Phone手机

有很多同学抱怨MPNS的各种问题,其中包括服务超时、返回各种错误代码不知如何处理等等。。今天我用一点时间来为大家介绍下如何处理和操作咱们的MPNS。

首先为大家明确一个问题,Microsoft Push Notification Service (MPNS) 是执行的异步推送。今天将介绍如何使用高效的服务将我们的推送信息发送至云端最终发送到 Windows Phone 手机。

第一 如何设置发送超时

对于超时时间我建议大家设置为 15秒。例如:你使用的 ASP.NET 进行数据推送时,建立 WebRequest 对象设置超时时间

HttpWebRequest request = (HttpWebRequest)asynchronousResult.AsyncState;
request.Timeout = 15000;

第二 处理推送通道的更新

当你的客户端程序发现推送通道更新后,应用一定要将最新的推送通道 URL 更新到你的服务器端。要保证您的服务器端的推送通道是最新的。建议你可以使用 device ID 与推送通道进行匹配,如果发现推送通道的URL更新就立刻进行推送通道更新,服务器通过device ID进行判断是,新用户注册还是已有用户的推送通道更新。

Windows Phone 的官方资料中提供了如何建立一个接受推送消息的应用代码示例,其中包括了如何处理,推送通道更新事件。您可以参考 如何发送和接收 Windows Phone 的磁贴通知 了解如何使用PushChannel_ChannelUriUpdated方法。(另:推送通道长度也许会超过 1024 characters)

第三 使用已验证的 Web 服务以发送 Windows Phone 的推送通知

使用MPNS认证端,如果你的推送服务针对一台WindowsPhone设备24小时内推送消息数量超过500条,或者您想更安全的推送消息。另使用没有MPNS验证的终端进行推送,每日的推送限额是500条/每个device。

如何设置 MPNS验证的终端。

设置已验证的 Web 服务以发送 Windows Phone 的推送通知

No-quota push notifications using a root Certificate Authority

另外,如果你的推送服务超过每天500条的推送对每台设备,有一点您就需要额外的考虑用户的手机电量是使用情况了。

第四 根据MPNS返回的代码进行处理

通常移动设备的网络都会变化的,了解 Windows Phone 网络连接的变换状态判断规则:设备状态的过度流程

你将推送服务发送至MPNS,随后MPNS会将设备的信息返回,你需要观察设备状态(Windows Phone 的推送通知服务响应代码),在进行处理我推荐一些做法如下:

Response code Notification status Device connection status Subscription status Recommendations 200 OK QueueFull Connect Active 建议从新发送通知,
但是可以设置一个重发时间间隔,如果还收到
同样错误代码尝试延长重试时间:4 – 8 – 16 分钟以此类推到32分钟。 200 OK QueueFull Temp Disconnected Active 建议从新发送通知,但是可以设置一个重发时间间隔,如果还收到同样错误代码尝试延长重试时间:2 – 4 – 8 分钟以此类推到 24 小时。 404 Not Found Dropped * Any Connection
Status Expired 不需要再尝试发送消息了,因为这个推送通道已经不存在了。

412 Precondition Failed

Dropped Disconnected N/A 建议每小时尝试一次从新发送,但是如果超过24小时还是返回相同错误,就停止推送。 503 N/A N/A N/A 建议从新发送通知,但是可以设置一个重发时间间隔,如果还收到同样错误代码尝试延长重试时间:5 – 10 – 20 – 40 秒以此类推到30分钟。

时间: 2024-10-06 23:01:13

将推送信息发送至云端最终发送到Windows Phone手机的相关文章

在Mac上接收iPhone/iPad推送信息

  pushNotify教程:在Mac上接收iPhone/iPad推送信息.pushNotify可以让您轻松在Mac设备上接收来自iOS设备的任何推送信息并使用Mac原生推送窗口再次推送给您,让您高效专注电脑工作的同时不错过任何iOS设备(iPhone/iPad/iPod touch)发来的推送消息.只需要在 Mac 和 iOS 端完成配置后,Mac 上就可以推送信息了. 补充:该插件仅支持Mac,如果你是Windows用户,可使用GrowlNotifier来实现电脑接收iOS设备推送信息. 一

微信公众平台推送信息接收,无法获取返回的xml信息

问题描述 微信公众平台推送信息接收,无法获取返回的xml信息 微信公众平台测试时,出现以下问题明文模式兼容模式求助大神解决下问题 解决方案 微信公众平台获取用户信息 解决方案二: 你发的数据需要是对应要求的xml格式,你直接发null肯定错误的

.net实现微信客服推送信息

问题描述 各位前辈们你们好,.net实现微信客服推送信息,系统自动发送消息到客户手上,怎么去实现啊.我是一个.net的新手,请各位大神们指教指教,在此谢谢各位回答的热心大神la! 解决方案 解决方案二:http://www.cnblogs.com/zhuqil/p/3354640.html解决方案三:谢谢热心的你给的链接啦

微信公众平台怎么设置后台推送信息?

  微信公众平台,是基于微信服务再次延伸出的一款应用,利用公众账号平台进行自媒体活动,简单来说就是进行一对多的媒体性行为活动,如商家通过申请公众微信服务号通过二次开发展示商家微官网.微会员.微推送.微支付.微活动,微报名.微分享.微名片等,已经形成了一种主流的线上线下微信互动营销方式,目前的微信二次开发商有微盟,微智客等等,都对市场有一定的促进作用. 1.针对微信公众平台后台定位信息推广,线上活动推送,线下活动发起,如何提高订阅量问题设置如下图. 2.开发模式,意思是在微信外包服务后,供应商会有

请教关于服务器主动推送信息的问题!

问题描述 各位高手,大师们,小弟接到一个项目需要实现服务器主动向客户端推送数据,具体就是管理员通过后台管理界面将服务器上的一些文件或者图片等数据主动推送到客户端指定的用户,该怎么实现啊? 解决方案 解决方案二:客户端用ajax来模拟.解决方案三:还有没有更详细的说明.解决方案四:长连接,解决方案五:把这个项目交给懂得的人去做.解决方案六:引用4楼sp1234的回复: 把这个项目交给懂得的人去做. ..解决方案七:如何推送法?是像短信那样的推送吗?解决方案八:用AJAX写,前台用个时间函数循环调用

环信推送信息是采用什么编码

问题描述 第一次做环信,很多地方都不懂,请教下环信推送过来的消息:t:"" f:"" m:"" 这里m对应的消息是采用什么编码的 怎么获得真实数据 解决方案 m字段就是对应的messageId.http://www.easemob.com/docs/ios/IOSSDKApnsInfo/

iOS 前台收到推送信息,判断消息类别做判断

问题描述 iOS前台收到服务器发的推送消息后,我想要在这里对消息进行截取判断,例如弹出对应提示框等,,不过我能看到消息的日志打印,不知道是在哪里出发的日志的输出,所以没办法及时截取,我在didReceiveRemoteNotification方法里判断似乎不起作用.这里我应该怎么处理下,还请协助,谢谢!!! 解决方案 前台不能收到推送的解决方案二:可能是我描述的不清楚,,我想在前台收到消息的时候对消息做对应处理,收到消息时候,我可以看到日志有打印,但是找不到出口在哪里,明白??? 说明下,这里的

微软推送本月9个安全补丁 影响所有Windows/Office

微软今天开始推送7月份安全补丁,共9个,修复16个漏洞.其中,MS12-043.MS12-044与MS12-045为最高的"严重"级别,涉及Windows和IE.另外6个安全补丁则是重要级别,影响Office.开发工具.Windows和微软Server Software.微软CORE安全部门高级主管Alex Horan曾指出:"最重要的补丁是1.3和4,补丁1和补丁3修复了可能导致远程代码执行的漏洞,攻击者利用这些漏洞可以攻击几乎所有版本Windows."补丁4则影

Urban Airship:优化信息推送提升应用用户停留率

据http://www.aliyun.com/zixun/aggregation/4415.html">Urban Airship的研究,倾向于消息推送的移动应用用户在使用应用一个月后的停留率会高26%,而六个月后的停留率则高两倍. Urban Airship是一家向开发者提供消息报和应用内购解决方案的机构.它公布这些数据将会成为该机构Good Push Index的一部分.Urban Airship成立于2011年八月,利用其提供的服务来研究应用来追踪接受信息服务的用户的参与度与停留度,