我正在使用RobbieHanson IOS XMPP框架,並且能夠使用示例應用程序正確連接到Google Talk,該應用程序顯示帶有在線狀態的名單。但是,當我使用XMPP框架連接到Cisco IM Presence服務器(基於XMPP)時,我能夠連接到服務器,但是名單沒有被創建,並且在NSLog中出現以下錯誤該框架。連接到思科IM Presence XMPP服務器的IOS XMPPFramework問題
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="[email protected]/312468361axcdf9887297cfd57d3e98474e447" type="error"><bind xmlns="urn:ietf:params:xml:ns:xmpp-bind"><resource>8222d2468361a8ff9887297cfd57d3e98474e447</resource></bind><error code="400" type="modify"><bad-request
這個問題似乎是<iq>
實體缺少<id>
屬性,當我對比這個日誌與日誌從正確連接到思科IM Presence Server可以
另一個IM客戶端生成(詳情如下) IM客戶端登錄各地IQ設置連接:
<iq type='set' id='purple95a4a0c3'><bind xmlns='urn:ietf:params:xml:ns:xmpp-bind'><resource>pidgin</resource></bind></iq>
我想檢查是否有設置在XMPPFramework爲<iq>
元素id屬性的方式和/或是否有somethi否則我需要解決這個問題。
作爲一個方面說明,我注意到,谷歌對話工作,而不需要對<iq>
元素id屬性,而在http://xmpp.org/rfcs/rfc3920.html#stanzas-semantics-iq的XMPP規範表示id爲<iq>
元素的強制屬性。