Vapi 사용자가 ClawOps 070 추가하기 — SIP 직접연결로 한국 시장 진출 5분
Vapi voice agent 에 한국 070 번호를 추가하는 가이드. 풀 마이그레이션 또는 SIP 직접연결 하이브리드. 코드 diff + 비용 비교.
Vapi 사용자가 ClawOps 070 추가하기 — SIP 직접연결로 한국 시장 진출 5분
Vapi 는 글로벌 voice agent 만들 때 빠르고 좋은데, 한국 070 번호 발급이 안 된다. 한국 시장이 들어오면:
- 하이브리드 — Vapi assistant 그대로, 한국 통화만 한국AI통신(ClawOps) 070 으로 라우팅 (SIP 직접연결 Add-on ₩99,000/월)
- 풀 마이그레이션 — 한국 single market 이면 ClawOps Pipeline 모드로 전환
옵션 A. SIP 직접연결 하이브리드 (권장)
Vapi 의 voice agent runtime, prompt, tool, analytics 다 유지. telephony 만 한국 070 으로.
SIP 직접연결은 방향이 둘이다. 발신(Vapi 가 070 으로 전화를 건다)과 수신(070 으로 걸려 온 전화를 Vapi 가 받는다)은 설정하는 곳이 다르니, 필요한 쪽만 설정하면 된다.
1. ClawOps SIP 직접연결 활성화
ClawOps 콘솔 → 부가서비스 → SIP 트렁크 연결 → ₩99,000/월.
- Individual·Business 요금제에서 켤 수 있다. Trial(체험판)에서는 켤 수 없다.
- 사용할 070 번호를 콘솔 전화번호 메뉴에서 발급받아 둔다.
2. 발신 — Vapi → ClawOps → 한국 휴대폰·유선
Vapi 가 ClawOps 를 SIP 트렁크로 삼아 070 번호로 전화를 건다.
콘솔 전화번호 › SIP 단말 에서 SIP 자격증명(username/password)을 발급하고, 같은 화면에 표시되는 접속 정보를 Vapi 의 SIP trunk 설정에 넣는다.
SIP 서버 : <계정 ID 소문자>.sip.claw-ops.com ← 콘솔에 표시된 값 그대로
포트·전송: 5061 / TLS ← UDP·평문 TCP 는 열려 있지 않다
인증 : Digest (username / password)
코덱 : OPUS, PCMU, PCMA
발신번호 : 07052358010 ← 계정이 보유한 070
⚠️ 발신번호(From)는 07052358010 처럼 0 으로 시작하는 국내 형식 그대로 보내야 한다. +827052358010 처럼 국가번호 형식으로 보내면 보유 번호로 인식되지 않아 발신이 거절된다. Vapi 에 번호를 등록할 때 이 형식으로 넣는다.
- 착신 번호는
01012345678,+821012345678둘 다 된다. 국제 번호 발신은 지원하지 않는다. - 음성(RTP)의 출발지 IP 는 제한하지 않는다. Vapi 처럼 고정 IP 가 없는 플랫폼도 그대로 연결된다.
- SIP 로 건 통화도 요금제의 발신 시간에서 차감된다.
3. 수신 — 한국 사용자 → 070 → Vapi
070 으로 걸려 온 전화를 Vapi 의 SIP 주소로 그대로 넘긴다.
- 콘솔 전화번호 › SIP 라우팅 에 Vapi 가 안내하는 SIP 주소를 등록한다.
- 070 번호의 인바운드 라우팅 을 SIP 로 바꾸고 1 에서 등록한 주소를 고른다.
- Vapi 쪽에서 그 번호에 assistant 를 연결한다.
기존 assistant (system_prompt/tools 등) 는 그대로 쓴다. 자세한 규격은 SIP 트렁크 문서를 본다.
작동 흐름
발신: Vapi runtime → SIP/TLS → ClawOps → 한국 통신사 → [한국 사용자]
수신: [한국 사용자] → 070 (ClawOps) → SIP → Vapi runtime
옵션 B. 풀 마이그레이션 — Vapi → ClawOps Pipeline
한국 single market 이면 vendor 단일화가 비용·운영 면에서 유리.
Vapi assistant (기존)
const vapi = new Vapi(apiKey);
const assistant = await vapi.assistants.create({
name: "Receptionist",
model: { provider: "openai", model: "gpt-4o-realtime" },
voice: { provider: "elevenlabs", voiceId: "rachel" },
firstMessage: "안녕하세요, ABC 회사입니다.",
systemPrompt: "...",
});
ClawOps 동등 코드
from clawops import ClawOps
from clawops.agent import ClawOpsAgent, OpenAIRealtime
client = ClawOps()
number = client.numbers.create() # 한국 070
ClawOpsAgent(
from_=number.number,
session=OpenAIRealtime(
system_prompt="안녕하세요, ABC 회사입니다. ...",
voice="alloy",
language="ko-KR",
),
).serve()
또는 ElevenLabs voice 그대로 쓰려면 Pipeline 모드:
from clawops.agent.pipeline import PipelineSession, DeepgramSTT, OpenAILLM, ElevenLabsTTS
ClawOpsAgent(
from_=number.number,
session=PipelineSession(
system_prompt="안녕하세요, ABC 회사입니다. ...",
stt=DeepgramSTT(language="ko"),
llm=OpenAILLM(model="gpt-4o-mini"),
tts=ElevenLabsTTS(voice_id="EXAVITQu4vr4xnSDxMaL"), # Rachel
),
).serve()
Vapi 의 tool 정의는 ClawOps 의 @agent.tool 데코레이터로 그대로 매핑 (function calling 표준).
Vapi vs ClawOps 비교
| 항목 | Vapi | ClawOps |
|---|---|---|
| 한국 070 발급 | ❌ | ✅ |
| 비주얼 빌더 | ✅ | ❌ (코드 30줄) |
| LLM 선택권 | OpenAI/Anthropic/Gemini 외 다수 | 동일 + MCP first-class |
| MCP 지원 | ❌ | ✅ Stdio + HTTP |
| 한국어 STT/TTS | 부분 | ✅ 최적화 |
| Call Transfer | ✅ | ✅ Warm/Blind, context 전달 |
| Latency (한국 사용자) | ~1000ms+ (해외 hop) | ~700ms (GCP 서울) |
| 약정 | 카드 등록 필요 | 무약정, 카드 X |
가격 비교 (한국 inbound 1분)
| 항목 | Vapi | ClawOps |
|---|---|---|
| Vapi 사용료 | $0.05/min + STT/TTS/LLM 별도 | n/a |
| 한국 070 SIP 직접연결 (Add-on) | ClawOps ₩99,000/월 | 포함 |
| ClawOps 한국 발신/수신 | n/a | Individual ₩19,000/월 (수신 1,000분 포함) |
| 합계 (하이브리드) | Vapi + ClawOps Add-on | — |
| 합계 (ClawOps single) | n/a | ₩19,000~99,000/월 |
ClawOps single 이 비용 우위. Vapi+ClawOps hybrid 는 분석/빌더 유지가 가치 있을 때.
마이그레이션 체크리스트
하이브리드
- ClawOps Individual 이상 요금제 결제 (Trial 에서는 SIP 직접연결을 켤 수 없다)
- 070 1개 + SIP 트렁크 연결 부가서비스 활성화
- 발신: SIP 단말 자격증명 발급 → Vapi 에 SIP trunk 등록 (TLS 5061, 발신번호는
070…국내 형식) - 수신: SIP 라우팅에 Vapi SIP 주소 등록 → 070 인바운드 라우팅을 SIP 로
- 1통 테스트 (자기 번호로) 후 운영
풀 마이그레이션
- ClawOps SDK 설치 (
pip install clawops[agent]) - Vapi assistant 의 system_prompt/tools 를 ClawOpsAgent 로 옮김
- STT/LLM/TTS 조합 결정 (OpenAI Realtime vs Pipeline)
- 1주 평행 운영 후 Vapi 폐기