You need to create a chat after successful connection and authentication
Once you have received an instance of ChatManager . To transfer a package, you need createchat with peer / group checking this link for the create method.
chatManager = ChatManager.getInstanceFor(abstractXMPPConnection); newChat = chatmanager.createChat(userid, chatManagerListener);
after receiving the Chat instance, you can send the package and upload it to chatmanagerListner
from newChat you can sendMessage
Receive package (message, chat)
You can try to execute the code below if the connection / authentication process is successful than
final Chat newChat = ChatManager.getInstanceFor(xmppConn).createChat(userJid, new MessageListener() { @Override public void processMessage(final Chat arg0, final Message arg1) { LOG.info("Sent message: " + arg1.getBody()); } }); try { final Message message = new Message(); message.setFrom(chatProperties.getDomain()); message.setTo(userJid); message.setType(Type.normal); message.setBody(text); message.setSubject(""); newChat.sendMessage(message); xmppConn.disconnect(); } catch (final Exception e) { LOG.error("Error while sending message to " + userName + ": ", e); }
UPDATE
You can try using PacketListener .
XMPPConnection addPacketListener check this link .
Add PacketListener to XMPPConnection with PacketFilter message
But before adding packagelistner, delete if any instance has already been added to xmppconnection.
Check code below
private PacketListener packetListener = new PacketListener() { @Override public void processPacket(Packet packet) { if (packet instanceof Message) { Message message = (Message) packet; String chatMessage = message.getBody(); } } }; private void regiSterPackateListner() { PacketTypeFilter filter = new PacketTypeFilter(Message.class); try { if (packetListener != null) {
source share