メインコンテンツまでスキップ

callStatus 一覧

body.data.callStatus には通話のステート名(通知時点のスナップショット)が入ります。本ページは取り得る値とその意味、eventType との対応関係をまとめたリファレンスです。

警告

callStatus はエラー判定に使えません。 エラー発生時点でも遷移中ステータス(CALLING など)が入る場合があります。エラー判定は body.errors 配列の有無で行ってください(Payload 仕様 > body.errors 参照)。

発信通話 (OUTBOUND) の callStatus

callStatus意味対応する eventType
PENDINGキューに登録された直後OUTBOUND_CALL_PENDING
REQUESTED電話回線プロバイダへ発信指示を出したOUTBOUND_CALL_REQUESTED
CALLING呼び出し進行中 / 通話接続中OUTBOUND_CALL_CALLING
CLOSING通話切断後の後処理フェーズOUTBOUND_CALL_CLOSING
COMPLETED通話完了(正常終了。errors 配列があればエラー有り完了)OUTBOUND_CALL_COMPLETED
EXPIRED発信予約時間ウィンドウを超過OUTBOUND_CALL_EXPIRED
NO_RESPONSE相手が応答しなかったOUTBOUND_CALL_NO_RESPONSE
CANCELEDユーザー操作で PENDING からキャンセルOUTBOUND_CALL_CANCELED
BUSY相手回線が話し中OUTBOUND_CALL_BUSY
UNREACHABLE電波圏外・電源 OFF など、到達できなかったOUTBOUND_CALL_UNREACHABLE
MAX_ATTEMPTS_REACHED再発信を含む試行回数が上限到達OUTBOUND_CALL_MAX_ATTEMPTS_REACHED
ERRORエラー発生OUTBOUND_CALL_ERROR
VOICEMAIL_REACHED留守電に到達OUTBOUND_CALL_ERROR 系(内部分類)
HEALTHCHECK_FAILEDヘルスチェック失敗OUTBOUND_CALL_ERROR 系(内部分類)
LIMIT_REACHED各種上限到達(内部)OUTBOUND_CALL_ERROR に集約
CONNECTING接続中(内部)OUTBOUND_CALL_ERROR に集約
CONCURRENCY_LIMIT_EXCEEDED同時実行制限超過(内部)OUTBOUND_CALL_ERROR に集約
注記

LIMIT_REACHED / CONNECTING / CONCURRENCY_LIMIT_EXCEEDED は内部状態として callStatus には現れることがありますが、対応する Webhook イベントは発火せず(または OUTBOUND_CALL_ERROR に集約され)、外部向けにはエラーとして扱われます。

着信通話 (INBOUND) の callStatus

callStatus意味対応する eventType
CONNECTING着信を受け、内部処理を開始INBOUND_CALL_CONNECTING
CALLING通話成立、対話進行中INBOUND_CALL_CALLING
CLOSING通話切断後の後処理フェーズINBOUND_CALL_CLOSING
COMPLETED通話完了INBOUND_CALL_COMPLETED
CONCURRENCY_LIMIT_EXCEEDED同時通話数上限に到達INBOUND_CALL_CONCURRENCY_LIMIT_EXCEEDED
ERRORエラー発生INBOUND_CALL_ERROR

eventType と callStatus の関係

両者は 似ているが別概念 です:

  • eventTypeWebhook 配信のトリガー名(外部向けの公開シグナル)
  • callStatus通話の内部ステータス(payload のデータフィールド)

ほぼ 1 対 1 で対応しますが、いくつかの内部 status は外部公開イベントに集約されます(上記 OUTBOUND_CALL_ERROR への集約など)。

受信側のロジック分岐は eventType を主キーに使うのを推奨します。callStatus は補助情報・ログ・統計用途に向きます。

状態遷移(概念図)

OUTBOUND

PENDING → REQUESTED → CALLING → CLOSING → COMPLETED
↘ NO_RESPONSE / BUSY / UNREACHABLE / EXPIRED / ...
↘ ERROR
CANCELED ← (PENDING でユーザー操作)

INBOUND

CONNECTING → CALLING → CLOSING → COMPLETED
↘ CONCURRENCY_LIMIT_EXCEEDED
↘ ERROR

詳細な遷移仕様は内部実装に依存するため、外部向けに保証されるのは「同一 callId のイベントは FIFO で配信される」点のみです(設定ガイド > 配信の挙動 参照)。