wysyłać i odbierać wiadomości za pomocą API smack

Skonfigurowałem mój otwarty ogień (serwer Jabber) na komputerze lokalnym z dwoma użytkownikami testuser1 i testuser2. Przy użyciu klienta Spark obaj użytkownicy wykonują czat bez żadnego problemu, jest to miłe.

otwarty ogień IP-192.168.1.65

Chcę używać smack API (3.3.0) do wysyłania i odbierania wiadomości. Mam kod po stronie nadawcy do wysłania wiadomości (z testuser1) i przetestowany przy użyciu komunikatu klienta Spark (z testuser2) odebranego po stronie testuser2, ale gdy próbuję za pomocą kodu java odebrać wiadomość nadawcy, nie jestem w stanie odbierać tych komunikatów publikowania.

Sender.java

import org.jivesoftware.smack.Chat;
import org.jivesoftware.smack.XMPPConnection;
import org.jivesoftware.smack.XMPPException;
import org.jivesoftware.smack.packet.Message;
import org.jivesoftware.smack.MessageListener;

public class Sender 
{

    public static void main(String a[]) throws XMPPException, InterruptedException
    {
         XMPPConnection connection = new XMPPConnection("192.168.1.65");  
         System.out.println(connection);
         connection.connect();
         connection.login("testuser1", "test123");



         Chat chat = connection.getChatManager().createChat("testuser2@sameek", new MessageListener() {

             public void processMessage(Chat chat, Message message) {
                 // Print out any messages we get back to standard out.
                 System.out.println("Received message: " + message);
             }
         });
         chat.sendMessage("Howdy test1!");

         while (true) {
        Thread.sleep(50);
    }





    }

}

Receiver.java

  import org.jivesoftware.smack.Chat;
import org.jivesoftware.smack.XMPPConnection;
import org.jivesoftware.smack.XMPPException;
import org.jivesoftware.smack.packet.Message;
import org.jivesoftware.smack.MessageListener;






public class Receiver
{

    public static void main(String a[]) throws XMPPException,, InterruptedException
    {
         XMPPConnection connection = new XMPPConnection("192.168.1.65");  
         System.out.println(connection);
         connection.connect();
         connection.login("testuser2", "test123");



         Chat chat = connection.getChatManager().createChat("testuser1@sameek", new MessageListener() {

             public void processMessage(Chat chat, Message message) {
                 // Print out any messages we get back to standard out.
                 System.out.println("Received message: " + message);
             }
         });
         chat.sendMessage("Howdy test2!");

         while (true) {
        Thread.sleep(50);
    }





    }

}

proszę mi pomóc i zasugerować, czy postępuję źle.

Dzięki

questionAnswers(3)

yourAnswerToTheQuestion