Interface ChatMessageEventListener

消息事件监听器。

该监听器用于监听消息变更状态:

  • 消息成功发送到对方后,发送方会收到送达回执(需开启送达回执功能,详见 (boolean))。

  • 对方阅读了这条消息,发送方会收到已读回执(需开启已读回执功能,详见 (boolean))。

发送消息过程中,消息 ID 会从最初本地生成的 uuid 变更为服务器端生成的全局唯一 ID,该 ID 在使用 SDK 的所有设备上均唯一。

添加消息事件监听器:
let msgListener = new (class ss implements ChatMessageEventListener {
onMessagesReceived(messages: ChatMessage[]): void {
chatlog.log('ConnectScreen.onMessagesReceived', messages);
}
onCmdMessagesReceived(messages: ChatMessage[]): void {
chatlog.log('ConnectScreen.onCmdMessagesReceived', messages);
}
onMessagesRead(messages: ChatMessage[]): void {
chatlog.log('ConnectScreen.onMessagesRead', messages);
}
onGroupMessageRead(groupMessageAcks: ChatGroupMessageAck[]): void {
chatlog.log('ConnectScreen.onGroupMessageRead', groupMessageAcks);
}
onMessagesDelivered(messages: ChatMessage[]): void {
chatlog.log('ConnectScreen.onMessagesDelivered', messages);
}
onMessagesRecalled(messages: ChatMessage[]): void {
chatlog.log('ConnectScreen.onMessagesRecalled', messages);
}
onConversationsUpdate(): void {
chatlog.log('ConnectScreen.onConversationsUpdate');
}
onConversationRead(from: string, to?: string): void {
chatlog.log('ConnectScreen.onConversationRead', from, to);
}
})();
ChatClient.getInstance().chatManager.addListener(msgListener);

移除消息事件监听器:

ChatClient.getInstance().chatManager.delListener(this.msgListener);
interface ChatMessageEventListener {
    onChatMessageThreadCreated?(event: ChatMessageThreadEvent): void;
    onChatMessageThreadDestroyed?(event: ChatMessageThreadEvent): void;
    onChatMessageThreadUpdated?(event: ChatMessageThreadEvent): void;
    onChatMessageThreadUserRemoved?(event: ChatMessageThreadEvent): void;
    onCmdMessagesReceived?(messages: ChatMessage[]): void;
    onConversationRead?(from: string, to?: string): void;
    onConversationsUpdate?(): void;
    onGroupMessageRead?(groupMessageAcks: ChatGroupMessageAck[]): void;
    onMessageContentChanged?(message: ChatMessage, lastModifyOperatorId: string, lastModifyTime: number): void;
    onMessagePinChanged?(params: {
        convId: string;
        messageId: string;
        pinInfo: ChatMessagePinInfo;
        pinOperation: number;
    }): void;
    onMessageReactionDidChange?(list: ChatMessageReactionEvent[]): void;
    onMessagesDelivered?(messages: ChatMessage[]): void;
    onMessagesRead?(messages: ChatMessage[]): void;
    onMessagesRecalled?(messages: ChatMessage[]): void;
    onMessagesRecalledInfo?(info: ChatRecalledMessageInfo[]): void;
    onMessagesReceived?(messages: ChatMessage[]): void;
}

Methods

  • 子区创建回调。

    子区所属群组的所有成员均可调用该方法。

    Parameters

    Returns void

  • 子区移除回调。

    Parameters

    Returns void

  • 子区更新回调。

    子区所属群组的所有成员均可调用该方法。

    Parameters

    Returns void

  • 管理员移除子区用户的回调。

    Parameters

    Returns void

  • 收到命令消息回调。

    onMessagesReceived 不同, 这个回调只包含命令的消息,命令消息通常不对用户展示。

    Parameters

    Returns void

  • 收到会话已读回执的回调。

    回调此方法的场景: (1)消息被接收方阅读,即接收方发送了会话已读回执。 SDK 在接收到此事件时,会将本地数据库中该会话中消息的 isAcked 属性置为 true。 (2)多端多设备登录场景下,一端发送会话已读回执,服务器端会将会话的未读消息数置为 0, 同时其他端会回调此方法,并将本地数据库中该会话中消息的 isRead 属性置为 true

    Parameters

    • from: string

      发送已读回执的用户 ID。

    • Optionalto: string

      收到已读回执的用户 ID。

    Returns void

  • 会话更新事件回调。

    Returns void

  • 收到群组消息的已读回执的回调。

    Parameters

    Returns void

  • 文本消息内容更改,其它设备收到该通知。

    Parameters

    • message: ChatMessage

      更改后的消息.

    • lastModifyOperatorId: string

      修改消息的人的 ID。

    • lastModifyTime: number

      修改消息的时间戳。

    Returns void

  • 收到消息置顶状态变更回调。

    Parameters

    • params: {
          convId: string;
          messageId: string;
          pinInfo: ChatMessagePinInfo;
          pinOperation: number;
      }

    Returns void

    params -

    • Param [messageId] 置顶状态变更的消息 ID。
    • Param [convId] 消息所在会话 ID。
    • Param [pinOperation] 置顶操作类型。
    • Param [pinInfo] 置顶或取消置顶操作信息,包括操作时间,操作者的用户 ID。 详见 ChatMessagePinInfo.
  • 消息表情回复(Reaction)变化监听器。

    Parameters

    Returns void

  • 收到消息已送达回执的回调。

    Parameters

    Returns void

  • 收到单聊消息已读回执的回调。

    Parameters

    Returns void

  • 已收到的消息被撤回的回调。

    Parameters

    Returns void

  • 收到消息撤销通知的回调。

    Parameters

    Returns void

  • 收到消息回调。

    在收到文本、图片、视频、语音、地理位置和文件等消息时,通过此回调通知用户。

    Parameters

    Returns void