大多数文章将此描述为一种选择,但事实并非如此。WebRTC 和 SIP 运行在同一 AI 语音协议栈的不同层级——而且大多数生产部署都同时使用了这两种协议。以下将详细介绍每种协议的实际功能、适用场景以及如何将它们连接起来。
什么是WebRTC?什么是SIP?
实现WebRTC (Web 实时通信)是一个浏览器原生协议套件,用于在互联网连接的设备之间进行实时音频、视频和数据流传输——无需 PSTN 接入、电话号码或插件。
SIP 会话发起协议(Session Initiation Protocol,简称 Session Initiation Protocol,简称 Session IP)是电话网络用于建立和管理语音呼叫的信令协议,也是实现语音呼叫的技术基础。 AI代理商 通过运营商的 SIP 中继连接到真实的电话号码。
WebRTC 的真正含义(以及它不包含的内容)
WebRTC 是一套集成在所有现代浏览器中的 API 和协议,可实现实时点对点音频、视频和数据流传输。它的主要特点是无需插件、无需安装、无需调用方安装任何额外软件——网页加载后即可立即开始捕获和传输音频。
对于 AI 语音应用而言,WebRTC 的价值体现在浏览器端。如果您的 AI 代理通过网页组件、React Native 应用或基于浏览器的软电话与客户对话,WebRTC 就是传输层,它将音频从客户设备实时传输到您的 AI 流程。
WebRTC 本身无法实现的功能: 拨打普通电话号码。WebRTC 无法访问公共交换电话网络 (PSTN)。使用手机拨打您号码的客户并非通过 WebRTC 连接,而是通过电话网络连接。要联系到他们,需要使用 SIP 协议。
SIP 究竟是什么(以及不是什么)
SIP 是一种信令协议,负责在电话网络上建立、管理和拆除呼叫。当有人拨打企业电话号码时,SIP 会将呼叫从其运营商路由到您的电话系统。当您的 AI 代理拨打潜在客户电话时,SIP 会指示网络执行该呼叫。
SIP本身并不传输音频。实际的语音数据通过RTP(实时传输协议)单独传输。SIP负责处理呼叫控制层——包括谁呼叫了谁、何时接听、使用哪种编解码器以及何时挂断——而RTP则负责传输语音。
要使用 SIP 进行呼入或呼出呼叫,您需要从运营商处获得 SIP 中继线。运营商提供您的系统与公共交换电话网络 (PSTN) 之间的连接,以及呼叫者可以拨打的电话号码(DID)。
WebRTC 与 SIP 对比表
| 维度 | 实现WebRTC | SIP |
|---|---|---|
| 可以拨打真实的电话号码 | 不——仅限网络 | 是的——PSTN接入 |
| 在浏览器中工作 | 本机 | 需要 SIP 客户端或网关 |
| 需要运营商/SIP中继线 | 无需运营商 | 需要承运商 |
| 完全呼叫控制(转接、转发) | 有限 | 完全SIP呼叫控制 |
| 媒体延迟(配置良好) | 非常低——点对点 | 低延迟——低于50毫秒的PoP共址 |
| AI语音音频编解码器 | Opus(PSTN 需要转码) | G.711 — 无需转码 |
| 外呼人工智能拨号营销活动 | 不支持 | 弹性SIP通道 |
| 来自手机的来电 | PSTN呼叫者无法接通 | 任何来电者,任何网络 |
| 向人类代理人进行温暖转移 | 复杂且无SIP | SIP 转介/有人陪同转介 |
| 最适合 | 基于网页/应用程序的人工智能语音聊天 | 电话通话——接听和拨打 |
为什么大多数生产环境中的 AI 语音堆栈都同时使用这两种方式
对比表掩盖了这样一个事实:在大多数真实的 AI 语音部署中,WebRTC 和 SIP 同时在不同的层级运行。
以典型的架构为例:呼叫者使用手机拨打企业号码。呼叫到达运营商的 SIP 中继线路。运营商将呼叫作为 SIP INVITE 请求发送到媒体网关。媒体网关将 SIP/RTP 音频转换为 WebSocket 或 WebRTC 流,并将其发送给 AI 平台。AI 平台内部使用 WebRTC 在电话桥接器和 AI 管道之间传输音频(STT → LLM → TTS)。合成的音频以相同的方式返回——通过网关,经由 SIP,最终到达呼叫者的电话。
SIP位于PSTN网络边缘,WebRTC位于平台内部。呼叫者不会直接感受到这两者——他们只会听到AI客服人员的声音。
通话流程: 呼叫者(手机/座机)→ PSTN → IDT Express SIP 中继线 → SIP/RTP → 媒体网关(FreeSWITCH)→ WebRTC/WebSocket → AI 平台(Pipecat/Vapi)→ API → AI 管道(STT → LLM → TTS)
SIP 层使 AI 代理能够访问电话网络。WebRTC 层则实现了平台内部的低延迟实时音频处理。移除 SIP 层,代理将无法通过电话连接。移除 WebRTC 层,实时音频传输管道将失去功能。
主要人工智能语音平台的位置
观察开发者实际使用的平台,可以进一步厘清这个问题。没有一个平台是纯粹的 WebRTC 或纯粹的 SIP。
| 平台 | 内部运输 | PSTN 连接 | 结语 |
|---|---|---|---|
| 派普卡特 | WebRTC 通过 Daily | SIP中继(IDT Express、每日PSTN) | 以上皆是 |
| 瓦皮 | 实现WebRTC | SIP中继(捆绑或 BYOC) | 以上皆是 |
| 复述人工智能 | 实现WebRTC | SIP中继(捆绑式或自带式) | 以上皆是 |
| 平淡的人工智能 | 实现WebRTC | SIP中继(捆绑式或自带式) | 以上皆是 |
| 直播套件 | 实现WebRTC | SIP 中继(LiveKit SIP 模块) | 以上皆是 |
| 自定义 WebRTC 应用 | 实现WebRTC | 无(仅限浏览器) | 仅限 WebRTC |
| 自定义 SIP 协议栈 | SIP/RTP | SIP 中继(直连) | 仅限SIP |
所有主流的AI通话平台——Pipecat、Vapi、Retell、Bland、LiveKit——都使用WebRTC进行内部实时音频传输。 SIP中继 用于公共交换电话网络(PSTN)接入。这两种协议是互补的,而非竞争的。
唯一一种你必须做出选择的情况
真正的岔路口在于:来电者通过什么方式联系到您的 AI 代理?
如果您的唯一用例是网页或应用聊天插件——用户通过浏览器或移动应用发起对话,无需拨打电话号码——那么您可以完全基于 WebRTC 构建,无需 SIP 中继。您的 AI 代理运行在浏览器环境中,无需接入 PSTN 网络。
如果您的任何来电者拨打电话号码联系您的客服人员——无论是呼入客服热线、呼出销售电话、预约提醒,还是任何涉及电话的操作——您都需要使用 SIP。仅靠 WebRTC 无法满足这些来电者的需求。
仅在以下情况下使用 WebRTC:
- 在您的网站上嵌入AI语音组件
- 应用内语音助手(移动应用)
- 基于浏览器的呼叫中心(客服人员通过网络办公)
- 无需提供来电电话号码
- 禁止拨打手机/座机电话
在以下情况下使用 SIP:
- 拨入企业电话号码的来电
- 外呼人工智能拨号营销活动
- 在现有DID上替换IVR
- 向人类代理人进行温暖的转移
- 人工智能代理在160多个国家/地区拥有本地号码
两者兼备(大多数生产环境部署):
- AI代理接听来电,并在内部使用WebRTC将音频传输到AI管道。
- 通过 SIP 协议和 WebRTC 处理网关与 LLM 之间的实时媒体传输,实现 AI 出站拨号。
- 具备暖转功能的呼叫中心人工智能——采用SIP进行呼叫控制,WebRTC进行座席音频传输
- 任何需要 PSTN 的 Pipecat、Vapi、Retell、Bland 或 LiveKit 部署
没人谈论的编解码器问题
WebRTC的默认编解码器是 作品 — 一种可变比特率、宽带编解码器,针对互联网环境进行了优化。PSTN 的标准编解码器是 G.711 — 一种针对低延迟优化的未压缩、固定比特率编解码器。
当通话跨越 WebRTC 和 SIP 边界时,会发生编解码器转换。Opus 音频会被解码并重新编码为 G.711(反之亦然)。这种转码步骤会在每个链路上增加 5-20 毫秒的延迟——这在 AI 语音通话中至关重要,因为您已经花费了 200-500 毫秒用于 STT 和 LLM 推理。
最大限度减少延迟的方法是:配置媒体网关,尽可能在两端协商使用 G.711 编码。在 IDT Express SIP 中继端,G.711 是原生编码——运营商层面无需转码。在 WebRTC 端,可以通过网关的 SDP 处理来协商 G.711 编码。路径中的编解码器转换越少,最低延迟就越低。
实用规则: 如果您的 AI 语音通话在呼叫方手机和您的 STT 模型之间经历了多次编解码器转换,请检查您的媒体路径。每次不必要的转换都会增加延迟,而这些延迟无法在流程的其他部分得到补偿。
为您的 AI 语音堆栈设置 SIP 中继
如果您的架构需要接入公共交换电话网络 (PSTN)(任何呼叫者拨打电话号码时都需要),则需要从运营商处获得 SIP 中继线。运营商提供与电话网络的连接以及您的 AI 代理接听或拨打电话的电话号码 (DID)。
对于 AI 语音部署,运营商的要求很具体:G.711 原生直通(运营商层面无需转码)、弹性并发通道(AI 活动快速扩展)、按秒计费(AI 通话平均 90-180 秒——按分钟计费会浪费 15-30%),以及如果您跨市场部署代理,则需要全球 DID 可用性。
IDT Express 提供专为此用例构建的运营商级 SIP 中继——批发费率、G.711 原生、弹性通道、160 多个国家/地区的 DID 配置,以及与 Vapi、Retell、Bland、Pipecat、LiveKit 和自定义堆栈的 BYOC 兼容性。
简短的版本
WebRTC 在浏览器和 AI 平台之间传输实时音频。SIP 将 AI 平台连接到电话网络。它们并非竞争对手,而是同一语音协议栈的相邻层。
如果你的AI语音代理需要接听或拨打电话,你需要同时满足这两个条件:平台内部的实时音频传输需要WebRTC,而PSTN边缘则需要运营商提供的SIP中继。所有主流的AI通话平台——Pipecat、Vapi、Retell、Bland、LiveKit——都已经采用了这种架构。
唯一的问题在于你选择哪家运营商接入SIP层。成本、延迟和覆盖范围等问题都取决于此。
常见问题
WebRTC 和 SIP 有什么区别?
WebRTC 是一套浏览器原生协议,用于在联网设备之间进行实时音频和视频流传输——无需插件,也无需接入公共交换电话网络 (PSTN)。SIP 是电话网络用于建立和管理语音呼叫的信令协议。WebRTC 是互联网传输层;SIP 是电话网络的呼叫控制层。它们运行在不同的环境中,通常在生产级 AI 语音系统中协同使用:WebRTC 用于平台内部的实时音频传输,SIP 用于 PSTN 边缘的电话连接。
WebRTC 能否用于拨打普通电话号码?
并非直接如此。WebRTC 通过互联网将浏览器和应用程序连接起来,但它本身并不具备 PSTN 接入功能。要使用 WebRTC 拨打或接听普通电话号码,您需要一个 WebRTC 到 SIP 的网关,该网关将互联网协议桥接到电话网络,还需要一条来自运营商的 SIP 中继线路。Twilio、Daily 和类似的平台以托管服务的形式提供这种桥接。在自托管的 AI 语音部署中,FreeSWITCH 或 Asterisk 通常用作 WebRTC 音频流和运营商 SIP 中继线路之间的网关。
AI语音代理使用WebRTC还是SIP?
大多数生产环境中的AI语音代理都同时使用这两种协议。WebRTC通常用于AI平台内部的实时音频传输——即在呼叫者的浏览器或应用程序与AI管道之间进行传输。SIP则用于PSTN边缘,通过运营商的SIP中继将AI代理连接到真实的电话号码。像Pipecat这样的平台使用Daily的WebRTC基础设施进行实时音频传输,并使用SIP中继(通过IDT Express或其他运营商)进行PSTN接入。Vapi、Retell和Bland也都遵循相同的模式:内部使用WebRTC,外部使用SIP进行电话连接。
什么是 WebRTC 到 SIP 网关?
WebRTC 到 SIP 网关是一个服务器端组件,负责在 WebRTC 协议(浏览器和 AI 平台使用)和 SIP 协议(电话网络使用)之间进行转换。它处理编解码器协商、NAT 穿越以及两种环境之间的协议转换。当 AI 代理收到来自 PSTN 的呼叫时,网关会将传入的 SIP/RTP 音频转换为 WebRTC 流,供 AI 平台处理。常见的实现方案包括支持 WebRTC 的 FreeSWITCH、Kamailio 以及 Daily PSTN 等云服务。
对于人工智能语音机器人来说,WebRTC 和 SIP 哪个更好?
两者并无绝对优劣之分——它们在不同的层面上解决不同的问题。WebRTC 更适合基于浏览器或应用程序的语音交互。SIP 对于电话网络连接至关重要——它可以用于拨打和接听真实电话号码、运行外呼 AI 拨号活动以及支持将电话转接给人工客服。对于任何需要接入 PSTN 的 AI 语音部署,正确的做法是两者兼备:在平台内部使用 WebRTC 进行实时音频传输,在 PSTN 边缘通过 IDT Express 等运营商使用 SIP 中继。
Pipecat 使用的是 WebRTC 还是 SIP?
Pipecat 同时支持这两种协议。对于实时音频传输,它与 Daily 的 WebRTC 基础架构原生集成。对于 PSTN 连接,它使用 SIP 中继——既可以通过 Daily 的 PSTN 网桥,也可以通过将媒体网关(例如 FreeSWITCH)连接到外部 SIP 中继提供商(例如 IDT Express)来实现。在需要 PSTN 访问的生产环境中,Pipecat 内部使用 WebRTC,外部使用 SIP。
如何将基于 WebRTC 的 AI 代理连接到手机网络?
您需要两个组件:来自运营商的 SIP 中继(用于 PSTN 连接和电话号码)以及 WebRTC 到 SIP 的桥接器(用于在您的 AI 平台的 WebRTC 流和运营商的 SIP/RTP 流之间进行转换)。该桥接器可以是 FreeSWITCH、Asterisk 或 Daily PSTN 等平台服务。您的 AI 平台通过 WebRTC 连接到该桥接器;该桥接器通过 SIP 连接到 IDT Express。来自 IDT Express 的入站呼叫以 SIP INVITE 请求的形式到达,由桥接器转换为 WebRTC 音频,然后传递到 AI 管道。出站呼叫通过该桥接器发起,并由 IDT Express 通过 PSTN 终止。
准备好将您的AI代理连接到手机网络了吗? 免费体验 IDT Express SIP 中继 →

