JMSGGroup Class Reference

Inherits from NSObject
Declared in JMSGGroup.h

Overview

群组

群组表示一组用户, 是群组聊天的聊天对象.

主要包含两类 API: 群组信息维护, 群组成员变更.

Group Info Maintenance 群组信息维护

+ createGroupWithName:desc:memberArray:completionHandler:

创建群组

+ (void)createGroupWithName:(NSString *JMSG_NULLABLE)groupName desc:(NSString *JMSG_NULLABLE)groupDesc memberArray:(NSArray JMSG_GENERIC ( __kindof NSString *) *JMSG_NULLABLE)usernameArray completionHandler:(JMSGCompletionHandler JMSG_NULLABLE)handler

Parameters

groupName

群组名称

groupDesc

群组描述信息

usernameArray

初始成员列表。NSArray 里的类型是 NSString

handler

结果回调。正常返回 resultObject 的类型是 JMSGGroup。

Discussion

向服务器端提交创建群组请求,返回生成后的群组对象. 返回群组对象, 群组ID是App 需要关注的, 是后续各种群组维护的基础.

Declared In

JMSGGroup.h

+ updateGroupInfoWithGroupId:name:desc:completionHandler:

更新群组信息

+ (void)updateGroupInfoWithGroupId:(NSString *)groupId name:(NSString *)groupName desc:(NSString *)groupDesc completionHandler:(JMSGCompletionHandler JMSG_NULLABLE)handler

Parameters

groupId

待更新的群组ID

groupName

新名称

groupDesc

新描述

handler

结果回调. 正常返回时, resultObject 为 nil.

Declared In

JMSGGroup.h

+ groupInfoWithGroupId:completionHandler:

获取群组信息

+ (void)groupInfoWithGroupId:(NSString *)groupId completionHandler:(JMSGCompletionHandler)handler

Parameters

groupId

待获取详情的群组ID

handler

结果回调. 正常返回时 resultObject 类型是 JMSGGroup.

Discussion

该接口总是向服务器端发起请求, 即使本地已经存在. 如果考虑性能损耗, 在群聊时获取群组信息, 可以获取 JMSGConversation -> target 属性.

Declared In

JMSGGroup.h

+ myGroupArray:

获取我的群组列表

+ (void)myGroupArray:(JMSGCompletionHandler)handler

Parameters

handler

结果回调。正常返回时 resultObject 的类型是 NSArray,数组里的成员类型是JMSGGroup的gid

Discussion

该接口总是向服务器端发起请求。

Declared In

JMSGGroup.h

+ shieldList:

获取所有设置群消息屏蔽的群组

+ (void)shieldList:(JMSGCompletionHandler)handler

Parameters

handler

结果回调。回调参数:

  • resultObject 类型为 NSArray,数组里成员的类型为 JMSGGroup
  • error 错误信息

如果 error 为 nil, 表示设置成功 如果 error 不为 nil,表示设置失败

Discussion

从服务器获取,返回所有设置群消息屏蔽的群组。

Declared In

JMSGGroup.h

Group basic fields 群组基本属性

  gid

群组ID

@property (nonatomic, strong, readonly) NSString *gid

Discussion

该ID由服务器端生成,全局唯一。可以用于服务器端 API。

Declared In

JMSGGroup.h

  name

群组名称

@property (nonatomic, copy, readonly) NSString *name

Discussion

可用于群组聊天的展示名称

Declared In

JMSGGroup.h

  desc

群组描述信息

@property (nonatomic, copy, readonly) NSString *desc

Declared In

JMSGGroup.h

  level

群组等级

@property (nonatomic, strong, readonly) NSNumber *level

Discussion

不同等级的群组,人数上限不同。当前默认等级 4,人数上限 200。客户端不可更改。

Declared In

JMSGGroup.h

  flag

群组设置标志位

@property (nonatomic, strong, readonly) NSNumber *flag

Discussion

这是一个内部状态标志,对外展示仅用于调试目的。客户端不可更改。

Declared In

JMSGGroup.h

  owner

群主(用户的 username)

@property (nonatomic, copy, readonly) NSString *owner

Discussion

有一套确认群主的策略。简单地说,群创建人是群主;如果群主退出,则是第二个加入的人,以此类似。客户端不可更改。

Declared In

JMSGGroup.h

  ownerAppKey

群主的appKey

@property (nonatomic, copy, readonly) NSString *ownerAppKey

Discussion

当有跨应用群成员与群主同名(username相同)时,可结合用这个ownerAppKey来判断群主。

Declared In

JMSGGroup.h

  maxMemberCount

群组人数上限,

@property (nonatomic, strong, readonly) NSString *maxMemberCount

Discussion

表示当前群组人数上限,客户端不可更改。。

Declared In

JMSGGroup.h

  isNoDisturb

该群是否已被设置为免打扰

@property (nonatomic, assign, readonly) BOOL isNoDisturb

Discussion

YES:是 , NO: 否

Declared In

JMSGGroup.h

  isShieldMessage

该群是否已被设置为消息屏蔽

@property (nonatomic, assign, readonly) BOOL isShieldMessage

Discussion

YES:是 , NO: 否

Declared In

JMSGGroup.h

– setIsNoDisturb:handler:

设置群组消息免打扰(支持跨应用设置)

- (void)setIsNoDisturb:(BOOL)isNoDisturb handler:(JMSGCompletionHandler)handler

Parameters

isNoDisturb

是否免打扰 YES:是 NO: 否

handler

结果回调。回调参数:

  • resultObject 相应对象
  • error 错误信息

如果 error 为 nil, 表示设置成功 如果 error 不为 nil,表示设置失败

Discussion

针对单个群组设置免打扰 这个接口支持跨应用设置免打扰

Declared In

JMSGGroup.h

– setIsShield:handler:

设置群组消息屏蔽

- (void)setIsShield:(BOOL)isShield handler:(JMSGCompletionHandler)handler

Parameters

isShield

是否群消息屏蔽 YES:是 NO: 否

handler

结果回调。回调参数:

  • resultObject 相应对象
  • error 错误信息

如果 error 为 nil, 表示设置成功 如果 error 不为 nil,表示设置失败

Discussion

针对单个群组设置群消息屏蔽

Declared In

JMSGGroup.h

Group members maintenance 群组成员维护

– memberArray

获取群组成员列表(同步接口,建议使用异步接口)

- (NSArray JMSG_GENERIC ( __kindof JMSGUser *) *)memberArray

Return Value

成员列表. NSArray 里成员类型是 JMSGUser.

Discussion

一般在群组详情界面调用此接口,展示群组的所有成员列表。 本接口只是在本地请求成员列表,不会发起服务器端请求。

Declared In

JMSGGroup.h

– memberArrayWithCompletionHandler:

获取群组成员列表(异步接口)

@handler 成员列表. NSArray 里成员类型是 JMSGUser.

- (void)memberArrayWithCompletionHandler:(JMSGCompletionHandler JMSG_NULLABLE)handler

Discussion

一般在群组详情界面调用此接口,展示群组的所有成员列表。 本接口只是在本地请求成员列表,不会发起服务器端请求。

Declared In

JMSGGroup.h

– addMembersWithUsernameArray:completionHandler:

添加群组成员

- (void)addMembersWithUsernameArray:(NSArray JMSG_GENERIC ( __kindof NSString *) *)usernameArray completionHandler:(JMSGCompletionHandler JMSG_NULLABLE)handler

Parameters

usernameArray

用户名数组。数组里的成员类型是 NSString

handler

结果回调。正常返回时 resultObject 为 nil.

Declared In

JMSGGroup.h

– addMembersWithUsernameArray:appKey:completionHandler:

添加群组跨应用成员

- (void)addMembersWithUsernameArray:(NSArray JMSG_GENERIC ( __kindof NSString *) *)usernameArray appKey:(NSString *)userAppKey completionHandler:(JMSGCompletionHandler JMSG_NULLABLE)handler

Parameters

usernameArray

用户名数组。数组里的成员类型是 NSString

handler

结果回调。正常返回时 resultObject 为 nil.

Declared In

JMSGGroup.h

– removeMembersWithUsernameArray:completionHandler:

删除群组成员

- (void)removeMembersWithUsernameArray:(NSArray JMSG_GENERIC ( __kindof NSString *) *)usernameArray completionHandler:(JMSGCompletionHandler JMSG_NULLABLE)handler

Parameters

usernameArray

用户名数据. 数组里的成员类型是 NSString

handler

结果回调。正常返回时 resultObject 为 nil.

Declared In

JMSGGroup.h

– removeMembersWithUsernameArray:appKey:completionHandler:

删除群组跨应用成员

- (void)removeMembersWithUsernameArray:(NSArray JMSG_GENERIC ( __kindof NSString *) *)usernameArray appKey:(NSString *)userAppKey completionHandler:(JMSGCompletionHandler JMSG_NULLABLE)handler

Parameters

usernameArray

用户名数据. 数组里的成员类型是 NSString

handler

结果回调。正常返回时 resultObject 为 nil.

Declared In

JMSGGroup.h

– exit:

退出当前群组(当前用户)

- (void)exit:(JMSGCompletionHandler JMSG_NULLABLE)handler

Parameters

handler

结果回调。正常返回时 resultObject 为 nil。

Declared In

JMSGGroup.h

– displayName

获取群组的展示名

- (NSString *)displayName

Discussion

如果 group.name 为空, 则此接口会拼接群组前 5 个成员的展示名返回.

Declared In

JMSGGroup.h