본문으로 건너뛰기
Twilio 연동

Twilio SIP 트렁크를 Wixzel Voice에 연결하기

Twilio 번호로 AI 음성 에이전트를 운영하려면 Twilio Elastic SIP Trunking의 트렁크를 Wixzel Voice에 연결합니다. 발신 통화가 수락되도록 트렁크가 반환하는 platform_ip를 IP Access Control List에 추가하고, 수신 통화가 들어오도록 Origination SIP URI 항목에 트렁크의 origination_uri 값을 입력합니다. 회선 요금은 Twilio에서 기존 요금대로 계속 청구하며, Wixzel Voice는 음성 엔진 요금을 선불 잔액에서 초 단위로 청구합니다.

최종 업데이트:

게시일

통신사는 Twilio이고, Wixzel Voice는 그 위에서 에이전트를 실행하는 음성 AI API입니다. 둘은 표준 SIP로 함께 작동합니다. Twilio의 상표권은 해당 소유자에게 있으며, Wixzel Voice는 Twilio의 제휴사가 아니고 Twilio의 보증을 받지 않았습니다.

Twilio
Wixzel Voice
내 에이전트

시작하기 전에 무엇이 필요한가요?

  • Elastic SIP Trunking 서비스가 있는 Twilio 계정, 그리고 트렁크의 호스트와 인증 정보.
  • Twilio에서 보유하고 해당 트렁크에 연결된 전화번호. Wixzel Voice는 번호를 판매하거나 이전하지 않습니다. 콘솔에서 Twilio 계정을 연결하면 전화번호 페이지에서 그 계정으로 번호를 구매할 수도 있습니다. 요금은 Twilio에서 자체 가격으로 청구합니다.
  • Wixzel Voice API 키와 선불 크레딧. 최소 충전 금액은 $5이며 무료 등급은 없습니다.
  • Wixzel Voice는 기본적으로 계정당 동시 통화 5건을 처리하며, 요청하면 늘려 드립니다. 웹과 앱 세션도 같은 한도에 포함됩니다.

Wixzel Voice에서 Twilio 트렁크는 어떻게 만드나요?

Twilio가 트렁크에 표시하는 Termination SIP URI로, 콘솔에 나오는 것과 같은 your-domain.pstn.twilio.com입니다.

cURL
curl https://api.voice.wixzel.com/v1/sip-trunks \
  -H "Authorization: Bearer $WIXZEL_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{
    "name": "Twilio",
    "host": "your-domain.pstn.twilio.com",
    "transport": "udp"
  }'

Twilio에서 IP 대신 인증 정보로 인증한다면 본문에 username과 password를 추가합니다. 비밀번호는 암호화되어 저장되며 API가 다시 반환하지 않습니다. 응답에는 다음 단계에 필요한 두 값인 platform_ip와 origination_uri가 들어 있습니다.

Twilio에서는 무엇을 설정하나요?

설정Twilio의 명칭값
Wixzel Voice에서 오는 통화 허용IP Access Control List187.126.120.231
수신 통화를 Wixzel Voice로 보내기Origination SIP URIsip:187.126.120.231:5090

두 값 모두 현재 기준입니다. 페이지에서 복사하지 말고 GET /v1/sip-trunks에서 platform_ip와 origination_uri를 읽으세요. 그런 다음 POST /v1/phone-numbers로 각 번호를 트렁크에 등록하고 inbound_agent_id를 지정해 에이전트가 응답하게 합니다. 이 요청들은 AI 전화 통화 API 안내에 있고, Twilio 전체 설정 단계에서 콘솔을 필드별로 살펴봅니다.

Twilio에서는 무엇이 잘못되나요?

  • Twilio는 발신 통화를 출발지 IP로 승인하며, 그 밖의 통화는 즉시 거부합니다. IP ACL 항목이 빠져 있으면 통화를 건 지 약 1초 만에 failure_code 21(통화 거부)로 즉시 거부됩니다. 벨이 울리지도 않고 시간 초과도 일어나지 않습니다.
  • 발신은 Origination URI 없이도 작동하지만 수신은 작동하지 않으며, 오류도 표시되지 않습니다. 번호는 연결되어 있고 에이전트도 지정되어 있는데, 전화가 에이전트에게 도달하지 않을 뿐입니다.
  • Twilio는 다이얼한 번호 앞의 +를 기대하므로 send_plus는 기본값인 true로 두세요.

Twilio 통화가 연결되지 않은 이유는 무엇인가요?

Twilio에서 가장 자주 보이는 실패 코드:

failure_code통신사 응답의미조치
21403 / 407통신사가 번호로 연결을 시도하기 전에 통화를 바로 거부했습니다.가능성이 높은 순서대로: 통신사 계정이 정지, 해지되었거나 잔액이 없음, 트렁크 사용자 이름이나 비밀번호가 틀림, platform_ip가 허용 목록에 없음, 발신자 번호가 계정에서 승인되지 않음. 먼저 통신사 대시보드를 확인하세요.

Twilio에서 거부한 통화에는 status: "failed", failure_code(통신사가 보낸 Q.850 원인 코드), 무엇을 해야 하는지 알려 주는 failure_reason이 있으며, 비용이 들지 않습니다. 모든 실패 코드, 모든 거부 사유, 트렁크 디버깅 방법은 통신사 페이지에 있습니다.

Twilio에서 AI 통화 비용은 얼마인가요?

회선 요금은 Twilio에서 기존 요금대로 청구합니다. Wixzel Voice는 음성 엔진만 실제 사용량 기준 초 단위로 청구하며, 연결된 1분당 gemini-live의 $0.0491부터 deepgram-agent의 $0.1851까지입니다. 모든 엔진의 가격.

자주 묻는 질문

Twilio 통화가 1초 만에 거부되는 이유는 무엇인가요?

벨 없이 failure_code 21로 약 1초 만에 실패한 통화는 라우팅되기 전에 Twilio가 거부한 것입니다. Twilio에서는 거의 항상 Termination IP Access Control List 문제입니다. 여기에 187.126.120.231(트렁크가 반환하는 platform_ip)를 추가하세요. 통화가 수락된 뒤 몇 초 후에 실패한다면 라우팅, 번호 형식, 계정 권한 같은 다른 문제입니다.

IP ACL 대신 Twilio Credential List를 써도 되나요?

네. Credential List의 사용자 이름과 비밀번호를 Wixzel Voice 트렁크의 username과 password 필드에 입력하면 IP 인증 대신 사용됩니다. 비밀번호는 암호화되어 저장되며 API가 다시 반환하지 않습니다.

다른 통신사

Telnyx

IP 인증 SIP Connection. 플랫폼 IP를 승인된 주소로 추가하고, 수신 리전을 고르고, 전송 방식을 맞춥니다.

Plivo

Zentrunk. IP ACL에 플랫폼 IP를 넣은 발신 트렁크와, Primary URI가 플랫폼을 가리키는 별도의 수신 트렁크가 필요합니다.

Vonage

Programmable SIP. SIP Dashboard에서 트렁크의 ACL에 플랫폼 IP를 추가하고, 수신 통화를 origination URI로 보냅니다.

Bandwidth

SIP REGISTER를 지원하지 않으므로 고정 IP가 필요합니다. 로케이션에 플랫폼 IP를 추가하고 Termination과 Origination을 따로 설정하거나, 네트워크 브리지 자격 증명을 사용합니다.

Exotel

인도 번호 체계용 Virtual SIP Trunking(vSIP), TCP 사용. 플랫폼 IP를 ACL로 트렁크에 매핑하고, 수신용 Destination URI는 플랫폼의 TCP 포트를 가리키게 합니다.

Vobiz

트렁크별 SIP 도메인을 호스트로 쓰고, 트렁크의 IP ACL에 플랫폼 IP를 넣습니다. "origination URI"는 Twilio와 반대 의미입니다.

Mobily

Saudi Arabia, ordered through Mobily Business sales and delivered over a private link. No one-step connect: your own SBC on the link relays calls, with G.711 A-law and a one-hour call cap.

모든 SIP 제공업체

방법은 어디서나 같습니다. 플랫폼 IP를 허용 목록에 추가하고, 수신 목적지를 origination URI로 설정하고, 번호 형식과 전송 방식을 맞춥니다.

자체 SIP 트렁크 사용

트렁크의 두 부분이 작동하는 방식, 모든 실패 코드, 모든 통신사 가이드를 한 페이지에 모았습니다.

첫 음성 에이전트를 만드세요