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
3.9 KiB
179 lines
3.9 KiB
// |
|
// JCMessageChannelItem.h |
|
// JCSDKOC |
|
// |
|
// Created by maikireton on 2017/8/11. |
|
// Copyright © 2017年 juphoon. All rights reserved. |
|
// |
|
|
|
#import <Foundation/Foundation.h> |
|
#import "JCMessageChannelConstants.h" |
|
|
|
/** |
|
* @addtogroup 消息通道模块 |
|
* @{ |
|
*/ |
|
|
|
/** |
|
* IM消息对象类 |
|
*/ |
|
@interface JCMessageChannelItem : NSObject |
|
|
|
/** |
|
* 消息唯一标识 |
|
*/ |
|
@property (nonatomic, readonly, copy) NSString* messageId; |
|
|
|
/** |
|
* 消息内容类型 |
|
*/ |
|
@property (nonatomic, readonly, copy) NSString* messageType; |
|
|
|
/** |
|
* 消息内容 |
|
* |
|
* 包括文本和自定义消息体内容 |
|
*/ |
|
@property (nonatomic, readonly, copy) NSString* text; |
|
|
|
/** |
|
* 文件链接 |
|
* |
|
* 可以通过 JCStorage 将文件上传至 Juphoon Cloud 平台来获取该地址,也可以从其他文件消息获取改地址 |
|
*/ |
|
@property (nonatomic, readonly, copy) NSString* fileUri; |
|
|
|
/** |
|
* 缩略图链接 |
|
* |
|
* 可以通过 JCStorage 将文件上传至 Juphoon Cloud 平台来获取该地址,也可以从其他文件消息获取改地址 |
|
*/ |
|
@property (nonatomic, readonly, copy) NSString* thumbUri; |
|
|
|
/** |
|
* 文件大小 |
|
*/ |
|
@property (nonatomic, readonly) int fileSize; |
|
|
|
/** |
|
* 文件时长 |
|
* @note 语音,视频消息有效 |
|
*/ |
|
@property (nonatomic, readonly) int duration; |
|
|
|
/** |
|
* 自定义参数集 |
|
*/ |
|
@property (nonatomic, readonly, strong) NSDictionary* extraParams; |
|
|
|
/** |
|
* 消息对端用户标识 |
|
*/ |
|
@property (nonatomic, readonly, copy) NSString* userId; |
|
|
|
/** |
|
* 消息对端昵称 |
|
*/ |
|
@property (nonatomic, readonly, copy) NSString* displayName; |
|
|
|
/** |
|
* 群组标识,type 为 @ref JCMessageChannelTypeGroup 时有效 |
|
*/ |
|
@property (nonatomic, readonly, copy) NSString* groupId; |
|
|
|
/** |
|
* 发送或者接收时间,单位毫秒 |
|
*/ |
|
@property (nonatomic, readonly) long time; |
|
|
|
/** |
|
* 发送成功时间,单位毫秒,如果是收到消息则是服务器记录的该消息发送时间 |
|
*/ |
|
@property (nonatomic, readonly) long sentTime; |
|
|
|
/** |
|
* 消息传输方向,参见: |
|
* - @ref JCMessageChannelItemDirectionSend : 发送 |
|
* - @ref JCMessageChannelItemDirectionReceive : 接收 |
|
*/ |
|
@property (nonatomic, readonly) JCMessageChannelItemDirection direction; |
|
|
|
/** |
|
* 返回是一对一消息还是群组消息 |
|
* |
|
* - @ref JCMessageChannelType1To1 : 一对一消息 |
|
* - @ref JCMessageChannelTypeGroup : 群组消息 |
|
*/ |
|
@property (nonatomic, readonly) JCMessageChannelType type; |
|
|
|
/** |
|
* 消息状态: |
|
* - @ref JCMessageChannelItemStateInit : 消息初始状态 |
|
* - @ref JCMessageChannelItemStateTransfering : 消息传输中状态 |
|
* - @ref JCMessageChannelItemStateOK : 消息成功状态 |
|
* - @ref JCMessageChannelItemStateFail : 消息失败状态 |
|
* - @ref JCMessageChannelItemStateArrived : 已送达 |
|
* - @ref JCMessageChannelItemStateReaded : 已读 |
|
* - @ref JCMessageChannelItemStateWithdrawal : 撤回 |
|
*/ |
|
@property (nonatomic, readonly) JCMessageChannelItemState state; |
|
|
|
/** |
|
* @ref JCMessageChannelReason "消息错误码" |
|
* |
|
* 当消息状态为 @ref JCMessageChannelItemStateFail 时有效 |
|
*/ |
|
@property (nonatomic, readonly) JCMessageChannelReason error; |
|
|
|
/** |
|
* 消息的服务器id |
|
*/ |
|
@property (nonatomic, readonly) long serverMessageId; |
|
|
|
/** |
|
* cookie |
|
*/ |
|
@property (nonatomic, strong) id cookie; |
|
|
|
/** |
|
* 会话 serverUid |
|
*/ |
|
@property (nonatomic, strong) NSString* serverUid; |
|
|
|
/** |
|
* 消息发送者 uid |
|
*/ |
|
@property (nonatomic, strong) NSString* senderUid; |
|
|
|
/** |
|
* 是否@我的,针对群聊 |
|
* - true: @我 |
|
* - false: 未@我 |
|
*/ |
|
@property (nonatomic) bool atMe; |
|
/** |
|
* 是否@所有人,针对群聊 |
|
* - true: @所有人 |
|
* - false: 未@所有人 |
|
*/ |
|
@property (nonatomic) bool atAll; |
|
/** |
|
* @的uid列表 |
|
*/ |
|
@property (nonatomic, strong) NSArray<NSString*>* atServerUidList; |
|
/** |
|
* 是否是撤回消息 |
|
* - true: 是撤回消息 |
|
* - false: 不是撤回消息 |
|
*/ |
|
@property (nonatomic) bool isWithdrawal; |
|
/** |
|
* 撤回的消息id |
|
*/ |
|
@property (nonatomic) long withdrawalMessageId;; |
|
|
|
@end |
|
|
|
/** |
|
* @} |
|
*/
|
|
|