消息词汇表
Convai Live API 中所有可用消息类型的完整词汇表,用于客户端与服务器之间的实时通信。
概述
本术语表为 Convai Live API 中使用的所有消息类型提供了全面参考。消息通过 WebRTC 数据通道在您的客户端应用与 Convai 服务器之间双向传输。
消息方向
客户端 → 服务器
您发送的消息,用于触发操作、更新状态或控制机器人
服务器 → 客户端
您接收的消息,用于事件、状态变更和实时数据
消息格式
客户端 → 服务器消息
从客户端发送到服务器的消息使用以下结构:
{
"type": "<message-type>",
"data": { ... }
}type(字符串,必填):消息类型标识符data(对象,可选):消息负载(结构因类型而异)
服务器 → 客户端消息
从服务器发送到客户端的消息会封装在 RTVI 信封中:
label(字符串):始终为"rtvi-ai"type(字符串):始终为"server-message"用于自定义服务器消息data(对象):包含其自身的实际消息type以及负载字段
在详细消息文档页面中,为了清晰起见,示例只展示内部 data 负载。
服务器响应消息
对于每个客户端到服务器的消息,服务器都会自动发送一条 server-response 消息,用于确认接收并指示处理状态。这类似于 REST API 中的 HTTP 响应码。
响应示例:
event_type
字符串
触发此响应的原始客户端消息类型
status
字符串
处理状态: "success", "error", "processing", "pending"
message
字符串
结果的人类可读描述(可选)
extras
对象
附加的、特定事件的数据(可选)
状态值:
"success"- 消息已成功处理"error"- 发生错误(请参见message以了解详情)"processing"- 消息正在异步处理"pending"- 已收到消息,但处理延迟
客户端 → 服务器消息
服务器 → 客户端消息
格式键:
服务器消息封装:使用完整的 RTVI 信封格式,其中
"type": "server-message"以及事件数据嵌套在data.type及后续字段中直接(旧版):使用
data作为一个扁平对象,将事件类型和字段放在顶层
所有客户端消息都会收到一条 server-response 确认,其中包含成功/错误状态和附加数据。
按事件类型划分的常见响应附加字段
当您收到一条 server-response 消息时, extras 字段可能包含特定于事件的数据:
context-update
token_count, max_tokens, remaining_tokens, content
tts-toggle
enabled
stt-toggle
muted
trigger-message
trigger_name, has_speak_tag
user_text_message
text
错误响应示例
无效 JSON
缺少类型字段
未知消息类型
消息类别
上下文与状态管理
用于管理对话上下文和机器人状态的消息:
context-update- 统一的、带模式控制的上下文更新update-dynamic-info- 基础动态上下文更新update-template-keys- 更新提示模板变量update-scene-metadata- 更新场景对象描述
音频控制
用于控制音频输入和输出的消息:
tts-toggle- 启用/禁用文本转语音输出stt-toggle- 静音/取消静音语音转文本输入interrupt-bot- 中断当前机器人发言force-user-stopped-speaking- 标记用户语音结束
交互与事件
用于触发事件和发送用户输入的消息:
trigger-message- 触发叙事事件或上下文相关动作user_text_message- 以用户输入发送文本
会话管理
用于管理会话生命周期的消息:
reset-idle-timer- 重置空闲超时
动画与视觉反馈
包含动画和视觉数据的消息:
bot-emotion- 用于头像表情的情绪数据visemes- 口型同步 blendshape 数据neurosync-blendshapes- 面部动画 blendshape(单帧)chunked-neurosync-blendshapes- 批量面部动画 blendshapeaction-response- 要执行的动作和动画
转录与文本
包含文本和转录数据的消息:
final-user-transcription- 用户语音的最终转录
系统事件
关于系统状态和事件的消息:
server-response- 客户端消息确认interaction-created- 已创建会话交互 IDbot-turn-completed- 机器人轮次完成usage-limit-reached- 已超出使用配额user-idle-warning- 用户空闲超时警告llm-no-response- LLM 选择不响应
语音活动检测
来自基于 VAD 的 STT 门控系统的消息:
vad-stt-started- STT 服务开始转录vad-stt-stopped- STT 服务停止转录vad-stt-debug- VAD 调试事件(仅调试模式)
相关文档
Connect API - 建立实时会话
客户端到服务器消息 - 详细的客户端消息参考
服务器到客户端消息 - 详细的服务器消息参考
通过数据通道传输的音频数据 - 自定义音频处理
指标 - 性能指标和监控
最后更新于
这有帮助吗?