【问题标题】:Query MUC room archive messages查询MUC房间归档消息
【发布时间】:2018-10-18 05:38:20
【问题描述】:

我正在使用 ejabberd 18.01 开发聊天应用程序

在检索 MUC 房间消息时,有什么方法可以找到消息所有者 jid?

<x xmlns="http://jabber.org/protocol/muc#user"><item jid="romeo@lit.com/desktop"/></x>

房间管理员检索消息时,上面的xml是消息xml的一部分,但所有者是房间其他参与者的消息不包含x标签。

【问题讨论】:

    标签: erlang xmpp ejabberd


    【解决方案1】:

    所有者是房间其他参与者的消息,不包含x标签。

    仔细阅读https://xmpp.org/extensions/xep-0313.html#business-storeret-muc-archives的这段话

    在非匿名房间的情况下,或者如果 MUC 存档的接收者在查询时有权访问发送者的真实 JID,存档消息将使用由 ' 限定的元素中的扩展消息信息http://jabber.org/protocol/muc#user' 命名空间并包含一个具有 'jid' 属性的子级,该属性指定住户的完整 JID,如多用户聊天 (XEP-0045) [10] 中为非匿名房间存在所定义的那样。

    实际上,这意味着您必须配置房间并设置此选项:

    将真实的 Jabber ID 提供给:任何人

    或者,如果您希望在所有新房间中都使用此功能,请在 ejabberd.yml 中进行配置

    modules:
      mod_muc:
        default_room_options:
          anonymous: false
    

    【讨论】:

      猜你喜欢
      • 2021-01-04
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2018-03-22
      • 1970-01-01
      • 2018-10-05
      • 2019-03-11
      • 1970-01-01
      相关资源
      最近更新 更多