통화 처리 방식
SIP 트렁크
한국AI통신 070 인바운드를 외부 SIP URI 로 직접 전달. OpenAI Realtime · ElevenLabs · 자체 SIP 게이트웨이를 한국 번호에 연결합니다.
개요
한국AI통신 SIP 트렁킹은 070 번호 인바운드를 외부 SIP URI 로 직접 전달 할 수 있습니다. AI 음성 SaaS 가 자체 SIP 게이트웨이를 제공하면 한국AI통신이 받은 통화를 그 SIP URI 로 연결합니다. 통화가 이어지는 동안 음성(RTP)은 한국AI통신을 거쳐 오가므로, 받는 쪽 방화벽에는 한국AI통신 시그널링·미디어 IP 를 허용해야 합니다(네트워크 (IP 허용목록)).
부가서비스 활성화 필요. SIP 트렁크 라우팅은 SIP 트렁크 연결 부가서비스 입니다. 대시보드 → 부가서비스 에서 활성화 후 진행하세요.
아키텍처
지원 패턴
| Provider | 라우팅 URI | 인증 |
|---|---|---|
| OpenAI Realtime | sip:proj_xxx@sip.api.openai.com:5061;transport=tls | project_id + webhook |
| ElevenLabs Agents | sip:+8270xxxxxxxx@sip.rtc.elevenlabs.io:5061;transport=tls | 번호 import + agent 할당 (digest 선택) |
| Retell AI | sip:sip.retellai.com:5061;transport=tls | 번호 import(국내 형식) + 걸기는 SIP Digest |
공통 설정 흐름
- 대시보드 → 번호 에서 사용할 070 번호 선택
- 부가서비스 활성화 (대시보드 → 부가서비스 → SIP 트렁크 연결)
- SIP 엔드포인트 등록 — 외부 SaaS 도착지 URI 입력
- 번호의 인바운드 라우팅을 SIP 로 전환 + 위에서 만든 엔드포인트 선택
- (provider 측) webhook / agent / assistant 등록
방화벽/PBX 화이트리스트 — 사내 PBX·FreeSWITCH·Asterisk 등 자체 SIP 게이트웨이를 IP 허용목록으로 운영하신다면, 저희 SIP 시그널링·RTP 미디어 고정 IP를 함께 허용해 주세요. 전체 목록은 네트워크 (IP 허용목록) 을 참고하세요.
요금
SIP 트렁크 연결 부가서비스는 월 ₩99,000이고 체험 기간에는 무료입니다. 체험·Individual 이상 플랜에서 켤 수 있습니다. 통화 요금은 요금의 플랜 단가를 따릅니다.
PBX에서 전화 걸기
사내 PBX·Asterisk·FreeSWITCH 에서 한국AI통신 070 번호로 전화를 걸 수 있습니다. 콘솔 전화번호 › SIP 단말에서 SIP 자격증명을 만든 뒤 아래 값으로 INVITE 를 보냅니다.
| 항목 | 값 |
|---|---|
| 접속 주소 | <계정 ID 소문자>.sip.claw-ops.com |
| Transport | TLS, 포트 5061 |
| 인증 | SIP Digest(자격증명의 username·password). 등록(REGISTER) 없이 INVITE 만 보내도 됩니다 |
| From | 계정이 보유한 번호를 국내 형식(07012345678)으로 넣습니다 |
| 받는 번호 | 국내 형식(01012345678) 또는 +82 형식 |
| DTMF | RFC 4733(RFC 2833). SIP INFO 는 지원하지 않습니다 |
- 계정이 보유하지 않은 번호나
+82형식을 From 에 넣으면403으로 거절됩니다. - 자격증명에 허용 번호를 지정했다면 그 번호만 From 에 쓸 수 있습니다.
INVITE 에 실리는 값
한국AI통신이 SIP 엔드포인트로 보내는 INVITE 에서 아래 값을 읽을 수 있습니다.
| 값 | 어디에 | 설명 |
|---|---|---|
| 발신자 번호 | From | 통신사가 보내 준 발신자 번호를 형식 그대로 싣습니다(국내 휴대폰은 01012345678 형식). 발신자가 번호 표시를 제한하고 건 통화는 번호 대신 anonymous 를 싣습니다. |
| 걸려온 번호 | X-ClawOps-To | 이 SIP 트렁크로 연결된 한국AI통신 번호입니다(착신전환을 거쳐 들어왔다면 최종으로 도착한 번호). 등록한 URI 와 관계없이 실립니다. |
| 걸려온 번호 | Request-URI · To 의 user 부분 | 등록한 URI 에 user 부분이 없을 때만(sip:pbx.example.com) 070 번호가 들어갑니다. user 부분이 있으면(sip:frontdesk@pbx.example.com) 입력하신 URI 그대로 보냅니다. |
| 통화 ID | X-ClawOps-CallId | 한국AI통신 통화 ID(CA…)입니다. 상태 콜백의 CallId, 통화 기록 조회의 통화 ID 와 같은 값이라 INVITE 와 상태 콜백을 한 통화로 묶을 때 씁니다. |
INVITE sip:07012345678@pbx.example.com SIP/2.0
From: <sip:01012345678@...>;tag=...
To: <sip:07012345678@pbx.example.com>
X-ClawOps-CallId: CA0123456789abcdef0123456789abcdef
X-ClawOps-To: 07012345678한국AI통신이 SIP 엔드포인트로 보내는 통화의 코덱은 PCMU·PCMA 이고, DTMF 는 RFC 4733(RFC 2833)입니다.
헤더 이름은 대소문자를 구분하지 않고 읽어 주세요(SIP 규약). 앞으로 X-ClawOps- 로 시작하는 헤더가 늘어날 수 있으니, 모르는 헤더는 무시하도록 처리해 주세요.
음성 암호화 (SRTP)
한국AI통신과 SIP 서버 사이의 음성(RTP)을 SRTP 로 암호화할 수 있습니다. 키 교환은 SDES(SDP a=crypto, RFC 4568) 입니다.
| 방향 | 설정 |
|---|---|
| 한국AI통신 → SIP 엔드포인트 (착신 전달) | SIP 라우팅의 라우트에서 음성 암호화 (SRTP) 스위치를 켭니다. API 는 라우트의 mediaCrypto 를 sdes 로 저장합니다. |
| SIP 서버 → 한국AI통신 (발신) | SIP 서버가 RTP/SAVP 와 a=crypto 로 제안하면 한국AI통신이 SRTP 로 받습니다. 별도 설정은 없습니다. |
- 음성 암호화는 전송 방식이 TLS 인 라우트에서만 켤 수 있습니다.
- 착신 전달에서 제안하는 crypto suite 는
AES_CM_128_HMAC_SHA1_80,AES_CM_128_HMAC_SHA1_32입니다. - 음성 암호화를 켠 라우트는 받는 SIP 서버가 SRTP 로 응답하지 않으면 연결되지 않고 다음 라우트로 넘어갑니다. 다음 라우트의 음성 암호화가 꺼져 있으면 그 통화는 평문으로 연결됩니다.
- 음성 암호화를 켠 라우트의 SIP 서버는 공용 CA 가 발급한 TLS 인증서를 써야 합니다.
- 받는 SIP 서버가 SRTP 를 필수로 요구하면(예: LiveKit
media_encryptionREQUIRE) 라우트의 음성 암호화를 켜야 합니다. - 외부 SIP 인증을 쓰는 엔드포인트와 한국AI통신 SIP 도메인 라우트는 음성 암호화를 지원하지 않습니다.
- 암호화 구간은 한국AI통신과 SIP 서버 사이입니다. 전화망(PSTN) 구간은 포함하지 않습니다.
가이드
- OpenAI Realtime — 실시간 음성 모델 (gpt-realtime) 연동, webhook 핸들러 코드 포함
- ElevenLabs Agents — ElevenLabs Conversational AI 에이전트 연동, 번호 import 가이드 포함
- Retell AI — Retell 에이전트로 걸기·받기 양방향 연동