我想通过使用asmack发送消息给名册集团(喜欢的朋友组)。(我不想使用多用户聊天创建会议室)
Asmach有这样的:
Message msg=new Message(java.lang.String to, Message.Type type)
当希望在一台用户我使用:消息(“a@b.com”,Message.Type.chat)
但在群聊中,我想我必须使用消息(java.lang.String中来,Message.Type.groupchat),但我不知道java.lang.String中来应该是什么?
XMPP不specifiy的机制将消息发送到名册组。 但是你可以很容易地实现自己找。 只是收集所有的JID的,最终全部派驻,名册组和发送消息给他们中的每一个(最好用拍击的MultipleRecpientManager )。
我设法在以下方式发送消息给所有名册组成员。 你可以试试。
该组中的发送消息给多个用户的方法
/**
* Sends Group message
*
* @param message
* @param groupName
* @throws XMPPException
* @throws SmackException.NotConnectedException
*/
public void sendGroupMessage(String groupName, String message) throws SmackException.NotConnectedException, XMPPException {
Roster roster = connection.getRoster();
RosterGroup rosterGroup = roster.getGroup(groupName);
Collection<RosterEntry> entries = rosterGroup.getEntries();
for (RosterEntry entry : entries) {
String user = entry.getName();
System.out.println(String.format("Sending message " + message + " to user " + user));
Chat chat = chatManager.createChat(user, messageListener);
chat.sendMessage(message);
}
}
调用方法
classNameOfYourMethod.sendGroupMessage(groupName, groupMessage);
如果需要分类问评论。