天天看點

smack+openfire 群聊(三)(解決建立群失敗的問題,以及永久房間問題)

上一篇文章,我們已經寫了,單聊和注冊使用者,我們這節講一下建立群聊的問題以及發送群消息

第一步,建立房間,以及房間成員加入

public String createChatRoom(String nickName, String source, String kf) throws SmackException, IOException {
		HashMap<String, Object> map = new HashMap<>();
		map.put("customer_id", nickName);
		List<ChatGroup> list = chatGroupService.selectByMap(map);
		// 組裝群聊jid,這裡需要注意一下,群jid的格式就是 群名稱@conference.openfire伺服器名稱
		String roomName = System.currentTimeMillis() + "";
		if (list.size() > 0) {
			return roomName;
		}

		// 管理者在每一個群裡
		AbstractXMPPConnection connection = getXmpptcpConnection("admin", "admin");
		try {
			connection.connect();
			connection.login();
			ConnectionMap.put("admin", connection);
			String jid = roomName + "@conference." + connection.getServiceName();
			EntityBareJid groupJid = JidCreate