我想在我的应用程序中实现群聊,为此我正在使用MUC聊天室来实现它。
这里我想添加一个成员列表(我有JID的)到房间。 我想在内部将它们添加到列表中的所有成员。如何在不邀请它们的情况下添加它们。
添加成员后,我想实现一项功能,无论何时聊天室的用户发送消息或聊天,都应该将其传递给所有其他用户。
主要问题是如何将成员添加到聊天室
代码:
private void createRoom(){
MultiUserChat privateRoom = new MultiUserChat(connection, "testGroup@conference.abc.com");
try {
privateRoom.join("gaurav","123456");
privateRoom.sendConfigurationForm(new Form(Form.TYPE_SUBMIT));
System.out.println("Room Created!!!");
Message message = new Message("testGroup@conference.abc.com", Message.Type.normal);
message.setBody("Happy User");
privateRoom.sendMessage(message);
} catch (XMPPException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
}
答案 0 :(得分:2)
XEP-0045不包含客户被强制成为聊天室参与者的场景。虽然您可以向联系人(直接发送给用户或通过MUC服务器)发送邀请,但在联系人的客户请求加入会议室之前,联系人实际上并未加入聊天室。
因此,将用户添加到聊天室而不邀请他们需要在用户的客户端中提供特殊支持。可能会修改客户端以自动接受来自可信联系人的聊天室邀请。