Skip to main content
外呼功能允许您将目标号码和智能体配置交给 ThunderPhone,由 AI 代表您拨打电话。典型用例包括:
  • 预约确认
  • 调研回访
  • 未接来电后的“二次尝试”跟进
  • 调度式通知
需要呼叫整个联系人列表?控制台的 营销活动 功能 (/dashboard/campaigns)可接收联系人 CSV,并为您处理 时区感知的呼叫时段、并发和重试策略。本指南介绍单次程序化呼叫。

前提条件

1

准备一个 VoIP 号码

外呼要求您通过 VoIP 连接拥有 from_number。 演示号码仅支持呼入。请参阅 自带号码
2

创建智能体

适用于外呼的提示词通常以智能体介绍自身及呼叫目的开始——“您好,这里是 Acme,我们致电是为了确认您明天下午 3 点的预约……”将 outbound_speak_order 设置为 agent_first(默认值)。
3

保持正余额

当余额 ≤ $0.00 时,外呼将返回 402 Payment Required。通过 POST /v1/billing/top-up 充值,或启用自动充值

使用已保存的智能体发起呼叫

最简单的方法——通过 ID 引用智能体:
响应:
status: "initiated" 仅表示请求已被接受——该通话 尚未接通。轮询 GET /v1/calls/{call_id} 获取实时状态(in_progresscompleted / failed)。

使用内联配置发起呼叫

如果您需要一次性提示词,不值得将其保存为智能体, 请改为传递 config。其结构与 call.incoming webhook 的响应架构一致:

跟进通话

同时订阅 telephony.complete webhook—— 这是获知通话结束的最快方式。如果您无法接收传入的 webhook,请每隔几秒轮询 GET /v1/calls/{call_id};通话结束后, 记录将包含 end_reasonduration_seconds 和录音 URL。

值得处理的失败情况

控制保持时间

如果由于被叫方响应缓慢(IVR 菜单、队列)导致外呼通话时间过长,可以使用 max_hold_seconds 进行限制:
如果在最近 N 秒内未收到真人音频,智能体将挂断。默认值为 900(15 分钟)。

后续步骤

外呼通话参考

所有请求字段和错误代码。

接收 call.complete

将已完成的外呼通话流式传输到您的系统。

计费

自动充值,确保外呼不会因余额不足而失败。

测试外呼智能体

在生产环境前对您的外呼智能体进行试运行。