聊天室和组聊

聊天室是一种极好的方式,在一个相互协作或多用户应用程序里来培养团队意识。

 

GTalk服务支持聊天室和组聊。它们同样使用相同的IChatSession接口来管理。

 

创建一个新的聊天室,使用IM会话的createGroupChatSession方法,传入一个聊天室的昵称和一个受邀用户的列表,如下面的代码片段所示:

 

String nickname = Android Development;

String[] contacts = { bill, fred };

imSession.createGroupChatSession(nickname, contacts);

 

可变通的地方,你可能想加入其他人已经邀请你的组聊。使用IGroupChatInvitationListener接口来监听组聊邀请。每个邀请包含地址和加入已有聊天室的密码。

 

为了加入一个已经存在的聊天室,使用活跃的IM会话的joinGroupChatSession方法,传入你想加入聊天室的地址,你识别它的昵称和加入所需要的密码,如下面的片段所示:

 

imSession.joinGroupChatSession(address, nickname, password);

 

接下来的框架代码显示了如何在一个活跃的IM会话上注册一个组聊邀请监听者,来监听和接受加入聊天室的邀请。

 

IGroupChatInvitationListener listener = new IGroupChatInvitationListener.Stub() {

public boolean onInvitationReceived(GroupChatInvitation _invite)

throws RemoteException {

String address = _invite.getRoomAddress();

String password = _invite.getPassword();

String nickname = _invite.getInviter();

imSession.joinGroupChatSession(address, nickname, password);

return true;

}

};

try {

imSession.addGroupChatInvitationListener(listener);

} catch (RemoteException e) { }
posted on 2009-10-06 22:19  xirihanlin  阅读(749)  评论(1编辑  收藏  举报