跳到主要内容

引用回复

IMKit 支持引用回复功能,允许用户在聊天页面中回复彼此的消息。消息将出现在会话页面的消息列表组件中。引用回复功能默认发送的消息包含引用消息内容对象 ReferenceMessage(类型标识:RC:ReferenceMsg)。

局限

引用回复功能目前有以下限制:

  • 仅支持文本消息、文件消息、图文消息、图片消息、引用消息的引用。
  • 引用深度仅支持一度,即只能引用回复原始消息。如果多重引用,只展示上一层被引消息内容。

用法

IMKit 会话页面默认已启用引用回复功能。用户在会话页面长按消息,在弹框里选择引用消息,即可引用该消息。在输入区添加消息内容后,SDK 默认会将输入内容与被引消息组合为 ReferenceMessage,并发送到会话中。

关闭引用回复功能

IMKit 目前不支持关闭引用回复功能。

自定义引用消息的 UI

引用回复功能默认发送的消息包含引用消息内容(RC:ReferenceMsg),引用消息使用 ReferenceMessageItemProvider 模板展示在消息列表中。

如果需要调整内置消息样式,需继承 BaseMessageItemProvider<ReferenceMessage> 自行实现消息展示模板类,详见自定义Provider

调用下面的接口将该自定义模板提供给 SDK,objectNameReferenceMessageObjectName

import { ReferenceMessageObjectName, RongIM } from "@rongcloud/imkit";

// 注册自定义引用消息 provider 给 IMKit
RongIM.getInstance().conversationService().addMessageItemProvider(ReferenceMessageObjectName, new CustomReferenceMessageItemProvider())