RtmMessage

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

Public 成员函数
abstract voidsetText (String text)
abstract StringgetText ()
abstract byte[]getRawMessage ()
abstract intgetMessageType ()
abstract longgetServerReceivedTs ()
abstract booleanisOfflineMessage ()

详细描述

用于获取 AR RTM 频道消息或点对点消息的属性。

成员函数说明

getMessageType()

abstract int org.ar.rtm.RtmMessage.getMessageType   ()  

获取消息类型。

返回

消息类型。详见 RtmMessageType

getRawMessage()

abstract byte [] org.ar.rtm.RtmMessage.getRawMessage    ()  

获取自定义二进制消息的二进制内容。

返回

自定义二进制消息的二进制内容。

getServerReceivedTs()

abstract long org.ar.rtm.RtmMessage.getServerReceivedTs()   

供消息接收者获取消息服务器接收到消息的时间戳。

Note

  • 你不能设置时间戳,但是你可以从该时间戳推断出本条消息的大致发送时间。
  • 时间戳的精度为秒级。仅用于展示,不建议用于消息的严格排序。

返回

消息服务器接收到消息的时间戳(毫秒)。

getText()

abstract String org.ar.rtm.RtmMessage.getText   ()

获取文本消息正文或自定义二进制消息的文字描述。

返回

接收到的文本消息征文或自定义二进制消息的二进制文字描述。

isOfflineMessage()

abstract boolean org.ar.rtm.RtmMessage.isOfflineMessage()

供消息接收者检查消息是否在服务端被保存过(仅用于点对点消息)。

Note

  • 如果消息没有被消息服务器保存过,该方法将返回 false。也就是说:只有当消息发送者通过设置 enableOfflineMessaging=true 发送离线消息且在发送离线消息时对端不在线,对端重新上线后调用该方法会返回 true。
  • 目前我们只为每个接收端保存 200 条离线消息最长七天。当保存的离线消息超出限制时,最老的信息将会被最新的消息替换。

返回

  • true: 被保存过(消息服务器保存了该条消息且在对端重新上线后重新发送成功)。

  • false: 未被保存过。

setRawMessage()

abstract void org.ar.rtm.RtmMessage.setRawMessage   (byte[] data)

设置自定义二进制消息的二进制内容。

Note 你可以在调用本方法后通过 setText 方法设置自定义二进制消息的文字描述。但是请确保二进制消息和文字描述加起来的大小不超过 32 KB。

参数描述
data二进制消息内容。最大长度为 32 KB。

setRawMessage()

abstract void org.ar.rtm.RtmMessage.setRawMessage   (byte[] data,String description )   

设置自定义二进制消息的二进制内容和文本描述。

Note 你也可以先将 description 设为 "",消息创建成功后可以通过调用 setText 方法设置二进制消息的文字描述。但是请确保二进制消息和文字描述加起来的大小不超过 32 KB。

参数描述
data二进制消息内容。最大长度为 32 KB。
description二进制消息的简短文字描述。设置文字描述时,请确保二进制消息和文字描述加起来的大小不超过 32 KB。

setText()

abstract void org.ar.rtm.RtmMessage.setText(String text)

设置文本消息正文或自定义二进制消息的文字描述。

Note: 最大长度为 32 KB。

参数描述
text待设置的文本消息正文或自定义二进制消息的文字描述。