KAT Cloud로그인

AI 비서 앱에 전화번호 붙이기: 사용자마다 번호를 발급하는 구조

AI 비서 앱에 전화번호를 붙이려면 사용자마다 KAT Cloud 그룹을 만들어 070 번호를 발급하고, 웹훅의 groupId로 통화·문자를 해당 사용자에게 연결합니다. 번호 구간 요금으로 사용자 100명·2,000명의 월 비용을 계산했습니다.

사용 사례KAT Cloud 팀7분 읽기
AI 비서 앱에 전화번호 붙이기: 사용자마다 번호를 발급하는 구조

AI 비서 앱에 전화번호를 붙이는 가장 단순한 구조는 사용자 한 명마다 KAT Cloud(캣클라우드) 그룹을 하나 만들어 070 번호를 발급하고, 통화·문자 웹훅에 들어 있는 groupId와 channelId로 이벤트를 해당 사용자에게 연결하는 방식입니다. KAT Cloud에서는 POST /group 한 번으로 그룹과 전화번호(채널)가 함께 만들어지고, 탈퇴한 사용자의 번호는 DELETE /group/{groupId}로 반납합니다. 이 글은 특정 서비스의 사례가 아니라 스타트업이 이런 앱을 만든다고 가정한 설계 예시입니다.

AI 비서 앱에서 전화가 하는 일

AI 비서 앱의 사용자는 회의 중이거나 운전 중일 때 걸려 온 전화를 AI가 대신 받아 주기를 기대합니다. 사용자마다 별도 번호를 주면 개인 휴대폰 번호를 드러내지 않고 명함이나 프로필에 이 번호를 공개할 수 있고, 통화·문자 기록도 사용자별로 깔끔하게 나뉩니다.

  • 사용자 번호로 걸려 온 전화를 AI가 받아 용건과 연락처를 정리
  • 통화가 끝나면 요약을 앱 알림으로 전달
  • 사용자가 승인하면 같은 번호로 답장 문자 발송
  • 사용자 번호로 들어온 문자를 앱 받은편지함에 표시

KAT Cloud의 리소스는 앱의 개념과 이렇게 대응시킬 수 있습니다.

KAT Cloud 개념앱에서의 의미
사용자(User), API 키스타트업의 운영 계정
그룹(Group)앱 사용자 1명
채널(Channel)그 사용자의 070 번호
채팅방(Chat Room)사용자 번호 × 상대방 번호의 문자 스레드
통화 기록그룹(사용자)별 통화 기록, groupId로 조회

AI가 받고, 결정은 사용자가

AI 비서가 사용자 대신 전화를 받아 미팅 시간 변경 요청을 정리하고 문자로 답을 주겠다고 안내하는 예시 대화
약속 변경 같은 결정은 사용자에게 넘기고 답은 문자로 보냅니다.

AI는 용건 정리, 연락처 확인, 간단한 안내까지만 맡고, 약속 확정이나 금전이 걸린 답은 사용자에게 넘깁니다. 이 앱에서 "사람에게 넘긴다"는 것은 상담원 연결이 아니라 앱 알림으로 사용자에게 결정을 묻는 것입니다. KAT Cloud의 AI→직원 연결은 그룹 멤버가 통화를 받는 구조이므로, 실시간으로 사용자에게 통화를 돌려주는 기능이 필요하다면 설계 단계에서 도입 문의로 확인합니다. 사용자가 앱에서 직접 발신하는 기능도 REST API가 없으므로, SIP로 연결한 자체 음성 서버를 두는 구조가 필요합니다.

KAT Cloud 구성: 번호 발급과 이벤트 연결

번호 풀 확인, 그룹 생성, 번호와 채널 저장, 탈퇴 시 반납으로 이어지는 네 단계
그룹 ID와 번호, 채널 ID를 가입 시점에 저장해 둡니다.
HTTP
POST /group
x-api-key: {API_KEY}
Content-Type: application/json

{"groupTitle": "user-8f2c41"}

응답은 새 그룹 ID 숫자입니다. 번호와 채널 ID는 GET /group 결과에서 해당 그룹을 찾아 앱 DB에 사용자 ID와 함께 저장합니다. 단계별 설명은 그룹 만들고 070 번호 발급받기에 있습니다.

상대방 전화가 사용자 070 번호로 들어와 AI 비서가 받고, 웹훅 서버가 groupId로 사용자를 찾아 앱 알림을 보내는 흐름도
웹훅은 한 번 등록하고 groupId로 사용자를 찾습니다.
  • 웹훅: 사용자마다 따로 등록하지 않고, 이벤트 종류별로 한 번 등록합니다(POST /webhook). CALL_COMPLETED, MESSAGE_RECEIVED, SEND_RESULT 모두 groupId와 channelId가 들어 있어 사용자를 찾을 수 있습니다.
  • 답장 문자: 사용자가 승인하면 POST /chat-room(사용자 channelId, 상대방 번호) → POST /chat 순서로 보냅니다.
  • 음성 모델: 사용자 수만큼 통화량이 늘어나므로 분당 10원 모델(Qwen3.8 Omni Flash Realtime)과 분당 40원 모델(gpt-realtime-2.1-mini)처럼 가격대가 다른 모델을 실제 통화로 비교해 정합니다. 모델과 응대 지침은 콘솔에서 설정합니다.
JavaScript
app.post('/katcloud/webhook', (req, res) => {
  res.status(200).send('OK'); // 10초 타임아웃 전에 먼저 응답
  const { eventType, data } = req.body;
  const user = usersByGroupId.get(data.groupId);
  if (!user) return;
  if (eventType === 'CALL_COMPLETED') notifyUser(user, data.summary, data.callHistoryId);
  if (eventType === 'MESSAGE_RECEIVED') saveInbox(user, data.chatRoomId, data.content);
});

이벤트를 놓치지 않는 서버 구조는 폴링 대신 웹훅에서 다룹니다.

번호 비용 계산: 사용자 100명과 2,000명

전화번호 요금은 계정 전체 순번으로 매기며, 플랜에 든 1개가 1번입니다. 2~30번째는 개당 월 1,800원, 31~1,000번째는 700원, 1,001번째부터는 500원입니다. 계정의 번호가 모두 사용자 번호라고 가정합니다(부가세 별도).

구간단가사용자 100명사용자 2,000명
1번(플랜 포함)0원1개, 0원1개, 0원
2~30번째1,800원29개 × 1,800 = 52,200원29개 × 1,800 = 52,200원
31~1,000번째700원70개 × 700 = 49,000원970개 × 700 = 679,000원
1,001번째부터500원0원1,000개 × 500 = 500,000원
번호 요금 합계101,200원1,231,200원
사용자 1명당1,012원615.6원

사용자 1명이 한 달에 AI 응대 통화 15분을 쓴다고 가정하고 사용량 요금을 더하면 다음과 같습니다. 수신 분은 포함량 없이 모두 초과 단가로 보는 보수적 계산입니다.

항목100명(1,500분)2,000명(30,000분)
음성 모델(분당 10원)15,000원300,000원
받아쓰기·요약(분당 20원)30,000원600,000원
수신1,500 × 3원 = 4,500원10,000 × 3원 + 20,000 × 2.5원 = 80,000원
번호 요금101,200원1,231,200원
합계150,700원2,211,200원
사용자 1명당1,507원1,105.6원

KAT Cloud는 그룹 단위로 요금제와 사용량을 관리하고 POST /group에 요금제(plan) 필드가 있습니다. 위 표는 플랜 월 요금을 뺀 번호·사용량 요금이므로, 수천 개 그룹에 요금제가 어떻게 적용되는지는 도입 전에 확인해야 합니다. 단가는 요금에 있습니다.

도입 시 주의할 점

  • API 사용 범위: 그룹·채팅·통화 기록·웹훅 API는 비즈니스 요금제 그룹이나 별도 허용 그룹에서만 쓸 수 있습니다. API 키에 연결된 그룹 중 하나라도 조건을 못 맞추면 403 AU017이 납니다. 자세한 내용은 API 문서의 사용 범위를 확인합니다.
  • Rate Limit: 1,200 requests / 60초입니다. 가입이 몰리면 그룹 생성을 큐에 넣어 나눠 처리하고, 429 응답에는 백오프로 재시도합니다. 방법은 API 에러 처리와 Rate Limit 대응에 있습니다.
  • 사용자별 응대 지침: 문서에는 응대 지침을 API로 바꾸는 엔드포인트가 없습니다. 사용자마다 이름·인사말을 다르게 할 방법은 콘솔 또는 도입 문의로 확인합니다.
  • 동시통화: 2,000명이 월 30,000분을 쓰고 가장 바쁜 한 시간에 하루 통화량의 15%가 몰린다고 보면 트래픽은 약 2.5얼랑이라, 기본 10회선으로 계산상 충분합니다. 회선이 적용되는 단위는 함께 확인합니다.
  • 번호 반납과 재발급: 반납한 번호가 나중에 다른 사람에게 발급될 수 있는지 확인하고, 탈퇴 직후 바로 반납하지 않는 유예 기간을 검토합니다.
  • 제3자 통화 고지: AI가 받는 상대방은 앱 사용자가 아니므로 통화 첫머리에 AI 응대와 녹음 사실을 알립니다. 실제 적용은 법률 검토가 필요합니다.

자주 묻는 질문

사용자마다 전화번호를 API로 발급할 수 있나요?

KAT Cloud에서는 POST /group으로 그룹을 만들면 070 전화번호(채널)가 자동 발급되므로, 사용자 한 명당 그룹 하나를 만드는 방식으로 번호를 줄 수 있습니다. 발급 가능 여부는 GET /phone-number-pool/available로 확인하고, 탈퇴한 사용자의 번호는 DELETE /group/{groupId}로 반납합니다.

사용자 2,000명이면 번호 요금은 얼마인가요?

KAT Cloud 번호 요금은 계정 전체 순번 구간으로 매기므로, 플랜 포함 1개를 빼면 29개 × 1,800원 + 970개 × 700원 + 1,000개 × 500원 = 월 1,231,200원(부가세 별도)입니다. 사용자 1명당 약 615.6원이며, 100명일 때는 월 101,200원으로 1명당 1,012원입니다.

수천 개 그룹의 통화 이벤트는 어떻게 받나요?

KAT Cloud 웹훅은 이벤트 종류별로 한 번 등록하면 되고, CALL_COMPLETED와 MESSAGE_RECEIVED에 groupId와 channelId가 들어 있어 내 서버가 사용자를 찾아 연결할 수 있습니다. 그룹마다 통화 기록을 주기적으로 조회하면 Rate Limit에 걸리기 쉬우므로 웹훅을 기본으로 씁니다.

  • #AI 비서 앱
  • #전화번호 발급
  • #그룹 API
  • #사용 사례

Get started

만든 AI에게 전화번호를 주세요.

070 번호 발급, SIP 직접 연결, 음성 AI 모델 연결, 문자·웹훅까지 API 하나로. 월 10,000원부터.