我正在使用Smack 4.2来实现一个相当基本的XMPP聊天客户端。我正在使用Prosody XMPP服务器。Prosody 对所有传入节中要求 "xmlns=jabber:client" 相当严格。Smack 4.2 在其传出节中不包含此属性。我尝试扩展绑定和会话节,我可以使连接以这种方式工作。但是,现在我正在加入房间,我真的不想修改 Smack 的 MUC 代码,以便它可以接受修改后的状态消息。
请帮忙!!
我不知道为什么 Prosody 服务器需要它,官方 XEP-0045 标准 https://xmpp.org/extensions/xep-0045.html#enter 中没有任何关于它的内容
也许有一种方法可以以某种方式在韵律方面禁用它
Smack 4.3 确实为每个传出的 IQ 添加了 xmlns:https://github.com/igniterealtime/Smack/blob/master/smack-core/src/main/java/org/jivesoftware/smack/packet/Stanza.java#L518
这样至少可以解决 xmlns 问题。