Skip to content

getSnapshot

最后更新时间 2026-04-17

getSnapshot(options) 用于获取指定会话的基础快照信息,包括会话状态、未读数和最近消息摘要。

  • 接口标识:conversation.getSnapshot
  • 请求类型:ConversationGetSnapshotRequest
  • 当前状态:可接入

该接口适用于会话列表渲染、会话首页预览和进入聊天前的数据预取。业务方可以通过该接口快速得到当前会话的可展示信息,而不必直接遍历完整消息时间线。

注意事项

  • 调用前必须已完成 bootstrap 和 login。
  • 该接口返回的是会话快照,不等价于完整消息列表。
  • 如果需要分页拉取会话消息,应继续调用 message.getTimeline。
  • 当前实现阶段为 浅实现,当前可接入状态为 可接入
  • 当前方法已纳入 release/phase0 正式发布承诺。

支持说明

该接口用于四端统一的会话概览与预览能力。

应用能力AndroidiOSHarmonyPC发布状态
SDK Wrapper支持支持支持支持已纳入 release/phase0

发布基线:

  • android: Android 8.0+ (API 26)
  • ios: iOS 15+
  • harmony: HarmonyOS NEXT API 12+
  • pc: Host OS with supported native bridge runtime

输入

该接口接收 ConversationGetSnapshotRequest 请求对象,字段定义如下。

名称数据类型是否必填默认值描述
conversation_idString-目标会话标识。

说明

请求对象由业务方传入,用于触发上层 SDK API 调用。平台 wrapper 可以按各自语言习惯封装参数对象,但字段语义必须与 ConversationGetSnapshotRequest 保持一致。

输出

该接口成功后返回 ConversationGetSnapshotResponse 业务结果,字段定义如下。

名称数据类型描述
conversation_idString当前快照对应的会话标识。
conversation_typeString会话类型,例如 direct
display_nameString会话展示名称。
sync_markerString当前快照对应的同步标记,用于识别数据版本或新鲜度。
unread_countu32当前会话的未读消息数量。
conversation_stateString会话快照状态,例如 populatedstalepartialempty
message_previewOption<String>最近一条消息的摘要预览;没有消息时为空。
last_message_atOption<String>最近一条消息时间,使用 ISO-8601 字符串表示;没有消息时为空。

状态与前置条件

  • 调用前置条件:runtime.bootstrapauth.login
  • 当前 SDK 状态要求:当前用户会话有效,且目标会话标识有效。
  • 调用成功后状态:成功后不会改变 SDK 状态,返回当前会话快照。
  • 建议后续调用:message.getTimeline

示例代码

平台调用示例

平台正式入口绑定方式错误返回方式
Androidcom.robin.sdk.RobinSdkkotlin-java-facaderesult-error-object
iOSRobinSdkswift-facadethrows-result-enum
HarmonyRobinSdkarkts-js-facaderesult-code-object
PCrobin_sdk_bridgenative-bridge-facadebridge-error-code

说明

当前仓库尚未提供该方法的真实平台 facade 调用代码片段。你可以先根据以下真实入口信息接入平台 wrapper;后续如补充 docs/examples/<platform>/conversation-get-snapshot.*,页面会自动渲染对应平台示例。

错误码

错误码描述排查建议
action_not_enabled当前接口能力未开放,或当前发布范围不支持该调用。检查接口是否已纳入当前发布范围,并确认目标平台已支持该能力。