WhatsApp如何实现iOS中推送通知推送的邮件的送达回执?

时间:2015-02-05 16:10:56

标签: ios push-notification xmpp

当用户Y离线时,用户X(在Android中具有Whatsapp)尝试向iOS中的用户Y(具有Whatsapp)发送消息。用户Y接收到来自用户X的消息的推送通知。一旦接收到推送通知,用户X就能够在他的WhatsApp客户端中看到双刻度标记。 WhatsApp如何能够确定推送通知已成功传送到iOS客户端?

3 个答案:

答案 0 :(得分:0)

Whatsapp使用基于TCP的XMPP。因此,如果服务器能够获得与Y的连接,则应确保已传递消息。 因此,如果whatsapp服务器能够将消息发送到Y,则消息将被推出服务器。如果Y已启用扩展程序以发送消息状态,则Y会自动将响应者发送到X,扩展名为“已发送”。

答案 1 :(得分:0)

在没有看到至少WhatsApp的协议转储的情况下,真的不可能知道发生了什么,所以猖獗的推测:

我猜WhatsApp正在使用Message Delivery Receipts,它依赖于客户端响应消息,而不是服务器。由于推送通知与中间服务(例如,APNS)通信,中间服务本身不会发送所述收据确认,因此在接收到推送通知时在设备上运行的客户端唤醒,分析该消息,并将递送确认发送到对话框的发起者。

至少,如果我试图利用现有标准,我就是这样做的,这不一定是WhatsApp正在做的事情。

答案 2 :(得分:-1)

我真的不知道,但我会说Whatsapp会在后台保留一项检测它的服务。如果我是正确的,当您完全关闭应用程序(从多任务处理)并收到消息时,如果您不打开应用程序,则另一个人不会看到收到的双重打勾。