Mam skonfigurować mój otwarty ogień (serwer Jabber) na komputerze lokalnym z dwoma użytkownikami testu1 i testuser2. Korzystanie z klienta Spark zarówno użytkownicy wykonują czat bez żadnego problemu, to miło.wysyłanie i odbieranie wiadomości za pomocą smack API
Openfire IP -192.168.1.65
chcę użyć zadatki API (3.3.0) do wysyłania i odbierania wiadomości. Mam kod boczny nadawcy do wysyłania wiadomości (z testuser1) i testowany z komunikatem Spark klienta (z testuser2) odebranym po stronie testuser2, ale kiedy próbuję z kodem java odbierać wiadomość nadawcy, nie mogę odbierać tych wiadomości.
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("[email protected]", 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("[email protected]", 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 zaproponować, jeśli jestem po błędne podejście.
Dzięki
Drugie rozwiązanie pracował, dziękuję za świetne rozwiązanie. – Andy