【发布时间】:2016-12-11 20:51:06
【问题描述】:
这是获取名册的示例 IQ 节
<iq from="alice@wonderland.lit/pda" id="rr82a1z7"
type="get">
<query xmlns="jabber:iq:roster"/>
</iq>
从此standard specification,可以通过设置“TO”属性将 Iq 节定向到特定用户,以便 xmpp 服务器将 IQ 节转发到“TO”属性中指定的 JID(完整 Jabber ID),@ 987654322@
但是当我查询 IQ 节以满足我的需要时
<iq from="alice@wonderland.lit/pda" id="rr82a1z7"
to="alice@wonderland.lit/Smack"
type="get">
<UserDetails xmlns="http://www.test.org/User/">
<userName>username</username>
</UserDetails>
</iq>
Stanza 被转发到“alice@wonderland.lit”,但我从 Openfire 服务器收到错误条件“未实现”的 IQ 节。
有没有办法摆脱这个错误并得到结果?
我按照tutorial 生成客户端。
我可以看到正在接收自定义 Stanza 的 wireshark 痕迹,但看不到“myIQListener”被调用?
问题:
- 我还缺少任何其他中间步骤吗?
- 还有其他更好的例子吗?
【问题讨论】:
-
要将节发送到另一个名册,您需要在名册订阅列表中。
-
@GirishKumar 啊哈,谢谢你的信息,我会核实
-
该示例有效,它是命名空间中的拼写错误,需要一整天才能修复。再次证明检查你自己的代码是否有错别字应该是第一要务,而不是对你所拥有的知识感到不安全:)
标签: java xmpp openfire smack xmppframework