即时通讯 IM API 参考 v1.3.2
Agora Java IM SDK
| Public 成员函数 | 所有成员列表
io.agora.chat.GroupManager类 参考

enum  GroupStyle
 

Public 成员函数

List< GroupgetAllGroups ()
 
Group getGroup (String groupId)
 
Group createGroup (String groupName, String desc, String[] allMembers, String reason, GroupOptions option) throws ChatException
 
void asyncCreateGroup (final String groupName, final String desc, final String[] allMembers, final String reason, final GroupOptions option, final ValueCallBack< Group > callback)
 
synchronized boolean loadAllGroups ()
 
void destroyGroup (final String groupId) throws ChatException
 
void asyncDestroyGroup (final String groupId, final CallBack callback)
 
void addUsersToGroup (String groupId, String[] newmembers) throws ChatException
 
void addUsersToGroup (String groupId, String[] newmembers, String welcomeMessage) throws ChatException
 
void asyncAddUsersToGroup (final String groupId, final String[] newmembers, final CallBack callback)
 
void removeUserFromGroup (final String groupId, final String username) throws ChatException
 
void asyncRemoveUserFromGroup (final String groupId, final String username, final CallBack callback)
 
void removeUsersFromGroup (final String groupId, final List< String > members) throws ChatException
 
void asyncRemoveUsersFromGroup (final String groupId, final List< String > members, final CallBack callback)
 
void leaveGroup (String groupId) throws ChatException
 
void asyncLeaveGroup (final String groupId, final CallBack callback)
 
Group getGroupFromServer (String groupId) throws ChatException
 
Group getGroupFromServer (String groupId, boolean fetchMembers) throws ChatException
 
void asyncGetGroupFromServer (final String groupId, final ValueCallBack< Group > callback)
 
synchronized List< GroupgetJoinedGroupsFromServer () throws ChatException
 
synchronized List< GroupgetJoinedGroupsFromServer (int pageIndex, int pageSize, boolean needMemberCount, boolean needRole) throws ChatException
 
void asyncGetJoinedGroupsFromServer (final ValueCallBack< List< Group > > callback)
 
void asyncGetJoinedGroupsFromServer (final int pageIndex, final int pageSize, boolean needMemberCount, boolean needRole, final ValueCallBack< List< Group > > callback)
 
void asyncGetJoinedGroupsCountFromServer (final ValueCallBack< Integer > callback)
 
CursorResult< GroupInfogetPublicGroupsFromServer (int pageSize, String cursor) throws ChatException
 
void asyncGetPublicGroupsFromServer (final int pageSize, final String cursor, final ValueCallBack< CursorResult< GroupInfo > > callback)
 
void joinGroup (String groupId) throws ChatException
 
void asyncJoinGroup (final String groupId, final CallBack callback)
 
void changeGroupName (String groupId, String changedGroupName) throws ChatException
 
void asyncChangeGroupName (final String groupId, final String changedGroupName, final CallBack callback)
 
void changeGroupDescription (String groupId, String changedDescription) throws ChatException
 
void asyncChangeGroupDescription (final String groupId, final String changedDescription, final CallBack callBack)
 
Group acceptInvitation (String groupId, String inviter) throws ChatException
 
void asyncAcceptInvitation (final String groupId, final String inviter, final ValueCallBack< Group > callback)
 
void declineInvitation (String groupId, String inviter, String reason) throws ChatException
 
void asyncDeclineInvitation (final String groupId, final String inviter, final String reason, final CallBack callback)
 
void acceptApplication (String username, String groupId) throws ChatException
 
void asyncAcceptApplication (final String username, final String groupId, final CallBack callback)
 
void declineApplication (String username, String groupId, String reason) throws ChatException
 
void asyncDeclineApplication (final String username, final String groupId, final String reason, final CallBack callback)
 
void inviteUser (String groupId, String[] beInvitedUsernames, String reason) throws ChatException
 
void asyncInviteUser (final String groupId, final String[] beInvitedUsernames, final String reason, final CallBack callback)
 
void applyJoinToGroup (String groupId, String reason) throws ChatException
 
void asyncApplyJoinToGroup (final String groupId, final String reason, final CallBack callback)
 
void blockGroupMessage (String groupId) throws ChatException
 
void asyncBlockGroupMessage (final String groupId, final CallBack callback)
 
void unblockGroupMessage (String groupId) throws ChatException
 
void asyncUnblockGroupMessage (final String groupId, final CallBack callback)
 
void blockUser (String groupId, String username) throws ChatException
 
void asyncBlockUser (final String groupId, final String username, final CallBack callback)
 
void blockUsers (String groupId, List< String > members) throws ChatException
 
void asyncBlockUsers (final String groupId, final List< String > members, final CallBack callback)
 
void unblockUser (String groupId, String username) throws ChatException
 
void asyncUnblockUser (final String groupId, final String username, final CallBack callback)
 
void unblockUsers (String groupId, List< String > members) throws ChatException
 
void asyncUnblockUsers (final String groupId, final List< String > members, final CallBack callback)
 
List< String > getBlockedUsers (String groupId) throws ChatException
 
List< String > getBlockedUsers (String groupId, int pageIndex, int pageSize) throws ChatException
 
void asyncGetBlockedUsers (final String groupId, final ValueCallBack< List< String > > callback)
 
void asyncGetBlockedUsers (final String groupId, final int pageIndex, final int pageSize, final ValueCallBack< List< String > > callback)
 
void addGroupChangeListener (GroupChangeListener listener)
 
void removeGroupChangeListener (GroupChangeListener listener)
 
CursorResult< String > fetchGroupMembers (String groupId, String cursor, int pageSize) throws ChatException
 
void asyncFetchGroupMembers (final String groupId, final String cursor, final int pageSize, final ValueCallBack< CursorResult< String > > callback)
 
Group changeOwner (String groupId, String newOwner) throws ChatException
 
void asyncChangeOwner (final String groupId, final String newOwner, final ValueCallBack< Group > callback)
 
Group addGroupAdmin (final String groupId, final String admin) throws ChatException
 
void asyncAddGroupAdmin (final String groupId, final String admin, final ValueCallBack< Group > callback)
 
Group removeGroupAdmin (String groupId, String admin) throws ChatException
 
void asyncRemoveGroupAdmin (final String groupId, final String admin, final ValueCallBack< Group > callback)
 
Group muteGroupMembers (String groupId, List< String > muteMembers, long duration) throws ChatException
 
void asyncMuteGroupMembers (final String groupId, final List< String > muteMembers, final long duration, final ValueCallBack< Group > callback)
 
Group unMuteGroupMembers (String groupId, List< String > members) throws ChatException
 
void asyncUnMuteGroupMembers (final String groupId, final List< String > members, final ValueCallBack< Group > callback)
 
Map< String, Long > fetchGroupMuteList (String groupId, int pageNum, int pageSize) throws ChatException
 
void asyncFetchGroupMuteList (final String groupId, final int pageNum, final int pageSize, final ValueCallBack< Map< String, Long > > callBack)
 
void asyncCheckIfInMuteList (final String groupId, final ValueCallBack< Boolean > callBack)
 
List< String > fetchGroupBlackList (String groupId, int pageNum, int pageSize) throws ChatException
 
void asyncFetchGroupBlackList (final String groupId, final int pageNum, final int pageSize, final ValueCallBack< List< String > > callBack)
 
void addToGroupWhiteList (final String groupId, final List< String > members, final CallBack callBack)
 
void removeFromGroupWhiteList (final String groupId, final List< String > members, final CallBack callBack)
 
void checkIfInGroupWhiteList (final String groupId, ValueCallBack< Boolean > callBack)
 
void fetchGroupWhiteList (final String groupId, final ValueCallBack< List< String > > callBack)
 
void muteAllMembers (final String groupId, final ValueCallBack< Group > callBack)
 
void unmuteAllMembers (final String groupId, final ValueCallBack< Group > callBack)
 
void updateGroupAnnouncement (String groupId, String announcement) throws ChatException
 
void asyncUpdateGroupAnnouncement (final String groupId, final String announcement, final CallBack callBack)
 
String fetchGroupAnnouncement (String groupId) throws ChatException
 
void asyncFetchGroupAnnouncement (final String groupId, final ValueCallBack< String > callBack)
 
MucSharedFile uploadGroupSharedFile (String groupId, String filePath, CallBack callBack) throws ChatException
 
void asyncUploadGroupSharedFile (final String groupId, final String filePath, final CallBack callBack)
 
void asyncUploadGroupSharedFile (final String groupId, final String filePath, final ValueCallBack< MucSharedFile > callBack)
 
List< MucSharedFilefetchGroupSharedFileList (String groupId, int pageNum, int pageSize) throws ChatException
 
void asyncFetchGroupSharedFileList (final String groupId, final int pageNum, final int pageSize, final ValueCallBack< List< MucSharedFile > > callBack)
 
void deleteGroupSharedFile (String groupId, String fileId) throws ChatException
 
void asyncDeleteGroupSharedFile (final String groupId, final String fileId, final CallBack callBack)
 
void downloadGroupSharedFile (String groupId, String fileId, String savePath, CallBack callBack) throws ChatException
 
void asyncDownloadGroupSharedFile (final String groupId, final String fileId, final String savePath, final CallBack callBack)
 
void asyncSetGroupMemberAttributes (String groupId, String userId, Map< String, String > attributeMap, CallBack callBack)
 
void asyncFetchGroupMemberAllAttributes (String groupId, String userId, ValueCallBack< Map< String, Map< String, String > > > callBack)
 
void asyncFetchGroupMembersAttributes (String groupId, List< String > userList, List< String > keyList, ValueCallBack< Map< String, Map< String, String > > > callBack)
 
Group updateGroupExtension (String groupId, String extension) throws ChatException
 
void cleanAllGroupsFromLocal ()
 

详细描述

群组管理, 用于管理群组的创建,删除,成员管理等操作。

成员函数说明

◆ acceptApplication()

void io.agora.chat.GroupManager.acceptApplication ( String  username,
String  groupId 
) throws ChatException

批准入群申请。

仅群主和管理员可调用此方法。

异步方法见 asyncAcceptApplication(String, String, CallBack)

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

参数
username申请人 ID。
groupId群组 ID。
异常
ChatException如果有异常会在此抛出,包括错误码和错误信息,详见 Error

◆ acceptInvitation()

Group io.agora.chat.GroupManager.acceptInvitation ( String  groupId,
String  inviter 
) throws ChatException

接受入群邀请。

异步方法见 asyncAcceptInvitation(String, String, ValueCallBack)

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

参数
groupId群组 ID。
inviter邀请者 ID。
返回
用户已经同意邀请的群组对象。
异常
ChatException如果有异常会在此抛出,包括错误码和错误信息,详见 Error

◆ addGroupAdmin()

Group io.agora.chat.GroupManager.addGroupAdmin ( final String  groupId,
final String  admin 
) throws ChatException

添加群组管理员。 仅群主可调用此方法,admin 无权限。 异步方法见 asyncAddGroupAdmin(String, String, ValueCallBack)

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

参数
groupId群组 ID。
admin新增的管理员 ID。
返回
返回更新后的群组对象。
异常
ChatException如果有异常会在此抛出,包括错误码和错误信息,详见 Error

◆ addGroupChangeListener()

void io.agora.chat.GroupManager.addGroupChangeListener ( GroupChangeListener  listener)

注册群变动事件监听。 注册后,需要配合 removeGroupChangeListener(GroupChangeListener) 使用。

参数
listener注册的群组事件监听。

◆ addToGroupWhiteList()

void io.agora.chat.GroupManager.addToGroupWhiteList ( final String  groupId,
final List< String >  members,
final CallBack  callBack 
)

添加白名单。 仅群组创建者和管理员可调用此方法。

异步方法。

参数
groupId群组 ID。
members要添加的成员列表。
callBack结果回调,成功时回调 CallBack#onSuccess(), 失败时回调 CallBack#onError(int, String)

◆ addUsersToGroup() [1/2]

void io.agora.chat.GroupManager.addUsersToGroup ( String  groupId,
String[]  newmembers 
) throws ChatException

向群组中添加新成员。 仅群组创建者和管理员可调用此方法。 异步方法见 asyncAddUsersToGroup(String, String[], CallBack)

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

参数
groupId群组 ID。
newmembers要添加的新成员数组。
异常
ChatException如果有异常会在此抛出,包括错误码和错误信息,详见 Error

◆ addUsersToGroup() [2/2]

void io.agora.chat.GroupManager.addUsersToGroup ( String  groupId,
String[]  newmembers,
String  welcomeMessage 
) throws ChatException

向群组中添加新成员。 仅群主和管理员可调用此方法。 异步方法见 asyncAddUsersToGroup(String, String[], CallBack)

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

参数
groupId群组 ID。
newmembers要添加的新成员数组。
welcomeMessage邀请信息。
异常
ChatException如果有异常会在此抛出,包括错误码和错误信息,详见 Error

◆ applyJoinToGroup()

void io.agora.chat.GroupManager.applyJoinToGroup ( String  groupId,
String  reason 
) throws ChatException

申请加入群组。 前提:群组类型为 GroupStyle#GroupStylePublicJoinNeedApproval,即需要验证的公开群组。 异步方法见 asyncApplyJoinToGroup(String, String, CallBack)

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

参数
groupId群组ID。
reason申请加入的原因。
异常
ChatException如果有异常会在此抛出,包括错误码和错误信息,详见 Error

◆ asyncAcceptApplication()

void io.agora.chat.GroupManager.asyncAcceptApplication ( final String  username,
final String  groupId,
final CallBack  callback 
)

批准入群申请。

仅群主和管理员可调用此方法。

同步方法见 acceptApplication(String, String)

异步方法。

参数
username申请人 ID。
groupId群组 ID。
callback结果回调,成功时回调 CallBack#onSuccess(), 失败时回调 CallBack#onError(int, String)

◆ asyncAcceptInvitation()

void io.agora.chat.GroupManager.asyncAcceptInvitation ( final String  groupId,
final String  inviter,
final ValueCallBack< Group callback 
)

接受入群邀请。

同步方法见 acceptInvitation(String, String)

异步方法。

参数
groupId群组 ID。
inviter邀请者 ID。
callback结果回调,成功时回调 ValueCallBack#onSuccess(Object), 返回更新后的群组对象; 失败时回调 ValueCallBack#onError(int, String)

◆ asyncAddGroupAdmin()

void io.agora.chat.GroupManager.asyncAddGroupAdmin ( final String  groupId,
final String  admin,
final ValueCallBack< Group callback 
)

添加群组管理员。 仅群主可调用此方法,admin 无权限。 同步方法见 addGroupAdmin(String, String)

异步方法。

参数
groupId群组 ID。
admin新增加的管理员 ID。
callback结果回调,成功时回调 ValueCallBack#onSuccess(Object), 返回更新后的群组对象; 失败时回调 ValueCallBack#onError(int, String)

◆ asyncAddUsersToGroup()

void io.agora.chat.GroupManager.asyncAddUsersToGroup ( final String  groupId,
final String[]  newmembers,
final CallBack  callback 
)

向群组中添加新成员。 仅群主和管理员可调用此方法。 同步方法见 addUsersToGroup(String, String[])

异步方法。

参数
groupId群组的 ID。
newmembers要添加的新成员数组。
callback结果回调,成功时回调 CallBack#onSuccess(), 失败时回调 CallBack#onError(int, String)

◆ asyncApplyJoinToGroup()

void io.agora.chat.GroupManager.asyncApplyJoinToGroup ( final String  groupId,
final String  reason,
final CallBack  callback 
)

申请加入群组。 前提:群组类型为 GroupStyle#GroupStylePublicJoinNeedApproval,即需要需要验证的公开群。 同步方法见 applyJoinToGroup(String, String)

异步方法。

参数
groupId群组 ID。
reason申请加入的原因。
callback结果回调,成功时回调 CallBack#onSuccess(), 失败时回调 CallBack#onError(int, String)

◆ asyncBlockGroupMessage()

void io.agora.chat.GroupManager.asyncBlockGroupMessage ( final String  groupId,
final CallBack  callback 
)

屏蔽群消息。 被屏蔽群消息的用户仍是群成员,但无法接收群消息。 同步方法见 blockGroupMessage(String)

异步方法。

参数
groupId群组 ID。
callback结果回调,成功时回调 CallBack#onSuccess(), 失败时回调 CallBack#onError(int, String)

◆ asyncBlockUser()

void io.agora.chat.GroupManager.asyncBlockUser ( final String  groupId,
final String  username,
final CallBack  callback 
)

将用户加入群组黑名单。 先将用户移出群,再加入黑名单。加入黑名单的用户无法加入群。 仅群主和管理员可调用此方法。 同步方法见 blockUser(String, String)

异步方法。

参数
groupId群组 ID。
username要加入黑名单的用户名。
callback结果回调,成功时回调 CallBack#onSuccess(), 失败时回调 CallBack#onError(int, String)

◆ asyncBlockUsers()

void io.agora.chat.GroupManager.asyncBlockUsers ( final String  groupId,
final List< String >  members,
final CallBack  callback 
)

将用户加入群组黑名单。 先将用户移出群,再加入黑名单。加入黑名单的用户无法加入群。 仅群主和管理员可调用此方法。 同步方法见 blockUsers(String, List)

异步方法。

参数
groupId群组ID。
members要加入黑名单的用户列表。
callback结果回调,成功时回调 CallBack#onSuccess(), 失败时回调 CallBack#onError(int, String)

◆ asyncChangeGroupDescription()

void io.agora.chat.GroupManager.asyncChangeGroupDescription ( final String  groupId,
final String  changedDescription,
final CallBack  callBack 
)

修改群描述。

仅群主和管理员可调用此方法。

同步方法见 changeGroupDescription(String, String)

异步方法。

参数
groupId群组 ID。
changedDescription修改后的群描述。
callBack结果回调,成功时回调 CallBack#onSuccess(), 失败时回调 CallBack#onError(int, String)

◆ asyncChangeGroupName()

void io.agora.chat.GroupManager.asyncChangeGroupName ( final String  groupId,
final String  changedGroupName,
final CallBack  callback 
)

修改群组名称。

仅群主和管理员可调用此方法。

同步方法见 changeGroupName(String, String)

异步方法。

参数
groupId需要修改名称的群组的 ID。
changedGroupName修改后的群组名称。
callback结果回调,成功时回调 CallBack#onSuccess(), 失败时回调 CallBack#onError(int, String)

◆ asyncChangeOwner()

void io.agora.chat.GroupManager.asyncChangeOwner ( final String  groupId,
final String  newOwner,
final ValueCallBack< Group callback 
)

移交群组所有权。 仅群主可调用此方法。 同步方法见 changeOwner(String, String)

异步方法。

参数
groupId群组 ID。
newOwner新的群主。
callback结果回调,成功时回调 ValueCallBack#onSuccess(Object), 返回更新后的群组对象; 失败时回调 ValueCallBack#onError(int, String)

◆ asyncCheckIfInMuteList()

void io.agora.chat.GroupManager.asyncCheckIfInMuteList ( final String  groupId,
final ValueCallBack< Boolean >  callBack 
)

检查成员自己是否被禁言。

异步方法。

参数
groupId群组 ID。
callBack结果回调,成功时回调 ValueCallBack#onSuccess(Object),返回是否被禁言中; 失败时回调 ValueCallBack#onError(int, String)

◆ asyncCreateGroup()

void io.agora.chat.GroupManager.asyncCreateGroup ( final String  groupName,
final String  desc,
final String[]  allMembers,
final String  reason,
final GroupOptions  option,
final ValueCallBack< Group callback 
)

创建群组。 群组创建成功后,会更新内存及数据库中的数据,多端多设备会收到相应的通知事件,然后将群组更新到内存及数据库中。 可通过设置 io.agora.MultiDeviceListener 监听相关事件,事件回调函数为 io.agora.MultiDeviceListener#onGroupEvent(int, String, List), 第一个参数为事件,建群事件为 io.agora.MultiDeviceListener#GROUP_CREATE

异步方法。

参数
groupName群组的名字,非必要,不设置传 null。
desc群组描述,非必要,不设置传 null。
allMembers群成员数组。群主 ID非必要。该参数不可为 null。
reason成员入群的邀请信息,非必要,不设置传 null。
option群组设置,非必要,不可为 null。详见 GroupOptions。 群组的其他选项如下:
callback结果回调,成功时回调 ValueCallBack#onSuccess(Object),返回创建成功的群组对象; 失败时回调 ValueCallBack#onError(int, String)

◆ asyncDeclineApplication()

void io.agora.chat.GroupManager.asyncDeclineApplication ( final String  username,
final String  groupId,
final String  reason,
final CallBack  callback 
)

拒绝入群申请。 仅群组创建者和管理员可调用此方法。 同步方法见 declineApplication(String, String, String)

异步方法。

参数
username申请人 ID。
groupId群组 ID。
reason拒绝理由。
callback结果回调,成功时回调 CallBack#onSuccess(), 失败时回调 CallBack#onError(int, String)

◆ asyncDeclineInvitation()

void io.agora.chat.GroupManager.asyncDeclineInvitation ( final String  groupId,
final String  inviter,
final String  reason,
final CallBack  callback 
)

拒绝入群邀请。 同步方法见 declineInvitation(String, String, String)

异步方法。

参数
groupId群组 ID。
inviter邀请人 ID。
reason拒绝理由。
callback结果回调,成功时回调 CallBack#onSuccess(), 失败时回调 CallBack#onError(int, String)

◆ asyncDeleteGroupSharedFile()

void io.agora.chat.GroupManager.asyncDeleteGroupSharedFile ( final String  groupId,
final String  fileId,
final CallBack  callBack 
)

删除群组指定的共享文件。 成员可以删除自己上传的文件,群组拥有者或者群组管理员可以删除所有的共享文件。 同步方法见 deleteGroupSharedFile(String, String)

异步方法。

参数
groupId群组 ID。
fileId文件 ID。
callBack结果回调,成功时回调 CallBack#onSuccess(), 失败时回调 CallBack#onError(int, String)

◆ asyncDestroyGroup()

void io.agora.chat.GroupManager.asyncDestroyGroup ( final String  groupId,
final CallBack  callback 
)

解散群组。 仅群主可调用此方法。 同步方法见 destroyGroup(String)

异步方法。

参数
groupId群组 ID。
callback结果回调,成功时回调 CallBack#onSuccess(), 失败时回调 CallBack#onError(int, String)

◆ asyncDownloadGroupSharedFile()

void io.agora.chat.GroupManager.asyncDownloadGroupSharedFile ( final String  groupId,
final String  fileId,
final String  savePath,
final CallBack  callBack 
)

下载群组中指定的共享文件。 同步方法见 downloadGroupSharedFile(String, String, String, CallBack)

异步方法。

参数
groupId群组 ID。
fileId共享文件 ID。
savePath文件保存路径。
callBack结果回调,成功时回调 CallBack#onSuccess(), 下载文件进度回调 CallBack#onProgress(int, String), 失败时回调 CallBack#onError(int, String)

◆ asyncFetchGroupAnnouncement()

void io.agora.chat.GroupManager.asyncFetchGroupAnnouncement ( final String  groupId,
final ValueCallBack< String >  callBack 
)

从服务器获取群公告。 群成员可调用此方法。 同步方法见 fetchGroupAnnouncement(String)

异步方法。

参数
groupId群组 ID。
callBack结果回调,成功时回调 ValueCallBack#onSuccess(Object), 失败时回调 ValueCallBack#onError(int, String)

◆ asyncFetchGroupBlackList()

void io.agora.chat.GroupManager.asyncFetchGroupBlackList ( final String  groupId,
final int  pageNum,
final int  pageSize,
final ValueCallBack< List< String > >  callBack 
)

以分页从服务器获群组黑名单。 仅群主和管理员可调用此方法。 同步方法见 fetchGroupBlackList(String, int, int)

异步方法。

参数
groupId群组 ID。
pageNum当前页码,从 1 开始。
pageSize每页返回的黑名单上的用户数。
callBack结果回调,成功时回调 ValueCallBack#onSuccess(Object), 返回分页获取的黑名单列表; 失败时回调 ValueCallBack#onError(int, String)

◆ asyncFetchGroupMemberAllAttributes()

void io.agora.chat.GroupManager.asyncFetchGroupMemberAllAttributes ( String  groupId,
String  userId,
ValueCallBack< Map< String, Map< String, String > > >  callBack 
)

获取单个群成员所有自定义属性。

参数
groupId群组 ID。
userId要获取的自定义属性的群成员的用户 ID。
callBack结果回调,成功时回调 ValueCallBack#onSuccess(Object), 失败时回调 ValueCallBack#onError(int, String)

◆ asyncFetchGroupMembers()

void io.agora.chat.GroupManager.asyncFetchGroupMembers ( final String  groupId,
final String  cursor,
final int  pageSize,
final ValueCallBack< CursorResult< String > >  callback 
)

以分页方式获取群组成员列表。 同步方法见 fetchGroupMembers(String, String, int)

异步方法。

参数
groupId群组 ID。
cursor从这个游标位置开始取数据,首次获取数据时传 null 即可。
pageSize每页返回的群组成员数。
callback结果回调,成功时回调 ValueCallBack#onSuccess(Object), 返回分页获取结果 CursorResult,包含用于下次获取数据的 cursor 以及群组成员集合的对象, 如果是最后一页,cursor 返回结果为空字符串; 失败时回调 ValueCallBack#onError(int, String)

◆ asyncFetchGroupMembersAttributes()

void io.agora.chat.GroupManager.asyncFetchGroupMembersAttributes ( String  groupId,
List< String >  userList,
List< String >  keyList,
ValueCallBack< Map< String, Map< String, String > > >  callBack 
)

根据指定的属性 key 获取多个群成员的自定义属性。

参数
groupId群组 ID。
userList要获取自定义属性的群成员的用户 ID 数组。
keyList要获取自定义属性的 key 的数组。若 keys 为空数组或不传则获取这些群成员的所有自定义属性。
callBack结果回调,成功时回调 ValueCallBack#onSuccess(Object), 失败时回调 ValueCallBack#onError(int, String)

◆ asyncFetchGroupMuteList()

void io.agora.chat.GroupManager.asyncFetchGroupMuteList ( final String  groupId,
final int  pageNum,
final int  pageSize,
final ValueCallBack< Map< String, Long > >  callBack 
)

获取群组的禁言列表。 仅群主和管理员可调用此方法。 同步方法见 fetchGroupMuteList(String, int, int)

异步方法。

参数
groupId群组 ID。
pageNum当前页码,从 1 开始。
pageSize每页返回的禁言成员数。
callBack结果回调,成功时回调 ValueCallBack#onSuccess(Object), 返回的包含禁言成员 ID 及其禁言时长的 Map,其中每一项的 key 是禁言的成员 ID,value 是禁言时长,单位是毫秒; 失败时回调 ValueCallBack#onError(int, String)

◆ asyncFetchGroupSharedFileList()

void io.agora.chat.GroupManager.asyncFetchGroupSharedFileList ( final String  groupId,
final int  pageNum,
final int  pageSize,
final ValueCallBack< List< MucSharedFile > >  callBack 
)

从服务器获取群共享文件列表。 同步方法见 fetchGroupSharedFileList(String, int, int)

异步方法。

参数
groupId群组 ID。
pageNum当前页码,从 1 开始。
pageSize每页返回的共享文件数。
callBack结果回调,成功时回调 ValueCallBack#onSuccess(Object), 返回共享文件列表; 失败时回调 ValueCallBack#onError(int, String)

需注意以下两点:

  • pageSize 是这次调用期望返回的记录数,如当前在最后一页,返回的数量小于 pageSize 的值;
  • pageNum 是当前页码,方便服务器分页查询返回。 对于数据量未知且很大的情况,分页获取,服务器会根据每次的 pageSize 和 pageNum 的设置返回数据。

◆ asyncGetBlockedUsers() [1/2]

void io.agora.chat.GroupManager.asyncGetBlockedUsers ( final String  groupId,
final int  pageIndex,
final int  pageSize,
final ValueCallBack< List< String > >  callback 
)

以分页方式获取群组的黑名单。 仅群主和管理员可调用此方法。 同步方法见 getBlockedUsers(String, int, int)

异步方法。

参数
groupId群组 ID。
pageIndex当前页码,从 1 开始。
pageSize每页返回的群组数。
callback结果回调,成功时回调 ValueCallBack#onSuccess(Object), 返回黑名单列表; 失败时回调 ValueCallBack#onError(int, String)

◆ asyncGetBlockedUsers() [2/2]

void io.agora.chat.GroupManager.asyncGetBlockedUsers ( final String  groupId,
final ValueCallBack< List< String > >  callback 
)

获取群组的黑名单列表, 默认最多取 200 个。 仅群主和管理员可调用此方法。 同步方法见 getBlockedUsers(String)

异步方法。

参数
groupId群组 ID。
callback结果回调,成功时回调 ValueCallBack#onSuccess(Object), 返回群组的黑名单列表; 失败时回调 ValueCallBack#onError(int, String)

◆ asyncGetGroupFromServer()

void io.agora.chat.GroupManager.asyncGetGroupFromServer ( final String  groupId,
final ValueCallBack< Group callback 
)

从服务器获取群组的详细信息。

同步方法见 getGroupFromServer(String)

异步方法。

参数
groupId群组 ID。
callback结果回调,成功时回调 CallBack#onSuccess(), 失败时回调 CallBack#onError(int, String)

◆ asyncGetJoinedGroupsCountFromServer()

void io.agora.chat.GroupManager.asyncGetJoinedGroupsCountFromServer ( final ValueCallBack< Integer >  callback)

从服务器获取当前用户已加入的群组数量。

异步方法。

参数
callback结果回调,成功时回调 ValueCallBack#onSuccess(Object), 返回获取的群组数量 失败时回调 ValueCallBack#onError(int, String)

◆ asyncGetJoinedGroupsFromServer() [1/2]

void io.agora.chat.GroupManager.asyncGetJoinedGroupsFromServer ( final int  pageIndex,
final int  pageSize,
boolean  needMemberCount,
boolean  needRole,
final ValueCallBack< List< Group > >  callback 
)

以分页方式从服务器获取当前用户已加入的群组。

此操作只返回群组列表,不包含群组的所有成员信息。如果要更新某个群组包括成员的全部信息,需要再调用 getGroupFromServer(String groupId)

同步方法见 getJoinedGroupsFromServer(int, int, boolean, boolean)

异步方法。

参数
pageIndex当前页码,从 0 开始。
pageSize每页返回的群组数。pageSize 最大不超过 20
needMemberCount是否需要群成员人数。
needRole是否需要用户在群里的角色。
callback结果回调,成功时回调 ValueCallBack#onSuccess(Object), 返回分页获取的群组列表 失败时回调 ValueCallBack#onError(int, String)

◆ asyncGetJoinedGroupsFromServer() [2/2]

void io.agora.chat.GroupManager.asyncGetJoinedGroupsFromServer ( final ValueCallBack< List< Group > >  callback)

从服务器获取当前用户的所有群组。

此操作只返回群组列表,并不获取群组的所有成员信息。如果要更新某个群组包括成员的全部信息,需要再调用 getGroupFromServer(String groupId)

同步方法见 getJoinedGroupsFromServer()

异步方法。

参数
callback结果回调,成功时回调 ValueCallBack#onSuccess(Object),返回已加入的群组列表 失败时回调 ValueCallBack#onError(int, String)
弃用:
已废弃,请使用 asyncGetJoinedGroupsFromServer(int, int, boolean, boolean, ValueCallBack) 代替。

◆ asyncGetPublicGroupsFromServer()

void io.agora.chat.GroupManager.asyncGetPublicGroupsFromServer ( final int  pageSize,
final String  cursor,
final ValueCallBack< CursorResult< GroupInfo > >  callback 
)

以分页方式从服务器获取公开群组。

同步方法见 getPublicGroupsFromServer(int, String)

异步方法。

参数
pageSize每页返回的公开群组数。
cursor从这个游标位置开始取数据,首次获取数据时传 null 即可。
callback结果回调,成功时回调 ValueCallBack#onSuccess(Object), 返回分页获取结果 CursorResult,包含用于下次获取数据的 cursor 以及群组list的对象。 如果是最后一页,cursor 返回结果为空字符串; 失败时回调 ValueCallBack#onError(int, String)

◆ asyncInviteUser()

void io.agora.chat.GroupManager.asyncInviteUser ( final String  groupId,
final String[]  beInvitedUsernames,
final String  reason,
final CallBack  callback 
)

群成员邀请用户入群。 前提:群组类型是 GroupStyle#GroupStylePrivateMemberCanInvite,即允许群成员邀请用户。 同步方法见 inviteUser(String, String[], String)

异步方法。

参数
groupId群组 ID。
beInvitedUsernames受邀用户的数组。
reason邀请原因。
callback结果回调,成功时回调 CallBack#onSuccess(), 失败时回调 CallBack#onError(int, String)

◆ asyncJoinGroup()

void io.agora.chat.GroupManager.asyncJoinGroup ( final String  groupId,
final CallBack  callback 
)

当前登录用户加入公开群。

如果是自由加入的公开群,直接进入群组;需要验证的公开群需要等待群主同意。详见 GroupStyle

同步方法见 joinGroup(String)

异步方法。

参数
groupId群组 ID。
callback结果回调,成功时回调 CallBack#onSuccess(), 失败时回调 CallBack#onError(int, String)

◆ asyncLeaveGroup()

void io.agora.chat.GroupManager.asyncLeaveGroup ( final String  groupId,
final CallBack  callback 
)

当前登录用户退出群组。

异步方法。

参数
groupId群组 ID。
callback结果回调,成功时回调 CallBack#onSuccess(), 失败时回调 CallBack#onError(int, String)

◆ asyncMuteGroupMembers()

void io.agora.chat.GroupManager.asyncMuteGroupMembers ( final String  groupId,
final List< String >  muteMembers,
final long  duration,
final ValueCallBack< Group callback 
)

将一组成员禁言。 仅群主和管理员可调用此方法。 同步方法见 muteGroupMembers(String, List, long)

异步方法。

参数
groupId群组 ID。
muteMembers要禁言的用户列表。
duration禁言时间,单位是毫秒。若为 -1,表示永久禁言。
callback结果回调,成功时回调 ValueCallBack#onSuccess(Object), 返回更新后的群组对象; 失败时回调 ValueCallBack#onError(int, String)

◆ asyncRemoveGroupAdmin()

void io.agora.chat.GroupManager.asyncRemoveGroupAdmin ( final String  groupId,
final String  admin,
final ValueCallBack< Group callback 
)

删除群组管理员。 仅群主可调用此方法。 同步方法见 removeGroupAdmin(String, String)

异步方法。

参数
groupId群组 ID。
admin删除的管理员 ID。
callback结果回调,成功时回调 ValueCallBack#onSuccess(Object), 返回更新后的群组对象; 失败时回调 ValueCallBack#onError(int, String)

◆ asyncRemoveUserFromGroup()

void io.agora.chat.GroupManager.asyncRemoveUserFromGroup ( final String  groupId,
final String  username,
final CallBack  callback 
)

将群成员移出群组。 仅群主和管理员可调用此方法。 同步方法见 removeUserFromGroup(String, String)

异步方法。

参数
groupId群组 ID。
username要删除成员的用户名。
callback结果回调,成功时回调 CallBack#onSuccess(), 失败时回调 CallBack#onError(int, String)

◆ asyncRemoveUsersFromGroup()

void io.agora.chat.GroupManager.asyncRemoveUsersFromGroup ( final String  groupId,
final List< String >  members,
final CallBack  callback 
)

从群组中删除成员。 仅群主和管理员可调用此方法。 同步方法见 removeUsersFromGroup(String, List)

异步方法。

参数
groupId群组 ID。
members要删除成员的用户名列表。
callback结果回调,成功时回调 CallBack#onSuccess(), 败时回调 CallBack#onError(int, String)

◆ asyncSetGroupMemberAttributes()

void io.agora.chat.GroupManager.asyncSetGroupMemberAttributes ( String  groupId,
String  userId,
Map< String, String >  attributeMap,
CallBack  callBack 
)

设置单个群成员的自定义属性。

参数
groupId群组 ID。
userId要设置自定义属性的群成员的用户 ID。
attributeMap要设置的群成员自定义属性的 map,为 key-value 格式。对于一个 key-value 键值对,若 value 设置空字符串即删除该自定义属性。
callBack结果回调,成功时回调 CallBack#onSuccess(), 失败时回调 CallBack#onError(int, String)

◆ asyncUnblockGroupMessage()

void io.agora.chat.GroupManager.asyncUnblockGroupMessage ( final String  groupId,
final CallBack  callback 
)

取消屏蔽群消息。 同步方法见 unblockGroupMessage(String)

异步方法。

参数
groupId群组 ID。
callback结果回调,成功时回调 CallBack#onSuccess(), 失败时回调 CallBack#onError(int, String)

◆ asyncUnblockUser()

void io.agora.chat.GroupManager.asyncUnblockUser ( final String  groupId,
final String  username,
final CallBack  callback 
)

将用户从群组黑名单移除。 仅群主和管理员可调用此方法。 同步方法见 unblockUser(String, String)

异步方法。

参数
groupId群组 ID。
username要从黑名单中移除的用户。
callback结果回调,成功时回调 CallBack#onSuccess(), 失败时回调 CallBack#onError(int, String)

◆ asyncUnblockUsers()

void io.agora.chat.GroupManager.asyncUnblockUsers ( final String  groupId,
final List< String >  members,
final CallBack  callback 
)

将用户从群组黑名单移除。 仅群主和管理员可调用此方法。 同步方法见 unblockUsers(String, List)

异步方法。

参数
groupId群组 ID。
members要从黑名单中移除的用户列表。
callback结果回调,成功时回调 CallBack#onSuccess(), 失败时回调 CallBack#onError(int, String)

◆ asyncUnMuteGroupMembers()

void io.agora.chat.GroupManager.asyncUnMuteGroupMembers ( final String  groupId,
final List< String >  members,
final ValueCallBack< Group callback 
)

解除禁言。 仅群主和管理员可调用此方法。 同步方法见 unMuteGroupMembers(String, List)

异步方法。

参数
groupId群组 ID。
members要解除禁言的用户列表。
callback结果回调,成功时回调 ValueCallBack#onSuccess(Object), 返回更新后的群组对象; 失败时回调 ValueCallBack#onError(int, String)

◆ asyncUpdateGroupAnnouncement()

void io.agora.chat.GroupManager.asyncUpdateGroupAnnouncement ( final String  groupId,
final String  announcement,
final CallBack  callBack 
)

更新群公告。 仅群主和管理员可调用此方法。 同步方法见updateGroupAnnouncement(String, String)

异步方法。

参数
groupId群组 ID。
announcement公告内容。
callBack结果回调,成功时回调 CallBack#onSuccess(), 失败时回调 CallBack#onError(int, String)

◆ asyncUploadGroupSharedFile() [1/2]

void io.agora.chat.GroupManager.asyncUploadGroupSharedFile ( final String  groupId,
final String  filePath,
final CallBack  callBack 
)

上传共享文件至群组。

同步方法见 uploadGroupSharedFile(String, String, CallBack)

异步方法。

参数
groupId群组 ID。
filePath文件本地路径。
callBack结果回调,成功时回调 CallBack#onSuccess(), 上传文件进度回调 CallBack#onProgress(int, String), 失败时回调 CallBack#onError(int, String)。 @Deprecated 已废弃,请用 asyncUploadGroupSharedFile(String, String, ValueCallBack) 替代。

◆ asyncUploadGroupSharedFile() [2/2]

void io.agora.chat.GroupManager.asyncUploadGroupSharedFile ( final String  groupId,
final String  filePath,
final ValueCallBack< MucSharedFile callBack 
)

上传共享文件至群组。

同步方法见 uploadGroupSharedFile(String, String, CallBack)

异步方法。

参数
groupId群组 ID。
filePath文件本地路径。
callBack结果回调,成功时回调 ValueCallBack#onSuccess(Object), 上传文件进度回调 ValueCallBack#onProgress(int, String), 失败时回调 ValueCallBack#onError(int, String)

◆ blockGroupMessage()

void io.agora.chat.GroupManager.blockGroupMessage ( String  groupId) throws ChatException

屏蔽群消息。 被屏蔽群消息的用户仍是群成员,但无法接收群消息。 异步方法见 asyncBlockGroupMessage(String, CallBack)

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

参数
groupId群组 ID。
异常
ChatException如果有异常会在此抛出,包括错误码和错误信息,详见 Error

◆ blockUser()

void io.agora.chat.GroupManager.blockUser ( String  groupId,
String  username 
) throws ChatException

将用户加入群组黑名单。 先将用户移出群,再加入黑名单。加入黑名单的用户无法加入群。 仅群主和管理员可调用此方法。 异步方法见 asyncBlockUser(String, String, CallBack)

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

参数
groupId群组 ID。
username要加入黑名单的用户名。
异常
ChatException如果有异常会在此抛出,包括错误码和错误信息,详见 Error

◆ blockUsers()

void io.agora.chat.GroupManager.blockUsers ( String  groupId,
List< String >  members 
) throws ChatException

将用户加入群组黑名单。 先将用户移出群,再加入黑名单。加入黑名单的用户无法加入群。 仅群主和管理员可调用此方法。 异步方法见 asyncBlockUsers(String, List, CallBack)

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

参数
groupId群组 ID。
members要加入黑名单的用户列表。
异常
ChatException如果有异常会在此抛出,包括错误码和错误信息,详见 Error

◆ changeGroupDescription()

void io.agora.chat.GroupManager.changeGroupDescription ( String  groupId,
String  changedDescription 
) throws ChatException

修改群描述。

仅群主和管理员可调用此方法。

异步方法见 asyncChangeGroupDescription(String, String, CallBack)

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

参数
groupId群组 ID。
changedDescription修改后的群描述。
异常
ChatException如果有异常会在此抛出,包括错误码和错误信息,详见 Error

◆ changeGroupName()

void io.agora.chat.GroupManager.changeGroupName ( String  groupId,
String  changedGroupName 
) throws ChatException

修改群组名称。

仅群主和管理员可调用此方法。

异步方法见 asyncChangeGroupName(String, String, CallBack)

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

参数
groupId要修改名称的群组的 ID。
changedGroupName修改后的群组名称。
异常
ChatException如果有异常会在此抛出,包括错误码和错误信息,详见 Error

◆ changeOwner()

Group io.agora.chat.GroupManager.changeOwner ( String  groupId,
String  newOwner 
) throws ChatException

移交群组所有权。 仅群主可调用此方法。 异步方法见 asyncChangeOwner(String, String, ValueCallBack)

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

参数
groupId群组 ID。
newOwner新的群主。
返回
返回更新后的群组对象
异常
ChatException如果有异常会在此抛出,包括错误码和错误信息详见 Error

◆ checkIfInGroupWhiteList()

void io.agora.chat.GroupManager.checkIfInGroupWhiteList ( final String  groupId,
ValueCallBack< Boolean >  callBack 
)

检查自己是否在群组白名单中。

异步方法。

参数
groupId群组 ID。
callBack结果回调,成功时回调 ValueCallBack#onSuccess(Object), 返回是否在群组白名单的布尔值; 失败时回调 ValueCallBack#onError(int, String)

◆ cleanAllGroupsFromLocal()

void io.agora.chat.GroupManager.cleanAllGroupsFromLocal ( )

从数据库和内存中清除所有本地群组详情。

◆ createGroup()

Group io.agora.chat.GroupManager.createGroup ( String  groupName,
String  desc,
String[]  allMembers,
String  reason,
GroupOptions  option 
) throws ChatException

创建群组。 群组创建成功后,会更新内存及数据库中的数据,多端多设备会收到相应的通知事件,将群组更新到内存及数据库中。 可通过设置 io.agora.MultiDeviceListener监听相关事件,事件回调函数为 io.agora.MultiDeviceListener#onGroupEvent(int, String, List), 第一个参数为事件,建群事件为 io.agora.MultiDeviceListener#GROUP_CREATE。 异步方法见 asyncCreateGroup(String, String, String[], String, GroupOptions, ValueCallBack)

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

参数
groupName群组的名字,非必要,不设置传 null。
desc群组描述,非必要,不设置传 null。
allMembers群成员数组。群主 ID 非必要。该参数不可为 null。
reason邀请群成员加入时的邀请信息,非必要,不设置传 null。
option群的设置,非必要,不可为 null。详见 GroupOptions。 群组的其他选项如下:
返回
返回创建成功的群对象。
异常
ChatException如果有异常会在此抛出,包括错误码和错误信息,详见 Error

◆ declineApplication()

void io.agora.chat.GroupManager.declineApplication ( String  username,
String  groupId,
String  reason 
) throws ChatException

拒绝入群申请。 仅群组创建者和管理员可调用此方法。 异步方法见 asyncDeclineApplication(String, String, String, CallBack)

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

参数
username申请人 ID。
groupId群组 ID。
reason拒绝理由。
异常
ChatException如果有异常会在此抛出,包括错误码和错误信息,详见 Error

◆ declineInvitation()

void io.agora.chat.GroupManager.declineInvitation ( String  groupId,
String  inviter,
String  reason 
) throws ChatException

拒绝入群邀请。 异步方法见 asyncDeclineInvitation(String, String, String, CallBack)

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

参数
groupId群组 ID。
inviter邀请者 ID。
reason拒绝理由。
异常
ChatException如果有异常会在此抛出,包括错误码和错误信息,详见 Error

◆ deleteGroupSharedFile()

void io.agora.chat.GroupManager.deleteGroupSharedFile ( String  groupId,
String  fileId 
) throws ChatException

删除群组指定的共享文件。 成员可以删除自己上传的文件,群组拥有者或者群组管理员可以删除所有的共享文件。 异步方法见 asyncDeleteGroupSharedFile(String, String, CallBack)

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

参数
groupId群组 ID。
fileId文件 ID。
异常
ChatException如果有异常会在此抛出,包括错误码和错误信息,详见 Error

◆ destroyGroup()

void io.agora.chat.GroupManager.destroyGroup ( final String  groupId) throws ChatException

解散群组。 仅群主可调用此方法。 异步方法见 asyncDestroyGroup(String, CallBack)

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

参数
groupId群组 ID。
异常
ChatException如果有异常会在此抛出,包括错误码和错误信息,详见 Error

◆ downloadGroupSharedFile()

void io.agora.chat.GroupManager.downloadGroupSharedFile ( String  groupId,
String  fileId,
String  savePath,
CallBack  callBack 
) throws ChatException

下载群组中指定的共享文件。 注意:callback 只做进度回调用。 异步方法见 asyncDownloadGroupSharedFile(String, String, String, CallBack)

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

参数
groupId群组 ID。
fileId文件 ID。
savePath文件保存路径。
callBack下载文件进度回调。
异常
ChatException如果有异常会在此抛出,包括错误码和错误信息,详见 Error

◆ fetchGroupAnnouncement()

String io.agora.chat.GroupManager.fetchGroupAnnouncement ( String  groupId) throws ChatException

从服务器获取群组公告。 群成员可调用此方法。 异步方法见 asyncFetchGroupAnnouncement(String, ValueCallBack)

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

参数
groupId群组 ID。
返回
群组公告。
异常
ChatException如果有异常会在此抛出,包括错误码和错误信息,详见 Error

◆ fetchGroupBlackList()

List< String > io.agora.chat.GroupManager.fetchGroupBlackList ( String  groupId,
int  pageNum,
int  pageSize 
) throws ChatException

以分页方式从服务器获群组黑名单。 仅群主和管理员可调用此方法。 异步方法见 asyncFetchGroupBlackList(String, int, int, ValueCallBack)

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

参数
groupId群组 ID。
pageNum当前页码,从 1 开始。
pageSize每页返回的黑名单上的用户数。
返回
返回分页获取的群组黑名单列表。
异常
ChatException如果有异常会在此抛出,包括错误码和错误信息,详见 Error

◆ fetchGroupMembers()

CursorResult< String > io.agora.chat.GroupManager.fetchGroupMembers ( String  groupId,
String  cursor,
int  pageSize 
) throws ChatException

以分页方式获取群组成员列表。 返回的结果中,当 CursorResult.getCursor() 为空字符串 ("") 时,表示没有更多数据。 异步方法见 asyncFetchGroupMembers(String, String, int, ValueCallBack)

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

例如:

CursorResult result = fetchGroupMembers(groupId, cursor, pageSize); // search 1
result = fetchGroupMembers(groupId, result.getCursor(), pageSize); // search 2
CursorResult< String > fetchGroupMembers(String groupId, String cursor, int pageSize)
Definition: GroupManager.java:2961
参数
groupId群组 ID。
cursor从这个游标位置开始取数据,首次获取数据时传 null 即可。
pageSize每页返回的群组成员数。
返回
分页获取结果 CursorResult,包含用于下次获取数据的 cursor 以及群组成员 list, 如果是最后一页,cursor 返回结果为空字符串。
异常
ChatException如果有异常会在此抛出,包括错误码和错误信息,详见 Error

◆ fetchGroupMuteList()

Map< String, Long > io.agora.chat.GroupManager.fetchGroupMuteList ( String  groupId,
int  pageNum,
int  pageSize 
) throws ChatException

获取群组的禁言列表。 仅聊天室创建者和管理员可调用此方法。 异步方法见 asyncFetchGroupMuteList(String, int, int, ValueCallBack)

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

参数
groupId群组 ID。
pageNum当前页码,从 1 开始。
pageSize每页返回的禁言成员数。
返回
返回的包含禁言成员 ID 及其禁言时长的 Map,其中每一项的 key 是禁言的成员 ID,value 是禁言时间,单位是毫秒。
异常
ChatException如果有异常会在此抛出,包括错误码和错误信息,详见 Error

◆ fetchGroupSharedFileList()

List< MucSharedFile > io.agora.chat.GroupManager.fetchGroupSharedFileList ( String  groupId,
int  pageNum,
int  pageSize 
) throws ChatException

从服务器获取群组的共享文件列表。 异步方法见 asyncFetchGroupSharedFileList(String, int, int, ValueCallBack)

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

参数
groupId群组 ID。
pageNum当前页码,从 1 开始。
pageSize每页返回的共享文件数。
返回
返回共享文件列表。
异常
ChatException如果有异常会在此抛出,包括错误码和错误信息,详见 Error

◆ fetchGroupWhiteList()

void io.agora.chat.GroupManager.fetchGroupWhiteList ( final String  groupId,
final ValueCallBack< List< String > >  callBack 
)

获取群组白名单列表。 仅聊天室创建者和管理员可调用此方法。

异步方法。

参数
groupId群组 ID。
callBack结果回调,成功时回调 ValueCallBack#onSuccess(Object), 返回白名单列表; 失败时回调 ValueCallBack#onError(int, String)

◆ getAllGroups()

List< Group > io.agora.chat.GroupManager.getAllGroups ( )

获取当前(内存)用户的所有群组。 在调用此方法之前,可调用 loadAllGroups(),提前将数据从数据库加载到内存; 如果未调用 loadAllGroups(),首次会从数据库中加载群组数据,之后再从内存中加载。

返回
群组列表。

◆ getBlockedUsers() [1/2]

List< String > io.agora.chat.GroupManager.getBlockedUsers ( String  groupId) throws ChatException

获取群组的黑名单列表, 默认最多取 200 个. 仅群主和管理员可调用此方法。 异步方法见 asyncGetBlockedUsers(String, ValueCallBack)

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

参数
groupId群组 ID。
返回
List 返回黑名单列表。
异常
ChatException如果有异常会在此抛出,包括错误码和错误信息,详见 Error

◆ getBlockedUsers() [2/2]

List< String > io.agora.chat.GroupManager.getBlockedUsers ( String  groupId,
int  pageIndex,
int  pageSize 
) throws ChatException

以分页方式获取群组的黑名单。 仅群主和管理员可调用此方法。 异步方法见 asyncGetBlockedUsers(String, int, int, ValueCallBack)

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

参数
groupId群组 ID。
pageIndex当前页码,从 1 开始。
pageSize每页返回的群组数。
返回
List 返回黑名单列表。
异常
ChatException如果有异常会在此抛出,包括错误码和错误信息,详见 Error

◆ getGroup()

Group io.agora.chat.GroupManager.getGroup ( String  groupId)

根据群组 ID,从内存中获得群组对象。

参数
groupId群组ID。
返回
返回群组对象。如果群组不存在,返回 null。

◆ getGroupFromServer() [1/2]

Group io.agora.chat.GroupManager.getGroupFromServer ( String  groupId) throws ChatException

从服务器获取群组的详细信息。 该方法不获取成员。如需获取成员,使用 fetchGroupMembers(String, String, int)。 异步方法见 asyncGetGroupFromServer(String, ValueCallBack)

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

参数
groupId群组 ID。
返回
Group 返回群组对象。
异常
ChatException如果有异常会在此抛出,包括错误码和错误信息,详见 Error

◆ getGroupFromServer() [2/2]

Group io.agora.chat.GroupManager.getGroupFromServer ( String  groupId,
boolean  fetchMembers 
) throws ChatException

从服务器获取群组的详细信息。

参数 fetchMembers 为 true 的时候,获取群成员。如需获取更多成员,使用 fetchGroupMembers(String, String, int)

只有群成员才能获取群组的成员列表。

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

参数
groupId群组 ID。
fetchMembers是否获取成员列表,默认获取 200 成员的列表。
返回
Group 返回更新后的群组对象。
异常
ChatException如果有异常会在此抛出,包括错误码和错误信息,详见 Error
弃用:
不再推荐使用此方法,建议使用 getGroupFromServer(String)

◆ getJoinedGroupsFromServer() [1/2]

synchronized List< Group > io.agora.chat.GroupManager.getJoinedGroupsFromServer ( ) throws ChatException

从服务器获取当前用户的所有群组。 此操作只返回群组列表,并不获取群组的所有成员信息,如果要更新某个群组包括成员的全部信息,需要再调用 getGroupFromServer(String groupId)。 异步方法见 asyncGetJoinedGroupsFromServer(ValueCallBack)

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

返回
当前用户已加入的群组列表。
异常
ChatException如果有异常会在此抛出,包括错误码和错误信息,详见 Error
弃用:
已废弃,请使用 getJoinedGroupsFromServer(int, int, boolean, boolean)

◆ getJoinedGroupsFromServer() [2/2]

synchronized List< Group > io.agora.chat.GroupManager.getJoinedGroupsFromServer ( int  pageIndex,
int  pageSize,
boolean  needMemberCount,
boolean  needRole 
) throws ChatException

以分页方式从服务器获取当前用户已加入的群组。 此操作只返回群组列表,不包含群组的所有成员信息。如果要更新某个群组包括成员的全部信息,需要再调用 getGroupFromServer(String groupId)。 异步方法见 asyncGetJoinedGroupsFromServer(int, int, boolean, boolean, ValueCallBack)

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

参数
pageIndex当前页码,从 0 开始。
pageSize每页返回的群组数。pageSize 最大不超过 20
needMemberCount是否需要群成员人数。
needRole是否需要用户在群里的角色。
返回
返回分页获取的群组列表。
异常
ChatException如果有异常会在此抛出,包括错误码和错误信息,详见 Error

◆ getPublicGroupsFromServer()

CursorResult< GroupInfo > io.agora.chat.GroupManager.getPublicGroupsFromServer ( int  pageSize,
String  cursor 
) throws ChatException

以分页方式从服务器获取公开群组。

异步方法见 asyncGetPublicGroupsFromServer(int, String, ValueCallBack)

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

参数
pageSize每页返回的公开群组数。
cursor从这个游标位置开始取数据,首次获取数据时传 null 即可。
返回
分页获取结果 CursorResult,包含用于下次获取数据的 cursor 以及群组 list 的对象, 如果是最后一页,cursor 返回结果为空字符串。
异常
ChatException如果有异常会在此抛出,包括错误码和错误信息,详见 Error

◆ inviteUser()

void io.agora.chat.GroupManager.inviteUser ( String  groupId,
String[]  beInvitedUsernames,
String  reason 
) throws ChatException

邀请用户加入群组。 前提:群组类型是 GroupStyle#GroupStylePrivateMemberCanInvite,即允许群成员邀请用户。 异步方法见 asyncInviteUser(String, String[], String, CallBack)

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

参数
groupId群组 ID。
beInvitedUsernames受邀用户的数组。
reason邀请原因。
异常
ChatException如果有异常会在此抛出,包括错误码和错误信息,详见 Error

◆ joinGroup()

void io.agora.chat.GroupManager.joinGroup ( String  groupId) throws ChatException

当前登录用户加入公开群。

如果是自由加入的公开群,直接进入群组;需要验证的公开群需要等待群主同意。详见 GroupStyle

异步方法见 asyncJoinGroup(String, CallBack)

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

参数
groupId群组 ID。
异常
ChatException如果有异常会在此抛出,包括错误码和错误信息,详见 Error

◆ leaveGroup()

void io.agora.chat.GroupManager.leaveGroup ( String  groupId) throws ChatException

当前登录用户退出群组。

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

参数
groupId群组 ID。
异常
ChatException如果有异常会在此抛出,包括错误码和错误信息,详见 Error

◆ loadAllGroups()

synchronized boolean io.agora.chat.GroupManager.loadAllGroups ( )

从数据库中加载所有群组。

◆ muteAllMembers()

void io.agora.chat.GroupManager.muteAllMembers ( final String  groupId,
final ValueCallBack< Group callBack 
)

设置全员禁言。 仅群主和管理员可调用此方法。

异步方法。

参数
groupId群组 ID。
callBack结果回调,成功时回调 ValueCallBack#onSuccess(Object), 返回更新后的群组对象; 失败时回调 ValueCallBack#onError(int, String)

◆ muteGroupMembers()

Group io.agora.chat.GroupManager.muteGroupMembers ( String  groupId,
List< String >  muteMembers,
long  duration 
) throws ChatException

将一组成员禁言。 仅群主和管理员可调用此方法。 异步方法见 asyncMuteGroupMembers(String, List, long, ValueCallBack)

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

参数
groupId群组 ID。
muteMembers要禁言的用户列表。
duration禁言时间,单位是毫秒。若为 -1,表示永久禁言。
返回
返回更新后的群组对象。
异常
ChatException如果有异常会在此抛出,包括错误码和错误信息,详见 Error

◆ removeFromGroupWhiteList()

void io.agora.chat.GroupManager.removeFromGroupWhiteList ( final String  groupId,
final List< String >  members,
final CallBack  callBack 
)

移除白名单。 仅群组创建者和管理员可调用此方法。

异步方法。

参数
groupId群组 ID。
members需要从白名单中移除的成员 ID 列表。
callBack结果回调,成功时回调 CallBack#onSuccess(), 失败时回调 CallBack#onError(int, String)

◆ removeGroupAdmin()

Group io.agora.chat.GroupManager.removeGroupAdmin ( String  groupId,
String  admin 
) throws ChatException

删除群组管理员。 仅群主可调用此方法。 异步方法见 asyncRemoveGroupAdmin(String, String, ValueCallBack)

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

参数
groupId群组 ID。
admin删除的管理员 ID。
返回
返回更新后的群组对象。
异常
ChatException如果有异常会在此抛出,包括错误码和错误信息,详见 Error

◆ removeGroupChangeListener()

void io.agora.chat.GroupManager.removeGroupChangeListener ( GroupChangeListener  listener)

移除群组变化监听器。 该方法在注册 addGroupChangeListener(GroupChangeListener)后调用。

参数
listener要移除的群组监听器。

◆ removeUserFromGroup()

void io.agora.chat.GroupManager.removeUserFromGroup ( final String  groupId,
final String  username 
) throws ChatException

将群成员移出群组。 仅群主和管理员可调用此方法。 异步方法见 asyncRemoveUserFromGroup(String, String, CallBack)

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

参数
groupId群组的 ID。
username要删除成员的用户名。
异常
ChatException如果有异常会在此抛出,包括错误码和错误信息,详见 Error

◆ removeUsersFromGroup()

void io.agora.chat.GroupManager.removeUsersFromGroup ( final String  groupId,
final List< String >  members 
) throws ChatException

将群成员移出群组。 仅群主和管理员可调用此方法。 异步方法见 removeUsersFromGroup(String, List)}。

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

参数
groupId群组 ID。
members要删除成员的用户名列表。
异常
ChatException如果有异常会在此抛出,包括错误码和错误信息,详见 Error

◆ unblockGroupMessage()

void io.agora.chat.GroupManager.unblockGroupMessage ( String  groupId) throws ChatException

取消屏蔽群消息。 异步方法见 asyncUnblockGroupMessage(String, CallBack)

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

参数
groupId群组 ID。
异常
ChatException如果有异常会在此抛出,包括错误码和错误信息,详见 Error

◆ unblockUser()

void io.agora.chat.GroupManager.unblockUser ( String  groupId,
String  username 
) throws ChatException

将用户从群组黑名单中移除。 仅群主和管理员可调用此方法。 异步方法见 asyncUnblockUser(String, String, CallBack)

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

参数
groupId群组 ID。
username要从黑名单中移除的用户。
异常
ChatException如果有异常会在此抛出,包括错误码和错误信息,详见 Error

◆ unblockUsers()

void io.agora.chat.GroupManager.unblockUsers ( String  groupId,
List< String >  members 
) throws ChatException

将用户从群组黑名单移除。 仅群主和管理员可调用此方法。 异步方法见 asyncBlockUsers(String, List, CallBack)

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

参数
groupId群组 ID。
members要从黑名单中移除的用户列表。
异常
ChatException如果有异常会在此抛出,包括错误码和错误信息,详见 Error

◆ unmuteAllMembers()

void io.agora.chat.GroupManager.unmuteAllMembers ( final String  groupId,
final ValueCallBack< Group callBack 
)

解除全员禁言。 仅群主和管理员可调用此方法。

异步方法。

参数
groupId群组 ID。
callBack结果回调,成功时回调 ValueCallBack#onSuccess(Object), 返回更新后的群组对象; 失败时回调 ValueCallBack#onError(int, String)

◆ unMuteGroupMembers()

Group io.agora.chat.GroupManager.unMuteGroupMembers ( String  groupId,
List< String >  members 
) throws ChatException

解除禁言。 仅群主和管理员可调用此方法。 异步方法见 asyncUnMuteGroupMembers(String, List, ValueCallBack)

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

参数
groupId群组 ID。
members要解除禁言的用户列表。
返回
返回更新后的群组对象。
异常
ChatException如果有异常会在此抛出,包括错误码和错误信息,详见 Error

◆ updateGroupAnnouncement()

void io.agora.chat.GroupManager.updateGroupAnnouncement ( String  groupId,
String  announcement 
) throws ChatException

更新群公告。 仅群主和管理员可调用此方法。 异步方法见 asyncUpdateGroupAnnouncement(String, String, CallBack)

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

参数
groupId群组 ID。
announcement公告内容。
异常
ChatException如果有异常会在此抛出,包括错误码和错误信息,详见 Error

◆ updateGroupExtension()

Group io.agora.chat.GroupManager.updateGroupExtension ( String  groupId,
String  extension 
) throws ChatException

更新群组扩展字段。 仅群主和管理员可调用此方法。

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

参数
groupId群组 ID。
extension群组扩展字段。
异常
ChatException如果有异常会在此抛出,包括错误码和错误信息,详见 Error

◆ uploadGroupSharedFile()

MucSharedFile io.agora.chat.GroupManager.uploadGroupSharedFile ( String  groupId,
String  filePath,
CallBack  callBack 
) throws ChatException

上传共享文件至群组。 注意:callback 只做进度回调用。 异步方法见 asyncUploadGroupSharedFile(String, String, ValueCallBack)

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

参数
groupId群组 ID。
filePath文件本地路径。
callBack上传文件进度回调。
返回
MucSharedFile 返回共享文件属性对象。
异常
ChatException如果有异常会在此抛出,包括错误码和错误信息,详见 Error

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