Skip to main content
도구 시나리오에서 다룬 예약 접수 같은 흐름은 한 줄로 이어지는 가장 단순한 형태예요. 실제 통화는 그것보다 복잡해요. 여기서는 성격이 다른 세 가지를 하나씩 뜯어봐요. 예제마다 가져오기 파일이 있어요. 파일 하나에 시나리오와 그 시나리오가 부르는 도구가 함께 들어 있어서, 받아서 가져오기만 하면 바로 테스트할 수 있어요.
셋 다 인바운드 시나리오예요. 시나리오는 전화를 받는 통화에서 동작해요.

예제 파일로 바로 시작하기

1

파일 받기

위 표나 각 예제 제목 아래의 받기를 눌러 .json 파일을 내려받아요.
2

시나리오 가져오기

에이전트 › 도구 탭 › 도구 시나리오에서 시나리오 가져오기를 누르고 받은 파일을 골라요.
3

미리보기 확인

오른쪽에 시나리오 가져오기 창이 열리고, 시나리오 이름과 포함 도구가 나와요. 같은 Function Name을 가진 도구가 이미 있으면 이미 있음 표시와 함께 기존 도구 재사용과 새로 만들기 중에 고를 수 있어요. 확인했으면 가져오기를 눌러요.
4

켜고 배포하기

도구는 도구 모음에 발행된 상태로 추가되고, 시나리오는 비활성으로 추가돼요. 도구 시나리오 목록에서 토글을 켠 뒤 배포 ↑를 누르고 운영 반영까지 해요.
5

테스트

테스트 ▶로 통화를 열고 트리거 키워드(예: “배송 조회”)를 말해 흐름이 시작되는지 확인해요.
세 파일의 도구는 https://api-mock.telloai.io에 연결돼 있어서 받은 그대로 조회·접수가 동작해요. 목 데이터는 여럿이 함께 쓰는 테스트용이라 조회 결과가 아래 통화 예시와 다를 수 있어요. 실제 서비스에 쓰려면 도구 모음에서 주소와 요청 스키마를 내 API에 맞게 바꾸고 다시 발행하세요.
상담사 전환 도구는 파일에 담기지 않아요. 전환·통화 종료 같은 내장 도구는 파일로 옮길 수 없어요. 예제 2의 상담원 연결(0번)을 쓰려면 상담사 전환 도구를 따로 만들어 이 에이전트에 연결하세요.

자동 생성이 만들어 주는 것, 손으로 그려야 하는 것

예제를 참고해 직접 만들 때 알아 두면 좋아요. 시나리오 편집기의 AI 시나리오 자동 생성은 연결 Tool의 요청 스키마를 읽어 수집 Step을 파라미터 수만큼 만들어요. 트리거 키워드와 안내 멘트도 함께 만들어져요. 자동 생성이 만드는 흐름은 항상 한 줄이에요.
시작 노드는 자유 대화(LLM)로 도는 노드라 키패드(DTMF) 입력을 받지 않아요. 키패드로 번호를 받거나 키패드 메뉴를 쓰려면 시작 다음 노드에 설정해요.
그래서 이렇게 나눠 쓰면 돼요.
예제 파일을 가져온 뒤 GUI 다이어그램 탭에서 열어 보면, 아래 설명의 노드와 설정이 어떻게 들어가 있는지 그대로 볼 수 있어요.

예제 1 · 택배 배송 조회

예제 파일 받기 (delivery-tracking.json) 상황. 고객이 “제 물건 어디쯤 왔어요?”라고 물어요. 운송장 번호를 받아 조회해 알려줘야 해요. 왜 키패드인가. 운송장 번호는 10~14자리 숫자예요. 음성 인식으로 받으면 한 자리만 틀려도 조회가 실패해요. 키패드로 받으면 정확하고, 시끄러운 곳에서도 됩니다.

흐름

도구

요청 스키마

트리거 키워드

키패드 설정

운송장 번호를 받는 수집 노드의 키패드 입력 허용을 켜고 이렇게 채워요.
자릿수가 가변이면 종료키를 반드시 두세요. 최대 자릿수만 믿으면 짧은 번호를 넣은 고객이 대기 시간만큼 기다려야 해요.

직접 만들 때

1

도구 등록

도구 모음에서 위 주소와 스키마로 API Request 도구를 만들어요.
2

시나리오 자동 생성

에이전트 › 도구 › 도구 시나리오 › + 시나리오 추가. Tool을 고르고 AI 시나리오 자동 생성을 눌러요.
3

시작 노드와 키패드 정리

GUI 다이어그램 탭에서 시작 노드는 자유 대화로 두고, 운송장 번호를 받는 수집 노드의 키패드 입력 허용을 켜 위 표대로 채워요.
4

저장·활성화·배포

저장하고 목록에서 토글을 켠 뒤 배포 ↑를 눌러요.

통화 예시


예제 2 · 도시가스 고객센터

예제 파일 받기 (gas-customer-center.json) 상황. 요금 조회, 전입 신청, 자가검침처럼 문의 종류가 여러 가지고 처리 방법도 각각 달라요. 처음에 갈래를 나누고, 갈래마다 다른 정보를 받아 다른 API를 불러야 해요. 사람이 필요한 건은 상담원에게 넘겨야 해요. 왜 키패드 메뉴인가. “요금 조회요”라고 말해도 되지만, 대기 중이거나 시끄러운 곳이면 번호를 누르는 쪽이 빨라요. 키패드 메뉴는 음성과 번호를 동시에 받아요.

흐름

도구 세 가지

시나리오 하나가 도구를 여러 개 쓸 수 있어요. Tool 호출 노드마다 호출할 Tool을 따로 고르면 돼요. 고르지 않으면 시나리오 기본 Tool이 쓰여요.

키패드 메뉴 노드

시작 노드 바로 다음에 키패드 메뉴 노드를 둬요. 키패드 메뉴는 숫자 키를 갈래에 연결해요. 수집 노드와 달리 값을 받는 게 아니라 어디로 갈지를 정해요. 안내 멘트는 노드에 들어오는 순간 그대로 읽혀요.
메뉴 노드는 멘트 보호(barge-in 금지)를 켜세요. 안 그러면 주변 소음이나 고객의 “여보세요”에 안내가 끊겨서 선택지를 다 못 들어요.
번호를 안 눌러도 “가스비가 왜 이렇게 많이 나왔어요”라고 말하면 1번 갈래로 가요. 각 갈래 함수의 설명이 판단 근거가 되므로 고객이 실제로 할 법한 말로 적어요.

자가검침 갈래 (3번)

숫자 두 개를 키패드 수집 노드 두 개로 차례로 받아요. 수집 노드 하나는 값 하나를 받아요.

상담원 전환 갈래 (0번)

이 갈래는 수집도 Tool 호출도 없어요. 액션 세 개를 순서대로 실행해요. wait_sec은 상담 대기열을 흉내내요. 그동안 앞서 시작한 대기음이 재생돼요.
transfer_call은 상담사 전환 도구의 설정을 그대로 써요. 그 도구가 없으면 전환되지 않고 봇이 계속 응대해요. 예제 파일에는 이 도구가 들어 있지 않으니 먼저 만들어 연결하세요.
전환에 실패해도 통화는 끊기지 않아요. 대기음을 끄고 “지금은 연결이 어렵습니다” 안내 후 봇이 이어받아요. 시나리오는 통화를 종료할 수 없기 때문이에요.

직접 만들 때

1

도구 3개 등록

표대로 API Request 도구 세 개를 만들어요.
2

시나리오 만들고 GUI 다이어그램 열기

시나리오를 추가한 뒤 GUI 다이어그램 탭으로 가요. 갈래가 있어서 폼 편집으로는 못 만들어요.
3

메뉴 노드 추가

시작 노드 다음에 노드를 하나 추가해 키패드 메뉴를 설정하고, 갈래마다 함수를 하나씩 만들어요. 함수의 다음 노드가 그 갈래의 첫 노드가 돼요.
4

갈래별 노드 잇기

갈래마다 수집 노드 › Tool 호출 노드 › 완료 노드로 이어요. Tool 호출 노드에서 호출할 Tool을 각각 골라요.
5

0번 갈래에 액션 넣기

안내 노드의 진입 액션에 tts_say › hold_music › transfer_call을 순서대로 넣어요.
6

저장

저장하면 서버가 흐름을 검사해요. 모든 갈래가 완료 노드에 도달해야 통과해요.

통화 예시

전입 신청(2번) 갈래는 성함, 번호, 새 주소, 이사일 네 가지를 한 노드에서 받아요. 고객이 한 번에 여러 개를 말하면 이미 받은 건 그대로 두고 빠진 항목만 이어서 물어봐요.

예제 3 · 병원 진료 예약 변경

예제 파일 받기 (hospital-reschedule.json) 상황. 예약을 바꾸려면 먼저 누구인지 확인하고 기존 예약을 조회해야 해요. 그다음 변경인지 취소인지에 따라 다른 처리를 해요. 앞선 두 예제와 다른 점. 갈래가 조회 결과 뒤에 있어요. 예제 ②는 시나리오에 들어오자마자 갈래를 나눴지만, 여기서는 먼저 조회한 결과를 알려주고 나서 고객이 결정해요.

흐름

도구 세 가지

본인 확인 (성함 + 휴대폰 번호 키패드)

예약은 환자 이름과 휴대폰 번호로 찾아요. 이름은 말로 받고, 번호는 키패드로 받아요.
휴대폰 번호는 10자리와 11자리가 섞여 있어서 종료키를 둬요. 11자리를 다 누르면 종료키 없이도 넘어가요.

조회 결과 뒤 분기

조회 노드 다음에 갈래 노드를 둬요. 이 노드는 값을 받지 않고 어디로 갈지만 정해요. AI 지시문에는 조회 결과를 먼저 알려주라고 적어요.

취소 전 재확인

취소는 되돌리기 어려워요. 확인 노드를 하나 더 두고 멘트 보호를 켜요.
되돌릴 수 없는 처리 앞에는 확인 단계를 넣으세요. 음성은 오인식이 있어서 “취소”가 잘못 들릴 수 있어요.

통화 예시


한 에이전트에 여러 시나리오

세 예제를 같은 에이전트에 함께 둘 수 있어요. 트리거 키워드가 서로 달라서 고객이 무엇을 말하느냐에 따라 해당 시나리오로 들어가요.
쓰지 않는 시나리오는 토글을 꺼 두세요. 키워드가 겹치면 어느 쪽이 걸릴지 예측하기 어려워져요.

세 예제에서 가져갈 것

숫자는 키패드로

운송장·고객번호·휴대폰 번호는 키패드가 정확해요. 리드백까지 켜면 오류가 거의 없어요

갈래는 다이어그램에서

자동 생성은 한 줄만 만들어요. 분기·메뉴·멀티툴은 GUI 다이어그램에서 손으로 그려요

끊기면 안 되는 멘트는 보호

메뉴 안내, 전환 안내, 취소 재확인은 멘트 보호를 켜요

되돌릴 수 없는 일 앞엔 확인

취소·삭제·결제 전에는 확인 노드를 하나 더 둬요

자주 겪는 문제

  • 조회·접수가 실패해요: 도구 주소가 목 API인지, 내 API로 바꿨다면 요청 스키마의 파라미터 이름이 시나리오 수집 값과 같은지 확인하세요.
  • 메뉴를 눌렀는데 반응이 없어요: 메뉴 노드에 키패드 메뉴가 설정돼 있나요? 안내 멘트만 넣고 메뉴 연결을 안 하면 숫자를 눌러도 갈래로 가지 않아요.
  • 긴 번호를 중간에 끊어 받아요: 입력 대기 시간을 늘리고 종료키를 두세요. 12자리를 5초 안에 다 누르지 못하는 고객이 많아요.
  • 안내가 자꾸 끊겨요: 멘트 보호(barge-in 금지)를 켜세요.
  • 상담원 전환이 안 돼요: 상담사 전환 도구를 만들어 이 에이전트에 연결하고, 그 도구를 발행했는지 확인하세요.
  • 저장이 안 돼요: 갈래 중 하나가 완료 노드에 닿지 않았을 수 있어요. 모든 길이 완료로 끝나야 하고, 순환이 있으면 안 돼요.
  • Tool이 안 불려요: Tool 호출 노드에서 호출할 Tool을 골랐는지, 그 도구가 API Request 타입인지 확인하세요.

관련 문서