hyphenate_SDK3.0  3.8.6.1
hyphenate java IM SDK
Public 成员函数 | 所有成员列表
com.hyphenate.chat.EMChatRoomManager类 参考

Public 成员函数

 EMChatRoomManager (EMClient client, EMAChatRoomManager manager)
 
void addChatRoomChangeListener (EMChatRoomChangeListener listener)
 
void removeChatRoomChangeListener (EMChatRoomChangeListener listener)
 
void removeChatRoomListener (EMChatRoomChangeListener listener)
 
void joinChatRoom (final String roomId, final EMValueCallBack< EMChatRoom > callback)
 
void leaveChatRoom (final String roomId)
 
EMPageResult< EMChatRoomfetchPublicChatRoomsFromServer (int pageNum, int pageSize) throws HyphenateException
 
EMCursorResult< EMChatRoomfetchPublicChatRoomsFromServer (int pageSize, String cursor) throws HyphenateException
 
void asyncFetchPublicChatRoomsFromServer (final int pageSize, final String cursor, final EMValueCallBack< EMCursorResult< EMChatRoom >> callback)
 
void asyncFetchPublicChatRoomsFromServer (final int pageNum, final int pageSize, final EMValueCallBack< EMPageResult< EMChatRoom >> callback)
 
EMChatRoom fetchChatRoomFromServer (String roomId) throws HyphenateException
 
EMChatRoom fetchChatRoomFromServer (String roomId, boolean fetchMembers) throws HyphenateException
 
void asyncFetchChatRoomFromServer (final String roomId, final EMValueCallBack< EMChatRoom > callback)
 
EMChatRoom getChatRoom (String roomId)
 
List< EMChatRoomgetAllChatRooms ()
 
EMChatRoom createChatRoom (String subject, String description, String welcomeMessage, int maxUserCount, List< String > members) throws HyphenateException
 
void asyncCreateChatRoom (final String subject, final String description, final String welcomeMessage, final int maxUserCount, final List< String > members, final EMValueCallBack< EMChatRoom > callBack)
 
void destroyChatRoom (String chatRoomId) throws HyphenateException
 
void asyncDestroyChatRoom (final String chatRoomId, final EMCallBack callBack)
 
EMChatRoom changeChatRoomSubject (String chatRoomId, String newSubject) throws HyphenateException
 
void asyncChangeChatRoomSubject (final String chatRoomId, final String newSubject, final EMValueCallBack< EMChatRoom > callBack)
 
EMChatRoom changeChatroomDescription (String chatRoomId, String newDescription) throws HyphenateException
 
void asyncChangeChatroomDescription (final String chatRoomId, final String newDescription, final EMValueCallBack< EMChatRoom > callBack)
 
EMCursorResult< String > fetchChatRoomMembers (String chatRoomId, String cursor, int pageSize) throws HyphenateException
 
void asyncFetchChatRoomMembers (final String chatRoomId, final String cursor, final int pageSize, final EMValueCallBack< EMCursorResult< String >> callBack)
 
EMChatRoom muteChatRoomMembers (String chatRoomId, List< String > muteMembers, long duration) throws HyphenateException
 
void asyncMuteChatRoomMembers (final String chatRoomId, final List< String > muteMembers, final long duration, final EMValueCallBack< EMChatRoom > callBack)
 
EMChatRoom unMuteChatRoomMembers (String chatRoomId, List< String > members) throws HyphenateException
 
void asyncUnMuteChatRoomMembers (final String chatRoomId, final List< String > members, final EMValueCallBack< EMChatRoom > callBack)
 
EMChatRoom changeOwner (String chatRoomId, String newOwner) throws HyphenateException
 
void asyncChangeOwner (final String chatRoomId, final String newOwner, final EMValueCallBack< EMChatRoom > callBack) throws HyphenateException
 
EMChatRoom addChatRoomAdmin (String chatRoomId, String admin) throws HyphenateException
 
void asyncAddChatRoomAdmin (final String chatRoomId, final String admin, final EMValueCallBack< EMChatRoom > callBack)
 
EMChatRoom removeChatRoomAdmin (String chatRoomId, String admin) throws HyphenateException
 
void asyncRemoveChatRoomAdmin (final String chatRoomId, final String admin, final EMValueCallBack< EMChatRoom > callBack)
 
Map< String, Long > fetchChatRoomMuteList (String chatRoomId, int pageNum, int pageSize) throws HyphenateException
 
void asyncFetchChatRoomMuteList (final String chatRoomId, final int pageNum, final int pageSize, final EMValueCallBack< Map< String, Long >> callBack)
 
EMChatRoom removeChatRoomMembers (String chatRoomId, List< String > members) throws HyphenateException
 
void asyncRemoveChatRoomMembers (final String chatRoomId, final List< String > members, final EMValueCallBack< EMChatRoom > callBack)
 
EMChatRoom blockChatroomMembers (String chatRoomId, List< String > members) throws HyphenateException
 
void asyncBlockChatroomMembers (final String chatRoomId, final List< String > members, final EMValueCallBack< EMChatRoom > callBack)
 
EMChatRoom unblockChatRoomMembers (String chatRoomId, List< String > members) throws HyphenateException
 
void asyncUnBlockChatRoomMembers (final String chatRoomId, final List< String > members, final EMValueCallBack< EMChatRoom > callBack)
 
List< String > fetchChatRoomBlackList (String chatRoomId, int pageNum, int pageSize) throws HyphenateException
 
void asyncFetchChatRoomBlackList (final String chatRoomId, final int pageNum, final int pageSize, final EMValueCallBack< List< String >> callBack)
 
void addToChatRoomWhiteList (final String chatRoomId, final List< String > members, final EMValueCallBack< EMChatRoom > callBack)
 
void removeFromChatRoomWhiteList (final String chatRoomId, final List< String > members, final EMValueCallBack< EMChatRoom > callBack)
 
void checkIfInChatRoomWhiteList (final String chatRoomId, EMValueCallBack< Boolean > callBack)
 
void fetchChatRoomWhiteList (final String chatRoomId, final EMValueCallBack< List< String >> callBack)
 
void muteAllMembers (final String chatRoomId, final EMValueCallBack< EMChatRoom > callBack)
 
void unmuteAllMembers (final String chatRoomId, final EMValueCallBack< EMChatRoom > callBack)
 
void updateChatRoomAnnouncement (String chatRoomId, String announcement) throws HyphenateException
 
void asyncUpdateChatRoomAnnouncement (final String chatRoomId, final String announcement, final EMCallBack callBack)
 
String fetchChatRoomAnnouncement (String chatRoomId) throws HyphenateException
 
void asyncFetchChatRoomAnnouncement (final String chatRoomId, final EMValueCallBack< String > callBack)
 

详细描述

聊天室管理类,负责聊天室加入,退出,聊天室列表获取以及对成员的权限管理等 比如,加入聊天室:

 EMClient.getInstance().chatroomManager().joinChatRoom(conversationId, new EMValueCallBack<EMChatRoom>() {

        public void onSuccess(EMChatRoom value) {
            //成功加入聊天室后的处理逻辑
        }

        public void onError(int error, String errorMsg) {
            //加入聊天室失败后的处理逻辑
        }
    });

成员函数说明

◆ addChatRoomAdmin()

EMChatRoom com.hyphenate.chat.EMChatRoomManager.addChatRoomAdmin ( String  chatRoomId,
String  admin 
) throws HyphenateException

设置聊天室管理员 需要聊天室owner权限 异步方法见asyncAddChatRoomAdmin(String, String, EMValueCallBack)

同步方法,会阻塞当前线程

参数
chatRoomId聊天室ID
admin要设置的管理员ID
返回
返回修改后的聊天室对象
异常
HyphenateException错误信息详见com.hyphenate.EMError

◆ addChatRoomChangeListener()

void com.hyphenate.chat.EMChatRoomManager.addChatRoomChangeListener ( EMChatRoomChangeListener  listener)

注册聊天室事件监听 聊天室被销毁,成员的加入和退出,禁言,加入白名单等操作均可通过设置EMChatRoomChangeListener进行监听

调用本方法后,需要在适当的时机调用removeChatRoomListener(EMChatRoomChangeListener)移除监听

参数
listener聊天室事件监听,详见EMChatRoomChangeListener

◆ addToChatRoomWhiteList()

void com.hyphenate.chat.EMChatRoomManager.addToChatRoomWhiteList ( final String  chatRoomId,
final List< String >  members,
final EMValueCallBack< EMChatRoom callBack 
)

添加成员到白名单 需要聊天室拥有者或者管理员权限 添加到白名单后,聊天室拥有者或者管理员执行muteAllMembers(String, EMValueCallBack) 时,加入白名单的用户不受影响

异步方法

参数
chatRoomId聊天室ID
members加入白名单的成员列表
callBack结果回调,成功时回调EMValueCallBack#onSuccess(Object), 失败时回调EMValueCallBack#onError(int, String)

◆ asyncAddChatRoomAdmin()

void com.hyphenate.chat.EMChatRoomManager.asyncAddChatRoomAdmin ( final String  chatRoomId,
final String  admin,
final EMValueCallBack< EMChatRoom callBack 
)

设置聊天室管理员 需要聊天室owner权限 同步方法见addChatRoomAdmin(String, String)

异步方法

参数
chatRoomId聊天室ID
admin要设置的管理员ID
callBack结果回调,成功时回调EMValueCallBack#onSuccess(Object), 失败时回调EMValueCallBack#onError(int, String)

◆ asyncBlockChatroomMembers()

void com.hyphenate.chat.EMChatRoomManager.asyncBlockChatroomMembers ( final String  chatRoomId,
final List< String >  members,
final EMValueCallBack< EMChatRoom callBack 
)

添加成员到黑名单 需要聊天室拥有者或者管理员权限 成员被加入聊天室黑名单后,有如下行为:

1、成员被加入黑名单的同时,将被服务器移出聊天室
2、可通过EMChatRoomChangeListener#onRemovedFromChatRoom(int, String, String, String)回调通知,
第一个参数是具体的原因,被加入黑名单返回的原因是EMAChatRoomManagerListener#BE_KICKED
3、加入黑名单的成员禁止再次加入到聊天室

同步方法见blockChatroomMembers(String, List)

异步方法

参数
chatRoomId聊天室ID
members要加入黑名单的成员列表
callBack结果回调,成功时回调EMValueCallBack#onSuccess(Object), 失败时回调EMValueCallBack#onError(int, String)

◆ asyncChangeChatroomDescription()

void com.hyphenate.chat.EMChatRoomManager.asyncChangeChatroomDescription ( final String  chatRoomId,
final String  newDescription,
final EMValueCallBack< EMChatRoom callBack 
)

修改群描述信息 需要拥有owner权限 同步方法见changeChatroomDescription(String, String)

异步方法

参数
chatRoomId聊天室ID
newDescription新的聊天室描述
callBack结果回调,成功时回调EMValueCallBack#onSuccess(Object), 失败时回调EMValueCallBack#onError(int, String)

◆ asyncChangeChatRoomSubject()

void com.hyphenate.chat.EMChatRoomManager.asyncChangeChatRoomSubject ( final String  chatRoomId,
final String  newSubject,
final EMValueCallBack< EMChatRoom callBack 
)

修改聊天室标题 需要拥有owner权限 同步方法见changeChatRoomSubject(String, String)

异步方法

参数
chatRoomId聊天室ID
newSubject新的聊天室名字
callBack结果回调,成功时回调EMValueCallBack#onSuccess(Object), 失败时回调EMValueCallBack#onError(int, String)

◆ asyncChangeOwner()

void com.hyphenate.chat.EMChatRoomManager.asyncChangeOwner ( final String  chatRoomId,
final String  newOwner,
final EMValueCallBack< EMChatRoom callBack 
) throws HyphenateException

转移聊天室的所有权 需要拥有owner权限 同步方法见changeOwner(String, String)

异步方法

参数
chatRoomId聊天室ID
newOwner新的聊天室拥有者ID
callBack结果回调,成功时回调EMValueCallBack#onSuccess(Object), 失败时回调EMValueCallBack#onError(int, String)

◆ asyncCreateChatRoom()

void com.hyphenate.chat.EMChatRoomManager.asyncCreateChatRoom ( final String  subject,
final String  description,
final String  welcomeMessage,
final int  maxUserCount,
final List< String >  members,
final EMValueCallBack< EMChatRoom callBack 
)

创建聊天室 同步方法见createChatRoom(String, String, String, int, List)

异步方法

参数
subject聊天室名称
description聊天室描述
welcomeMessage邀请成员加入聊天室的消息
maxUserCount允许加入聊天室的最大成员数
members邀请加入聊天室的成员列表
callBack结果回调,成功时回调EMValueCallBack#onSuccess(Object), 失败时回调EMValueCallBack#onError(int, String)

◆ asyncDestroyChatRoom()

void com.hyphenate.chat.EMChatRoomManager.asyncDestroyChatRoom ( final String  chatRoomId,
final EMCallBack  callBack 
)

销毁聊天室 需要拥有owner权限 同步方法见destroyChatRoom(String)

异步方法

参数
chatRoomId聊天室ID
callBack结果回调,成功时回调EMCallBack#onSuccess(), 失败时回调EMCallBack#onError(int, String)

◆ asyncFetchChatRoomAnnouncement()

void com.hyphenate.chat.EMChatRoomManager.asyncFetchChatRoomAnnouncement ( final String  chatRoomId,
final EMValueCallBack< String >  callBack 
)

从服务器获取聊天室公告内容 同步方法见fetchChatRoomAnnouncement(String)

异步方法

参数
chatRoomId聊天室ID
callBack结果回调,成功时回调EMValueCallBack#onSuccess(Object),返回聊天室公告; 失败时回调EMValueCallBack#onError(int, String)

◆ asyncFetchChatRoomBlackList()

void com.hyphenate.chat.EMChatRoomManager.asyncFetchChatRoomBlackList ( final String  chatRoomId,
final int  pageNum,
final int  pageSize,
final EMValueCallBack< List< String >>  callBack 
)

获取聊天室黑名单列表,分页显示 需要聊天室拥有者或者管理员权限 同步方法见fetchChatRoomBlackList(String, int, int)

异步方法

参数
chatRoomId聊天室ID
pageNum当前要拉取的页数,从1开始
pageSize每页拉取的数量
callBack结果回调,成功时回调EMValueCallBack#onSuccess(Object),返回聊天室黑名单列表; 失败时回调EMValueCallBack#onError(int, String)

◆ asyncFetchChatRoomFromServer()

void com.hyphenate.chat.EMChatRoomManager.asyncFetchChatRoomFromServer ( final String  roomId,
final EMValueCallBack< EMChatRoom callback 
)

从服务器获取聊天室详情,默认不取成员列表 同步方法见fetchChatRoomFromServer(String)

异步方法

参数
roomId聊天室ID
callback结果回调,成功时回调EMValueCallBack#onSuccess(Object), 失败时回调EMValueCallBack#onError(int, String)

◆ asyncFetchChatRoomMembers()

void com.hyphenate.chat.EMChatRoomManager.asyncFetchChatRoomMembers ( final String  chatRoomId,
final String  cursor,
final int  pageSize,
final EMValueCallBack< EMCursorResult< String >>  callBack 
)

获取聊天室成员列表 返回的结果中,当EMCursorResult.getCursor()为空字符串("")时,表示没有更多数据

异步方法

参数
chatRoomId聊天室ID
cursor从这个游标位置开始取数据
pageSize一次取的数量
callBack结果回调,成功时回调EMValueCallBack#onSuccess(Object), 失败时回调EMValueCallBack#onError(int, String)

◆ asyncFetchChatRoomMuteList()

void com.hyphenate.chat.EMChatRoomManager.asyncFetchChatRoomMuteList ( final String  chatRoomId,
final int  pageNum,
final int  pageSize,
final EMValueCallBack< Map< String, Long >>  callBack 
)

从服务器获取聊天室的禁言列表 需要聊天室拥有者或者管理员权限 同步方法见fetchChatRoomMuteList(String, int, int)

异步方法

参数
chatRoomId聊天室ID
pageNum当前要拉取的页数,从1开始
pageSize每页拉取的数量
callBack结果回调,成功时回调EMValueCallBack#onSuccess(Object), 失败时回调EMValueCallBack#onError(int, String)

◆ asyncFetchPublicChatRoomsFromServer() [1/2]

void com.hyphenate.chat.EMChatRoomManager.asyncFetchPublicChatRoomsFromServer ( final int  pageNum,
final int  pageSize,
final EMValueCallBack< EMPageResult< EMChatRoom >>  callback 
)

分页从服务器获取聊天室

异步方法

参数
pageNum当前要拉取的页数,从1开始
pageSize每页拉取的数量
callback结果回调,成功时回调EMValueCallBack#onSuccess(Object), 失败时回调EMValueCallBack#onError(int, String)

◆ asyncFetchPublicChatRoomsFromServer() [2/2]

void com.hyphenate.chat.EMChatRoomManager.asyncFetchPublicChatRoomsFromServer ( final int  pageSize,
final String  cursor,
final EMValueCallBack< EMCursorResult< EMChatRoom >>  callback 
)

分页从服务器获取聊天室 返回的结果中,当EMCursorResult.getCursor()为空字符串("")时,表示没有更多数据

异步方法

参数
pageSize一次取的数量
cursor从这个游标位置开始取
callback结果回调,成功回调EMValueCallBack#onSuccess(Object), 失败回调EMValueCallBack#onError(int, String)
弃用:
使用 asyncFetchPublicChatRoomsFromServer(int, int, EMValueCallBack) 代替

◆ asyncMuteChatRoomMembers()

void com.hyphenate.chat.EMChatRoomManager.asyncMuteChatRoomMembers ( final String  chatRoomId,
final List< String >  muteMembers,
final long  duration,
final EMValueCallBack< EMChatRoom callBack 
)

禁止聊天室成员发言 需要聊天室拥有者或者管理员权限 同步方法见muteChatRoomMembers(String, List, long)

异步方法

参数
chatRoomId聊天室ID
muteMembers禁言的用户列表
duration禁言的时间,单位是毫秒
callBack结果回调,成功时回调EMValueCallBack#onSuccess(Object), 失败时回调EMValueCallBack#onError(int, String)

◆ asyncRemoveChatRoomAdmin()

void com.hyphenate.chat.EMChatRoomManager.asyncRemoveChatRoomAdmin ( final String  chatRoomId,
final String  admin,
final EMValueCallBack< EMChatRoom callBack 
)

移除聊天室管理员权限 需要聊天室owner权限 同步方法见removeChatRoomAdmin(String, String)}

异步方法

参数
chatRoomId聊天室ID
admin要移除管理员权限的ID
callBack结果回调,成功时回调EMValueCallBack#onSuccess(Object), 失败时回调EMValueCallBack#onError(int, String)

◆ asyncRemoveChatRoomMembers()

void com.hyphenate.chat.EMChatRoomManager.asyncRemoveChatRoomMembers ( final String  chatRoomId,
final List< String >  members,
final EMValueCallBack< EMChatRoom callBack 
)

移除聊天室成员 需要聊天室拥有者或者管理员权限 同步方法见removeChatRoomMembers(String, List)

异步方法

参数
chatRoomId聊天室ID
members要移除的成员ID集合
callBack结果回调,成功时回调EMValueCallBack#onSuccess(Object), 失败时回调EMValueCallBack#onError(int, String)

◆ asyncUnBlockChatRoomMembers()

void com.hyphenate.chat.EMChatRoomManager.asyncUnBlockChatRoomMembers ( final String  chatRoomId,
final List< String >  members,
final EMValueCallBack< EMChatRoom callBack 
)

将成员从黑名单中移除 需要聊天室拥有者或者管理员权限 同步方法见unblockChatRoomMembers(String, List)

异步方法

参数
chatRoomId聊天室ID
members要移除黑名单的成员列表
callBack结果回调,成功时回调EMValueCallBack#onSuccess(Object), 失败时回调EMValueCallBack#onError(int, String)

◆ asyncUnMuteChatRoomMembers()

void com.hyphenate.chat.EMChatRoomManager.asyncUnMuteChatRoomMembers ( final String  chatRoomId,
final List< String >  members,
final EMValueCallBack< EMChatRoom callBack 
)

解除禁言 需要聊天室拥有者或者管理员权限 同步方法见unMuteChatRoomMembers(String, List)

异步方法

参数
chatRoomId聊天室ID
members解除禁言的用户列表
callBack结果回调,成功时回调EMValueCallBack#onSuccess(Object), 失败时回调EMValueCallBack#onError(int, String)

◆ asyncUpdateChatRoomAnnouncement()

void com.hyphenate.chat.EMChatRoomManager.asyncUpdateChatRoomAnnouncement ( final String  chatRoomId,
final String  announcement,
final EMCallBack  callBack 
)

更新聊天室公告 需要聊天室拥有者或者管理员权限 同步方法见updateChatRoomAnnouncement(String, String)

异步方法

参数
chatRoomId聊天室ID
announcement公告内容
callBack结果回调,成功时回调EMCallBack#onSuccess(), 失败时回调EMCallBack#onError(int, String)

◆ blockChatroomMembers()

EMChatRoom com.hyphenate.chat.EMChatRoomManager.blockChatroomMembers ( String  chatRoomId,
List< String >  members 
) throws HyphenateException

添加成员到黑名单 需要聊天室拥有者或者管理员权限 成员被加入聊天室黑名单后,有如下行为:

1、成员被加入黑名单的同时,将被服务器移出聊天室
2、可通过EMChatRoomChangeListener#onRemovedFromChatRoom(int, String, String, String)回调通知,
第一个参数是具体的原因,被加入黑名单返回的原因是EMAChatRoomManagerListener#BE_KICKED
3、加入黑名单的成员禁止再次加入到聊天室

异步方法见asyncBlockChatroomMembers(String, List, EMValueCallBack)

同步方法,会阻塞当前线程

参数
chatRoomId聊天室ID
members要加入黑名单的成员列表
返回
返回修改后的聊天室对象
异常
HyphenateException错误信息详见com.hyphenate.EMError

◆ changeChatroomDescription()

EMChatRoom com.hyphenate.chat.EMChatRoomManager.changeChatroomDescription ( String  chatRoomId,
String  newDescription 
) throws HyphenateException

修改群描述信息 需要拥有owner权限 异步方法见asyncChangeChatroomDescription(String, String, EMValueCallBack)

同步方法,会阻塞当前线程

参数
chatRoomId聊天室ID
newDescription新的聊天室描述
返回
修改后的聊天室对象
异常
HyphenateException错误信息详见com.hyphenate.EMError

◆ changeChatRoomSubject()

EMChatRoom com.hyphenate.chat.EMChatRoomManager.changeChatRoomSubject ( String  chatRoomId,
String  newSubject 
) throws HyphenateException

修改聊天室标题 需要拥有owner权限 异步方法见asyncChangeChatRoomSubject(String, String, EMValueCallBack)

同步方法,会阻塞当前线程

参数
chatRoomId聊天室ID
newSubject新的聊天室名字
返回
返回修改后的聊天室对象
异常
HyphenateException错误信息详见com.hyphenate.EMError

◆ changeOwner()

EMChatRoom com.hyphenate.chat.EMChatRoomManager.changeOwner ( String  chatRoomId,
String  newOwner 
) throws HyphenateException

转移聊天室的所有权 需要拥有owner权限 异步方法见asyncChangeOwner(String, String, EMValueCallBack)

同步方法,会阻塞当前线程

参数
chatRoomId聊天室ID
newOwner新的聊天室拥有者ID
返回
返回修改后的聊天室对象
异常
HyphenateException错误信息详见com.hyphenate.EMError

◆ checkIfInChatRoomWhiteList()

void com.hyphenate.chat.EMChatRoomManager.checkIfInChatRoomWhiteList ( final String  chatRoomId,
EMValueCallBack< Boolean >  callBack 
)

检查自己是否在白名单中

异步方法

参数
chatRoomId聊天室ID
callBack结果回调,成功时回调EMValueCallBack#onSuccess(Object),返回是否在白名单中; 失败时回调EMValueCallBack#onError(int, String)

◆ createChatRoom()

EMChatRoom com.hyphenate.chat.EMChatRoomManager.createChatRoom ( String  subject,
String  description,
String  welcomeMessage,
int  maxUserCount,
List< String >  members 
) throws HyphenateException

创建聊天室 异步方法见asyncCreateChatRoom(String, String, String, int, List, EMValueCallBack)

同步方法,会阻塞当前线程

参数
subject聊天室名称
description聊天室描述
welcomeMessage邀请成员加入聊天室的消息
maxUserCount允许加入聊天室的最大成员数
members邀请加入聊天室的成员列表
返回
EMChatRoom 创建成功的聊天室对象
异常
HyphenateException错误信息详见com.hyphenate.EMError

◆ destroyChatRoom()

void com.hyphenate.chat.EMChatRoomManager.destroyChatRoom ( String  chatRoomId) throws HyphenateException

销毁聊天室 需要拥有owner权限 异步方法见asyncDestroyChatRoom(String, EMCallBack)

同步方法,会阻塞当前线程

参数
chatRoomId聊天室ID
异常
HyphenateException错误信息详见com.hyphenate.EMError

◆ fetchChatRoomAnnouncement()

String com.hyphenate.chat.EMChatRoomManager.fetchChatRoomAnnouncement ( String  chatRoomId) throws HyphenateException

从服务器获取聊天室公告内容 异步方法见asyncFetchChatRoomAnnouncement(String, EMValueCallBack)

同步方法,会阻塞当前线程

参数
chatRoomId聊天室ID
返回
聊天室公告
异常
HyphenateException错误信息详见com.hyphenate.EMError

◆ fetchChatRoomBlackList()

List<String> com.hyphenate.chat.EMChatRoomManager.fetchChatRoomBlackList ( String  chatRoomId,
int  pageNum,
int  pageSize 
) throws HyphenateException

获取聊天室黑名单列表,分页显示 需要聊天室拥有者或者管理员权限 异步方法见asyncFetchChatRoomBlackList(String, int, int, EMValueCallBack)

同步方法,会阻塞当前线程

参数
chatRoomId聊天室ID
pageNum当前要拉取的页数,从1开始
pageSize每页拉取的数量
返回
返回聊天室黑名单列表
异常
HyphenateException错误信息详见com.hyphenate.EMError

◆ fetchChatRoomFromServer() [1/2]

EMChatRoom com.hyphenate.chat.EMChatRoomManager.fetchChatRoomFromServer ( String  roomId) throws HyphenateException

从服务器获取聊天室详情,默认不取成员列表 异步方法见asyncFetchChatRoomFromServer(String, EMValueCallBack)

同步方法,会阻塞当前线程

参数
roomId聊天室ID
返回
EMChatRoom 返回聊天室对象
异常
HyphenateException错误码详见com.hyphenate.EMError

◆ fetchChatRoomFromServer() [2/2]

EMChatRoom com.hyphenate.chat.EMChatRoomManager.fetchChatRoomFromServer ( String  roomId,
boolean  fetchMembers 
) throws HyphenateException

从服务器获取聊天室详情 如果需要取成员列表,默认最多取200个成员,超出部分,请调用EMChatRoomManager#fetchChatRoomMembers(String, String, int)

同步方法,会阻塞当前线程

参数
roomId聊天室ID
fetchMembers是否需要获取聊天室成员
返回
EMChatRoom 返回的聊天室对象
异常
HyphenateException错误码详见com.hyphenate.EMError

◆ fetchChatRoomMembers()

EMCursorResult<String> com.hyphenate.chat.EMChatRoomManager.fetchChatRoomMembers ( String  chatRoomId,
String  cursor,
int  pageSize 
) throws HyphenateException

获取聊天室成员列表 返回的结果中,当EMCursorResult.getCursor()为空字符串("")时,表示没有更多数据 异步方法见asyncFetchChatRoomMembers(String, String, int, EMValueCallBack)

同步方法,会阻塞当前线程

参数
chatRoomId聊天室ID
cursor从这个游标位置开始取数据
pageSize一次取的数量
返回
分页获取结果 EMCursorResult
异常
HyphenateException错误信息详见com.hyphenate.EMError

◆ fetchChatRoomMuteList()

Map<String, Long> com.hyphenate.chat.EMChatRoomManager.fetchChatRoomMuteList ( String  chatRoomId,
int  pageNum,
int  pageSize 
) throws HyphenateException

从服务器获取聊天室的禁言列表 需要聊天室拥有者或者管理员权限 异步方法见asyncFetchChatRoomMuteList(String, int, int, EMValueCallBack)

同步方法,会阻塞当前线程

参数
chatRoomId聊天室ID
pageNum当前要拉取的页数,从1开始
pageSize每页拉取的数量
返回
返回的包含禁言成员ID及其禁言时长的Map,其中每一项的key是禁言的成员ID,value是禁言动作失效的时间,单位是毫秒
异常
HyphenateException错误信息详见com.hyphenate.EMError

◆ fetchChatRoomWhiteList()

void com.hyphenate.chat.EMChatRoomManager.fetchChatRoomWhiteList ( final String  chatRoomId,
final EMValueCallBack< List< String >>  callBack 
)

从服务器获取白名单列表 需要聊天室拥有者或者管理员权限

异步方法

参数
chatRoomId聊天室ID
callBack结果回调,成功时回调EMValueCallBack#onSuccess(Object), 失败时回调EMValueCallBack#onError(int, String)

◆ fetchPublicChatRoomsFromServer() [1/2]

EMPageResult<EMChatRoom> com.hyphenate.chat.EMChatRoomManager.fetchPublicChatRoomsFromServer ( int  pageNum,
int  pageSize 
) throws HyphenateException

分页从服务器获取聊天室 此方法为同步方法,可以使用异步方法asyncFetchPublicChatRoomsFromServer(int, int, EMValueCallBack)

同步方法,会阻塞当前线程

参数
pageNum当前要拉取的页数,从1开始
pageSize每页拉取的数量
返回
分页获取结果 EMPageResult
异常
HyphenateException错误码详见com.hyphenate.EMError

◆ fetchPublicChatRoomsFromServer() [2/2]

EMCursorResult<EMChatRoom> com.hyphenate.chat.EMChatRoomManager.fetchPublicChatRoomsFromServer ( int  pageSize,
String  cursor 
) throws HyphenateException

分页从服务器获取聊天室 返回的结果中,当EMCursorResult.getCursor()为空字符串("")时,表示没有更多数据 此方法为耗时操作,可以调用异步方法asyncFetchPublicChatRoomsFromServer(int, String, EMValueCallBack)

同步方法,会阻塞当前线程

参数
pageSize一次取的数量
cursor从这个游标位置开始取数据
返回
分页获取结果 EMCursorResult
异常
HyphenateException错误码详见com.hyphenate.EMError
弃用:
使用 fetchPublicChatRoomsFromServer(int, int) 代替

◆ getAllChatRooms()

List<EMChatRoom> com.hyphenate.chat.EMChatRoomManager.getAllChatRooms ( )

获取当前内存的聊天室列表 注:此方法需要调用以下方法: (1)fetchPublicChatRoomsFromServer(int, int)及其异步方法 asyncFetchPublicChatRoomsFromServer(int, int, EMValueCallBack) (2)fetchPublicChatRoomsFromServer(int, String)及其异步方法 asyncFetchPublicChatRoomsFromServer(int, String, EMValueCallBack) 后,才会有数据,且是以上方法最后一次分页获取的数据。

返回
返回EMChatRoomManager维护的聊天室列表
弃用:

◆ getChatRoom()

EMChatRoom com.hyphenate.chat.EMChatRoomManager.getChatRoom ( String  roomId)

从内存中获取聊天室

参数
roomId聊天室ID
返回
返回聊天室对象,如果内存中没有会返回null

◆ joinChatRoom()

void com.hyphenate.chat.EMChatRoomManager.joinChatRoom ( final String  roomId,
final EMValueCallBack< EMChatRoom callback 
)

加入聊天室 退出聊天室调用leaveChatRoom(String)

异步方法

参数
roomId聊天室ID
callback加入聊天室的结果回调。加入聊天室成功,回调EMValueCallBack#onSuccess(Object)并返回聊天室对象; 加入聊天室失败,回调EMValueCallBack#onError(int, String),其中第一个参数为错误参数,第二各参数为错误信息

◆ leaveChatRoom()

void com.hyphenate.chat.EMChatRoomManager.leaveChatRoom ( final String  roomId)

离开聊天室 加入聊天室joinChatRoom(String, EMValueCallBack)后,在离开聊天室时,调用此方法

异步方法

参数
roomId聊天室ID

◆ muteAllMembers()

void com.hyphenate.chat.EMChatRoomManager.muteAllMembers ( final String  chatRoomId,
final EMValueCallBack< EMChatRoom callBack 
)

禁言所有成员 需要聊天室拥有者或者管理员权限 聊天室拥有者、管理员及加入白名单的用户不受影响

异步方法

参数
chatRoomId聊天室ID
callBack结果回调,成功时回调EMValueCallBack#onSuccess(Object), 失败时回调EMValueCallBack#onError(int, String)

◆ muteChatRoomMembers()

EMChatRoom com.hyphenate.chat.EMChatRoomManager.muteChatRoomMembers ( String  chatRoomId,
List< String >  muteMembers,
long  duration 
) throws HyphenateException

禁止聊天室成员发言 需要聊天室拥有者或者管理员权限 异步方法见asyncMuteChatRoomMembers(String, List, long, EMValueCallBack)

同步方法,会阻塞当前线程

参数
chatRoomId聊天室ID
muteMembers禁言的用户列表
duration禁言的时间,单位是毫秒
返回
返回修改后的聊天室对象
异常
HyphenateException错误信息详见com.hyphenate.EMError

◆ removeChatRoomAdmin()

EMChatRoom com.hyphenate.chat.EMChatRoomManager.removeChatRoomAdmin ( String  chatRoomId,
String  admin 
) throws HyphenateException

移除聊天室管理员权限 需要聊天室owner权限 异步方法见asyncRemoveChatRoomAdmin(String, String, EMValueCallBack)

同步方法,会阻塞当前线程

参数
chatRoomId聊天室ID
admin要移除管理员权限的ID
返回
返回修改后的聊天室对象
异常
HyphenateException错误信息详见com.hyphenate.EMError

◆ removeChatRoomChangeListener()

void com.hyphenate.chat.EMChatRoomManager.removeChatRoomChangeListener ( EMChatRoomChangeListener  listener)

移除聊天室事件监听 在调用addChatRoomChangeListener(EMChatRoomChangeListener)后,可以调用本方法移除监听,现推荐使用 removeChatRoomListener(EMChatRoomChangeListener)去移除监听

参数
listener要移除的聊天室监听对象
弃用:
使用 EMChatRoomManager#removeChatRoomListener(EMChatRoomChangeListener) 替代

◆ removeChatRoomListener()

void com.hyphenate.chat.EMChatRoomManager.removeChatRoomListener ( EMChatRoomChangeListener  listener)

移除聊天室事件监听 在调用addChatRoomChangeListener(EMChatRoomChangeListener)后,需要调用本方法移除监听

参数
listener要移除的聊天室监听对象

◆ removeChatRoomMembers()

EMChatRoom com.hyphenate.chat.EMChatRoomManager.removeChatRoomMembers ( String  chatRoomId,
List< String >  members 
) throws HyphenateException

移除聊天室成员 需要聊天室拥有者或者管理员权限 异步方法见asyncRemoveChatRoomMembers(String, List, EMValueCallBack)

同步方法,会阻塞当前线程

参数
chatRoomId聊天室ID
members要移除的成员ID集合
返回
返回修改后的聊天室对象
异常
HyphenateException错误信息详见com.hyphenate.EMError

◆ removeFromChatRoomWhiteList()

void com.hyphenate.chat.EMChatRoomManager.removeFromChatRoomWhiteList ( final String  chatRoomId,
final List< String >  members,
final EMValueCallBack< EMChatRoom callBack 
)

将成员从白名单移除 需要聊天室拥有者或者管理员权限 成员从白名单移除后,将受到muteAllMembers(String, EMValueCallBack)功能的影响

异步方法

参数
chatRoomId聊天室ID
members移除白名单的用户列表
callBack结果回调,成功时回调EMValueCallBack#onSuccess(Object), 失败时回调EMValueCallBack#onError(int, String)

◆ unblockChatRoomMembers()

EMChatRoom com.hyphenate.chat.EMChatRoomManager.unblockChatRoomMembers ( String  chatRoomId,
List< String >  members 
) throws HyphenateException

将成员从黑名单中移除 需要聊天室拥有者或者管理员权限 异步方法见asyncBlockChatroomMembers(String, List, EMValueCallBack)

同步方法,会阻塞当前线程

参数
chatRoomId聊天室ID
members要移除黑名单的成员列表
返回
返回修改后的聊天室对象
异常
HyphenateException错误信息详见com.hyphenate.EMError

◆ unmuteAllMembers()

void com.hyphenate.chat.EMChatRoomManager.unmuteAllMembers ( final String  chatRoomId,
final EMValueCallBack< EMChatRoom callBack 
)

解除所有成员的禁言状态 需要聊天室拥有者或者管理员权限

异步方法

参数
chatRoomId聊天室ID
callBack结果回调,成功时回调EMValueCallBack#onSuccess(Object), 失败时回调EMValueCallBack#onError(int, String)

◆ unMuteChatRoomMembers()

EMChatRoom com.hyphenate.chat.EMChatRoomManager.unMuteChatRoomMembers ( String  chatRoomId,
List< String >  members 
) throws HyphenateException

解除禁言 需要聊天室拥有者或者管理员权限 异步方法见asyncUnMuteChatRoomMembers(String, List, EMValueCallBack)

同步方法,会阻塞当前线程

参数
chatRoomId聊天室ID
members解除禁言的用户列表
返回
返回修改后的聊天室对象
异常
HyphenateException错误信息详见com.hyphenate.EMError

◆ updateChatRoomAnnouncement()

void com.hyphenate.chat.EMChatRoomManager.updateChatRoomAnnouncement ( String  chatRoomId,
String  announcement 
) throws HyphenateException

更新聊天室公告 需要聊天室拥有者或者管理员权限 异步方法见asyncUpdateChatRoomAnnouncement(String, String, EMCallBack)

同步方法,会阻塞当前线程

参数
chatRoomId聊天室ID
announcement公告内容
异常
HyphenateException错误信息详见com.hyphenate.EMError

该类的文档由以下文件生成: