播报自定义消息
更新时间不可用
让指定智能体播报自定义消息。
POST
https://api.agora.io/cn/api/conversational-ai-agent/v2/projects/{appid}/agents/{agentId}/speak与智能体对话期间,调用该接口可以让智能体使用 TTS 模块立刻播报自定义消息。智能体收到请求后,播报行为会打断当前说话和思考流程。
鉴权
appidstring必填
你的项目使用的 App ID。
agentIdstring必填
智能体实例 ID,即智能体的唯一标识。调用 POST 创建对话式智能体 成功后在响应包体中获取。
Authorizationstring必填
发送 HTTP 请求时,你可以从以下鉴权方式中任选其一:
- 使用 Token 认证(推荐):参考实现 HTTP 鉴权生成 Token 并填入
AuthorizationHeader。传参示例:Authorization: agora token="007abcxxxxxxx123"。 - 使用 Basic Auth:参考实现 HTTP 鉴权生成 Base64 编码的
Authorization字段。传参示例:Authorization: Basic NDI1OTQ3N2I4MzYy...YwZjA=。
textstring必填
播报的文本内容,最长不超过 512 字节 (bytes)。
prioritystring播报行为的优先级,支持设为以下值:
"INTERRUPT":(默认)高优先级,打断并播报。智能体会终止当前交互,直接播报消息。"APPEND": 中优先级,追加播报。智能体会在当前交互结束后播报消息。"IGNORE": 低优先级,空闲时播报。如果此时智能体正在交互,智能体会直接忽略并丢弃要播报的消息;只有智能体不在交互中才会播报消息。
interruptableboolean是否允许用户说话打断智能体播报:
true:(默认)允许。false:不允许。
响应
- 若返回的状态码为
200则表示请求成功。响应包体为智能体信息,智能体开始播报指定内容。 - 若返回的状态码不为
200则表示请求失败。响应包体中包含错误的类别和描述,你可以参考响应状态码了解可能的原因。
响应 Body
agent_idstring对话式智能体 ID,即智能体唯一标识。
channelstring智能体所在 RTC 频道名。
start_tsinteger智能体创建时间戳。
请求示例
curl --request POST \
--url "https://api.agora.io/cn/api/conversational-ai-agent/v2/projects/:appid/agents/:agentId/speak" \
--header 'Authorization: agora token="007abcxxxxxxx123"' \
-H 'Content-Type: application/json' \
-d '{
"text": "抱歉,对话内容不符合规范。",
"priority": "INTERRUPT",
"interruptable": false
}'响应示例
{
"agent_id": "1NT29XxxxxxxxxELWEHC8OS",
"channel": "test_channel",
"start_ts": 1744877089
}