用途:处理 Retell AI 的 webhook 事件,包括通话生命周期、通话转写(transcript)与通话过程中的函数执行,属于语音智能体与电话呼叫自动化场景下的回调集成技能。
主要能力:
- 在智能体配置中设置 webhook 回调地址,接收 Retell 推送的事件。
- 处理 call_started、call_ended、call_analyzed 等事件,可读取 call_id、from_number、duration_ms、call_status、transcript、call_analysis.call_summary 等字段。
- 在通话进行中接收函数调用请求并返回结果,让智能体据此继续对话。
使用方式(资料中的示例): 先配置回调地址:await retell.agent.update(agentId, { webhook_url: 'https://your-app.com/webhooks/retell' }); 再用 Express 定义端点 app.post('/webhooks/retell', express.json(), ...),按 event 分支处理并在结束时返回 res.status(200).json({ received: true }); 函数调用端点示例为 app.post('/functions/book-appointment', express.json(), ...),读取 req.body.args 并返回 { result: ... } 供智能体播报。
适用场景:语音智能体、电话外呼、呼叫自动化、通话记录与转写入库、通话后分析、通话中的预约等业务函数触发。
限制与注意事项:需要 HTTPS webhook 端点,且智能体须配置 webhook URL;函数调用须在 5 秒内响应,否则超时;通话时长不足 5 秒可能没有转写;处理重复投递时应校验签名、生成稳定事件标识并在执行副作用前记录事件,重复标识只确认不再重复发货或重复存转写,仅向可观测系统发送脱敏元数据,并对持续签名失败或投递延迟告警而非记录原始通话音载荷。资料未提供具体价格、速率限制等其他细节。