Vonage 통합

WebSocket 커넥터를 사용해 ElevenAgents를 Vonage 음성 통화와 통합하세요.

개요

WebSocket 커넥터 애플리케이션을 사용하여 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

1. ElevenLabs 자격 증명 가져오기

2

2. 커넥터 구성

리포지토리를 복제하고 환경 파일을 설정하세요.

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

.env에 자격 증명을 추가하세요.

.env
ELEVENLABS_API_KEY = YOUR_API_KEY;
ELEVENLABS_AGENT_ID = YOUR_AGENT_ID;

종속성을 설치하세요: npm install.

3

3. 커넥터 노출(로컬 개발)

ngrok 또는 유사한 서비스를 사용하여 커넥터의 공개 URL(기본 포트 6000)을 만드세요.

ngrok http 6000

공개 Forwarding URL(예: xxxxxxxx.ngrok-free.app)을 기록해 두세요. Vonage를 구성할 때는 **https://를 포함하지 마세요 **.

4

4. 커넥터 실행

애플리케이션을 시작하세요.

node elevenlabs-agent-ws-connector.cjs
5

5. Vonage 음성 애플리케이션 구성

Vonage 앱은 커넥터의 WebSocket 엔드포인트(wss://YOUR_CONNECTOR_HOSTNAME/socket)에 연결해야 합니다. 이는 3단계의 ngrok URL입니다.

  • 샘플 앱 사용: PROCESSOR_SERVER를 커넥터의 호스트 이름으로 설정하여 Vonage 샘플 앱을 구성하세요.
  • 기존 앱 업데이트: content-type: audio/l16;rate=16000과 함께 커넥터의 WebSocket URI(wss://...)를 대상으로 하는 connect 작업을 포함하도록 Nexmo Call Control Object를 수정하세요. peer_uuid, webhook_url 같은 필수 쿼리 매개변수를 전달하세요.
6

6. 테스트

Vonage 애플리케이션을 통해 수신 또는 발신 통화를 걸어 ElevenLabs 에이전트와 상호작용하세요.

클라우드 배포

프로덕션 환경에서는 공개 호스트 이름을 가진 안정적인 호스팅 제공업체(예: Vonage Cloud Runtime)에 커넥터를 배포하세요.