如何使用 smack 库将自定义 IQ 节发送给另一个用户?
How to send Custom IQ stanzas to another user using smack library?
这是获取花名册的示例 IQ 节
<iq from="alice@wonderland.lit/pda" id="rr82a1z7"
type="get">
<query xmlns="jabber:iq:roster"/>
</iq>
由此standard specification, Iq stanzas can be directed to certain user by setting the "TO" attribute so that xmpp server will forward the IQ stanza to the JID(Full Jabber ID) specified in the "TO" attribute, check specification
但是当我查询 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 服务器收到错误条件为“feature-not-implemented”的 IQ Stanzs。
有什么方法可以消除这个错误并得到结果吗?
我按照这个 tutorial 生成了客户。
我可以看到正在接收自定义节的 wireshark 跟踪,但看不到正在调用“myIQListener”?
问题:
- 还有我遗漏的任何其他中间步骤吗?
- 还有其他更好的例子吗?
您需要发送自己的 <presence type="subscribe" to="alice@wonderland.lit"/>
或需要在其他用户的花名册列表中:
参考:here
或
这就是我解决自己问题的方法。
使用完整的 jabber ID(包括资源)
因为 smack 库不理解 Custom IQ Stanzas 工具
拥有 IQProvider ,过滤并将其添加到您的连接中
解释 here
这是获取花名册的示例 IQ 节
<iq from="alice@wonderland.lit/pda" id="rr82a1z7"
type="get">
<query xmlns="jabber:iq:roster"/>
</iq>
由此standard specification, Iq stanzas can be directed to certain user by setting the "TO" attribute so that xmpp server will forward the IQ stanza to the JID(Full Jabber ID) specified in the "TO" attribute, check specification
但是当我查询 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 服务器收到错误条件为“feature-not-implemented”的 IQ Stanzs。
有什么方法可以消除这个错误并得到结果吗?
我按照这个 tutorial 生成了客户。
我可以看到正在接收自定义节的 wireshark 跟踪,但看不到正在调用“myIQListener”?
问题:
- 还有我遗漏的任何其他中间步骤吗?
- 还有其他更好的例子吗?
您需要发送自己的 <presence type="subscribe" to="alice@wonderland.lit"/>
或需要在其他用户的花名册列表中:
参考:here
或
这就是我解决自己问题的方法。
使用完整的 jabber ID(包括资源)
因为 smack 库不理解 Custom IQ Stanzas 工具 拥有 IQProvider ,过滤并将其添加到您的连接中 解释 here