2012-03-16 121 views
0

我試圖在nimbuzz協議中獲得更多信息,並可能找到任何開源實現。連接到nimbuzz與opensource xmpp庫聊天

http://en.wikipedia.org/wiki/Nimbuzz_IM

似乎nimbuzz讓不同協議的用戶之間的連接,但它提供了自己的網絡

編輯

Nimbuzz軟件用戶之間的通信,我已經能夠想知道nimbuzz聊天協議是XMPP,我冒昧嘗試連接並與XMPP客戶端庫如agsXMPP聊天。

我已經無法到目前爲止,連接或做任何事,到目前爲止我的代碼看起來像:

 XmppClientConnection xmpp; 

     void onLoginHandler(object o) 
     { 
      xmpp.Send(new Message("[email protected]", MessageType.chat, "hello world!")); 
     } 

     void errorHandler(object sender, Element e) 
     { 
     } 

     void exceptionHandler(object sender, Exception ex) 
     { 
     } 

     void rosterStartHandler(object sender) 
     { 
     } 

     void rosterEndHandler(object sender) 
     { 
     } 

     void rosterItemHandler(object sender, RosterItem item) 
     { 
     } 

.....然後試圖用

xmpp = new XmppClientConnection("nimbuzz.com"); 
       xmpp.AutoRoster = true; 
       xmpp.ConnectServer = "o.nimbuzz.com"; 
       xmpp.OnLogin += onLoginHandler; 
       xmpp.OnAuthError += errorHandler; 
       xmpp.OnError += exceptionHandler; 
       xmpp.OnRosterStart += rosterStartHandler; 
       xmpp.OnRosterItem += rosterItemHandler; 
       xmpp.OnRosterEnd += rosterEndHandler; 
       xmpp.Open("[email protected]", "mypassword"); 

但是打開後I位在OnAuthError與下列元素輸入:

<not-authorized xmlns="urn:ietf:params:xml:ns:xmpp-sasl" /> 

我試圖嗤之以鼻Nimbuzz軟件包使用Wireshark登錄,儘管一些握手XMPP包,其餘的似乎是加密的,這是我能嗅出:

<stream:stream to='nimbuzz.com' xmlns='jabber:client' xmlns:stream='http://etherx.jabber.org/streams' version='1.0' xml:lang='en'> 

server - 195.211.49.6 (o.nimbuzz.com) 
<stream:features> 
<starttls xmlns="urn:ietf:params:xml:ns:xmpp-tls"/> 
<compression xmlns="http://jabber.org/features/compress"> 
<method>zlib</method> 
</compression> 
<mechanisms xmlns="urn:ietf:params:xml:ns:xmpp-sasl"> 
<mechanism>PLAIN</mechanism> 
<mechanism>DIGEST-MD5</mechanism> 
</mechanisms> 
<register xmlns="http://jabber.org/features/iq-register"/> 
</stream:features> 

client - <starttls xmlns="urn:ietf:params:xml:ns:xmpp-tls"/> 

server - <proceed xmlns="urn:ietf:params:xml:ns:xmpp-tls"/> 

問題如果有人能夠找到正確的方式連接到與開源XMPP庫的nimbuzz聊天並在此發佈解決方案,我將授予問題獎勵。 (我可能會增加獎金,如果問題需要我超過了其餘4天)

回答

0

是Wireshark的會議確定後,似乎Nimbuzz軟件實際上是XMPP協議

0

// xmpp.ConnectServer =「o.nimbuzz.com」;

你必須使用openfire.nimbuzz.com連接Nimbuzz軟件

&

添加這一點,並嘗試---->

ConnectionConfiguration config = new ConnectionConfiguration(URLConstants.XMPP_HOST, URLConstants.XMPP_PORT); 
     config.setSASLAuthenticationEnabled(false); 
config.setSASLAuthenticationEnabled(false); 
config.setSecurityMode(ConnectionConfiguration.SecurityMode.enabled); 
config.setCompressionEnabled(false);