gpt4 book ai didi

xmpp - 如何在 ejabberd/XMPP 中获得发送/接收消息的确认?

转载 作者:行者123 更新时间:2023-12-04 14:45:44 24 4
gpt4 key购买 nike

如何使用 XMPP framework 知道该消息正在传递给其他用户和 ejabberd , 我们使用 XEP-0184 Message Delivery Receipts 类,我们在发送消息时发送回执请求,但没有得到任何响应。

我的查询是我是否需要在服务器上配置任何东西(或 ejabberd.cfg 文件中的任何更改),或者我们需要做的任何客户端代码。

最佳答案

不,XEP-0184 是纯粹的客户端协议(protocol),因此无需在服务器上设置任何内容。

您没有收到任何确认的原因可能有:

  • 您的客户只是没有XEP-0184启用。
  • 根据您使用的 XMPP 库(在两个客户端上——发送者和接收者),发送者可能决定不要求收据 discovers (通过查询对等体的能力)它有XEP-0184关掉。

    可能更清楚一点:XEP 通常建议实现检查 XEP 定义的功能是否受支持,如果不支持则不要尝试使用它。并非所有的库和客户端都这样做,但有些会这样做。这意味着一些实现可能是这样的:好的,我被要求发送收据请求,所以
  • 在我即将联系的对等方上进行服务发现。
  • 检查是否有XEP-0184启用。
  • 如果没有,我会默默地不附上任何收据请求。

  • 一个特定的 XMPP 库是否自己做到这一点取决于“智能”的制作方式。
    如果通过 XMPP Framework你的意思是 this library ,请尝试阅读它的源代码以查看它是否“智能”并询问对等方的上限,然后检查是否 XEP-0184已启用。

    还要检查是否可以启用客户端交换的 XML 流的日志记录。检查它们是调试 XMPP 相关问题的最佳方式。

    关于xmpp - 如何在 ejabberd/XMPP 中获得发送/接收消息的确认?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/20630926/

    24 4 0
    Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
    广告合作:1813099741@qq.com 6ren.com