客户端和智能体之间的消息格式
更新时间:2025-12-02
消息格式定义
| 数据来源 | 指令名称 | 前缀标识 | 示例 | 备注 |
|---|---|---|---|---|
| 服务端ASR | ASR结果 【question】 | [Q]: | [Q]:你是谁? | |
| ASR中间结果 | [Q]:[M]: | |||
| ASR接续前面的完整问题 | [Q]:[C]: | |||
| ASR中间识别结果 ,接续前面问题 | [Q]:[M]:[C]: | |||
| ASR的情绪识别结果 | [Q]: | [Q]:北京欢迎你。|||[name]:小明&[emotion]:高兴&[score]:45 | 扩展ASR文本, 【name】声纹识别用户昵称, 【emotion】情感, 【score】声纹匹配相似度 |
|
| 服务端LLM | LLM结果【answer】 | [A]: | [A]:我是文小言 | 最终结果 |
| LLM中间结果 | [A]:[M]: | 中间结果 | ||
| LLM引导语(提示) | [A]:[H]: | 引导语 | ||
| 事件消息 | TTS开始播放【event】 | [E]: | [E]:[TTS_BEGIN_SPEAKING] | |
| TTS结束播放 | [E]: | [E]:[TTS_END_SPEAKING] | ||
| 声音到来 | [E]: | [E]:[VOICE_COMING] | ||
| 声音结束 | [E]: | [E]:[VOICE_DISAPPER] | ||
| 请求上传图片 | [E]: | [E]:[UPLOAD_IMAGE] | 请求上传图片 | |
| 播放音频文件 | [E]: | [E]:[PLAY_AUDIO] | 服务端下发音频文件 url,客户端播放该 url。格式如:[E]:[PLAY_AUDIO]:http://123.com/a.mp3 | |
| 请求上传图片 | [E]: | [E]:[UPLOAD_IMAGE] | 请求上传图片 | |
| 返回智能体应用的会话ID (千帆Agent,百炼,扣子,元宝,Dify等) |
[E]: | [E]:[CONID]:c9c5ab24-269f-4c7d | 新建会话返回conversation_id | |
| 设备授权事件 | [E]:[LIC]:[MUST]: | [E]:[LIC]:[MUST]:设备必须鉴权 | 服务器发送给客户端 | |
| 设备激活消息 | [E]:[LIC]:[ACTIVE] |
[E]:[LIC]:[ACTIVE]:{"devId":"DDD","uId":"YYY","licKey":"xxx"} | 客户端发送给服务器 | |
| 设备激活结果 | [E]:[LIC]:[RES]: | [E]:[LIC]:[RES]:[PASS]: | 授权成功, 服务器发送给客户端 | |
| 设备激活结果 | [E]:[LIC]:[RES]: | [E]:[LIC]:[RES]:[FAILED]: | 授权失败, 服务器发送给客户端 | |
| 自定义标签 | [E]:[TAG_MSG] | [E]:[TAG_MSG]:"((CUSTOM:用户自定义内容))" | 用户需要自己解析自定义内容,如接收到[E]:[TAG_MSG]:"((CUSTOM:{"name_ch":"猫","name_en":"cat"}))" 时,sdk会将((CUSTOM:{"name_ch":"猫","name_en":"cat"}))内容吐给上层应用,用户自行解析; 参照标签用法实践https://cloud.baidu.com/doc/RTC/s/5mgry607k |
|
| Function Call | [F]: | [F]:{"session_id":"1754555833139", "content": "{"function_name":"adjust_volume", "parameter_list":[{"mode":"up"}]}" } |
服务器发送给客户端 函数调用的名字和参数配置 |
|
| 客户端 | Function Call 执行结果 |
[F]: | [F]:{"session_id":"1754555833139","result":"ok", "message":"yyy"} |
客户端发送给服务器 result可取值ok或error |
| 客户端 | 发送打断指令 【break】 | [B]: | 立刻打断播报的内容 | |
| 客户端 | 打断并延迟 | [B]:[BEGIN]: | [B]:[BEGIN]:3000 | 打断播报的内容, 并在3秒内不接受消息 |
| 客户端 | 结束打断 | [B]:[END]: | [B]:[END] | 提前结束打断,不等超时 |
| 客户端 | 发送文本请求【text】 | [T]: | [T]:你是谁? | 发送文本请求 |
| 客户端 | 发送给智能体的TTS 直接播报 | [TTS]: | [TTS]:欢迎光临。 | 不经过大模型, 直接播报出来 |
| 客户端 | 关闭智能体的自动打断功能 | [SET]:[AUTO_INT]:[FALSE] | 关闭自动打断功能 | |
| 客户端 | 开启智能体的自动打断功能 | [SET]:[AUTO_INT]:[TRUE] | 开启自动打断功能, 默认是开启的 | |
| 客户端 | 设置客户端信息 | [SET]:[DEVICE_INFO]: | [SET]:[DEVICE_INFO]:{"os":"rtos","soc":"arm","model":"A","user_id":"1234567", "asr_text_ext": true} | 设置设备信息,os是操作系统,soc是芯片名称,model是产品型号 user_id表示用户ID编号 asr_text_ext=true表示使用ASR结果扩展携带“情绪”,“声纹”等信息,参考[Q]:消息 |
| 云音乐 | 事件 | [E]:[REMOTE_PLAYER_BEGIN] | 音乐播放开始 | |
| 云音乐 | 事件 | [E]:[REMOTE_PLAYER_END] | 音乐播放结束 | |
| 客户端 | 停止播放云音乐 | [E]:[CMD]:[REMOTE_PLAYER]:[STOP] | ||
| 客户端 | 暂停播放云音乐 | [E]:[CMD]:[REMOTE_PLAYER]:[PAUSE] | ||
| 客户端 | 恢复播放云音乐 | [E]:[CMD]:[REMOTE_PLAYER]:[RESUME] | ||
| 客户端 | 进入实时对话模式 | [E]:[CMD]:[ASR_ENABLE_REALTIME] | 进入实时对话模式,默认是实时模式 | |
| 客户端 | 退出实时对话模式 | [E]:[CMD]:[ASR_DISABLE_REALTIME] | 用于进入按键对话模式 | |
| 客户端 | 开始按键对话收音 | [E]:[CMD]:[ASR_START_LONGTEXT_REC] | 开始长文本收音 | |
| 客户端 | 结束按键对话收音 | [E]:[CMD]:[ASR_STOP_LONGTEXT_REC] | 结束长文本收音 |
