用途:该技能基于 Telnyx Call Control API,用 curl 在通话中采集来电者的 DTMF 按键或语音信息,用于构建交互式语音菜单(IVR)与 AI 语音助手。
主要能力:
- Gather:采集 DTMF 信号,可指定有效数字、最小/最大位数、终止符与超时;需先执行 Answer 命令。
- Gather stop:停止当前采集,触发 call.gather.ended 事件。
- Gather using audio:播放音频文件直至采集到所需 DTMF,可配置无效音频与最大尝试次数。
- Gather using speak:将文本转为语音播放并采集 DTMF,必填 voice 与 payload,支持 SSML、多语言与 basic/premium 服务级别。
- Gather using AI:按 JSON Schema 参数描述,由语音助手采集信息,必填 parameters,支持部分结果与消息历史。
- AI Assistant:可启动、停止 AI 助手,并向其对话添加消息。
使用方式:curl 已预装于 macOS、Linux 与 Windows 10+。设置环境变量 export TELNYX_API_KEY="YOUR_API_KEY_HERE",请求头使用 Authorization: Bearer $TELNYX_API_KEY 与 Content-Type: application/json,向 https://api.telnyx.com/v2/calls/{call_control_id}/actions/... 发起 POST 请求。
错误处理:需处理 401(密钥无效)、403(权限不足)、404(资源不存在)、422(校验错误)、429(限流,建议指数退避重试)。
Webhook:Telnyx 使用 Ed25519 签名,请求含 telnyx-signature-ed25519 与 telnyx-timestamp 头,生产环境应验证签名并拒绝超过 5 分钟的时间戳;端点须在 2 秒内返回 2xx,否则最多重试 3 次。相关事件包括 CallAIGatherEnded、CallAIGatherMessageHistoryUpdated、CallAIGatherPartialResults、callGatherEnded。
适用场景:电话 IVR 菜单、按键收集、AI 语音信息采集与语音助手交互。
限制:需有效 Telnyx API 密钥与已配置的通话;Gather 前必须先 Answer;具体计费、配额与平台支持范围资料未提供。