TRTC AI 对话状态回调功能

最近更新时间:2024-11-08 18:05:32

我的收藏
TRTC AI 对话提供了丰富的状态回调功能。这些状态回调通过 TRTC 的自定义消息发送,使得在客户端上可以方便地实现丰富的状态切换,例如"聆听中"、"思考中"、“说话中”等状态。

功能特点

1. 实时性:状态变化可以实时传递给所有参与者。
2. 灵活性:使用自定义消息格式,便于集成和扩展。
3. 多状态支持:包括聆听、思考、说话和被打断等多种状态。

消息格式

状态回调消息使用 JSON 格式,具体字段如下:
字段
类型
描述
type
Number
消息类型,10001 表示机器人状态
sender
String
发送者的 userid,这里是机器人的 id
receiver
Array
接收者 userid 列表,该消息实际在房间内广播
payload
Object
消息负载,包含状态详细信息
payload 对象包含以下字段:
字段
类型
描述
roundid
String
唯一标识一轮对话的 ID
timestamp
Number
时间戳,表示状态变化的具体时间
state
Number
机器人当前状态代码
状态代码说明:
状态代码
描述
1
聆听中
2
思考中
3
说话中
4
被打断

示例消息

{ "type": 10001, "sender": "ai_assistant_001", "receiver": [], "payload": { "roundid": "conversation_789012", "timestamp": 1629384755, "state": 2 } }

应用场景

1. UI 反馈:根据不同状态显示相应的界面元素,如"正在聆听"的动画。
2. 交互控制:在 AI 思考或说话时,可以禁用某些用户输入以避免中断。
3. 调试与分析:利用状态信息进行会话分析,优化用户体验。