私は RobbieHanson IOS XMPP フレームワークを使用しており、プレゼンス ステータスと共に名簿を表示するサンプル アプリケーションを使用して Google トークに正しく接続できます。
ただし、XMPP フレームワークを使用して Cisco IM Presence サーバ(XMPP ベース)に接続すると、サーバに接続できますが、名簿が作成されず、フレームワークに付属する NSLog に次のエラーが表示されます。
NSLog:
2013-02-18 20:32:07:015 iPhoneXMPP[26080:12f03] SEND: <iq type="set"><bind xmlns="urn:ietf:params:xml:ns:xmpp-bind"/></iq>
2013-02-18 20:32:07:064 iPhoneXMPP[26080:12f03] RECV: <iq xmlns="jabber:client" to="userid@cisco.com/312468361axcdf9887297cfd57d3e98474e447" type="error"><bind xmlns="urn:ietf:params:xml:ns:xmpp-bind"><resource>8222d2468361a8ff9887297cfd57d3e98474e447</resource></bind><error code="400" type="modify"><bad-request
このログと、Cisco IM Presence Server に適切に接続する別の IM クライアントから生成されたログ (詳細の下) を比較すると、<iq>
エンティティに属性がないことが問題のようです。<id>
接続する IM クライアント ログアラウンド IQ 設定:
<iq type='set' id='purple95a4a0c3'><bind xmlns='urn:ietf:params:xml:ns:xmpp-bind'><resource>pidgin</resource></bind></iq>
XMPPFramework の要素の id 属性を設定する方法がある<iq>
かどうか、および/または問題を解決するために他に何かする必要があるかどうかを確認したかったのです。
補足として、要素に id 属性を必要とせずに Google トークが機能していることに気付きましたが、 http<iq>
://xmpp.org/rfcs/rfc3920.html#stanzas-semantics-iq の xmpp 仕様では id が必須属性であることが示されています。要素の。<iq>