2014-02-05 3 views
0

Эй, как я могу отображать каждый ответ с сервера xmpp?Ответ сервера Java Smack XMPP

Я пытаюсь отправить сообщения, но многие из них теряются в пути, поэтому я хочу проверить ответ сервера. Я использую smack 3.3.1 для отправки в порт xmpp facebook.

DeliveryReceiptManager и/или MessageEventManager не будут показывать ничего, поэтому я хотел бы видеть все, на что сервер отвечает!

ConnectionConfiguration config = new ConnectionConfiguration("chat.facebook.com",5222); 
config.setSASLAuthenticationEnabled(true);  
XMPPConnection connection = new XMPPConnection(config); 

     try { 
      //ESTA LINEA HACE QUE NO DE TIMEOUT 
      SmackConfiguration.setPacketReplyTimeout(15000); 
      XMPPConnection.DEBUG_ENABLED = true; 
      SASLAuthentication.registerSASLMechanism("X-FACEBOOK-PLATFORM", SASLXFacebookPlatformMechanism.class); 
      SASLAuthentication.supportSASLMechanism("X-FACEBOOK-PLATFORM", 0); 
      connection.connect(); 
      String apiKey = "1234567"; 
      String accessToken = ""; 
      connection.login(apiKey, accessToken); 

     }catch (XMPPException e){ 
      e.printStackTrace(); 
     } 
     try { 
      DeliveryReceiptManager deliveryReceiptManager = DeliveryReceiptManager.getInstanceFor(connection); 
      deliveryReceiptManager.addReceiptReceivedListener(new ReceiptReceivedListener() { 
       @Override 
       public void onReceiptReceived(String s, String s2, String s3) { 
        System.out.println("REVEIVED RESPONCE"); 
        System.out.println(s); 
        System.out.println(s2); 
        System.out.println(s3); 
       } 
      }); 
      Chat chat = connection.getChatManager().createChat("[email protected]", new MessageListener() { 
       @Override 
       public void processMessage(Chat chat, Message message) { 
        if(message.getType() == Message.Type.chat) 
         System.out.println(chat.getParticipant() + " says: " + message.getBody()); 
       } 
      }); 
      Message msg = new Message(); 
      msg.setSubject("Invite"); 
      msg.setBody("blablabla"); 
      DeliveryReceiptManager.addDeliveryReceiptRequest(msg); 
      //MessageEventManager.addNotificationsRequests(msg, true, true, true, true); 

      chat.sendMessage(msg); 
      try { 
       Thread.sleep(10000); 
      } catch (InterruptedException e) { 
       e.printStackTrace(); 
      } 

     }catch (XMPPException e){ 
      e.printStackTrace(); 
     } 

     try { 
      Thread.sleep(10000); 
     }catch (InterruptedException e) { 
      e.printStackTrace(); 
     } 

ответ

0

Connection.DEBUG_ENABLED = true;

+0

этот вариант уже установлен! – prototyp

+0

Затем окно отладки должно быть открыто с отображением всей активности (в обоих направлениях). Разве это не подходит? – Robin

+0

Нет ничего не отображается. Должен ли быть дополнительный отладочный вывод? Благодаря! – prototyp

Смежные вопросы