시작하기
ClawOps로 AI 음성 에이전트를 만들어 전화를 받고 거는 방법을 안내합니다.
시작하기
ClawOps는 한국 전화/문자 API 플랫폼입니다. 전화번호 발급, 통화 발신/수신, SMS/MMS 발송, AI 음성 에이전트까지 Python SDK로 제어할 수 있습니다.
이 가이드에서는 대시보드에서 번호를 발급받고, AI 에이전트로 전화를 받고 거는 것까지 진행합니다.
1단계: 번호 발급
ClawOps 대시보드에서 회원가입 후 로그인합니다.
대시보드 > 전화번호 메뉴에서 새 번호를 발급받습니다. 발급된 070 번호가 AI 에이전트의 수신/발신 번호가 됩니다.
대시보드 > 설정 > API 키에서 다음 두 값을 확인합니다.
| 항목 | 설명 |
|---|---|
API Key | SDK 인증에 사용되는 키 |
Account ID | 계정 고유 ID |
2단계: 인바운드 에이전트
발급받은 번호로 걸려오는 전화를 AI가 받도록 설정합니다.
SDK 설치
pip install clawops[agent,openai]Python 3.10 이상이 필요합니다. 가상환경(venv) 사용을 권장합니다.
이 가이드는 현재 유일하게 검증 완료된 OpenAI Realtime을 사용합니다. 다른 제공자를 사용하려면 제공자 호환성에서 검증 상태를 확인하세요.
환경변수 설정
export CLAWOPS_API_KEY="your-api-key"
export CLAWOPS_ACCOUNT_ID="your-account-id"
export OPENAI_API_KEY="your-openai-key"에이전트 실행
from clawops.agent import ClawOpsAgent, OpenAIRealtime
import asyncio
agent = ClawOpsAgent(
from_="07012341234", # 발급받은 번호
session=OpenAIRealtime(
system_prompt="친절한 고객 상담원입니다. 한국어로 응대합니다.",
voice="marin",
language="ko",
),
)
asyncio.run(agent.serve())from_에 1단계에서 발급받은 번호를 입력하세요. agent.serve()는 에이전트가 ClawOps 서버에 직접
연결하므로 ngrok 같은 터널링 도구가 필요 없습니다.
실행 후 발급받은 번호로 전화를 걸어보세요. AI가 전화를 받습니다.
3단계: 아웃바운드 전화
에이전트에서 직접 전화를 걸 수도 있습니다.
from clawops.agent import ClawOpsAgent, OpenAIRealtime
import asyncio
agent = ClawOpsAgent(
from_="07012341234",
session=OpenAIRealtime(
system_prompt="예약 확인 전화를 하는 도우미입니다.",
language="ko",
),
)
async def main():
session = await agent.call("01012345678", timeout=30)
print(f"발신 중... (call_id: {session.call_id})")
await session.wait() # 통화 종료까지 대기
await agent.disconnect()
asyncio.run(main())인바운드와 아웃바운드를 동시에 처리할 수도 있습니다:
async def main():
await agent.connect() # 인바운드 수신 시작
session = await agent.call("01012345678") # 동시에 발신도 가능
# Ctrl+C로 종료다음 단계
- 제공자 호환성 — 검증된 제공자 목록과 SDK별 지원 현황
- Voice Agent — Tool 등록, Call Transfer, Pipeline 모드, MCP 연동 등 에이전트 심화 기능
- Python SDK — REST API 전체 메서드 레퍼런스
- VoiceML — Webhook 기반 통화 제어 (Say, Gather, Dial 등)
- Webhook — Status Callback, Message Webhook, 서명 검증
- Stream — 실시간 음성 스트리밍 연동 가이드