Не удалось подключить клиент aSmack к моему серверу ejabberd2 в Android

Я создаю приложение чата с использованием 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)

person Deven    schedule 06.06.2013    source источник


Ответы (1)


Я думаю, что проблема связана с предоставленным вами портом, используйте 5222 вместо 5280, потому что клиенты XMPP подключаются к 5222, а не к 5280.

person amrinder007    schedule 06.06.2013