hyphenate_SDK3.0
3.8.6.1
hyphenate java IM SDK
|
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< EMChatRoom > | fetchPublicChatRoomsFromServer (int pageNum, int pageSize) throws HyphenateException |
EMCursorResult< EMChatRoom > | fetchPublicChatRoomsFromServer (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< EMChatRoom > | getAllChatRooms () |
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) { //加入聊天室失败后的处理逻辑 } });
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 |
void com.hyphenate.chat.EMChatRoomManager.addChatRoomChangeListener | ( | EMChatRoomChangeListener | listener | ) |
注册聊天室事件监听 聊天室被销毁,成员的加入和退出,禁言,加入白名单等操作均可通过设置EMChatRoomChangeListener进行监听
调用本方法后,需要在适当的时机调用removeChatRoomListener(EMChatRoomChangeListener)移除监听
listener | 聊天室事件监听,详见EMChatRoomChangeListener |
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) |
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) |
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) |
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) |
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) |
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) |
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) |
void com.hyphenate.chat.EMChatRoomManager.asyncDestroyChatRoom | ( | final String | chatRoomId, |
final EMCallBack | callBack | ||
) |
销毁聊天室 需要拥有owner权限 同步方法见destroyChatRoom(String)
异步方法
chatRoomId | 聊天室ID |
callBack | 结果回调,成功时回调EMCallBack#onSuccess(), 失败时回调EMCallBack#onError(int, String) |
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) |
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) |
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) |
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) |
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) |
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) |
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) |
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) |
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) |
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) |
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) |
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) |
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) |
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 |
EMChatRoom com.hyphenate.chat.EMChatRoomManager.changeChatroomDescription | ( | String | chatRoomId, |
String | newDescription | ||
) | throws HyphenateException |
修改群描述信息 需要拥有owner权限 异步方法见asyncChangeChatroomDescription(String, String, EMValueCallBack)
同步方法,会阻塞当前线程
chatRoomId | 聊天室ID |
newDescription | 新的聊天室描述 |
HyphenateException | 错误信息详见com.hyphenate.EMError |
EMChatRoom com.hyphenate.chat.EMChatRoomManager.changeChatRoomSubject | ( | String | chatRoomId, |
String | newSubject | ||
) | throws HyphenateException |
修改聊天室标题 需要拥有owner权限 异步方法见asyncChangeChatRoomSubject(String, String, EMValueCallBack)
同步方法,会阻塞当前线程
chatRoomId | 聊天室ID |
newSubject | 新的聊天室名字 |
HyphenateException | 错误信息详见com.hyphenate.EMError |
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 |
void com.hyphenate.chat.EMChatRoomManager.checkIfInChatRoomWhiteList | ( | final String | chatRoomId, |
EMValueCallBack< Boolean > | callBack | ||
) |
检查自己是否在白名单中
异步方法
chatRoomId | 聊天室ID |
callBack | 结果回调,成功时回调EMValueCallBack#onSuccess(Object),返回是否在白名单中; 失败时回调EMValueCallBack#onError(int, String) |
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 | 邀请加入聊天室的成员列表 |
HyphenateException | 错误信息详见com.hyphenate.EMError |
void com.hyphenate.chat.EMChatRoomManager.destroyChatRoom | ( | String | chatRoomId | ) | throws HyphenateException |
销毁聊天室 需要拥有owner权限 异步方法见asyncDestroyChatRoom(String, EMCallBack)
同步方法,会阻塞当前线程
chatRoomId | 聊天室ID |
HyphenateException | 错误信息详见com.hyphenate.EMError |
String com.hyphenate.chat.EMChatRoomManager.fetchChatRoomAnnouncement | ( | String | chatRoomId | ) | throws HyphenateException |
从服务器获取聊天室公告内容 异步方法见asyncFetchChatRoomAnnouncement(String, EMValueCallBack)
同步方法,会阻塞当前线程
chatRoomId | 聊天室ID |
HyphenateException | 错误信息详见com.hyphenate.EMError |
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 |
EMChatRoom com.hyphenate.chat.EMChatRoomManager.fetchChatRoomFromServer | ( | String | roomId | ) | throws HyphenateException |
从服务器获取聊天室详情,默认不取成员列表 异步方法见asyncFetchChatRoomFromServer(String, EMValueCallBack)
同步方法,会阻塞当前线程
roomId | 聊天室ID |
HyphenateException | 错误码详见com.hyphenate.EMError |
EMChatRoom com.hyphenate.chat.EMChatRoomManager.fetchChatRoomFromServer | ( | String | roomId, |
boolean | fetchMembers | ||
) | throws HyphenateException |
从服务器获取聊天室详情 如果需要取成员列表,默认最多取200个成员,超出部分,请调用EMChatRoomManager#fetchChatRoomMembers(String, String, int)
同步方法,会阻塞当前线程
roomId | 聊天室ID |
fetchMembers | 是否需要获取聊天室成员 |
HyphenateException | 错误码详见com.hyphenate.EMError |
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 | 一次取的数量 |
HyphenateException | 错误信息详见com.hyphenate.EMError |
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 | 每页拉取的数量 |
HyphenateException | 错误信息详见com.hyphenate.EMError |
void com.hyphenate.chat.EMChatRoomManager.fetchChatRoomWhiteList | ( | final String | chatRoomId, |
final EMValueCallBack< List< String >> | callBack | ||
) |
从服务器获取白名单列表 需要聊天室拥有者或者管理员权限
异步方法
chatRoomId | 聊天室ID |
callBack | 结果回调,成功时回调EMValueCallBack#onSuccess(Object), 失败时回调EMValueCallBack#onError(int, String) |
EMPageResult<EMChatRoom> com.hyphenate.chat.EMChatRoomManager.fetchPublicChatRoomsFromServer | ( | int | pageNum, |
int | pageSize | ||
) | throws HyphenateException |
分页从服务器获取聊天室 此方法为同步方法,可以使用异步方法asyncFetchPublicChatRoomsFromServer(int, int, EMValueCallBack)
同步方法,会阻塞当前线程
pageNum | 当前要拉取的页数,从1开始 |
pageSize | 每页拉取的数量 |
HyphenateException | 错误码详见com.hyphenate.EMError |
EMCursorResult<EMChatRoom> com.hyphenate.chat.EMChatRoomManager.fetchPublicChatRoomsFromServer | ( | int | pageSize, |
String | cursor | ||
) | throws HyphenateException |
分页从服务器获取聊天室 返回的结果中,当EMCursorResult.getCursor()为空字符串("")时,表示没有更多数据 此方法为耗时操作,可以调用异步方法asyncFetchPublicChatRoomsFromServer(int, String, EMValueCallBack)
同步方法,会阻塞当前线程
pageSize | 一次取的数量 |
cursor | 从这个游标位置开始取数据 |
HyphenateException | 错误码详见com.hyphenate.EMError |
List<EMChatRoom> com.hyphenate.chat.EMChatRoomManager.getAllChatRooms | ( | ) |
获取当前内存的聊天室列表 注:此方法需要调用以下方法: (1)fetchPublicChatRoomsFromServer(int, int)及其异步方法 asyncFetchPublicChatRoomsFromServer(int, int, EMValueCallBack) (2)fetchPublicChatRoomsFromServer(int, String)及其异步方法 asyncFetchPublicChatRoomsFromServer(int, String, EMValueCallBack) 后,才会有数据,且是以上方法最后一次分页获取的数据。
EMChatRoom com.hyphenate.chat.EMChatRoomManager.getChatRoom | ( | String | roomId | ) |
从内存中获取聊天室
roomId | 聊天室ID |
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),其中第一个参数为错误参数,第二各参数为错误信息 |
void com.hyphenate.chat.EMChatRoomManager.leaveChatRoom | ( | final String | roomId | ) |
void com.hyphenate.chat.EMChatRoomManager.muteAllMembers | ( | final String | chatRoomId, |
final EMValueCallBack< EMChatRoom > | callBack | ||
) |
禁言所有成员 需要聊天室拥有者或者管理员权限 聊天室拥有者、管理员及加入白名单的用户不受影响
异步方法
chatRoomId | 聊天室ID |
callBack | 结果回调,成功时回调EMValueCallBack#onSuccess(Object), 失败时回调EMValueCallBack#onError(int, String) |
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 |
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 |
void com.hyphenate.chat.EMChatRoomManager.removeChatRoomChangeListener | ( | EMChatRoomChangeListener | listener | ) |
移除聊天室事件监听 在调用addChatRoomChangeListener(EMChatRoomChangeListener)后,可以调用本方法移除监听,现推荐使用 removeChatRoomListener(EMChatRoomChangeListener)去移除监听
listener | 要移除的聊天室监听对象 |
void com.hyphenate.chat.EMChatRoomManager.removeChatRoomListener | ( | EMChatRoomChangeListener | listener | ) |
移除聊天室事件监听 在调用addChatRoomChangeListener(EMChatRoomChangeListener)后,需要调用本方法移除监听
listener | 要移除的聊天室监听对象 |
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 |
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) |
EMChatRoom com.hyphenate.chat.EMChatRoomManager.unblockChatRoomMembers | ( | String | chatRoomId, |
List< String > | members | ||
) | throws HyphenateException |
将成员从黑名单中移除 需要聊天室拥有者或者管理员权限 异步方法见asyncBlockChatroomMembers(String, List, EMValueCallBack)
同步方法,会阻塞当前线程
chatRoomId | 聊天室ID |
members | 要移除黑名单的成员列表 |
HyphenateException | 错误信息详见com.hyphenate.EMError |
void com.hyphenate.chat.EMChatRoomManager.unmuteAllMembers | ( | final String | chatRoomId, |
final EMValueCallBack< EMChatRoom > | callBack | ||
) |
解除所有成员的禁言状态 需要聊天室拥有者或者管理员权限
异步方法
chatRoomId | 聊天室ID |
callBack | 结果回调,成功时回调EMValueCallBack#onSuccess(Object), 失败时回调EMValueCallBack#onError(int, String) |
EMChatRoom com.hyphenate.chat.EMChatRoomManager.unMuteChatRoomMembers | ( | String | chatRoomId, |
List< String > | members | ||
) | throws HyphenateException |
解除禁言 需要聊天室拥有者或者管理员权限 异步方法见asyncUnMuteChatRoomMembers(String, List, EMValueCallBack)
同步方法,会阻塞当前线程
chatRoomId | 聊天室ID |
members | 解除禁言的用户列表 |
HyphenateException | 错误信息详见com.hyphenate.EMError |
void com.hyphenate.chat.EMChatRoomManager.updateChatRoomAnnouncement | ( | String | chatRoomId, |
String | announcement | ||
) | throws HyphenateException |
更新聊天室公告 需要聊天室拥有者或者管理员权限 异步方法见asyncUpdateChatRoomAnnouncement(String, String, EMCallBack)
同步方法,会阻塞当前线程
chatRoomId | 聊天室ID |
announcement | 公告内容 |
HyphenateException | 错误信息详见com.hyphenate.EMError |