用途:基于 Telnyx Go SDK 对通话音频做实时处理,包括媒体分叉(fork)、WebSocket/Dialogflow 流式传输和实时转写,可用于实时音频分析、欺诈检测或生成 AI 语音响应。
安装与初始化:go get github.com/team-telnyx/telnyx-go;用 telnyx.NewClient(option.WithAPIKey(os.Getenv("TELNYX_API_KEY"))) 创建客户端。
主要能力(均以 call_control_id 定位通话): 分叉:POST /calls/{call_control_id}/actions/fork_start(需指定 target 或 rx/tx),fork_stop 停止。 流式传输:streaming_start 将音频以 base64 编码 RTP 负载包在 JSON 中发送到 WebSocket 或 Dialogflow,可配置编码、采样率、声道与双向模式;streaming_stop 停止。 转写:transcription_start 支持 Google、Telnyx、Deepgram、Azure、xAI、AssemblyAI、Speechmatics、Soniox、Parakeet 等引擎,transcription_stop 停止,挂机自动停止。
Webhook:使用 Ed25519 签名,请求带 telnyx-signature-ed25519 与 telnyx-timestamp 头,生产环境应通过 client.Webhooks.Unwrap(body, r.Header) 校验;事件包括 call.fork.started/stopped、streaming.started/stopped/failed、call.transcription 等。
错误处理:调用可能返回网络错误或 401/403/404/422/429 等状态码,429 建议退避重试。
限制:具体计费、价格、平台可用性与配额资料暂未提供;示例中的参数为可选字段,实际取值需按业务与官方文档确认。