> This is a page from the ElevenLabs documentation. For a complete page index, fetch https://elevenlabs.io/docs/llms.txt. For the full documentation in a single file, fetch https://elevenlabs.io/docs/llms-full.txt.

# Vonage 集成

## 概览

通过 [WebSocket 连接器应用](https://github.com/nexmo-se/elevenlabs-agent-ws-connector)，将 ElevenLabs Agents 连接到 Vonage Voice API 或 Video API 通话。这样可实现实时双向音频流，适用于 PSTN 通话、SIP 中继和 WebRTC 客户端等场景。

## 工作原理

Node.js 连接器在 Vonage 与 ElevenLabs 之间搭建桥梁：

1. Vonage 为活跃通话发起到连接器的 WebSocket 连接。
2. 连接器建立到 ElevenLabs Agents 端点的 WebSocket 连接。
3. 音频会被转发：Vonage（L16）-> 连接器 -> ElevenLabs（base64），反之亦然。
4. 连接器管理对话事件（`user_transcript`、`agent_response`、`interruption`）。

## 设置

### 1. 获取 ElevenLabs 凭据

* **API Key**：API 密钥位于 [Developers 页面](https://elevenlabs.io/app/developers)的 API Keys 标签页，可通过侧边栏链接进入。
* **Agent ID**：在 [ElevenAgents 控制台](https://elevenlabs.io/app/agents/agents/)中找到智能体。选择智能体后，点击设置按钮并选择 "Copy Agent ID"。

### 2. 配置连接器

克隆仓库并设置环境文件。

```bash
git clone https://github.com/nexmo-se/elevenlabs-agent-ws-connector.git
cd elevenlabs-agent-ws-connector
cp .env.example .env
```

将凭据添加到 `.env`：

**`.env`**

```bash title=".env"
ELEVENLABS_API_KEY = YOUR_API_KEY;
ELEVENLABS_AGENT_ID = YOUR_AGENT_ID;
```

安装依赖：`npm install`。

### 3. 公开连接器（本地开发）

使用 ngrok 或类似服务，为连接器创建一个公开 URL（默认端口为 6000）。

```bash
ngrok http 6000
```

记下公开的 `Forwarding` URL（例如 `xxxxxxxx.ngrok-free.app`）。配置 Vonage 时，**不要包含 `https://`**。

### 4. 运行连接器

启动应用：

```bash
node elevenlabs-agent-ws-connector.cjs
```

### 5. 配置 Vonage 语音应用

Vonage 应用需要连接到连接器的 WebSocket 端点（`wss://YOUR_CONNECTOR_HOSTNAME/socket`）。这就是第 3 步中的 ngrok URL。

* **使用示例应用**：配置 [Vonage 示例应用](https://github.com/nexmo-se/voice-to-ai-engines)，将 `PROCESSOR_SERVER` 设为连接器的主机名。
* **更新现有应用**：修改 [Nexmo Call Control Object](https://developer.vonage.com/en/voice/voice-api/ncco-reference)，添加一个 `connect` 操作，以 `content-type: audio/l16;rate=16000` 指向连接器的 WebSocket URI（`wss://...`）。传递 `peer_uuid` 和 `webhook_url` 等必要查询参数。

### 6. 测试

通过 Vonage 应用拨打呼入或呼出电话，与 ElevenLabs 智能体交互。

## 云端部署

用于生产环境时，请将连接器部署到具有公开主机名的稳定托管服务提供商（例如 Vonage Cloud Runtime）。