用途:基于 Telnyx JavaScript SDK(npm install telnyx@6.74.2)以代码方式控制语音通话,适用于呼叫中心、IVR、通知外呼等需要实时操控通话状态的应用。
主要能力:client.calls.dial() 发起外呼;client.calls.actions.answer() 应答来电;transfer() 转接、bridge() 桥接、hangup() 挂断、reject() 拒接、refer() 与 sendSipInfo() 等;retrieveStatus() 查询通话状态;connections.listActiveCalls() 列出连接下的活跃通话;callControlApplications 系列方法管理 Call Control 应用。所有命令返回 callControlId、callLegId、callSessionId 等标识。
使用方式:先用 API Key 初始化客户端;外呼从 dial() 开始,来电需先通过 webhook 事件触发 answer() 再执行后续命令。所有后续控制命令都需在 webhook 处理器中依据事件里的 call_control_id 发出。号码须为 E.164 格式。列表方法返回可自动翻页的迭代器,可用 for await 遍历。webhook 使用 Ed25519 签名,需校验 telnyx-signature-ed25519 与 telnyx-timestamp 头部,并使用原始请求体(如 express.raw)。
限制与注意:Call Control 为事件驱动,需公网可达的 webhook 端点才能驱动实时通话;无端点则通话可接通但无法控制。入站与出站流程不同。需处理网络错误、401、403、404、422、429 等错误,429 可退避重试。未在资料中出现的参数、枚举、响应或 webhook 字段不应臆造,应先查阅参考资料 references/api-details.md。价格、配额等未提供。