Extends Protocol: | |
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:
将某些人从群组黑名单中解除
异步方法, 获取所有私有群组
@optional
- (void)asyncFetchAllPrivateGroups EM_DEPRECATED_IOS(2_0_0, 2_0_2, "Use -asyncMyGroupsList");
Discussion
执行后, 回调didUpdateGroupList:error会被触发
从数据库获取与登陆者相关的群组
@optional
- (NSArray *)loadAllMyGroupsFromDatabase EM_DEPRECATED_IOS(2_1_0, 2_1_2, "Use - loadAllMyGroupsFromDatabaseWithAppend2Chat:");
Return Value错误信息
Discussion
直接从数据库中获取,并不会返回相关回调方法;
若希望返回相关回调方法,请使用loadAllMyGroupsFromDatabaseWithAppend2Chat:
同意加入群组的申请
@required
- (void)acceptApplyJoinGroup:(NSString *)groupId groupname:(NSString *)groupname
applicant:(NSString *)username error:(EMError **)pError;
Parameters
-
groupId 所申请的群组ID
-
groupname 申请的群组名称
-
username 申请人的用户名
-
pError 错误信息
接受并加入群组
@optional
- (EMGroup *)acceptInvitationFromGroup:(NSString *)groupId
error:(EMError **)pError EM_DEPRECATED_IOS(2_0_3, 2_1_8, "Delete");
Parameters
-
groupId 所接受的群组ID
-
pError 错误信息
Return Value返回所加入的群组对象
邀请用户加入群组
@required
- (EMGroup *)addOccupants:(NSArray *)occupants toGroup:(NSString *)groupId
welcomeMessage:(NSString *)welcomeMessage error:(EMError **)pError;
Parameters
-
occupants 被邀请的用户名列表
-
groupId 群组ID
-
welcomeMessage 欢迎信息
-
pError 错误信息
Return Value返回群组对象, 失败返回空
同步方法, 申请加入一个需授权的公开群组
@required
- (EMGroup *)applyJoinPublicGroup:(NSString *)groupId
withGroupname:(NSString *)groupName message:(NSString *)message
error:(EMError **)pError;
Parameters
-
groupId 公开群组的ID
-
groupName 请求加入的群组名称
-
message 请求加入的信息
-
pError 错误信息
Return Value所加入的公开群组
异步方法, 同意加入群组的申请
@required
- (void)asyncAcceptApplyJoinGroup:(NSString *)groupId
groupname:(NSString *)groupname applicant:(NSString *)username;
Parameters
-
groupId 所申请的群组ID
-
groupname 申请的群组名称
-
username 申请人的用户名
Discussion
函数执行后, didAcceptApplyJoinGroup:username:error:回调会被触发
异步方法, 同意加入群组的申请
@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 回调执行时的线程
异步方法, 接受并加入群组
@optional
- (void)asyncAcceptInvitationFromGroup:(NSString *)groupId EM_DEPRECATED_IOS(2_0_3, 2_1_8, "Delete");
Parameters
Discussion
函数执行后, didAcceptInvitationFromGroup:error:回调会被触发
异步方法, 接受并加入群组
@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 回调执行时的线程
异步方法, 邀请用户加入群组
@required
- (void)asyncAddOccupants:(NSArray *)occupants toGroup:(NSString *)groupId
welcomeMessage:(NSString *)welcomeMessage;
Parameters
-
occupants 被邀请的用户名列表
-
groupId 群组ID
-
welcomeMessage 欢迎信息
Discussion
函数执行完, 回调groupDidUpdateInfo:error:会被触发
异步方法, 邀请用户加入群组
@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时的线程
异步方法, 申请加入一个需授权的公开群组
@required
- (void)asyncApplyJoinPublicGroup:(NSString *)groupId
withGroupname:(NSString *)groupName message:(NSString *)message;
Parameters
-
groupId 公开群组的ID
-
groupName 请求加入的群组名称
-
message 请求加入的信息
Discussion
执行后, 回调didApplyJoinPublicGroup:error:会被触发
异步方法, 申请加入一个需授权的公开群组
@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时的线程
异步方法, 屏蔽群消息,服务器不发送消息(不能屏蔽自己创建的群,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
被屏蔽的群,服务器不再发消息
异步方法, 将某些人加入群组黑名单
@required
- (void)asyncBlockOccupants:(NSArray *)occupants fromGroup:(NSString *)groupId;
Parameters
-
occupants 要加入黑名单的用户名列表
-
groupId 群组ID
Discussion
此操作需要admin/owner权限, 被加入黑名单的人, 不会再被允许进入群组
函数执行完, 回调groupDidUpdateInfo:error:会被触发
异步方法, 将某些人加入群组黑名单
@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权限, 被加入黑名单的人, 不会再被允许进入群组
异步方法, 更改成员的权限级别
@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:会被触发
异步方法, 更改成员的权限级别
@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权限
异步方法, 更改群组说明信息
@required
- (void)asyncChangeDescription:(NSString *)newDescription
forGroup:(NSString *)groupId;
Parameters
-
newDescription 说明信息
-
groupId 群组ID
Discussion
此操作需要admin/owner权限.
函数执行完, 回调groupDidUpdateInfo:error:会被触发
异步方法, 更改群组说明信息
@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权限
异步方法, 更改群组主题
@required
- (void)asyncChangeGroupSubject:(NSString *)subject forGroup:(NSString *)groupId;
Parameters
Discussion
此操作需要admin/owner权限
函数执行完, groupDidUpdateInfo:error:回调会被触发
异步方法, 更改群组主题
@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权限
异步方法, 更改群组密码
@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:会被触发
异步方法, 更改群组密码
@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权限
创建匿名群组(异步方法)。函数执行完, 回调[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)
创建群组(异步方法)。函数执行完, 会调用参数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
创建群组(异步方法)。
@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:]会被触发
创建群组(异步方法)。
@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
异步方法, 创建一个私有群组
@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:会被触发
异步方法, 创建一个私有群组
@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时的线程
异步方法, 创建一个公开群组
@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:会被触发
异步方法, 创建一个公开群组
@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时的线程
异步方法, 解散群组,需要owner权限
@required
- (void)asyncDestroyGroup:(NSString *)groupId;
Parameters
Discussion
函数执行完, 回调group:didLeave:error:会被触发
异步方法, 解散群组,需要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时的线程
异步方法, 获取所有私有群组
@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时的线程
异步方法, 获取所有公开群组
@optional
- (void)asyncFetchAllPublicGroups;
Discussion
执行后, 回调didFetchAllPublicGroups:error:会被触发
异步方法, 获取所有公开群组
@optional
- (void)asyncFetchAllPublicGroupsWithCompletion:(void (^)(NSArray *groups, EMError *error))completion
onQueue:(dispatch_queue_t)aQueue;
Parameters
-
completion 消息完成后的回调
-
aQueue 回调block时的线程
异步方法, 获取群组黑名单列表
@required
- (void)asyncFetchGroupBansList:(NSString *)groupId;
Parameters
Discussion
需要owner权限
执行完成后,回调[didFetchGroupBans:list:error:]
异步方法, 获取群组黑名单列表
@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权限
异步方法, 获取群组详细信息(id,密码,主题,描述,实际总人数,在线人数,成员列表,属性)
@required
- (void)asyncFetchGroupInfo:(NSString *)groupId;
Parameters
Discussion
执行后, 回调didFetchGroupInfo:error会被触发
异步方法, 获取群组详细信息(id,密码,主题,描述,实际总人数,在线人数,成员列表,属性)
@required
- (void)asyncFetchGroupInfo:(NSString *)groupId completion:(void (^)(EMGroup *group, EMError *error))completion
onQueue:(dispatch_queue_t)aQueue;
Parameters
-
groupId 群组ID
-
completion 消息完成后的回调
-
aQueue 回调block时的线程
异步方法, 获取群组成员列表
@required
- (void)asyncFetchGroupInfo:(NSString *)groupId
includesOccupantList:(BOOL)includesOccupantList;
Parameters
-
groupId 群组ID
-
includesOccupantList 是否获取成员列表
Discussion
执行完成后,回调[didFetchGroupInfo:error:]
异步方法, 获取群组成员列表
@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时的线程
获取与我相关的群组列表(自己创建的,加入的)(异步方法)
@required
- (void)asyncFetchMyGroupsList;
Discussion
执行后, 回调[didUpdateGroupList:error]会被触发
获取与我相关的群组列表(自己创建的,加入的)(异步方法)
@required
- (void)asyncFetchMyGroupsListWithCompletion:(void (^)(NSArray *groups, EMError *error))completion
onQueue:(dispatch_queue_t)aQueue;
Parameters
-
completion 消息完成后的回调
-
aQueue 回调block时的线程
Discussion
获取列表成功 判断条件:completion中,error == nil && groups != nil
异步方法, 获取群组成员列表
@required
- (void)asyncFetchOccupantList:(NSString *)groupId;
Parameters
Discussion
执行完成后,回调[didFetchGroupOccupantsList:error:]
异步方法, 获取群组成员列表
@required
- (void)asyncFetchOccupantList:(NSString *)groupId completion:(void (^)(NSArray *occupantsList,EMError *error))completion
onQueue:(dispatch_queue_t)aQueue;
Parameters
-
groupId 群组ID
-
completion 消息完成后的回调
-
aQueue 回调block时的线程
异步方法, 获取指定范围的公开群
@required
- (void)asyncFetchPublicGroupsFromServerWithCursor:(NSString *)cursor
pageSize:(NSInteger)pageSize andCompletion:(void (^)(EMCursorResult *result, EMError *error))completion;
Parameters
-
cursor 获取公开群的cursor,首次调用传空即可
-
pageSize 期望结果的数量, 如果 < 0 åä¸æ¬¡è¿åææç»æ
-
completion 完成回调,回调会在主线程调用
异步方法, 加入一个匿名公开群组
@required
- (void)asyncJoinAnonymousPublicGroup:(NSString *)groupId
nickname:(NSString *)nickname;
Parameters
-
groupId 公开群组的ID
-
nickname 匿名群组中的昵称
Discussion
执行后, 回调didJoinPublicGroup:error:会被触发
异步方法, 加入一个匿名公开群组
@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时的线程
异步方法, 加入一个公开群组
@required
- (void)asyncJoinPublicGroup:(NSString *)groupId;
Parameters
Discussion
执行后, 回调didJoinPublicGroup:error:会被触发
成功标志:error == nil;
异步方法, 加入一个公开群组
@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;
异步方法, 退出群组(需要非owner的权限)
@required
- (void)asyncLeaveGroup:(NSString *)groupId;
Parameters
Discussion
函数执行完, 回调group:didLeave:error:会被触发
异步方法, 退出群组(需要非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时的线程
异步方法, 将某些人请出群组
@required
- (void)asyncRemoveOccupants:(NSArray *)occupants fromGroup:(NSString *)groupId;
Parameters
-
occupants 要请出群组的人的用户名列表
-
groupId 群组ID
Discussion
此操作需要admin/owner权限.
函数执行完, 回调groupDidUpdateInfo:error:会被触发
异步方法, 将某些人请出群组
@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权限
根据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
异步方法, 取消屏蔽群消息(不能操作自己创建的群,EMErrorInvalidUsername)
@required
- (void)asyncUnblockGroup:(NSString *)groupId completion:(void (^)(EMGroup *group, EMError *error))completion
onQueue:(dispatch_queue_t)aQueue;
Parameters
-
groupId 要取消屏蔽的群ID
-
completion 消息完成后的回调
-
aQueue 回调block时的线程
异步方法, 将某些人从群组黑名单中解除
@required
- (void)asyncUnblockOccupants:(NSArray *)occupants forGroup:(NSString *)groupId;
Parameters
-
occupants 要从黑名单中移除的用户名列表
-
groupId 群组ID
Discussion
此操作需要admin/owner权限, 从黑名单中移除后, 可以再次进入群组
函数执行完, 回调groupDidUpdateInfo:error:会被触发
异步方法, 将某些人从群组黑名单中解除
@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权限, 从黑名单中移除后, 可以再次进入群组
屏蔽群消息,服务器不发送消息(不能屏蔽自己创建的群,EMErrorInvalidUsername)
@required
- (EMGroup *)blockGroup:(NSString *)groupId error:(EMError **)pError;
Parameters
-
groupId 要屏蔽的群ID
-
pError 错误信息
Return Value返回群组对象
Discussion
被屏蔽的群,服务器不再发消息
将某些人加入群组黑名单
@required
- (EMGroup *)blockOccupants:(NSArray *)occupants fromGroup:(NSString *)groupId
error:(EMError **)pError;
Parameters
-
occupants 要加入黑名单的用户名列表
-
groupId 群组ID
-
pError 错误信息
Return Value返回群组对象
Discussion
此操作需要admin/owner权限, 被加入黑名单的人, 不会再被允许进入群组
更改成员的权限级别
@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权限
更改群组说明信息
@required
- (EMGroup *)changeDescription:(NSString *)newDescription
forGroup:(NSString *)groupId error:(EMError **)pError;
Parameters
-
newDescription 说明信息
-
groupId 群组ID
-
pError 错误信息
Return Value返回群组对象
Discussion
此操作需要admin/owner权限
更改群组主题
@required
- (EMGroup *)changeGroupSubject:(NSString *)subject forGroup:(NSString *)groupId
error:(EMError **)pError;
Parameters
-
subject 主题
-
groupId 群组ID
-
pError 错误信息
Return Value返回群组对象
Discussion
此操作需要admin/owner权限
更改群组密码
@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权限
创建匿名群组(同步方法)
@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
创建群组(同步方法)
@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
创建一个私有群组
@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
创建一个公开群组
@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
同步方法, 解散群组,需要owner权限
@required
- (EMGroup *)destroyGroup:(NSString *)groupId error:(EMError **)pError;
Parameters
Return Value退出的群组对象, 失败返回nil
获取所有私有群组
@optional
- (NSArray *)fetchAllPrivateGroupsWithError:(EMError **)pError EM_DEPRECATED_IOS(2_0_0, 2_0_2, "Use -fetchMyGroupsListWithError:");
Parameters
Return Value获取的所有私有群组列表
获取所有公开群组
@optional
- (NSArray *)fetchAllPublicGroupsWithError:(EMError **)pError;
Parameters
Return Value获取的所有群组列表
同步方法, 获取群组黑名单列表
@required
- (NSArray *)fetchGroupBansList:(NSString *)groupId error:(EMError **)pError;
Parameters
Return Value群组黑名单列表
Discussion
需要owner权限
获取群组详细信息(id,密码,主题,描述,实际总人数,在线人数,成员列表,属性)
@required
- (EMGroup *)fetchGroupInfo:(NSString *)groupId error:(EMError **)pError;
Parameters
Return Value所获取的群组对象
同步方法, 获取群组信息
@required
- (EMGroup *)fetchGroupInfo:(NSString *)groupId
includesOccupantList:(BOOL)includesOccupantList error:(EMError **)pError;
Parameters
-
groupId 群组ID
-
includesOccupantList 是否获取成员列表
-
pError 错误信息
Return Value群组
同步方法, 获取群组成员列表
@required
- (NSArray *)fetchOccupantList:(NSString *)groupId error:(EMError **)pError;
Parameters
Return Value群组的成员列表(包含创建者)
获取指定范围内的公开群
@required
- (EMCursorResult *)fetchPublicGroupsFromServerWithCursor:(NSString *)cursor
pageSize:(NSInteger)pageSize andError:(EMError **)pError;
Parameters
-
cursor 获取公开群的cursor,首次调用传空即可
-
pageSize 期望结果的数量, 如果 < 0 åä¸æ¬¡è¿åææç»æ
-
pError 出错信息
Return Value获取的公开群结果
Discussion
这是一个阻塞方法,用户应当在一个独立线程中执行此方法,用户可以连续调用此方法以获得所有的公开群
加入一个匿名公开群组
@required
- (EMGroup *)joinAnonymousPublicGroup:(NSString *)groupId
nickname:(NSString *)nickname error:(EMError **)pError;
Parameters
-
groupId 公开群组的ID
-
nickname 匿名群组中的昵称
-
pError 错误信息
Return Value所加入的公开群组
加入一个公开群组
@required
- (EMGroup *)joinPublicGroup:(NSString *)groupId error:(EMError **)pError;
Parameters
-
groupId 公开群组的ID
-
pError 错误信息
Return Value所加入的公开群组
Discussion
成功标志:*pError == nil;
退出群组 (需要非owner的权限)
@required
- (EMGroup *)leaveGroup:(NSString *)groupId error:(EMError **)pError;
Parameters
Return Value退出的群组对象, 失败返回nil
从数据库获取与登陆者相关的群组
@required
- (NSArray *)loadAllMyGroupsFromDatabaseWithAppend2Chat:(BOOL)append2Chat;
Parameters
-
append2Chat 是否加到内存中。
YES为加到内存中。加到内存中之后, 会有相应的回调被触发从而更新UI;
NO为不加到内存中。如果不加到内存中, 则只会直接添加进DB, 不会有SDK的回调函数被触发从而去更新UI。
Return Value错误信息
拒绝一个加入群组的申请
@required
- (void)rejectApplyJoinGroup:(NSString *)groupId groupname:(NSString *)groupname
toApplicant:(NSString *)username reason:(NSString *)reason;
Parameters
-
groupId 被拒绝的群组ID
-
username 被拒绝的人
-
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 拒绝理由
将某些人请出群组
@required
- (EMGroup *)removeOccupants:(NSArray *)occupants fromGroup:(NSString *)groupId
error:(EMError *__autoreleasing *)pError;
Parameters
-
occupants 要请出群组的人的用户名列表
-
groupId 群组ID
-
pError 错误信息
Return Value返回群组对象
Discussion
此操作需要admin/owner权限
根据groupId搜索公开群(同步方法)
@required
- (EMGroup *)searchPublicGroupWithGroupId:(NSString *)groupId
error:(EMError **)pError;
Parameters
-
groupId 群组id(完整id)
-
pError 搜索失败的错误
Return Value搜索到的群组
Discussion
搜索群组成功 判断条件:*pError == nil && returnGroup != nil
取消屏蔽群消息(不能操作自己创建的群,EMErrorInvalidUsername)
@required
- (EMGroup *)unblockGroup:(NSString *)groupId error:(EMError **)pError;
Parameters
-
groupId 要取消屏蔽的群ID
-
pError 错误信息
Return Value返回群组对象
将某些人从群组黑名单中解除
@required
- (EMGroup *)unblockOccupants:(NSArray *)occupants forGroup:(NSString *)groupId
error:(EMError **)pError;
Parameters
-
occupants 要从黑名单中移除的用户名列表
-
groupId 群组ID
-
pError 错误信息
Return Value返回群组对象
Discussion
此操作需要admin/owner权限, 从黑名单中移除后, 可以再次进入群组
Properties
- groupList
所加入和创建的群组列表, 群组对象
所加入和创建的群组列表, 群组对象
@required
@property (nonatomic,
strong,
readonly) NSArray *groupList;
Last Updated: Friday, May 11, 2018
|