通話ステータス一覧
body.data.callStatus には通話のステート名(通知時点のスナップショット)が入ります。本ページは取り得る値とその意味をまとめたリファレンスです。
警告
callStatus はエラー判定に使えません。 エラー発生時点でも遷移中ステータス(CALLING など)が入る場合があります。エラー判定は body.errors 配列の有無で行ってください(ペイロード仕様 > body.errors 参照)。
発信通話 (OUTBOUND) の callStatus
| callStatus | 意味 |
|---|---|
WAITING_FOR_CACHE | 発信前のキャッシュ生成待ち |
PENDING | 架電リクエスト受付済み、発信待機中 |
REQUESTED | 電話回線プロバイダへ発信指示を出した |
CALLING | 呼び出し進行中 / 通話接続中 |
CLOSING | 通話切断後の後処理フェーズ |
COMPLETED | 通話完了(errors 配列があればエラー有り完了) |
EXPIRED | 発信可能な時間帯を過ぎ、発信されずに終了 |
NO_RESPONSE | 相手が応答しなかった |
CANCELED | ユーザー操作で架電をキャンセル |
BUSY | 相手回線が話し中 |
UNREACHABLE | 電波圏外・電源 OFF など、到達できなかった |
MAX_ATTEMPTS_REACHED | 再発信を含む試行回数が上限到達 |
ERROR | エラー発生 |
VOICEMAIL_REACHED | 留守電に到達 |
HEALTHCHECK_FAILED | 架電リクエストで指定されたヘルスチェック先 URL への確認に失敗し、発信されずに終了 |
LIMIT_REACHED | 各種上限到達(内部) |
CONNECTING | 接続中(内部) |
CONCURRENCY_LIMIT_EXCEEDED | 同時実行制限超過(内部) |
注記
LIMIT_REACHED / CONNECTING / CONCURRENCY_LIMIT_EXCEEDED は内部状態として callStatus には現れることがありますが、外部向け Webhook には専用イベントを発火せず OUTBOUND_CALL_ERROR に集約されます。
着信通話 (INBOUND) の callStatus
| callStatus | 意味 |
|---|---|
CONNECTING | 着信を受け、内部処理を開始 |
CALLING | 通話成立、対話進行中 |
CLOSING | 通話切断後の後処理フェーズ |
COMPLETED | 通話完了 |
CONCURRENCY_LIMIT_EXCEEDED | 同時通話数上限に到達 |
ERROR | エラー発生 |
状態遷移(概念図)
OUTBOUND
基本フロー
WAITING_FOR_CACHE → PENDING → REQUESTED → CALLING → CLOSING → COMPLETED
発信前にキャンセル(ユーザー操作)
WAITING_FOR_CACHE / PENDING → CANCELED
発信前チェック失敗
WAITING_FOR_CACHE → HEALTHCHECK_FAILED
発信が成立しなかった(REQUESTED / CALLING から分岐)
NO_RESPONSE / BUSY / UNREACHABLE / VOICEMAIL_REACHED
MAX_ATTEMPTS_REACHED / EXPIRED
INBOUND
基本フロー
CONNECTING → CALLING → CLOSING → COMPLETED
受付拒否(同時通話数の上限に到達)
CONNECTING → CONCURRENCY_LIMIT_EXCEEDED
注記
COMPLETEDは「成功」を意味しません。 通話処理が最後まで実行されて通話が終了した状態を表し、途中でエラーがあってもbody.errorsを伴う「エラー有り完了」としてCOMPLETEDになります。成否の判定にはCOMPLETEDではなくbody.errorsを使ってください。ERRORはライフサイクルから独立した「実効ステータス」です。どのフェーズでもbody.errorsが付与された時点で、実効的にERROR(*_CALL_ERROR)として扱われます。LIMIT_REACHED/CONNECTING/CONCURRENCY_LIMIT_EXCEEDED(OUTBOUND の内部状態)は専用イベントを発火せずOUTBOUND_CALL_ERRORに集約されます。- 詳細な遷移は内部実装に依存します。外部向けに保証されるのは「同一 callId のイベントは FIFO で配信される」点のみです(設定ガイド > 配信の挙動 参照)。