IChatManagerGroup

Extends Protocol:
IChatManagerBase
Declared In:

Introduction

本协议包括:创建, 销毁, 加入, 退出等群组操作

Discussion

所有不带Block回调的异步方法, 需要监听回调时, 需要先将要接受回调的对象注册到delegate中, 示例代码如下: [[[EaseMob sharedInstance] chatManager] addDelegate:self delegateQueue:dispatch_get_main_queue()]



Methods

-2_0_0

异步方法, 获取所有私有群组

-2_1_0

从数据库获取与登陆者相关的群组

-acceptApplyJoinGroup:groupname:applicant:error:

同意加入群组的申请

-acceptInvitationFromGroup:error:

接受并加入群组

-addOccupants:toGroup:welcomeMessage:error:

邀请用户加入群组

-applyJoinPublicGroup:withGroupname:message:error:

同步方法, 申请加入一个需授权的公开群组

-asyncAcceptApplyJoinGroup:groupname:applicant:

异步方法, 同意加入群组的申请

-asyncAcceptApplyJoinGroup:groupname:applicant:completion:onQueue:

异步方法, 同意加入群组的申请

-asyncAcceptInvitationFromGroup:

异步方法, 接受并加入群组

-asyncAcceptInvitationFromGroup:completion:onQueue:

异步方法, 接受并加入群组

-asyncAddOccupants:toGroup:welcomeMessage:

异步方法, 邀请用户加入群组

-asyncAddOccupants:toGroup:welcomeMessage:completion:onQueue:

异步方法, 邀请用户加入群组

-asyncApplyJoinPublicGroup:withGroupname:message:

异步方法, 申请加入一个需授权的公开群组

-asyncApplyJoinPublicGroup:withGroupname:message:completion:onQueue:

异步方法, 申请加入一个需授权的公开群组

-asyncBlockGroup:completion:onQueue:

异步方法, 屏蔽群消息,服务器不发送消息(不能屏蔽自己创建的群,EMErrorInvalidUsername)

-asyncBlockOccupants:fromGroup:

异步方法, 将某些人加入群组黑名单

-asyncBlockOccupants:fromGroup:completion:onQueue:

异步方法, 将某些人加入群组黑名单

-asyncChangeAffiliation:forOccupants:inGroup:

异步方法, 更改成员的权限级别

-asyncChangeAffiliation:forOccupants:inGroup:completion:onQueue:

异步方法, 更改成员的权限级别

-asyncChangeDescription:forGroup:

异步方法, 更改群组说明信息

-asyncChangeDescription:forGroup:completion:onQueue:

异步方法, 更改群组说明信息

-asyncChangeGroupSubject:forGroup:

异步方法, 更改群组主题

-asyncChangeGroupSubject:forGroup:completion:onQueue:

异步方法, 更改群组主题

-asyncChangePassword:forGroup:

异步方法, 更改群组密码

-asyncChangePassword:forGroup:completion:onQueue:

异步方法, 更改群组密码

-asyncCreateAnonymousGroupWithSubject:description:initialWelcomeMessage:nickname:styleSetting:

创建匿名群组(异步方法)。函数执行完, 回调[group:didCreateWithError:]会被触发

-asyncCreateAnonymousGroupWithSubject:description:initialWelcomeMessage:nickname:styleSetting:completion:onQueue:

创建群组(异步方法)。函数执行完, 会调用参数completion

-asyncCreateGroupWithSubject:description:invitees:initialWelcomeMessage:styleSetting:

创建群组(异步方法)。

-asyncCreateGroupWithSubject:description:invitees:initialWelcomeMessage:styleSetting:completion:onQueue:

创建群组(异步方法)。

-asyncCreatePrivateGroupWithSubject:description:invitees:initialWelcomeMessage:

异步方法, 创建一个私有群组

-asyncCreatePrivateGroupWithSubject:description:invitees:initialWelcomeMessage:completion:onQueue:

异步方法, 创建一个私有群组

-asyncCreatePublicGroupWithSubject:description:invitees:initialWelcomeMessage:

异步方法, 创建一个公开群组

-asyncCreatePublicGroupWithSubject:description:invitees:initialWelcomeMessage:completion:onQueue:

异步方法, 创建一个公开群组

-asyncDestroyGroup:

异步方法, 解散群组,需要owner权限

-asyncDestroyGroup:completion:onQueue:

异步方法, 解散群组,需要owner权限

-asyncFetchAllPrivateGroupsWithCompletion:onQueue:

异步方法, 获取所有私有群组

-asyncFetchAllPublicGroups

异步方法, 获取所有公开群组

-asyncFetchAllPublicGroupsWithCompletion:onQueue:

异步方法, 获取所有公开群组

-asyncFetchGroupBansList:

异步方法, 获取群组黑名单列表

-asyncFetchGroupBansList:completion:onQueue:

异步方法, 获取群组黑名单列表

-asyncFetchGroupInfo:

异步方法, 获取群组详细信息(id,密码,主题,描述,实际总人数,在线人数,成员列表,属性)

-asyncFetchGroupInfo:completion:onQueue:

异步方法, 获取群组详细信息(id,密码,主题,描述,实际总人数,在线人数,成员列表,属性)

-asyncFetchGroupInfo:includesOccupantList:

异步方法, 获取群组成员列表

-asyncFetchGroupInfo:includesOccupantList:completion:onQueue:

异步方法, 获取群组成员列表

-asyncFetchMyGroupsList

获取与我相关的群组列表(自己创建的,加入的)(异步方法)

-asyncFetchMyGroupsListWithCompletion:onQueue:

获取与我相关的群组列表(自己创建的,加入的)(异步方法)

-asyncFetchOccupantList:

异步方法, 获取群组成员列表

-asyncFetchOccupantList:completion:onQueue:

异步方法, 获取群组成员列表

-asyncFetchPublicGroupsFromServerWithCursor:pageSize:andCompletion:

异步方法, 获取指定范围的公开群

-asyncJoinAnonymousPublicGroup:nickname:

异步方法, 加入一个匿名公开群组

-asyncJoinAnonymousPublicGroup:nickname:completion:onQueue:

异步方法, 加入一个匿名公开群组

-asyncJoinPublicGroup:

异步方法, 加入一个公开群组

-asyncJoinPublicGroup:completion:onQueue:

异步方法, 加入一个公开群组

-asyncLeaveGroup:

异步方法, 退出群组(需要非owner的权限)

-asyncLeaveGroup:completion:onQueue:

异步方法, 退出群组(需要非owner的权限)

-asyncRemoveOccupants:fromGroup:

异步方法, 将某些人请出群组

-asyncRemoveOccupants:fromGroup:completion:onQueue:

异步方法, 将某些人请出群组

-asyncSearchPublicGroupWithGroupId:completion:onQueue:

根据groupId搜索公开群(异步方法)

-asyncUnblockGroup:completion:onQueue:

异步方法, 取消屏蔽群消息(不能操作自己创建的群,EMErrorInvalidUsername)

-asyncUnblockOccupants:forGroup:

异步方法, 将某些人从群组黑名单中解除

-asyncUnblockOccupants:forGroup:completion:onQueue:

异步方法, 将某些人从群组黑名单中解除

-blockGroup:error:

屏蔽群消息,服务器不发送消息(不能屏蔽自己创建的群,EMErrorInvalidUsername)

-blockOccupants:fromGroup:error:

将某些人加入群组黑名单

-changeAffiliation:forOccupants:inGroup:error:

更改成员的权限级别

-changeDescription:forGroup:error:

更改群组说明信息

-changeGroupSubject:forGroup:error:

更改群组主题

-changePassword:forGroup:error:

更改群组密码

-createAnonymousGroupWithSubject:description:initialWelcomeMessage:nickname:styleSetting:error:

创建匿名群组(同步方法)

-createGroupWithSubject:description:invitees:initialWelcomeMessage:styleSetting:error:

创建群组(同步方法)

-createPrivateGroupWithSubject:description:invitees:initialWelcomeMessage:error:

创建一个私有群组

-createPublicGroupWithSubject:description:invitees:initialWelcomeMessage:error:

创建一个公开群组

-destroyGroup:error:

同步方法, 解散群组,需要owner权限

-fetchAllPrivateGroupsWithError:

获取所有私有群组

-fetchAllPublicGroupsWithError:

获取所有公开群组

-fetchGroupBansList:error:

同步方法, 获取群组黑名单列表

-fetchGroupInfo:error:

获取群组详细信息(id,密码,主题,描述,实际总人数,在线人数,成员列表,属性)

-fetchGroupInfo:includesOccupantList:error:

同步方法, 获取群组信息

-fetchOccupantList:error:

同步方法, 获取群组成员列表

-fetchPublicGroupsFromServerWithCursor:pageSize:andError:

获取指定范围内的公开群

-joinAnonymousPublicGroup:nickname:error:

加入一个匿名公开群组

-joinPublicGroup:error:

加入一个公开群组

-leaveGroup:error:

退出群组 (需要非owner的权限)

-loadAllMyGroupsFromDatabaseWithAppend2Chat:

从数据库获取与登陆者相关的群组

-rejectApplyJoinGroup:groupname:toApplicant:reason:

拒绝一个加入群组的申请

-rejectInvitationForGroup:toInviter:reason:

拒绝一个加入群组的邀请

-removeOccupants:fromGroup:error:

将某些人请出群组

-searchPublicGroupWithGroupId:error:

根据groupId搜索公开群(同步方法)

-unblockGroup:error:

取消屏蔽群消息(不能操作自己创建的群,EMErrorInvalidUsername)

-unblockOccupants:forGroup:error:

将某些人从群组黑名单中解除


2_0_0


异步方法, 获取所有私有群组

@optional

- (void)asyncFetchAllPrivateGroups EM_DEPRECATED_IOS(2_0_0, 2_0_2, "Use -asyncMyGroupsList");
Discussion

执行后, 回调didUpdateGroupList:error会被触发


2_1_0


从数据库获取与登陆者相关的群组

@optional

- (NSArray *)loadAllMyGroupsFromDatabase EM_DEPRECATED_IOS(2_1_0, 2_1_2, "Use - loadAllMyGroupsFromDatabaseWithAppend2Chat:");
Return Value

错误信息

Discussion

直接从数据库中获取,并不会返回相关回调方法; 若希望返回相关回调方法,请使用loadAllMyGroupsFromDatabaseWithAppend2Chat:


acceptApplyJoinGroup:groupname:applicant:error:


同意加入群组的申请

@required

- (void)acceptApplyJoinGroup:(NSString *)groupId groupname:(NSString *)groupname applicant:(NSString *)username error:(EMError **)pError;
Parameters
groupId

所申请的群组ID

groupname

申请的群组名称

username

申请人的用户名

pError

错误信息


acceptInvitationFromGroup:error:


接受并加入群组

@optional

- (EMGroup *)acceptInvitationFromGroup:(NSString *)groupId error:(EMError **)pError EM_DEPRECATED_IOS(2_0_3, 2_1_8, "Delete");
Parameters
groupId

所接受的群组ID

pError

错误信息

Return Value

返回所加入的群组对象


addOccupants:toGroup:welcomeMessage:error:


邀请用户加入群组

@required

- (EMGroup *)addOccupants:(NSArray *)occupants toGroup:(NSString *)groupId welcomeMessage:(NSString *)welcomeMessage error:(EMError **)pError;
Parameters
occupants

被邀请的用户名列表

groupId

群组ID

welcomeMessage

欢迎信息

pError

错误信息

Return Value

返回群组对象, 失败返回空


applyJoinPublicGroup:withGroupname:message:error:


同步方法, 申请加入一个需授权的公开群组

@required

- (EMGroup *)applyJoinPublicGroup:(NSString *)groupId withGroupname:(NSString *)groupName message:(NSString *)message error:(EMError **)pError;
Parameters
groupId

公开群组的ID

groupName

请求加入的群组名称

message

请求加入的信息

pError

错误信息

Return Value

所加入的公开群组


asyncAcceptApplyJoinGroup:groupname:applicant:


异步方法, 同意加入群组的申请

@required

- (void)asyncAcceptApplyJoinGroup:(NSString *)groupId groupname:(NSString *)groupname applicant:(NSString *)username;
Parameters
groupId

所申请的群组ID

groupname

申请的群组名称

username

申请人的用户名

Discussion

函数执行后, didAcceptApplyJoinGroup:username:error:回调会被触发


asyncAcceptApplyJoinGroup:groupname:applicant:completion:onQueue:


异步方法, 同意加入群组的申请

@required

- (void)asyncAcceptApplyJoinGroup:(NSString *)groupId groupname:(NSString *)groupname applicant:(NSString *)username completion:(void (^)(EMError *error))completion onQueue:(dispatch_queue_t)aQueue;
Parameters
groupId

所申请的群组ID

groupname

申请的群组名称

username

申请人的用户名

completion

消息完成后的回调

aQueue

回调执行时的线程


asyncAcceptInvitationFromGroup:


异步方法, 接受并加入群组

@optional

- (void)asyncAcceptInvitationFromGroup:(NSString *)groupId EM_DEPRECATED_IOS(2_0_3, 2_1_8, "Delete");
Parameters
groupId

所接受的群组ID

Discussion

函数执行后, didAcceptInvitationFromGroup:error:回调会被触发


asyncAcceptInvitationFromGroup:completion:onQueue:


异步方法, 接受并加入群组

@optional

- (void)asyncAcceptInvitationFromGroup:(NSString *)groupId completion:(void (^)(EMGroup *group, EMError *error))completion onQueue:(dispatch_queue_t)aQueue EM_DEPRECATED_IOS(2_0_3, 2_1_8, "Delete");
Parameters
groupId

所接受的群组ID

completion

消息完成后的回调

aQueue

回调执行时的线程


asyncAddOccupants:toGroup:welcomeMessage:


异步方法, 邀请用户加入群组

@required

- (void)asyncAddOccupants:(NSArray *)occupants toGroup:(NSString *)groupId welcomeMessage:(NSString *)welcomeMessage;
Parameters
occupants

被邀请的用户名列表

groupId

群组ID

welcomeMessage

欢迎信息

Discussion

函数执行完, 回调groupDidUpdateInfo:error:会被触发


asyncAddOccupants:toGroup:welcomeMessage:completion:onQueue:


异步方法, 邀请用户加入群组

@required

- (void)asyncAddOccupants:(NSArray *)occupants toGroup:(NSString *)groupId welcomeMessage:(NSString *)welcomeMessage completion:(void (^)(NSArray *occupants, EMGroup *group, NSString *welcomeMessage, EMError *error))completion onQueue:(dispatch_queue_t)aQueue;
Parameters
occupants

被邀请的用户名列表

groupId

群组ID

welcomeMessage

欢迎信息

completion

消息完成后的回调

aQueue

回调block时的线程


asyncApplyJoinPublicGroup:withGroupname:message:


异步方法, 申请加入一个需授权的公开群组

@required

- (void)asyncApplyJoinPublicGroup:(NSString *)groupId withGroupname:(NSString *)groupName message:(NSString *)message;
Parameters
groupId

公开群组的ID

groupName

请求加入的群组名称

message

请求加入的信息

Discussion

执行后, 回调didApplyJoinPublicGroup:error:会被触发


asyncApplyJoinPublicGroup:withGroupname:message:completion:onQueue:


异步方法, 申请加入一个需授权的公开群组

@required

- (void)asyncApplyJoinPublicGroup:(NSString *)groupId withGroupname:(NSString *)groupName message:(NSString *)message completion:(void (^)(EMGroup *group, EMError *error))completion onQueue:(dispatch_queue_t)aQueue;
Parameters
groupId

公开群组的ID

groupName

请求加入的群组名称

message

请求加入的信息

completion

消息完成后的回调

aQueue

回调block时的线程


asyncBlockGroup:completion:onQueue:


异步方法, 屏蔽群消息,服务器不发送消息(不能屏蔽自己创建的群,EMErrorInvalidUsername)

@required

- (void)asyncBlockGroup:(NSString *)groupId completion:(void (^)(EMGroup *group, EMError *error))completion onQueue:(dispatch_queue_t)aQueue;
Parameters
groupId

要取消屏蔽的群ID

completion

消息完成后的回调

aQueue

回调block时的线程

Discussion

被屏蔽的群,服务器不再发消息


asyncBlockOccupants:fromGroup:


异步方法, 将某些人加入群组黑名单

@required

- (void)asyncBlockOccupants:(NSArray *)occupants fromGroup:(NSString *)groupId;
Parameters
occupants

要加入黑名单的用户名列表

groupId

群组ID

Discussion

此操作需要admin/owner权限, 被加入黑名单的人, 不会再被允许进入群组 函数执行完, 回调groupDidUpdateInfo:error:会被触发


asyncBlockOccupants:fromGroup:completion:onQueue:


异步方法, 将某些人加入群组黑名单

@required

- (void)asyncBlockOccupants:(NSArray *)occupants fromGroup:(NSString *)groupId completion:(void (^)(EMGroup *group, EMError *error))completion onQueue:(dispatch_queue_t)aQueue;
Parameters
occupants

要加入黑名单的用户名列表

groupId

群组ID

completion

消息完成后的回调

aQueue

回调block时的线程

Discussion

此操作需要admin/owner权限, 被加入黑名单的人, 不会再被允许进入群组


asyncChangeAffiliation:forOccupants:inGroup:


异步方法, 更改成员的权限级别

@optional

- (void)asyncChangeAffiliation:(EMGroupMemberRole)newAffiliation forOccupants:(NSArray *)occupants inGroup:(NSString *)groupId EM_DEPRECATED_IOS(2_0_3, 2_0_9, "Delete");
Parameters
newAffiliation

新的级别

occupants

被更改成员的用户名列表

groupId

群组ID

Discussion

此操作需要admin/owner权限. 函数执行完, 回调groupDidUpdateInfo:error:会被触发


asyncChangeAffiliation:forOccupants:inGroup:completion:onQueue:


异步方法, 更改成员的权限级别

@optional

- (void)asyncChangeAffiliation:(EMGroupMemberRole)newAffiliation forOccupants:(NSArray *)occupants inGroup:(NSString *)groupId completion:(void (^)(EMGroup *group, EMError *error))completion onQueue:(dispatch_queue_t)aQueue EM_DEPRECATED_IOS(2_0_3, 2_0_9, "Delete");
Parameters
newAffiliation

新的级别

occupants

被更改成员的用户名列表

groupId

群组ID

completion

消息完成后的回调

aQueue

回调block时的线程

Discussion

此操作需要admin/owner权限


asyncChangeDescription:forGroup:


异步方法, 更改群组说明信息

@required

- (void)asyncChangeDescription:(NSString *)newDescription forGroup:(NSString *)groupId;
Parameters
newDescription

说明信息

groupId

群组ID

Discussion

此操作需要admin/owner权限. 函数执行完, 回调groupDidUpdateInfo:error:会被触发


asyncChangeDescription:forGroup:completion:onQueue:


异步方法, 更改群组说明信息

@required

- (void)asyncChangeDescription:(NSString *)newDescription forGroup:(NSString *)groupId completion:(void (^)(EMGroup *group, EMError *error))completion onQueue:(dispatch_queue_t)aQueue;
Parameters
newDescription

说明信息

groupId

群组ID

completion

消息完成后的回调

aQueue

回调block时的线程

Discussion

此操作需要admin/owner权限


asyncChangeGroupSubject:forGroup:


异步方法, 更改群组主题

@required

- (void)asyncChangeGroupSubject:(NSString *)subject forGroup:(NSString *)groupId;
Parameters
subject

主题

groupId

群组ID

Discussion

此操作需要admin/owner权限 函数执行完, groupDidUpdateInfo:error:回调会被触发


asyncChangeGroupSubject:forGroup:completion:onQueue:


异步方法, 更改群组主题

@required

- (void)asyncChangeGroupSubject:(NSString *)subject forGroup:(NSString *)groupId completion:(void (^)(EMGroup *group, EMError *error))completion onQueue:(dispatch_queue_t)aQueue;
Parameters
subject

主题

groupId

群组ID

completion

消息完成后的回调

aQueue

回调block时的线程

Discussion

此操作需要admin/owner权限


asyncChangePassword:forGroup:


异步方法, 更改群组密码

@optional

- (void)asyncChangePassword:(NSString *)newPassword forGroup:(NSString *)groupId EM_DEPRECATED_IOS(2_0_3, 2_0_9, "Delete");
Parameters
newPassword

新密码

groupId

群组ID

Discussion

此操作需要admin/owner权限. 函数执行完, 回调groupDidUpdateInfo:error:会被触发


asyncChangePassword:forGroup:completion:onQueue:


异步方法, 更改群组密码

@optional

- (void)asyncChangePassword:(NSString *)newPassword forGroup:(NSString *)groupId completion:(void (^)(EMGroup *group, EMError *error))completion onQueue:(dispatch_queue_t)aQueue EM_DEPRECATED_IOS(2_0_3, 2_0_9, "Delete");
Parameters
newPassword

新密码

groupId

群组ID

completion

消息完成后的回调

aQueue

回调block时的线程

Discussion

此操作需要admin/owner权限


asyncCreateAnonymousGroupWithSubject:description:initialWelcomeMessage:nickname:styleSetting:


创建匿名群组(异步方法)。函数执行完, 回调[group:didCreateWithError:]会被触发

@required

- (void)asyncCreateAnonymousGroupWithSubject:(NSString *)subject description:(NSString *)description initialWelcomeMessage:(NSString *)welcomeMessage nickname:(NSString *)nickname styleSetting:(EMGroupStyleSetting *)styleSetting;
Parameters
subject

群组名称

description

群组描述

welcomeMessage

群组欢迎语

nickname

创建群组时群主的昵称(匿名聊天时的昵称)

styleSetting

群组属性配置(groupStyle 必须为 eGroupStyle_PublicAnonymous, 目前只可以设置 maxUsersCount)


asyncCreateAnonymousGroupWithSubject:description:initialWelcomeMessage:nickname:styleSetting:completion:onQueue:


创建群组(异步方法)。函数执行完, 会调用参数completion

@required

- (void)asyncCreateAnonymousGroupWithSubject:(NSString *)subject description:(NSString *)description initialWelcomeMessage:(NSString *)welcomeMessage nickname:(NSString *)nickname styleSetting:(EMGroupStyleSetting *)styleSetting completion:(void (^)(EMGroup *group, EMError *error))completion onQueue:(dispatch_queue_t)aQueue;
Parameters
subject

群组名称

description

群组描述

welcomeMessage

群组欢迎语

nickname

创建群组时群主的昵称(匿名聊天时的昵称)

styleSetting

群组属性配置(groupStyle 必须为 eGroupStyle_PublicAnonymous, 目前只可以设置 maxUsersCount)

completion

创建完成后的回调

aQueue

回调block时的线程

Discussion

创建群组成功 判断条件:completion中,error == nil && group != nil


asyncCreateGroupWithSubject:description:invitees:initialWelcomeMessage:styleSetting:


创建群组(异步方法)。

@required

- (void)asyncCreateGroupWithSubject:(NSString *)subject description:(NSString *)description invitees:(NSArray *)invitees initialWelcomeMessage:(NSString *)welcomeMessage styleSetting:(EMGroupStyleSetting *)styleSetting;
Parameters
subject

群组名称

description

群组描述

invitees

默认群组成员(usernames,不需要包含创建者username)

welcomeMessage

群组欢迎语

styleSetting

群组属性配置

Discussion

函数执行完, 回调[group:didCreateWithError:]会被触发


asyncCreateGroupWithSubject:description:invitees:initialWelcomeMessage:styleSetting:completion:onQueue:


创建群组(异步方法)。

@required

- (void)asyncCreateGroupWithSubject:(NSString *)subject description:(NSString *)description invitees:(NSArray *)invitees initialWelcomeMessage:(NSString *)welcomeMessage styleSetting:(EMGroupStyleSetting *)styleSetting completion:(void (^)(EMGroup *group, EMError *error))completion onQueue:(dispatch_queue_t)aQueue;
Parameters
subject

群组名称

description

群组描述

invitees

默认群组成员(usernames,不需要包含创建者username)

welcomeMessage

群组欢迎语

styleSetting

群组属性配置

completion

创建完成后的回调

aQueue

回调block时的线程

Discussion

创建群组成功 判断条件:completion中,error == nil && group != nil 函数执行完, 会调用参数completion


asyncCreatePrivateGroupWithSubject:description:invitees:initialWelcomeMessage:


异步方法, 创建一个私有群组

@optional

- (void)asyncCreatePrivateGroupWithSubject:(NSString *)subject description:(NSString *)description invitees:(NSArray *)invitees initialWelcomeMessage:(NSString *)welcomeMessage EM_DEPRECATED_IOS(2_0_0, 2_0_2, "Use -asyncCreateGroupWithSubject:description:invitees:initialWelcomeMessage:styleSetting:");
Parameters
subject

主题

description

说明信息

invitees

初始群组成员的用户名列表

welcomeMessage

对初始群组成员的邀请信息

Discussion

函数执行完, 回调group:didCreateWithError:会被触发


asyncCreatePrivateGroupWithSubject:description:invitees:initialWelcomeMessage:completion:onQueue:


异步方法, 创建一个私有群组

@optional

- (void)asyncCreatePrivateGroupWithSubject:(NSString *)subject description:(NSString *)description invitees:(NSArray *)invitees initialWelcomeMessage:(NSString *)welcomeMessage completion:(void (^)(EMGroup *group, EMError *error))completion onQueue:(dispatch_queue_t)aQueue EM_DEPRECATED_IOS(2_0_0, 2_0_2, "Use -asyncCreateGroupWithSubject:description:invitees:initialWelcomeMessage:styleSetting:completion:onQueue:");
Parameters
subject

主题

description

说明信息

invitees

初始群组成员的用户名列表

welcomeMessage

对初始群组成员的邀请信息

completion

消息完成后的回调

aQueue

回调block时的线程


asyncCreatePublicGroupWithSubject:description:invitees:initialWelcomeMessage:


异步方法, 创建一个公开群组

@optional

- (void)asyncCreatePublicGroupWithSubject:(NSString *)subject description:(NSString *)description invitees:(NSArray *)invitees initialWelcomeMessage:(NSString *)welcomeMessage EM_DEPRECATED_IOS(2_0_0, 2_0_2, "Use -asyncCreateGroupWithSubject:description:invitees:initialWelcomeMessage:styleSetting:");
Parameters
subject

主题

description

说明信息

invitees

初始群组成员的用户名列表

welcomeMessage

对初始群组成员的邀请信息

Discussion

函数执行完, 回调group:didCreateWithError:会被触发


asyncCreatePublicGroupWithSubject:description:invitees:initialWelcomeMessage:completion:onQueue:


异步方法, 创建一个公开群组

@optional

- (void)asyncCreatePublicGroupWithSubject:(NSString *)subject description:(NSString *)description invitees:(NSArray *)invitees initialWelcomeMessage:(NSString *)welcomeMessage completion:(void (^)(EMGroup *group, EMError *error))completion onQueue:(dispatch_queue_t)aQueue EM_DEPRECATED_IOS(2_0_0, 2_0_2, "Use -asyncCreateGroupWithSubject:description:invitees:initialWelcomeMessage:styleSetting:completion:onQueue:");
Parameters
subject

主题

description

说明信息

invitees

初始群组成员的用户名列表

welcomeMessage

对初始群组成员的邀请信息

completion

消息完成后的回调

aQueue

回调block时的线程


asyncDestroyGroup:


异步方法, 解散群组,需要owner权限

@required

- (void)asyncDestroyGroup:(NSString *)groupId;
Parameters
groupId

群组ID

Discussion

函数执行完, 回调group:didLeave:error:会被触发


asyncDestroyGroup:completion:onQueue:


异步方法, 解散群组,需要owner权限

@required

- (void)asyncDestroyGroup:(NSString *)groupId completion:(void (^)(EMGroup *group, EMGroupLeaveReason reason, EMError *error))completion onQueue:(dispatch_queue_t)aQueue;
Parameters
groupId

群组ID

completion

消息完成后的回调

aQueue

回调block时的线程


asyncFetchAllPrivateGroupsWithCompletion:onQueue:


异步方法, 获取所有私有群组

@optional

- (void)asyncFetchAllPrivateGroupsWithCompletion:(void (^)(NSArray *groups, EMError *error))completion onQueue:(dispatch_queue_t)aQueue EM_DEPRECATED_IOS(2_0_0, 2_0_2, "Use -asyncMyGroupsListWithCompletion:onQueue:");
Parameters
completion

消息完成后的回调

aQueue

回调block时的线程


asyncFetchAllPublicGroups


异步方法, 获取所有公开群组

@optional

- (void)asyncFetchAllPublicGroups;
Discussion

执行后, 回调didFetchAllPublicGroups:error:会被触发


asyncFetchAllPublicGroupsWithCompletion:onQueue:


异步方法, 获取所有公开群组

@optional

- (void)asyncFetchAllPublicGroupsWithCompletion:(void (^)(NSArray *groups, EMError *error))completion onQueue:(dispatch_queue_t)aQueue;
Parameters
completion

消息完成后的回调

aQueue

回调block时的线程


asyncFetchGroupBansList:


异步方法, 获取群组黑名单列表

@required

- (void)asyncFetchGroupBansList:(NSString *)groupId;
Parameters
groupId

群组ID

Discussion

需要owner权限 执行完成后,回调[didFetchGroupBans:list:error:]


asyncFetchGroupBansList:completion:onQueue:


异步方法, 获取群组黑名单列表

@required

- (void)asyncFetchGroupBansList:(NSString *)groupId completion:(void (^)(NSArray *groupBans,EMError *error))completion onQueue:(dispatch_queue_t)aQueue;
Parameters
groupId

群组ID

completion

消息完成后的回调

aQueue

回调block时的线程

Discussion

需要owner权限


asyncFetchGroupInfo:


异步方法, 获取群组详细信息(id,密码,主题,描述,实际总人数,在线人数,成员列表,属性)

@required

- (void)asyncFetchGroupInfo:(NSString *)groupId;
Parameters
groupId

群组ID

Discussion

执行后, 回调didFetchGroupInfo:error会被触发


asyncFetchGroupInfo:completion:onQueue:


异步方法, 获取群组详细信息(id,密码,主题,描述,实际总人数,在线人数,成员列表,属性)

@required

- (void)asyncFetchGroupInfo:(NSString *)groupId completion:(void (^)(EMGroup *group, EMError *error))completion onQueue:(dispatch_queue_t)aQueue;
Parameters
groupId

群组ID

completion

消息完成后的回调

aQueue

回调block时的线程


asyncFetchGroupInfo:includesOccupantList:


异步方法, 获取群组成员列表

@required

- (void)asyncFetchGroupInfo:(NSString *)groupId includesOccupantList:(BOOL)includesOccupantList;
Parameters
groupId

群组ID

includesOccupantList

是否获取成员列表

Discussion

执行完成后,回调[didFetchGroupInfo:error:]


asyncFetchGroupInfo:includesOccupantList:completion:onQueue:


异步方法, 获取群组成员列表

@required

- (void)asyncFetchGroupInfo:(NSString *)groupId includesOccupantList:(BOOL)includesOccupantList completion:(void (^)(EMGroup *group,EMError *error))completion onQueue:(dispatch_queue_t)aQueue;
Parameters
groupId

群组ID

includesOccupantList

是否获取成员列表

completion

消息完成后的回调

aQueue

回调block时的线程


asyncFetchMyGroupsList


获取与我相关的群组列表(自己创建的,加入的)(异步方法)

@required

- (void)asyncFetchMyGroupsList;
Discussion

执行后, 回调[didUpdateGroupList:error]会被触发


asyncFetchMyGroupsListWithCompletion:onQueue:


获取与我相关的群组列表(自己创建的,加入的)(异步方法)

@required

- (void)asyncFetchMyGroupsListWithCompletion:(void (^)(NSArray *groups, EMError *error))completion onQueue:(dispatch_queue_t)aQueue;
Parameters
completion

消息完成后的回调

aQueue

回调block时的线程

Discussion

获取列表成功 判断条件:completion中,error == nil && groups != nil


asyncFetchOccupantList:


异步方法, 获取群组成员列表

@required

- (void)asyncFetchOccupantList:(NSString *)groupId;
Parameters
groupId

群组ID

Discussion

执行完成后,回调[didFetchGroupOccupantsList:error:]


asyncFetchOccupantList:completion:onQueue:


异步方法, 获取群组成员列表

@required

- (void)asyncFetchOccupantList:(NSString *)groupId completion:(void (^)(NSArray *occupantsList,EMError *error))completion onQueue:(dispatch_queue_t)aQueue;
Parameters
groupId

群组ID

completion

消息完成后的回调

aQueue

回调block时的线程


asyncFetchPublicGroupsFromServerWithCursor:pageSize:andCompletion:


异步方法, 获取指定范围的公开群

@required

- (void)asyncFetchPublicGroupsFromServerWithCursor:(NSString *)cursor pageSize:(NSInteger)pageSize andCompletion:(void (^)(EMCursorResult *result, EMError *error))completion;
Parameters
cursor

获取公开群的cursor,首次调用传空即可

pageSize

期望结果的数量, 如果 < 0 则一次返回所有结果

completion

完成回调,回调会在主线程调用


asyncJoinAnonymousPublicGroup:nickname:


异步方法, 加入一个匿名公开群组

@required

- (void)asyncJoinAnonymousPublicGroup:(NSString *)groupId nickname:(NSString *)nickname;
Parameters
groupId

公开群组的ID

nickname

匿名群组中的昵称

Discussion

执行后, 回调didJoinPublicGroup:error:会被触发


asyncJoinAnonymousPublicGroup:nickname:completion:onQueue:


异步方法, 加入一个匿名公开群组

@required

- (void)asyncJoinAnonymousPublicGroup:(NSString *)groupId nickname:(NSString *)nickname completion:(void (^)(EMGroup *group, EMError *error))completion onQueue:(dispatch_queue_t)aQueue;
Parameters
groupId

公开群组的ID

nickname

匿名群组中的昵称

completion

消息完成后的回调

aQueue

回调block时的线程


asyncJoinPublicGroup:


异步方法, 加入一个公开群组

@required

- (void)asyncJoinPublicGroup:(NSString *)groupId;
Parameters
groupId

公开群组的ID

Discussion

执行后, 回调didJoinPublicGroup:error:会被触发 成功标志:error == nil;


asyncJoinPublicGroup:completion:onQueue:


异步方法, 加入一个公开群组

@required

- (void)asyncJoinPublicGroup:(NSString *)groupId completion:(void (^)(EMGroup *group, EMError *error))completion onQueue:(dispatch_queue_t)aQueue;
Parameters
groupId

公开群组的ID

completion

消息完成后的回调

aQueue

回调block时的线程

Discussion

成功标志:error == nil;


asyncLeaveGroup:


异步方法, 退出群组(需要非owner的权限)

@required

- (void)asyncLeaveGroup:(NSString *)groupId;
Parameters
groupId

群组ID

Discussion

函数执行完, 回调group:didLeave:error:会被触发


asyncLeaveGroup:completion:onQueue:


异步方法, 退出群组(需要非owner的权限)

@required

- (void)asyncLeaveGroup:(NSString *)groupId completion:(void (^)(EMGroup *group, EMGroupLeaveReason reason, EMError *error))completion onQueue:(dispatch_queue_t)aQueue;
Parameters
groupId

群组ID

completion

消息完成后的回调

aQueue

回调block时的线程


asyncRemoveOccupants:fromGroup:


异步方法, 将某些人请出群组

@required

- (void)asyncRemoveOccupants:(NSArray *)occupants fromGroup:(NSString *)groupId;
Parameters
occupants

要请出群组的人的用户名列表

groupId

群组ID

Discussion

此操作需要admin/owner权限. 函数执行完, 回调groupDidUpdateInfo:error:会被触发


asyncRemoveOccupants:fromGroup:completion:onQueue:


异步方法, 将某些人请出群组

@required

- (void)asyncRemoveOccupants:(NSArray *)occupants fromGroup:(NSString *)groupId completion:(void (^)(EMGroup *group, EMError *error))completion onQueue:(dispatch_queue_t)aQueue;
Parameters
occupants

要请出群组的人的用户名列表

groupId

群组ID

completion

消息完成后的回调

aQueue

回调block时的线程

Discussion

此操作需要admin/owner权限


asyncSearchPublicGroupWithGroupId:completion:onQueue:


根据groupId搜索公开群(异步方法)

@required

- (void)asyncSearchPublicGroupWithGroupId:(NSString *)groupId completion:(void (^)(EMGroup *group, EMError *error))completion onQueue:(dispatch_queue_t)aQueue;
Parameters
groupId

公开群组的ID(完整id)

completion

消息完成后的回调

aQueue

回调block时的线程

Discussion

搜索群组成功 判断条件:completion中,error == nil && group != nil


asyncUnblockGroup:completion:onQueue:


异步方法, 取消屏蔽群消息(不能操作自己创建的群,EMErrorInvalidUsername)

@required

- (void)asyncUnblockGroup:(NSString *)groupId completion:(void (^)(EMGroup *group, EMError *error))completion onQueue:(dispatch_queue_t)aQueue;
Parameters
groupId

要取消屏蔽的群ID

completion

消息完成后的回调

aQueue

回调block时的线程


asyncUnblockOccupants:forGroup:


异步方法, 将某些人从群组黑名单中解除

@required

- (void)asyncUnblockOccupants:(NSArray *)occupants forGroup:(NSString *)groupId;
Parameters
occupants

要从黑名单中移除的用户名列表

groupId

群组ID

Discussion

此操作需要admin/owner权限, 从黑名单中移除后, 可以再次进入群组 函数执行完, 回调groupDidUpdateInfo:error:会被触发


asyncUnblockOccupants:forGroup:completion:onQueue:


异步方法, 将某些人从群组黑名单中解除

@required

- (void)asyncUnblockOccupants:(NSArray *)occupants forGroup:(NSString *)groupId completion:(void (^)(EMGroup *group, EMError *error))completion onQueue:(dispatch_queue_t)aQueue;
Parameters
occupants

要从黑名单中移除的用户名列表

groupId

群组ID

completion

消息完成后的回调

aQueue

回调block时的线程

Discussion

此操作需要admin/owner权限, 从黑名单中移除后, 可以再次进入群组


blockGroup:error:


屏蔽群消息,服务器不发送消息(不能屏蔽自己创建的群,EMErrorInvalidUsername)

@required

- (EMGroup *)blockGroup:(NSString *)groupId error:(EMError **)pError;
Parameters
groupId

要屏蔽的群ID

pError

错误信息

Return Value

返回群组对象

Discussion

被屏蔽的群,服务器不再发消息


blockOccupants:fromGroup:error:


将某些人加入群组黑名单

@required

- (EMGroup *)blockOccupants:(NSArray *)occupants fromGroup:(NSString *)groupId error:(EMError **)pError;
Parameters
occupants

要加入黑名单的用户名列表

groupId

群组ID

pError

错误信息

Return Value

返回群组对象

Discussion

此操作需要admin/owner权限, 被加入黑名单的人, 不会再被允许进入群组


changeAffiliation:forOccupants:inGroup:error:


更改成员的权限级别

@optional

- (EMGroup *)changeAffiliation:(EMGroupMemberRole)newAffiliation forOccupants:(NSArray *)occupants inGroup:(NSString *)groupId error:(EMError **)pError EM_DEPRECATED_IOS(2_0_3, 2_0_9, "Delete");
Parameters
newAffiliation

新的级别

occupants

被更改成员的用户名列表

groupId

群组ID

pError

错误信息

Return Value

返回群组对象

Discussion

此操作需要admin/owner权限


changeDescription:forGroup:error:


更改群组说明信息

@required

- (EMGroup *)changeDescription:(NSString *)newDescription forGroup:(NSString *)groupId error:(EMError **)pError;
Parameters
newDescription

说明信息

groupId

群组ID

pError

错误信息

Return Value

返回群组对象

Discussion

此操作需要admin/owner权限


changeGroupSubject:forGroup:error:


更改群组主题

@required

- (EMGroup *)changeGroupSubject:(NSString *)subject forGroup:(NSString *)groupId error:(EMError **)pError;
Parameters
subject

主题

groupId

群组ID

pError

错误信息

Return Value

返回群组对象

Discussion

此操作需要admin/owner权限


changePassword:forGroup:error:


更改群组密码

@optional

- (EMGroup *)changePassword:(NSString *)newPassword forGroup:(NSString *)groupId error:(EMError **)pError EM_DEPRECATED_IOS(2_0_3, 2_0_9, "Delete");
Parameters
newPassword

新密码

groupId

群组ID

pError

错误信息

Return Value

返回群组对象

Discussion

此操作需要admin/owner权限


createAnonymousGroupWithSubject:description:initialWelcomeMessage:nickname:styleSetting:error:


创建匿名群组(同步方法)

@required

- (EMGroup *)createAnonymousGroupWithSubject:(NSString *)subject description:(NSString *)description initialWelcomeMessage:(NSString *)welcomeMessage nickname:(NSString *)nickname styleSetting:(EMGroupStyleSetting *)styleSetting error:(EMError **)pError;
Parameters
subject

群组名称

description

群组描述

welcomeMessage

群组欢迎语

nickname

创建群组时群主的昵称(匿名聊天时的昵称)

styleSetting

群组属性配置(groupStyle 必须为 eGroupStyle_PublicAnonymous, 目前只可以设置 maxUsersCount)

pError

建组的错误。成功为nil

Return Value

创建好的群组

Discussion

创建群组成功 判断条件:*pError == nil && returnGroup != nil


createGroupWithSubject:description:invitees:initialWelcomeMessage:styleSetting:error:


创建群组(同步方法)

@required

- (EMGroup *)createGroupWithSubject:(NSString *)subject description:(NSString *)description invitees:(NSArray *)invitees initialWelcomeMessage:(NSString *)welcomeMessage styleSetting:(EMGroupStyleSetting *)styleSetting error:(EMError **)pError;
Parameters
subject

群组名称

description

群组描述

invitees

默认群组成员(usernames,不需要包含创建者username)

welcomeMessage

群组欢迎语

styleSetting

群组属性配置

pError

建组的错误。成功为nil

Return Value

创建好的群组

Discussion

创建群组成功 判断条件:*pError == nil && returnGroup != nil


createPrivateGroupWithSubject:description:invitees:initialWelcomeMessage:error:


创建一个私有群组

@optional

- (EMGroup *)createPrivateGroupWithSubject:(NSString *)subject description:(NSString *)description invitees:(NSArray *)invitees initialWelcomeMessage:(NSString *)welcomeMessage error:(EMError **)pError EM_DEPRECATED_IOS(2_0_0, 2_0_2, "Use -createGroupWithSubject:description:invitees:initialWelcomeMessage:styleSetting:error:");
Parameters
subject

主题

description

说明信息

invitees

初始群组成员的用户名列表

welcomeMessage

对初始群组成员的邀请信息

pError

错误信息

Return Value

创建的群组对象, 失败返回nil


createPublicGroupWithSubject:description:invitees:initialWelcomeMessage:error:


创建一个公开群组

@optional

- (EMGroup *)createPublicGroupWithSubject:(NSString *)subject description:(NSString *)description invitees:(NSArray *)invitees initialWelcomeMessage:(NSString *)welcomeMessage error:(EMError **)pError EM_DEPRECATED_IOS(2_0_0, 2_0_2, "Use -createGroupWithSubject:description:invitees:initialWelcomeMessage:styleSetting:error:");
Parameters
subject

主题

description

说明信息

invitees

初始群组成员的用户名列表

welcomeMessage

对初始群组成员的邀请信息

pError

错误信息

Return Value

创建的群组对象, 失败返回nil


destroyGroup:error:


同步方法, 解散群组,需要owner权限

@required

- (EMGroup *)destroyGroup:(NSString *)groupId error:(EMError **)pError;
Parameters
groupId

群组ID

pError

错误信息

Return Value

退出的群组对象, 失败返回nil


fetchAllPrivateGroupsWithError:


获取所有私有群组

@optional

- (NSArray *)fetchAllPrivateGroupsWithError:(EMError **)pError EM_DEPRECATED_IOS(2_0_0, 2_0_2, "Use -fetchMyGroupsListWithError:");
Parameters
pError

错误信息

Return Value

获取的所有私有群组列表


fetchAllPublicGroupsWithError:


获取所有公开群组

@optional

- (NSArray *)fetchAllPublicGroupsWithError:(EMError **)pError;
Parameters
pError

错误信息

Return Value

获取的所有群组列表


fetchGroupBansList:error:


同步方法, 获取群组黑名单列表

@required

- (NSArray *)fetchGroupBansList:(NSString *)groupId error:(EMError **)pError;
Parameters
groupId

群组ID

Return Value

群组黑名单列表

Discussion

需要owner权限


fetchGroupInfo:error:


获取群组详细信息(id,密码,主题,描述,实际总人数,在线人数,成员列表,属性)

@required

- (EMGroup *)fetchGroupInfo:(NSString *)groupId error:(EMError **)pError;
Parameters
groupId

群组ID

pError

错误信息

Return Value

所获取的群组对象


fetchGroupInfo:includesOccupantList:error:


同步方法, 获取群组信息

@required

- (EMGroup *)fetchGroupInfo:(NSString *)groupId includesOccupantList:(BOOL)includesOccupantList error:(EMError **)pError;
Parameters
groupId

群组ID

includesOccupantList

是否获取成员列表

pError

错误信息

Return Value

群组


fetchOccupantList:error:


同步方法, 获取群组成员列表

@required

- (NSArray *)fetchOccupantList:(NSString *)groupId error:(EMError **)pError;
Parameters
groupId

群组ID

pError

错误信息

Return Value

群组的成员列表(包含创建者)


fetchPublicGroupsFromServerWithCursor:pageSize:andError:


获取指定范围内的公开群

@required

- (EMCursorResult *)fetchPublicGroupsFromServerWithCursor:(NSString *)cursor pageSize:(NSInteger)pageSize andError:(EMError **)pError;
Parameters
cursor

获取公开群的cursor,首次调用传空即可

pageSize

期望结果的数量, 如果 < 0 则一次返回所有结果

pError

出错信息

Return Value

获取的公开群结果

Discussion

这是一个阻塞方法,用户应当在一个独立线程中执行此方法,用户可以连续调用此方法以获得所有的公开群


joinAnonymousPublicGroup:nickname:error:


加入一个匿名公开群组

@required

- (EMGroup *)joinAnonymousPublicGroup:(NSString *)groupId nickname:(NSString *)nickname error:(EMError **)pError;
Parameters
groupId

公开群组的ID

nickname

匿名群组中的昵称

pError

错误信息

Return Value

所加入的公开群组


joinPublicGroup:error:


加入一个公开群组

@required

- (EMGroup *)joinPublicGroup:(NSString *)groupId error:(EMError **)pError;
Parameters
groupId

公开群组的ID

pError

错误信息

Return Value

所加入的公开群组

Discussion

成功标志:*pError == nil;


leaveGroup:error:


退出群组 (需要非owner的权限)

@required

- (EMGroup *)leaveGroup:(NSString *)groupId error:(EMError **)pError;
Parameters
groupId

群组ID

pError

错误信息

Return Value

退出的群组对象, 失败返回nil


loadAllMyGroupsFromDatabaseWithAppend2Chat:


从数据库获取与登陆者相关的群组

@required

- (NSArray *)loadAllMyGroupsFromDatabaseWithAppend2Chat:(BOOL)append2Chat;
Parameters
append2Chat

是否加到内存中。 YES为加到内存中。加到内存中之后, 会有相应的回调被触发从而更新UI; NO为不加到内存中。如果不加到内存中, 则只会直接添加进DB, 不会有SDK的回调函数被触发从而去更新UI。

Return Value

错误信息


rejectApplyJoinGroup:groupname:toApplicant:reason:


拒绝一个加入群组的申请

@required

- (void)rejectApplyJoinGroup:(NSString *)groupId groupname:(NSString *)groupname toApplicant:(NSString *)username reason:(NSString *)reason;
Parameters
groupId

被拒绝的群组ID

username

被拒绝的人

reason

拒绝理由


rejectInvitationForGroup:toInviter:reason:


拒绝一个加入群组的邀请

@optional

- (void)rejectInvitationForGroup:(NSString *)groupId toInviter:(NSString *)username reason:(NSString *)reason EM_DEPRECATED_IOS(2_0_3, 2_1_8, "Delete");
Parameters
groupId

被拒绝的群组ID

username

被拒绝的人

reason

拒绝理由


removeOccupants:fromGroup:error:


将某些人请出群组

@required

- (EMGroup *)removeOccupants:(NSArray *)occupants fromGroup:(NSString *)groupId error:(EMError *__autoreleasing *)pError;
Parameters
occupants

要请出群组的人的用户名列表

groupId

群组ID

pError

错误信息

Return Value

返回群组对象

Discussion

此操作需要admin/owner权限


searchPublicGroupWithGroupId:error:


根据groupId搜索公开群(同步方法)

@required

- (EMGroup *)searchPublicGroupWithGroupId:(NSString *)groupId error:(EMError **)pError;
Parameters
groupId

群组id(完整id)

pError

搜索失败的错误

Return Value

搜索到的群组

Discussion

搜索群组成功 判断条件:*pError == nil && returnGroup != nil


unblockGroup:error:


取消屏蔽群消息(不能操作自己创建的群,EMErrorInvalidUsername)

@required

- (EMGroup *)unblockGroup:(NSString *)groupId error:(EMError **)pError;
Parameters
groupId

要取消屏蔽的群ID

pError

错误信息

Return Value

返回群组对象


unblockOccupants:forGroup:error:


将某些人从群组黑名单中解除

@required

- (EMGroup *)unblockOccupants:(NSArray *)occupants forGroup:(NSString *)groupId error:(EMError **)pError;
Parameters
occupants

要从黑名单中移除的用户名列表

groupId

群组ID

pError

错误信息

Return Value

返回群组对象

Discussion

此操作需要admin/owner权限, 从黑名单中移除后, 可以再次进入群组


Properties

groupList

所加入和创建的群组列表, 群组对象


groupList


所加入和创建的群组列表, 群组对象

@required

@property (nonatomic, strong, readonly) NSArray *groupList;