O servidor XMPP não responde à solicitação de login do SMAT
Pergunta
Estou tentando estabelecer uma conexão com um servidor XMPP usando o Smack.
ConnectionConfiguration cf = new ConnectionConfiguration("jabber.ccc.de");
cf.setTruststorePassword("changeme");
this.connection = new XMPPConnection(cf);
this.connection.connect();
this.connection.login("user", "password");
Mas sempre que o login eu recebo uma XMPPEXCIPE (nenhuma resposta do servidor.:) E o soquete é fechado.
Alguma idéia do que está dando errado aqui?
Cumprimentos
Solução
Você já tentou ver quais são os dados XMPP reais que estão sendo enviados de/para o servidor?
Tente adicionar isso ao seu código na inicialização:
System.setProperty("smack.debugEnabled", "true");
XMPPConnection.DEBUG_ENABLED = true;
Outras dicas
Tente este.
ConnectionConfiguration cf = new ConnectionConfiguration("jabber.ccc.de",5222, "test");
cf.setTruststorePassword("changeme");
this.connection = new XMPPConnection(cf);
this.connection.connect();
this.connection.login("user", "password");
Basta colocar a linha a seguir antes de fazer a conexão.
SASLAuthentication.supportSASLMechanism("PLAIN");
Esse problema foi abordado por uma pessoa chamada Davanum; Veja o link
O problema é: você está por trás de uma lenta conexão à Internet. Você precisa aumentar o tempo limite para a resposta do pacote na Smack Config.
Estranhamente, você pode obter esse problema, apenas a primeira vez, após uma inicialização do sistema cliente (Windows).