> ## Documentation Index
> Fetch the complete documentation index at: https://docs.tryvox.co/llms.txt
> Use this file to discover all available pages before exploring further.

# 통화종료사유

> 통화가 종료된 이유를 파악하고 대응하세요.

모든 통화에는 종료 사유가 기록됩니다. [통화 기록](/docs/operate/monitor/history)의 **종료 사유** 칼럼, API 응답, [웹훅](/docs/operate/monitor/webhooks/overview) 페이로드에서 같은 의미의 값이 사용됩니다. 일부 내부 사유는 표면별로 노출 여부가 다를 수 있으므로, API 연동에서는 알 수 없는 값도 안전하게 처리하세요.

## 정상 종료

통화가 의도대로 완료된 경우입니다.

| 값               | 설명           | 비고                                                                       |
| --------------- | ------------ | ------------------------------------------------------------------------ |
| `user_hangup`   | 사용자가 먼저 끊음   | 가장 일반적인 종료 사유입니다.                                                        |
| `agent_hangup`  | 에이전트가 통화를 종료 | 에이전트가 프롬프트 지시에 따라 종료한 경우입니다.                                             |
| `call_transfer` | 통화 전환으로 종료   | [통화 전환](/docs/build/tools/builtin/transfer-call)이 실행되어 다른 번호로 연결된 경우입니다. |

## 발신 실패

아웃바운드 통화가 연결되지 못한 경우입니다.

| 값                   | 설명           | 대응 방법                                                                                 |
| ------------------- | ------------ | ------------------------------------------------------------------------------------- |
| `dial_no_answer`    | 상대방이 응답하지 않음 | [다이얼 대기 시간](/docs/build/conversation/call-settings#다이얼-대기-시간)을 조정하거나, 시간대를 바꿔 재발신하세요. |
| `dial_failed`       | 발신 실패        | 수신번호가 올바른지, 발신번호가 활성 상태인지 확인하세요.                                                      |
| `dial_busy`         | 수신자 통화 중     | 잠시 후 재발신하세요.                                                                          |
| `dial_declined`     | 수신자가 통화를 거절  | 수신자가 직접 거절했거나 단말·통신망에서 거절로 처리된 경우입니다.                                                 |
| `voicemail_reached` | 음성사서함 연결 감지  | 에이전트가 음성사서함을 감지하고 자동으로 통화를 종료한 경우입니다.                                                 |

## 제한 도달

조직의 사용량 제한에 도달한 경우입니다.

| 값                           | 설명                                                               | 대응 방법                                   |
| --------------------------- | ---------------------------------------------------------------- | --------------------------------------- |
| `max_duration_reached`      | [최대 통화 시간](/docs/build/conversation/call-settings#최대-통화-시간) 도달   | 필요하면 최대 통화 시간 설정을 늘리세요.                 |
| `inactivity`                | [무응답 대기 시간](/docs/build/conversation/call-settings#무응답-대기-시간) 초과 | 사용자가 오래 응답하지 않아 통화가 종료된 경우입니다.          |
| `concurrency_limit_reached` | 동시 통화 한도 초과                                                      | 동시에 진행 중인 통화가 너무 많습니다. 플랜 업그레이드를 검토하세요. |
| `insufficient_balance`      | 잔액 부족                                                            | 크레딧을 충전하세요.                             |
| `daily_call_limit_reached`  | 일간 통화 한도 도달                                                      | 일일 사용 한도에 도달했습니다. 다음 날 자동으로 초기화됩니다.     |
| `hourly_call_limit_reached` | 시간당 통화 한도 도달                                                     | 시간당 사용 한도에 도달했습니다. 다음 시간에 자동으로 초기화됩니다.  |

## 정책 차단

플랫폼 정책이나 워크스페이스 설정에 의해 통화가 시작되지 않은 경우입니다.

| 값                | 설명                 | 대응 방법                                                    |
| ---------------- | ------------------ | -------------------------------------------------------- |
| `blocked_number` | 차단 번호 정책에 의해 통화 차단 | [차단 번호](/docs/operate/deploy/blocked-numbers) 설정을 확인하세요. |

<Note>
  `blocked_number`는 대시보드나 내부 기록에 표시될 수 있습니다. 공개 API와 웹훅에서의 노출은 버전과 표면에 따라 다를 수 있으므로, 연동 코드는 새 종료 사유가 추가되어도 실패하지 않도록 구현하세요.
</Note>

## 시스템 오류

시스템 문제로 통화가 종료된 경우입니다.

| 값                          | 설명        | 대응 방법                                                            |
| -------------------------- | --------- | ---------------------------------------------------------------- |
| `error_voxai`              | 내부 시스템 오류 | 일시적인 오류입니다. 반복되면 지원팀에 문의하세요.                                     |
| `flow_error`               | 플로우 실행 오류 | 플로우 에이전트의 노드 설정을 점검하세요. API 노드의 엔드포인트, 조건 노드의 분기 조건 등을 확인하세요.    |
| `orphaned_no_agent_pickup` | 에이전트 미배정  | 인바운드 통화에 에이전트가 연결되지 않았습니다. 전화번호에 인바운드 에이전트가 올바르게 연결되어 있는지 확인하세요. |

## 알림 설정

특정 종료 사유가 반복되면 [알림](/docs/operate/monitor/alerts)을 설정해 자동으로 감지하세요. 예를 들어 `error_voxai` 발생 시 Slack으로 알림을 받을 수 있습니다.

## 관련 문서

* [통화 기록](/docs/operate/monitor/history) — 통화별 종료 사유 확인
* [분석](/docs/operate/monitor/analytics) — 종료 사유 분포 차트
* [알림](/docs/operate/monitor/alerts) — 종료 사유 기반 자동 알림

***

<Accordion title="연관 검색어">
  통화종료사유, 종료 사유, disconnection reason, user\_hangup, agent\_hangup, error\_voxai, 발신 실패
</Accordion>
