ReceivedMessageProperties

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

接收到的这消息的属性。

当收到频道消息或者点对点消息时,回调函数会返回一个 messageProps 参数,这是一个 ReceivedMessageProperties 类型,它包括以下几个属性:

属性类型描述
isHistoricalMessageboolean是否保存为历史消息。
isOfflineMessageboolean供消息接收者检查消息是否在服务端被缓存过(仅适用于点对点消息)。true 表示此条消息为离线消息,false 反之。
serverReceivedTsnumber消息服务器接收到消息的时间戳,单位为毫秒。

离线消息只有当消息发送者将 enableOfflineMessaging 设为 true,发送离线消息且在发送离线消息时对端不在线,对端重新上线后调用该方法会返回 true ,不设置默认为 false

示例

// 收到点对点消息的事件通知
client.on("MessageFromPeer", (message, memberId, messageProps) => {
    // messageProps: ReceivedMessageProperties
    const { isHistoricalMessage, isOfflineMessage, serverReceivedTs } = messageProps;
    // your code
});

/**
 * 创建一个 RtmClient 实例
 * @params channelId: 频道名称。(类型:string)
 */
const rtmChannel = client.createChannel(channelId);
// 收到频道消息的事件通知
rtmChannel.on("ChannelMessage", (message, memberId, messageProps) => {
    // messageProps: ReceivedMessageProperties
    const { isHistoricalMessage, isOfflineMessage, serverReceivedTs } = messageProps;
    // your code
});

注意事项

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