【问题标题】:How to receive Message Delivery Receipts on Openfire?如何在 Openfire 上接收消息传递收据?
【发布时间】:2015-03-05 10:17:46
【问题描述】:

如何在 Openfire 服务器上接收消息传递回执?

我希望收到以下状态的确认:

  1. Openfire 服务器收到消息时
  2. 接收方客户端收到消息时
  3. 当接收者阅读了消息时。

简而言之,我想实现类似于 Whatsapp 的 PENDING、SINGLE TICK、DOUBLE TICK、BLUE DOUBLE TICK 等功能。

我知道,XMPP 确实支持此功能。 [XEP-0184]

经过大量搜索,我了解到 Openfire 不支持 XEP-0184。 问题 OF-434 已被 Openfire 社区关闭并标记为 Won't Fix

我还能如何做到这一点?我不想迁移到另一台服务器!

在 OPENFIRE 上实现消息传递收据的替代解决方案是什么?

【问题讨论】:

    标签: java xmpp server openfire jabberd2


    【解决方案1】:

    正如Flow's answer 中所暗示的,OpenFire 实际上确实支持 XEP-0184,因为它做了所有它需要做的事情以使 XMPP 客户端能够使用该协议。这涵盖了列表中的第 2 点(当接收方客户端收到消息时)。

    对于第 1 点(当 Openfire 服务器收到消息时),您需要服务器支持XEP-0198 (Stream Management)。不幸的是,Openfire doesn't support XEP-198 yet

    【讨论】:

    【解决方案2】:

    如果您仔细阅读您提到的 Openfire 问题,您可能会注意到 the last comment of the issue gives the reason it was closed as "Won't Fix":

    XEP-0184 与服务器无关。

    它纯粹是一个客户 客户端协议,并且有据可查的关于这意味着什么 关于由于可能存在的问题而没有收到消息的回执 由于服务器而出现。服务器没有什么可以实现的 有了这个规范,所以我要关闭它。

    此外,XEP-184 仅描述了交付收据的机制。它指定当服务器收到(“确认接收”)消息时或用户已阅读消息时不通知。

    服务器对传入节的确认可以使用 XEP-198 流管理完成,更详细的收据可以使用 XEP-333 聊天标记完成。只有 XEP-198 需要服务器支持,其他两个 XEP-184 和 XEP-333 是纯客户端 XEP。

    【讨论】:

      猜你喜欢
      • 2015-06-08
      • 2018-11-21
      • 1970-01-01
      • 2016-08-01
      • 2013-09-24
      • 2020-10-19
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多