【问题标题】:How to know if my message is successfully delivered to a XMPP server?如何知道我的消息是否成功传送到 XMPP 服务器?
【发布时间】:2014-10-21 19:22:31
【问题描述】:

我在这里使用 Openfire 和 iOS XMPPFramework。我知道 XEP-0184 的存在,但这不是我要问的。我想知道Openfire服务器是否成功接收到我的消息(我的消息发送成功),到目前为止,当我向openfire服务器发送消息时,服务器没有任何响应,所以我不知道消息是否成功通过与否。擅长XMPPFramework的人可以给我一些示例代码:

  1. 服务器收到消息时要求服务器返回回执
  2. 处理从服务器发回的收据

我的直觉告诉我 id 属性可能是我在这里寻找的,但我在网上找不到相关信息。

感谢您的宝贵时间。

【问题讨论】:

    标签: xmpp


    【解决方案1】:

    唯一的标准化解决方案是XEP-198: Stream Management,它为客户端和服务器(以及 s2s)之间的节提供流级别的确认。 Openfire does not (yet) support Stream Management: OF-446.

    除此之外,XMPP 没有(标准化的)收据方法,一旦他收到该节,服务器就会向客户端发送收据。请注意,这与提供端到端收据的XEP-184: Message Delivery Receipts 不同。

    【讨论】:

    • 感谢您的回答,我想我必须编写一些自定义插件来模仿 xep 198。我现在会接受解决方案。
    • @Alex。你成功使用XEP198了吗?你用过这个piece of Code from XMPPFramework for iOS
    • 我没有使用 xep 198,因为我的服务器不支持它。
    猜你喜欢
    • 2013-08-19
    • 1970-01-01
    • 2020-10-24
    • 1970-01-01
    • 1970-01-01
    • 2012-01-18
    • 2011-11-11
    • 2014-02-26
    • 1970-01-01
    相关资源
    最近更新 更多