【发布时间】:2016-07-06 05:12:02
【问题描述】:
我正在为群聊创建多用户聊天室,多用户可以在其中聊天。我在 jsp 中为此使用 smack 。加入房间后,我为多用户聊天室添加了消息监听器。
// Get the MultiUserChatManager
MultiUserChatManager manager = MultiUserChatManager.getInstanceFor(xmppConnection);
// Create a MultiUserChat using an CustomXMPPConnection for a room
MultiUserChat multiUserChat = manager.getMultiUserChat(chatRoomName + "@conference." + xmppConnection.getServiceName());
multiUserChat.addMessageListener(new MessageListener()
{
@Override
public void processMessage(Message message) {
System.out.println("Message listener Received message in send message: "
+ (message != null ? message.getBody() : "NULL") + " , Message sender :" + message.getFrom());
}
});
发送消息代码:
Message message = new Message(chatRoomName, Message.Type.groupchat);
message.setBody(msg);
message.setType(Message.Type.groupchat);
message.setTo(chatRoomName);
multiUserChat.sendMessage(message);
我的问题是在消息侦听器中收到消息后,我将如何向其他用户显示消息?
【问题讨论】:
-
你的问题来了个 180°。首先是“如何向多用户聊天的所有参与者发送消息?” (这是标题仍然说的),现在是“在消息侦听器中收到消息后如何显示消息?”。这显然取决于您用于与用户交互的任何内容,在您的情况下可能是 JSP。那么也许是某种浏览器通知和/或您将聊天可视化?
-
@Flow 很抱歉没有先解决我的问题。我正在努力寻求解决方案
标签: xmpp smack multiuserchat