2017-04-15 16 views
2

私はejabbardサーバーに接続するために叩きを使用しています。 30秒後にsmackからの応答を得ることができません

4-15 12:09:22.626 2685-3195/com.example.itstym.kotlinchat I/DNSUtil: Could not resolve DNS SRV resource records for _xmpp-client._tcp.replica3377.cloudapp.net. Consider adding those. 
04-15 12:09:23.033 2685-3208/com.example.itstym.kotlinchat D/SMACK: SENT (1): <stream:stream xmlns='jabber:client' to='replica3377.cloudapp.net' xmlns:stream='http://etherx.jabber.org/streams' version='1.0' from='[email protected]' xml:lang='en'> 
04-15 12:09:23.189 2685-3209/com.example.itstym.kotlinchat D/SMACK: RECV (1): <?xml version='1.0'?><stream:stream id='3002662766383892485' version='1.0' xml:lang='en' xmlns:stream='http://etherx.jabber.org/streams' to='[email protected]' from='replica3377.cloudapp.net' xmlns='jabber:client'> 
04-15 12:09:23.190 2685-3209/com.example.itstym.kotlinchat D/SMACK: RECV (1): <stream:features><mechanisms xmlns='urn:ietf:params:xml:ns:xmpp-sasl'><mechanism>PLAIN</mechanism><mechanism>DIGEST-MD5</mechanism><mechanism>X-OAUTH2</mechanism><mechanism>SCRAM-SHA-1</mechanism></mechanisms></stream:features> 
04-15 12:09:28.846 2685-2754/com.example.itstym.kotlinchat D/SMACK: RECV (0): <stream:error><connection-timeout xmlns='urn:ietf:params:xml:ns:xmpp-streams'/></stream:error></stream:stream> 

またはので、私は別のエラーに

を取得しています:ピシャリ次のコード

val config=XMPPTCPConnectionConfiguration.builder() 
        .setXmppDomain(mDomainName) 
        .setUsernameAndPassword(mUsername,mPassword) 
        .setDebuggerEnabled(true) 

      mConnection= XMPPTCPConnection(config.build()) 

      Log.v("Current status ",mConnection!!.isConnected().toString()) 
      mConnection!!.connect() 

を使用してejabbardサーバーと接続するが、エラー/警告を取得し終わるTO

04-15 12:09:28.853 2685-2754/com.example.itstym.kotlinchat W/AbstractXMPPConnection: Connection XMPPTCPConnection[not-authenticated] (0) closed with error 
                        org.jivesoftware.smack.XMPPException$StreamErrorException: connection-timeout You can read more about the meaning of this stream error at http://xmpp.org/rfcs/rfc6120.html#streams-error-conditions 
                        <stream:error><connection-timeout xmlns='urn:ietf:params:xml:ns:xmpp-streams'/></stream:error> 
                         at org.jivesoftware.smack.tcp.XMPPTCPConnection$PacketReader.parsePackets(XMPPTCPConnection.java:1046) 
                         at org.jivesoftware.smack.tcp.XMPPTCPConnection$PacketReader.access$300(XMPPTCPConnection.java:980) 
                         at org.jivesoftware.smack.tcp.XMPPTCPConnection$PacketReader$1.run(XMPPTCPConnection.java:996) 
                         at java.lang.Thread.run(Thread.java:818) 

しかし、私がejabbardサーバーにチェックインすると、ユーザーのセッションが開始されます。また、converse.jsを使用して、私はユーザーがログインしていることを確認することができます。

だから私はスワックからの応答を得ていないと思います。

答えて

0

接続の作成に関するSMACKのドキュメントを見ると、connection.login()へのコールが欠落しているため、5秒後にタイムアウトします。

+0

https://download.igniterealtime.org/smack/docs/latest/documentation/connections.htmlは、私は、その後も、それはMSG正常に接続を私に送信する必要がありますのみ接続要求を作っていた場合:

ドキュメント(最後の2つのRECVメッセージ間のデルタを参照してください)。ところで私はlogin()メソッドも呼び出そうとしました。しかし、同じ反応を得た。 –

+0

@Kiskaeあなたはこの質問をチェックすることができますhttp://stackoverflow.com/questions/43491831/how-do-i-get-the-message-from-the-message-id-in-smack –

関連する問題