Невозможно получать сообщения чата с помощью smackx MultiUserChat API
Я пытаюсь использовать smack API для Android, чтобы создать чат с использованием учетных записей gmail. Мне удалось создать комнату и отправить сообщения в группу. Но когда кто-то отвечает, я не могу получать входящие сообщения ни непосредственно в окне чата, ни через программу (muc.addMessageListener(myMessageListener) и PacketListener).
ConnectionConfiguration config = new ConnectionConfiguration("talk.google.com", 5222, "gmail.com"); config.setSASLAuthenticationEnabled(true); connection = new XMPPConnection(config); connection.connect(); connection.login("kandroid6990@gmail.com", "password"); muc = new MultiUserChat(connection, "private-chat-12325669-dead-beff-feed-fedcba987454@groupchat.google.com"); muc.sendConfigurationForm(new Form(Form.TYPE_SUBMIT)); muc.join("kandroid6990"); muc.invite("karthikbaskar3@gmail.com/User1", "Welcome!"); muc.invite("kamaraj6990@gmail.com/User2", "Welcome!");
Message msg = new Message("private-chat-12325669-dead-beff-feed-fedcba987454@groupchat.google.com", Message.Type.groupchat); msg.addBody(Message.getDefaultLanguage(), messageText); muc.sendMessage(msg);
3 ответа
Попробуйте это может помочь в получении сообщения группового чата Просто внедрите прослушиватель группового чата
PacketFilter filter = new MessageTypeFilter(Message.Type.groupchat);
XmppTool.con.addPacketListener(new PacketListener() {
@Override
public void processPacket(Packet packet) {
Message message = (Message) packet;
}
}
}
}, filter);
private MultiUserChat muc; /* Initialize muc */
private void listeningForMessages()
{
muc.addMessageListener(new PacketListener() {
public void processPacket(Packet packet)
{
final Message message = (Message) packet;
// Do your action with the message
}
});
}