提供频道消息或点对点文本消息相关属性的数据结构

最近更新时间:2022-09-20 05:17:40

提供频道消息或点对点文本消息相关属性的数据结构。

消息类别

@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 文本消息实例。