Hi camels, I tried to implement a simple XMPP bot, but reading and responding from/to the same XMPP chat seems to fail: The bot seems to send the messages to itself.
I configured an endpoint using: String userA = "bot", userB = "human", server = "SERVER", port = "5222", passwordA = "secret"; final String chatEndpoint = String.format("xmpp://%s@%s:%s/%s@%s?password=%s", userA, server, port, userB, server, passwordA); which produces an endpoint such as xmpp://bot@SERVER:5222/human@SERVER?password=secret so the bot authenticates with SERVER and it will talk to human@SERVER. The bot is indeed able to read from XMPP and dump the messages to std::out: from(chatEndpoint) .to("stream:out"); And the bot is able to send XMPP messages: from("timer://foo?fixedRate=true&period=1000") .setBody(constant("test")) .to(chatEndpoint); So far, I'm really impressed! :) However, simply responding to the human's message fails: from(chatEndpoint) .to(chatEndpoint); My XMPP server (prosody) shows me, that the bot sends the messages to itself: debug Received[c2s]: <message id='g0x1L-5' type='chat' to='bot@SERVER' from='bot@SERVER/Camel'> But I have no idea why.. Am I doing something wrong? I tried adding &participant=human@SERVER to the chatEndpoint which doesn't solve the issue. I also tried to create two separate chat endpoints with different resource names, but that didn't work either. Any help is very much appreciated. Best wishes, Martin
signature.asc
Description: OpenPGP digital signature