提供频道消息或点对点文本消息相关属性的数据结构。
消息类别
@property (nonatomic, assign, readonly) ARtmMessageType type;
当前仅支持文本消息。
ARtmMessageType:
-
ARtmMessageTypeUndefined 0: 未定义的消息类别。
-
ARtmMessageTypeText 1: 文本消息。
-
ARtmMessageTypeRaw 2: 自定义二进制消息。
-
ARtmMessageTypeFile 3: 文件消息。大小不得超过 32 KB。
-
ARtmMessageTypeImage 4: 图片消息。大小不得超过 32 KB。
文本消息内容
@property (nonatomic, copy, nonnull) NSString *text;
最大长度不得超过 32 KB。
消息服务器接收到消息的时间戳(毫秒)
@property (nonatomic, assign, readonly) long long serverReceivedTs;
注意事项:
- 你不能设置时间戳,但是你可以从该时间戳推断出消息的大致发送时间。
- 时间戳的精度为秒级。仅用于展示,不建议用于消息的严格排序。
消息接收者检查消息是否在服务端被保存过
@property (nonatomic, assign, readonly) BOOL isOfflineMessage;
- YES: 被保存过(消息服务器保存了该条消息且在对端重新上线后重新发送成功)。
- NO: 未被保存过。
注意事项:
- 如果消息没有被消息服务器保存过,该方法将返回 NO。也就是说:只有当消息发送者通过设置 enableOfflineMessaging=YES 发送离线消息且在发送离线消息时对端不在线,对端重新上线后调用该方法会返回 YES。
- 目前我们只为每个接收端保存 200 条离线消息最长七天。当保存的离线消息超出限制时,最老的信息将会被最新的消息替换。
initWithText
- (instancetype _Nonnull)initWithText:(NSString * _Nonnull)text;
创建一个 ARtmMessage 文本消息实例
参数
-
text
文本消息内容,必须为小于 32 KB 的字符串。
-
返回值
一个 ARtmMessage 文本消息实例。