次の方法で共有


Azure Communication Services PSTN 通話の失敗のトラブルシューティング

Azure Communication Services PSTN 通話の失敗のトラブルシューティングを行う場合、ログを有効にすることをお勧めします。 その後、ResultCategoriesParticipantEndReasonParticipantEndSubCode の値を使用して、個々の通話が終了した理由と、システムが失敗を検出したかどうかを判断できます。

ResultCategories を使用して失敗をトラブルシューティングする

ResultCategories 配列は、通話概要ログ スキーマのプロパティです。 これには、通話がどのように終了したかを説明する一般的な理由の一覧が含まれます。

  • Success
  • Failure
  • UnexpectedClientError
  • UnexpectedServerError

この情報は、詳細なエラー ログを生成せずに、通話が終了した理由を確認するのに役立ちます。

ParticipantEndReason と ParticipantEndSubCode を使用して失敗をトラブルシューティングする

PSTN 通話をトラブルシューティングする際に ResultCategories の詳細レベルが十分ではない場合、ParticipantEndReasonParticipantEndSubCode を使用すると、通話が終了した理由をより詳細に把握できます。 ParticipantEndReasonParticipantEndSubCode も、通話概要ログ スキーマのプロパティです。

ParticipantEndReason

ParticipantEndReasonは、一般的な通話状態を示す 3 桁のコードです。 このコードは、通話が終了した理由を説明し、失敗をカテゴリ別にグループ化します。 たとえば、ParticipantEndReason 404 は、発信者または呼び出し先が見つからなかったことを意味します。 ParticipantEndReason 500 は、サービス エラーが発生したことを意味します。

このコードは、セッション開始プロトコル (SIP) 応答コードに基づきます。 詳細については、Wikipedia の「SIP 応答コードの一覧」を参照してください。

ParticipantEndSubCode

ParticipantEndSubCode はより具体的な応答コードであり、通常の長さは 6 桁です。 これは、通話で問題が発生した理由を詳細に説明します。

Azure Communication Services PSTN 通話のトラブルシューティングで重要となる要素は、通話の最終的な SIP 応答コードが、Microsoft のプロセスと、ユーザーまたはオペレーターのセッション ボーダー コントローラー (SBC) のどちらからのものであるかを判断することです。 コードの発生元を特定する簡単な方法は、ParticipantEndSubCode 応答を調べることです。

ParticipantEndSubCode の値が 560 で始まる場合、応答コードがユーザーまたはオペレーターの SBC によって生成されたことを示します。 この場合、SBC の構成を調べる必要があります。

たとえば、ParticipantEndSubCode の値が 560403 の場合、最終的な応答コードが SBC によって生成され、そのコードが 403 であることを意味します。 この場合、SBC ログを使用して通話のトラブルシューティングを開始する必要があります。

ParticipantEndSubCode 応答が 560 で始まらない場合、最終的な応答コードが Microsoft サービスによって生成されたことを意味します。