/////////////////////////////////////////////////////////////////////
//
// 腾讯云通信服务 IMSDK
//
// 模块名称:V2TIMManager+Message
//
// 消息高级接口,里面包含了所有高级消息的创建、收发逻辑
//
/////////////////////////////////////////////////////////////////////
#import "V2TIMManager.h"
@class V2TIMMessage;
@class V2TIMTextElem;
@class V2TIMCustomElem;
@class V2TIMImageElem;
@class V2TIMVideoElem;
@class V2TIMSoundElem;
@class V2TIMFileElem;
@class V2TIMFaceElem;
@class V2TIMLocationElem;
@class V2TIMMergerElem;
@class V2TIMGroupTipsElem;
@class V2TIMMessageListGetOption;
@class V2TIMMessageSearchParam;
@class V2TIMImage;
@class V2TIMMessageReceipt;
@class V2TIMOfflinePushInfo;
@class V2TIMGroupChangeInfo;
@class V2TIMGroupMemberChangeInfo;
@class V2TIMMessageSearchResult;
@class V2TIMReceiveMessageOptInfo;
@class V2TIMMessageExtension;
@class V2TIMMessageExtensionResult;
V2TIM_EXPORT @protocol V2TIMAdvancedMsgListener;
V2TIM_EXPORT @interface V2TIMManager (Message)
/////////////////////////////////////////////////////////////////////////////////
//
// 异步接口的回调 BLOCK
//
/////////////////////////////////////////////////////////////////////////////////
/// 查询历史消息的结果回调(查询接口会批量地返回从某个时间点之前的历史消息)
typedef void (^V2TIMMessageListSucc)(NSArray<V2TIMMessage *> * msgs);
/// 搜索历史消息的结果回调(查询接口支持模糊匹配)
typedef void (^V2TIMSearchMessageListSucc)(V2TIMMessageSearchResult *searchResult);
/// 文件上传进度回调,取值 0 -100
typedef void (^V2TIMProgress)(uint32_t progress);
/// 文件下载进度回调
typedef void (^V2TIMDownLoadProgress)(NSInteger curSize, NSInteger totalSize);
/// 获取消息接收选项的结果回调
typedef void (^V2TIMReceiveMessageOptListSucc)(NSArray<V2TIMReceiveMessageOptInfo *> *optList);
/// 获取群消息已读回执的结果回调
typedef void (^V2TIMMessageReadReceiptsSucc)(NSArray<V2TIMMessageReceipt*> *receiptList);
/// 获取群消息已读或未读群成员列表
typedef void (^V2TIMGroupMessageReadMemberListSucc)(NSMutableArray<V2TIMGroupMemberInfo*>* members, uint64_t nextSeq, BOOL isFinished);
/// 消息修改完成回调
typedef void (^V2TIMMessageModifyCompletion)(int code, NSString * desc, V2TIMMessage *msg);
/// 设置消息扩展成功回调
typedef void (^V2TIMMessageExtensionsSetSucc)(NSArray<V2TIMMessageExtensionResult*> *extensionResultList);
/// 获取消息扩展成功回调
typedef void (^V2TIMMessageExtensionsGetSucc)(NSArray<V2TIMMessageExtension*> *extensionList);
/// 删除消息扩展成功回调
typedef void (^V2TIMMessageExtensionsDeleteSucc)(NSArray<V2TIMMessageExtensionResult*> *extensionResultList);
/// 在接口 createTextAtMessage 中填入 kMesssageAtALL 表示当前消息需要 @ 群里所有人
V2TIM_EXTERN NSString * const kImSDK_MesssageAtALL;
/// 消息状态
typedef NS_ENUM(NSInteger, V2TIMMessageStatus){
V2TIM_MSG_STATUS_SENDING = 1, ///< 消息发送中
V2TIM_MSG_STATUS_SEND_SUCC = 2, ///< 消息发送成功
V2TIM_MSG_STATUS_SEND_FAIL = 3, ///< 消息发送失败
V2TIM_MSG_STATUS_HAS_DELETED = 4, ///< 消息被删除
V2TIM_MSG_STATUS_LOCAL_IMPORTED = 5, ///< 导入到本地的消息
V2TIM_MSG_STATUS_LOCAL_REVOKED = 6, ///< 被撤销的消息
};
/// 消息类型
typedef NS_ENUM(NSInteger, V2TIMElemType){
V2TIM_ELEM_TYPE_NONE = 0, ///< 未知消息
V2TIM_ELEM_TYPE_TEXT = 1, ///< 文本消息
V2TIM_ELEM_TYPE_CUSTOM = 2, ///< 自定义消息
V2TIM_ELEM_TYPE_IMAGE = 3, ///< 图片消息
V2TIM_ELEM_TYPE_SOUND = 4, ///< 语音消息
V2TIM_ELEM_TYPE_VIDEO = 5, ///< 视频消息
V2TIM_ELEM_TYPE_FILE = 6, ///< 文件消息
V2TIM_ELEM_TYPE_LOCATION = 7, ///< 地理位置消息
V2TIM_ELEM_TYPE_FACE = 8, ///< 表情消息
V2TIM_ELEM_TYPE_GROUP_TIPS = 9, ///< 群 Tips 消息
V2TIM_ELEM_TYPE_MERGER = 10, ///< 合并消息
};
/// 推送规则
typedef NS_ENUM(NSInteger, V2TIMOfflinePushFlag) {
V2TIM_OFFLINE_PUSH_DEFAULT = 0, ///< 按照默认规则进行推送
V2TIM_OFFLINE_PUSH_NO_PUSH = 1, ///< 不进行推送
};
/// 图片类型
typedef NS_ENUM(NSInteger, V2TIMImageType){
V2TIM_IMAGE_TYPE_ORIGIN = 0x01, ///< 原图
V2TIM_IMAGE_TYPE_THUMB = 0x02, ///< 缩略图
V2TIM_IMAGE_TYPE_LARGE = 0x04, ///< 大图
};
/// 群 Tips 类型
typedef NS_ENUM(NSInteger, V2TIMGroupTipsType){
V2TIM_GROUP_TIPS_TYPE_JOIN = 0x01, ///< 主动入群(memberList 加入群组,非 Work 群有效)
V2TIM_GROUP_TIPS_TYPE_INVITE = 0x02, ///< 被邀请入群(opMember 邀请 memberList 入群,Work 群有效)
V2TIM_GROUP_TIPS_TYPE_QUIT = 0x03, ///< 退出群 (opMember 退出群组)
V2TIM_GROUP_TIPS_TYPE_KICKED = 0x04, ///< 踢出群 (opMember 把 memberList 踢出群组)
V2TIM_GROUP_TIPS_TYPE_SET_ADMIN = 0x05, ///< 设置管理员 (opMember 把 memberList 设置为管理员)
V2TIM_GROUP_TIPS_TYPE_CANCEL_ADMIN = 0x06, ///< 取消管理员 (opMember 取消 memberList 管理员身份)
V2TIM_GROUP_TIPS_TYPE_GROUP_INFO_CHANGE = 0x07, ///< 群资料变更 (opMember 修改群资料: groupName & introduction & notification & faceUrl & owner & allMute & custom)
V2TIM_GROUP_TIPS_TYPE_MEMBER_INFO_CHANGE = 0x08, ///< 群成员资料变更 (opMember 修改群成员资料:muteTime)
};
/// 群变更信息 Tips 类型
typedef NS_ENUM(NSInteger, V2TIMGroupInfoChangeType){
V2TIM_GROUP_INFO_CHANGE_TYPE_NAME = 0x01, ///< 群名修改
V2TIM_GROUP_INFO_CHANGE_TYPE_INTRODUCTION = 0x02, ///< 群简介修改
V2TIM_GROUP_INFO_CHANGE_TYPE_NOTIFICATION = 0x03, ///< 群公告修改
V2TIM_GROUP_INFO_CHANGE_TYPE_FACE = 0x04, ///< 群头像修改
V2TIM_GROUP_INFO_CHANGE_TYPE_OWNER = 0x05, ///< 群主变更
V2TIM_GROUP_INFO_CHANGE_TYPE_CUSTOM = 0x06, ///< 群自定义字段变更
V2TIM_GROUP_INFO_CHANGE_TYPE_SHUT_UP_ALL = 0x08, ///< 全员禁言字段变更
V2TIM_GROUP_INFO_CHANGE_TYPE_RECEIVE_MESSAGE_OPT = 0x0A, ///< 消息接收选项变更
V2TIM_GROUP_INFO_CHANGE_TYPE_GROUP_ADD_OPT = 0x0B, ///< 申请加群方式下管理员审批选项变更
V2TIM_GROUP_INFO_CHANGE_TYPE_GROUP_APPROVE_OPT = 0x0C, ///< 邀请进群方式下管理员审批选项变更
};
/// 消息拉取方式
typedef NS_ENUM(NSInteger, V2TIMMessageGetType){
V2TIM_GET_CLOUD_OLDER_MSG = 1, ///< 获取云端更老的消息
V2TIM_GET_CLOUD_NEWER_MSG = 2, ///< 获取云端更新的消息
V2TIM_GET_LOCAL_OLDER_MSG = 3, ///< 获取本地更老的消息
V2TIM_GET_LOCAL_NEWER_MSG = 4, ///< 获取本地更新的消息
};
/// 消息接收选项
typedef NS_ENUM(NSInteger, V2TIMReceiveMessageOpt) {
V2TIM_RECEIVE_MESSAGE = 0, ///< 在线正常接收消息,离线时会进行 APNs 推送
V2TIM_NOT_RECEIVE_MESSAGE = 1, ///< 不会接收到消息,离线不会有推送通知
V2TIM_RECEIVE_NOT_NOTIFY_MESSAGE = 2, ///< 在线正常接收消息,离线不会有推送通知
};
/// 消息搜索关键字匹配类型
typedef NS_ENUM(NSInteger, V2TIMKeywordListMatchType) {
V2TIM_KEYWORD_LIST_MATCH_TYPE_OR = 0,
V2TIM_KEYWORD_LIST_MATCH_TYPE_AND = 1
};
/// 群消息已读成员列表过
没有合适的资源?快使用搜索试试~ 我知道了~
资源推荐
资源详情
资源评论






















收起资源包目录

















































共 40 条
- 1
资源评论


Black_Boa
- 粉丝: 0
- 资源: 114
上传资源 快速赚钱
我的内容管理 收起
我的资源 快来上传第一个资源
我的收益
登录查看自己的收益我的积分 登录查看自己的积分
我的C币 登录后查看C币余额
我的收藏
我的下载
下载帮助


会员权益专享
安全验证
文档复制为VIP权益,开通VIP直接复制
