작동 방식
- 스키마(도구가 허용하는 인수)를 사용하여 도구를 정의합니다
endpoint구성(ThunderPhone이 API를 호출하는 위치)을 제공합니다. 또는 이를 생략하여 조직 웹훅에서 도구 호출을 수신합니다- 통화 중 AI는 대화를 기반으로 도구를 사용할 시점을 결정합니다
- ThunderPhone은 도구 인수와 함께 엔드포인트를 호출합니다
- API 응답이 AI에 다시 전달되어 대화를 계속합니다
도구 스키마
각 도구는 다음 구조를 따릅니다:함수 정의
엔드포인트 구성
endpoint 구성은 AI 모델로 전송되지 않습니다. ThunderPhone이 도구 호출을 실행하는 데만 사용됩니다.두 가지 호출 경로
서버가 수신하는 요청은 도구에endpoint가 있는지에 따라 달라집니다:
두 경로 모두 차단 방식입니다. AI는 문장 중간에 결과를 기다리며,
20초 제한 시간이 적용됩니다. 핸들러를 빠르게 유지하십시오. 혼합하여 사용해도 됩니다:
조직에 웹훅 URL이 있는 통화에서는
endpoint가 있는 도구가
직접 호출되고, 나머지는 웹훅으로 대체됩니다.
직접 엔드포인트 호출
AI가endpoint가 있는 도구를 호출하면 ThunderPhone이
URL로 요청을 전송합니다.
요청 헤더
endpoint.headers의 커스텀 헤더는 항상 원문 그대로 포함되며,
ThunderPhone 네임스페이스 헤더 두 개가 추가됩니다.
X-ThunderPhone-Signature— 정확한 요청 본문 바이트에 대해 조직 웹훅 시크릿을 키로 사용한 HMAC-SHA256X-ThunderPhone-Call-ID— 현재 통화 ID
endpoint.headers에서 재정의하지 않는 한 Content-Type: application/json이
설정됩니다. 커스텀 Content-Type이 우선합니다.
요청 본문
POST / PUT / PATCH의 경우 본문에는 래퍼 없이 도구 인수만
정규화된 형식(키 정렬, 압축 구분자)으로 직렬화되어 포함됩니다.
GET / DELETE의 경우 인수는 쿼리 매개변수로 전송되고
본문은 비어 있습니다. 이 경우 서명은 빈 바이트 문자열을 기준으로
계산됩니다. 웹훅 서명 확인을
참조하세요.
응답
도구 결과가 포함된 JSON 응답을 반환합니다.{"data": "<text>"}로 래핑됩니다. 시간 초과 및
연결 실패는 AI에 오류로 보고되므로 에이전트가 사과하고 중단하지
않고 다음 단계로 진행할 수 있습니다.
웹훅 모드 디스패치
endpoint가 없는 도구는 조직의 레거시 웹훅 URL로 서명된
telephony.tool(전화 통화) 또는 web.tool(웹 통화) 요청으로
디스패치됩니다. 실행 후 웹훅 엔드포인트에 전달되는
감사 알림과 달리, 이 요청 자체가 실행입니다.
HTTP 응답이 도구 결과가 됩니다.
web.tool은 from_number / to_number 대신 origin_domain을
포함합니다. 직접 엔드포인트 호출과 동일한 응답 계약에 따라 도구 결과를
JSON으로 응답합니다. 요청은 다른 모든 웹훅과 마찬가지로 원시 본문에 대해
조직 웹훅 시크릿으로 서명됩니다.
서명 검증
직접 도구 호출은 웹훅과 동일한 방식으로 서명됩니다.- 정확한 요청 본문 바이트(정규 JSON — 키 정렬, 추가 공백 없음)에 대한 HMAC-SHA256
- 조직의 웹훅 시크릿으로 키 지정
GET/DELETE도구는 빈 바이트 문자열에 서명
예시: 전체 예약 흐름
완전한 예약 시스템을 위한 도구 세트는 다음과 같습니다.모범 사례
명확한 설명 작성
명확한 설명 작성
description 필드는 AI가 도구를 언제 사용해야 하는지 이해하도록 돕습니다. 도구의 기능과 적절한 사용 시점을 구체적으로 설명합니다.오류를 자연스럽게 처리
오류를 자연스럽게 처리
일반적인 500 오류 대신 AI가 이해할 수 있는 오류 메시지(예:
{"error": "No slots available for that date"})를 반환합니다.응답을 간결하게 유지
응답을 간결하게 유지
AI가 대화를 계속하는 데 필요한 정보만 반환합니다. 큰 페이로드는 응답 시간을 늦춥니다.
필수 필드를 신중하게 사용
필수 필드를 신중하게 사용
반드시 필요한 경우에만 필드를
required로 표시합니다. AI는 도구를 호출하기 전에 사용자에게 필수 정보를 요청합니다.관련 문서
앱 연결
HubSpot, Salesforce, Slack, Google
Calendar, Google Sheets, Cal.com을 위한 플랫폼 관리형 도구입니다. 엔드포인트가 필요하지 않습니다.
MCP 서버
MCP 서버를 연결하고 에이전트가 해당 도구를 호출하도록 합니다.
API 연결
에이전트에 연결할 수 있는 재사용 가능한 REST 통합입니다.
웹훅 서명 검증
웹훅 및 도구 호출을 위한 단일 검증 도우미입니다.