Я создаю приложение чата с использованием XMPP:
Для этого я использую eJabberd2 в качестве сервера и asmack lib (asmack-2010.05.07.jar) в качестве клиента в моем приложении для Android,
Мне удается подключиться к хосту talk.google.com, но не удается подключиться к моему хосту eJabberd.
Мой код:
1) Работает нормально:
@Override
protected Void doInBackground(Void... arg0) {
ConnectionConfiguration cc = new ConnectionConfiguration( "talk.google.com", 5222, "gmail.com" );
XMPPConnection connection = new XMPPConnection(cc);
try {
SASLAuthentication.supportSASLMechanism("PLAIN");
cc.setSASLAuthenticationEnabled(true);
connection.connect();
Roster.setDefaultSubscriptionMode(Roster.SubscriptionMode.manual);
Log.i("XMPPClient", "[SettingsDialog] Connected to "
+ connection.getHost());
} catch (XMPPException e1) {
Log.e("XMPPClient", e1.toString());
}
}
2) Не работает: мой eJabberd находится на http://68.178.255.136:5280/admin/
@Override
protected Void doInBackground(Void... arg0) {
ConnectionConfiguration cc = new ConnectionConfiguration( "68.178.255.136", 5280, "68.178.255.136" );
XMPPConnection connection = new XMPPConnection(cc);
try {
SASLAuthentication.supportSASLMechanism("PLAIN");
cc.setSASLAuthenticationEnabled(true);
connection.connect();
Roster.setDefaultSubscriptionMode(Roster.SubscriptionMode.manual);
Log.i("XMPPClient", "[SettingsDialog] Connected to "
+ connection.getHost());
} catch (XMPPException e1) {
Log.e("XMPPClient", e1.toString());
}
}
О/П:
06-06 17:20:27.231: E/XMPPClient(446): Connection failed. No response from server.:
06-06 17:20:27.381: W/System.err(446): java.net.SocketException: Socket closed
06-06 17:20:27.381: W/System.err(446): at org.apache.harmony.luni.platform.OSNetworkSystem.read(Native Method)
06-06 17:20:27.381: W/System.err(446): at dalvik.system.BlockGuard$WrappedNetworkSystem.read(BlockGuard.java:273)
06-06 17:20:27.381: W/System.err(446): at org.apache.harmony.luni.net.PlainSocketImpl.read(PlainSocketImpl.java:458)
06-06 17:20:27.381: W/System.err(446): at org.apache.harmony.luni.net.SocketInputStream.read(SocketInputStream.java:85)
06-06 17:20:27.381: W/System.err(446): at java.io.InputStreamReader.read(InputStreamReader.java:255)
06-06 17:20:27.381: W/System.err(446): at java.io.BufferedReader.read(BufferedReader.java:311)
06-06 17:20:27.381: W/System.err(446): at org.kxml2.io.KXmlParser.peek(KXmlParser.java:925)
06-06 17:20:27.381: W/System.err(446): at org.kxml2.io.KXmlParser.peekType(KXmlParser.java:589)
06-06 17:20:27.381: W/System.err(446): at org.kxml2.io.KXmlParser.nextImpl(KXmlParser.java:333)
06-06 17:20:27.381: W/System.err(446): at org.kxml2.io.KXmlParser.next(KXmlParser.java:1378)
06-06 17:20:27.381: W/System.err(446): at org.jivesoftware.smack.PacketReader.parsePackets(PacketReader.java:326)
06-06 17:20:27.381: W/System.err(446): at org.jivesoftware.smack.PacketReader.access$000(PacketReader.java:44)
06-06 17:20:27.381: W/System.err(446): at org.jivesoftware.smack.PacketReader$1.run(PacketReader.java:71)