首页 > 解决方案 > 如何格式化 xmpp 存在节以加入 MUC 房间

问题描述

我试图弄清楚如何格式化发送到房间的存在节,但我没有遵循我在网上找到的示例。

presence_stanza = f"<presence xmlns='jabber:client' from='{user_id}@conference.domain.com/{what_goes_here} to='{room_id}@conference.domain.com'/>"

特别是我不确定地址中跟随/的ID/字符串是什么。from

以供参考:

https://www.ejabberd.im/node/5189/index.html

Ejabberd 不向其他名册成员发送存在节

标签: xmppejabberd

解决方案


您应该阅读多用户聊天规范,尤其是描述如何进入房间的部分:https ://xmpp.org/extensions/xep-0045.html#enter

规范示例得到了很好的评论。

您甚至不需要设置 from。服务器将为您设置当前会话的完整 JID。需要是一个完整的toJID,确实包括 room_id,还包括房间中用户的昵称。它应该是这样的:

<presence to='{room_id}@conference.domain.com/{user_nick_in_the_room}'/>

推荐阅读