1588·1566 대표번호 ClawOps 무료 연동 — 기존 8자리 번호 그대로 AI 응답
1588·1566 대표번호 ClawOps 무료 연동 — 기존 8자리 번호 그대로 AI 응답
기존 1588·1566·1577·1644 같은 8자리 대표번호를 가지고 있다면 통신사 계약을 끊지 않고 ClawOps 에 무료로 연동할 수 있다. 기존 번호 그대로 AI 가 받게 만들거나, 영업시간 외 fallback 또는 폭주시 overflow 로.
0. 사전 준비
- 기존 1588/1566/1577/1644 대표번호 (KT·LG U+·SKT 등 통신사 발급)
- 대표번호 보유 증빙 서류 (계약서, 청구서, 등)
- ClawOps 계정 (SIP 직접연결 애드온 활성화 필요 — ₩99,000/월)
1. ClawOps 에 대표번호 연동 신청
대표번호 연동은 SDK 호출로 자동 생성되지 않는다. 보유한 8자리 번호는 통신사 명의의 실제 계약이므로, ClawOps Console 에서 신청하거나 hello@claw-ops.com 으로 문의해 다음 절차를 거친다.
- SIP 직접연결 애드온 활성화 — Console 의 요금제·애드온 메뉴에서 SIP 직접연결(₩99,000/월)을 켠다. 이 애드온이 있어야 통신사 트렁크를 ClawOps 로 끌어올 수 있다.
- 연동 신청 + 보유 증빙 제출 — Console 의 대표번호 연동 신청 폼(또는 hello@claw-ops.com 메일)에 대표번호와 통신사, 보유 증빙 서류(계약서·청구서 등)를 제출한다.
- ClawOps 확인 (1-2 영업일) — ClawOps 가 증빙과 통신사 정보를 확인하고, 연결할 SIP 트렁크 credential 을 Console SIP 메뉴에 발급한다.
- 트렁크 연결 — 발급된 SIP credential 로 통신사 측 forward 를 § 3 절차대로 설정하면 연동 완료.
연동 자체는 무료다. 대표번호 발급은 통신사 권한이라 ClawOps 가 새로 발급하지 않고, 보유한 번호를 ClawOps 인프라로 forward 하는 구조다. (별도 비용은 위 SIP 직접연결 애드온 ₩99,000/월 + § 6 의 수신 요금.)
2. 작동 흐름
[고객] → 1588-5678 다이얼
↓
[기존 통신사 (KT/LG U+/SKT)]
↓ SIP forward
[ClawOps SIP gateway, GCP 서울]
↓
[ClawOps AI Agent runtime — OpenAI Realtime / Gemini Live / Pipeline]
↓ 응답
[고객]
기존 통신사 ↔ 고객 구간은 그대로. ClawOps 는 AI 응대 레이어만 끼움.
3. 통신사 forward 설정 (1회)
각 통신사 마다 절차 약간 다름:
KT
- KT Cloud Connect 콘솔 → 대표번호 → 라우팅 → SIP 등록
- SIP URI:
sip:trunk.claw-ops.com - Username/Password: ClawOps Console 의 SIP 직접연결 credential
LG U+
- 콜센터 어드민 → 번호 라우팅 → 외부 SIP trunk
- 비슷한 설정
SKT
- SKB enterprise → API trunk 추가
- ClawOps 가 SKT 인증된 SIP gateway 라 등록 즉시 가능
4. AI Agent 설정 (Python)
from clawops.agent import ClawOpsAgent, OpenAIRealtime
agent = ClawOpsAgent(
from_="15885678", # 연동된 대표번호
session=OpenAIRealtime(
system_prompt=(
"당신은 ABC 회사 고객센터 상담원입니다.\n"
"주문 조회, 배송 확인, 환불 안내를 처리합니다.\n"
"구체적 주문번호 받으면 데이터베이스 조회 후 답변.\n"
"복잡한 클레임은 통화 종료 직전 담당자 연결 약속."
),
language="ko",
voice="alloy",
),
)
# 도구는 @agent.tool 데코레이터로 등록한다
@agent.tool
async def order_lookup(order_no: str) -> str: # 자사 주문 시스템 조회
...
@agent.tool
async def transfer_to_human() -> str: # 상담사 연결
...
agent.serve() # 인바운드 서버 모드
5. 활용 패턴
A. AI 가 1차 받기, 복잡한 건만 상담사 transfer
# @agent.tool 로 등록한 transfer 도구를 AI 가 필요 시 호출
@agent.tool
async def transfer_to_human() -> str:
... # 상담사 큐로 warm transfer
# AI 가 처리 어려운 건 자동으로 이 도구를 호출 → 상담사 큐로 warm transfer
B. 영업시간 외 fallback
라우팅 규칙을 ClawOps 에 등록하는 별도 리소스는 없다. 대신 번호를 만들거나 업데이트할 때 webhook_url 을 지정하고, 그 webhook 핸들러 안에서 시간 조건으로 분기한다. ClawOps 는 인바운드 콜이 들어오면 등록된 webhook 으로 application/x-www-form-urlencoded 파라미터(From/To/CallId 등)를 POST 하고, 핸들러가 반환한 VoiceML(XML)을 따른다.
# 번호에 인바운드 webhook 등록 (1회)
from clawops import ClawOps
client = ClawOps()
client.numbers.update(
"15885678",
webhook_url="https://your-app.com/inbound", # 인바운드 콜 → 이 핸들러로
)
# 인바운드 webhook 핸들러 (FastAPI) — VoiceML 반환
import datetime
from zoneinfo import ZoneInfo
from fastapi import FastAPI, Request, Response
app = FastAPI()
@app.post("/inbound")
async def inbound(request: Request):
form = await request.form()
caller = form["From"]
now = datetime.datetime.now(ZoneInfo("Asia/Seoul"))
if 9 <= now.hour < 18 and now.weekday() < 5:
# 영업시간 — 상담사에게 전환
xml = """<?xml version="1.0" encoding="UTF-8"?>
<Response>
<Dial timeout="20" action="https://your-app.com/dial-status">
<Number>07012340001</Number>
</Dial>
</Response>"""
else:
# 영업외 — AI 가 실시간 응대 (WebSocket 핸들러에서 메모 수집 + callback 예약)
xml = """<?xml version="1.0" encoding="UTF-8"?>
<Response>
<Say language="ko">지금은 영업시간이 아닙니다. 용건을 말씀해주시면 다음 영업일에 콜백 드립니다.</Say>
<Connect>
<Stream url="wss://your-app.com/after-hours"/>
</Connect>
</Response>"""
return Response(content=xml, media_type="application/xml")
C. 폭주시 overflow
overflow 역시 별도 라우팅 리소스가 아니라, 같은 인바운드 webhook 핸들러 안에서 현재 대기열 길이를 보고 분기한다. 상담사 큐 상태는 자사 시스템(또는 § A 의 transfer 결과)으로 추적하고, 임계치를 넘으면 AI 처리로 돌린다.
// 인바운드 webhook 핸들러 (Express) — VoiceML 반환
const express = require("express");
const app = express();
app.use(express.urlencoded({ extended: false })); // form-urlencoded 파싱
app.post("/inbound", (req, res) => {
const caller = req.body.From;
// 자사 큐 상태 조회 (대기 중 통화 수·예상 대기시간 등)
const waitSeconds = getQueueWaitSeconds("기존_상담사_큐");
res.type("application/xml");
if (waitSeconds > 60) {
// 대기 60초 초과 — AI 가 우선 응대
return res.send(`<?xml version="1.0" encoding="UTF-8"?>
<Response>
<Say language="ko">대기시간이 길어져 AI 상담원이 우선 도와드립니다.</Say>
<Connect>
<Stream url="wss://your-app.com/overflow"/>
</Connect>
</Response>`);
}
// 여유 있으면 상담사에게 전환
return res.send(`<?xml version="1.0" encoding="UTF-8"?>
<Response>
<Dial timeout="20" action="https://your-app.com/dial-status">
<Number>07012340001</Number>
</Dial>
</Response>`);
});
핵심: ClawOps 에는 routing_rules 같은 서버측 규칙 엔진이 없다. 모든 분기는 내 webhook 핸들러의 코드가 결정하고, ClawOps 는 핸들러가 반환한 VoiceML(<Dial> 전환 / <Connect><Stream> AI 응대 등)을 실행만 한다.
6. 가격
- ClawOps 대표번호 연동: 무료 (SIP 직접연결 애드온 ₩99,000/월 별도)
- 대표번호로 들어오는 통화: ClawOps 수신 요금에 합산 (Business ₩99,000/월 = 070 10개·동시 10)
- 기존 통신사 월 사용료: 변동 없음
월 만 통 받는 대표번호 → AI 가 80% 처리하면 상담사 인건비 -50%.
7. 컴플라이언스
- 통화 녹음 안내 멘트 (대표번호 첫 발화에 "본 통화는 품질 향상을 위해 녹음됩니다" 포함). ClawOps system_prompt 에 자동 박을 수 있음.
- AI 응대임을 명시 (소비자 알권리 — 광고 아니어도 권장)
8. FAQ
Q. 기존 통신사 계약 안 끊어도 되나? A. 끊지 마세요. 대표번호 발급은 통신사 권한, ClawOps 는 AI 레이어만 추가.
Q. 1588 외 4자리 대표번호 (1644·1577 등)? A. 동일하게 지원.
Q. 평일 낮은 상담사, 밤은 AI 패턴 가능? A. 위 § 5.B 패턴 그대로.
다음 단계
관련 글 더 보기
ngrok 없이 로컬에서 음성 에이전트 띄우기 — 5분, ClawOps managed inbound
ngrok·터널링·자체 webhook 서버 없이 로컬 머신에서 한국어 voice agent 띄우는 가이드. ClawOps managed inbound 패턴 + Python 30줄.
가이드WebRTC 에서 한국 070 통화하기 — 브라우저 한 줄, Asterisk 없이
브라우저 WebRTC 에서 직접 한국 070 번호로 통화 거는 가이드. Asterisk·FreeSWITCH 자체 운영 없이 ClawOps WebRTC SDK 1줄.
가이드관리번호로 070 대량 발급·관리하기 — 파트너 가입중개(External Assignment)
프랜차이즈·플랫폼·법인이 최종이용자에게 070을 일괄 발급·관리하는 가이드. ClawOps 관리번호 Add-on + 발급 링크·본인인증 + 인입 라우팅 코드.
가이드070 번호 5분 발급 가이드 — API 한 줄, 무약정, 카드 등록 없이
한국 070 번호를 API 한 줄로 5분에 발급받는 가이드. 통신사 영업·KISA 등록·벌크 약정 없이 ClawOps Trial 무료로 시작.
가이드070 인바운드 webhook 라우팅 — 시간·번호·DTMF 기준 동적 분기
ClawOps 070 번호로 들어오는 통화를 시간대·발신자 번호·DTMF 응답 기준으로 다른 AI Agent / 상담사 큐 / 부재중 메모로 라우팅하는 패턴.