You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
179 lines
6.4 KiB
179 lines
6.4 KiB
// |
|
// JCGroupCallback.h |
|
// JCSDKOC |
|
// |
|
// Created by maikireton on 2017/8/15. |
|
// Copyright © 2017年 juphoon. All rights reserved. |
|
// |
|
|
|
#import <Foundation/Foundation.h> |
|
#import "JCGroupItem.h" |
|
#import "JCGroupMember.h" |
|
#import "JCGroupConstants.h" |
|
|
|
/** |
|
* @addtogroup 群组模块 |
|
* @{ |
|
*/ |
|
|
|
/** |
|
* JCGroup 回调 |
|
*/ |
|
@protocol JCGroupCallback <NSObject> |
|
|
|
/** |
|
* 拉取群列表结果回调 |
|
* |
|
* @param operationId 操作标识,由 {@link JCGroup#fetchGroups: fetchGroups} 接口返回 |
|
* @param result 拉取群列表是否成功 |
|
* true: 成功 |
|
* false: 失败 |
|
* @param reason 失败原因,当 result 为 false 时该值有效,参见:@ref JCGroupReason "JCGroup 错误码" |
|
* @param groups 群列表 |
|
* @param updateTime 服务器更新时间 |
|
* @param baseTime 服务器上个版本更新时间 |
|
* @param fullUpdated 是否全更新 |
|
* - true: 全量更新 |
|
* - false: 非全量更新 |
|
*/ |
|
-(void)onFetchGroups:(int)operationId result:(bool)result reason:(JCGroupReason)reason groups:(NSArray<JCGroupItem*>*)groups updateTime:(long)updateTime baseTime:(long)baseTime fullUpdate:(bool)fullUpdate; |
|
|
|
/** |
|
* 拉取群详情结果回调 |
|
* |
|
* @param operationId 操作标识,由 {@link JCGroup#fetchGroupInfo: fetchGroupInfo} 接口返回 |
|
* @param result 拉取群详情是否成功 |
|
* true: 成功 |
|
* false: 失败 |
|
* @param reason 失败原因,当 result 为 false 时该值有效,参见:@ref JCGroupReason "JCGroup 错误码" |
|
* @param groupItem JCGroupItem 对象 |
|
* @param members 成员列表 |
|
* @param updateTime 服务器更新时间 |
|
* @param baseTime 服务器上个版本更新时间 |
|
* @param fullUpdated 是否全更新 |
|
* - true: 全量更新 |
|
* - false: 非全量更新 |
|
*/ |
|
-(void)onFetchGroupInfo:(int)operationId result:(bool)result reason:(JCGroupReason)reason groupItem:(JCGroupItem*)groupItem members:(NSArray<JCGroupMember*>*)members updateTime:(long)updateTime baseTime:(long)baseTime fullUpdate:(bool)fullUpdate; |
|
|
|
/** |
|
* 群列表更新回调 |
|
* |
|
* 调用 {@link JCGroup#fetchGroups: fetchGroups} 获取更新列表 |
|
* |
|
* @param groupList 变化的 group |
|
* @param updateTime 服务器更新时间 |
|
* @param baseTime 服务器上个版本更新时间 |
|
*/ |
|
-(void)onGroupListChange:(NSArray<JCGroupItem*>*)groups updateTime:(long)updateTime baseTime:(long)baseTime; |
|
|
|
/** |
|
* 群信息更新回调 |
|
* |
|
* 调用 {@link JCGroup#fetchGroupInfo:updateTime: fetchGroupInfo} 获取更新信息 |
|
* |
|
* @param groupId 群标识 |
|
* @param memberList 成员列表 |
|
* @param updateTime 服务器更新时间 |
|
* @param baseTime 服务器上个版本更新时间 |
|
*/ |
|
-(void)onGroupInfoChange:(NSString*)groupId members:(NSArray<JCGroupMember*>*)members updateTime:(long)updateTime baseTime:(long)baseTime; |
|
|
|
/** |
|
* 创建群回调 |
|
* |
|
* @param operationId 操作标识,由 {@link JCGroup#createGroup:groupName:type:customProperties: createGroup} 接口返回 |
|
* @param result 创建群是否成功 |
|
* - true: 成功 |
|
* - false: 失败 |
|
* @param reason 失败原因,当 result 为 false 时该值有效,参见:@ref JCGroupReason "JCGroup 错误码" |
|
* @param groupItem JCGroupItem 对象 |
|
* @param updateTime 服务器更新时间 |
|
* @param baseTime 服务器上个版本更新时间 |
|
*/ |
|
-(void)onCreateGroup:(int)operationId result:(bool)result reason:(JCGroupReason)reason groupItem:(JCGroupItem*)groupItem updateTime:(long)updateTime baseTime:(long)baseTime;; |
|
|
|
/** |
|
* 更新群信息回调 |
|
* |
|
* @param operationId 操作标识,由 {@link JCGroup#updateGroup: updateGroup} 接口返回 |
|
* @param result 更新群信息是否成功 |
|
* - true: 成功 |
|
* - false: 失败 |
|
* @param reason 失败原因,当 result 为 false 时该值有效,参见:@ref JCGroupReason "JCGroup 错误码" |
|
* @param groupId 群标识 |
|
*/ |
|
-(void)onUpdateGroup:(int)operationId result:(bool)result reason:(JCGroupReason)reason groupId:(NSString*)groupId; |
|
|
|
/** |
|
* 解散群组回调 |
|
* |
|
* @param operationId 操作标识,由 {@link JCGroup#dissolve: dissolve} 接口返回 |
|
* @param result 解散群是否成功 |
|
* - true: 成功 |
|
* - false: 失败 |
|
* @param reason 失败原因,当 result 为 false 时该值有效,参见:@ref JCGroupReason "JCGroup 错误码" |
|
* @param groupId 群标识 |
|
*/ |
|
-(void)onDissolve:(int)operationId result:(bool)result reason:(JCGroupReason)reason groupId:(NSString*)groupId; |
|
|
|
/** |
|
* 离开群组回调 |
|
* |
|
* @param operationId 操作标识,由 {@link JCGroup#leave: leave} 接口返回 |
|
* @param result 离开群组是否成功 |
|
* - true: 成功 |
|
* - false: 失败 |
|
* @param reason 失败原因,当 result 为 false 时该值有效,参见:@ref JCGroupReason "JCGroup 错误码" |
|
* @param groupId 群标识 |
|
* @param updateTime 服务器更新时间 |
|
* @param baseTime 服务器上个版本更新时间 |
|
*/ |
|
-(void)onLeave:(int)operationId result:(bool)result reason:(JCGroupReason)reason groupId:(NSString*)groupId; |
|
|
|
/** |
|
* 操作成员结果回调 |
|
* |
|
* @param operationId 操作标识,由 {@link JCGroup#dealMembers:members: dealMembers} 接口返回 |
|
* @param result 操作成员是否成功 |
|
* - true: 成功 |
|
* - false: 失败 |
|
* @param reason 失败原因,当 result 为 false 时该值有效,参见:@ref JCGroupReason "JCGroup 错误码" |
|
* @param groupId 群标识 |
|
*/ |
|
-(void)onDealMembers:(int)operationId result:(bool)result reason:(JCGroupReason)reason groupId:(NSString*)groupId; |
|
|
|
/** |
|
* 更新备注信息结果回调 |
|
* |
|
* 调用 {@link JCGroup#updateGroupComment:nickName:tag: updateGroupComment} 接口 更新备注信息结果 |
|
* |
|
* @param operationId 操作标识 |
|
* @param result 更新备注信息是否成功 |
|
* - true: 成功 |
|
* - false: 失败 |
|
* @param reason 失败原因,当 result 为 false 时该值有效,参见:@ref JCGroupReason "JCGroup 错误码" |
|
* @param groupId 群标识 |
|
*/ |
|
-(void)onUpdateGroupComment:(int)operationId result:(bool)result reason:(JCGroupReason)reason groupId:(NSString*)groupId; |
|
|
|
/** |
|
* 设置免打扰回调 |
|
* |
|
* 调用 {@link JCGroup#setDnd:dnd: setDnd} 接口 设置免打扰 |
|
* |
|
* @param operationId 操作标识 |
|
* @param result 设置免打扰是否成功 |
|
* - true: 成功 |
|
* - false: 失败 |
|
* @param reason 失败原因,当 result 为 false 时该值有效,参见:@ref JCGroupReason "JCGroup 错误码" |
|
* @param groupId 群标识 |
|
*/ |
|
-(void)onSetGroupDnd:(int)operationId result:(bool)result reason:(JCGroupReason)reason groupId:(NSString*)groupId; |
|
|
|
|
|
@end |
|
|
|
/** |
|
* @} |
|
*/
|
|
|