Azure Communication Services PSTN 通話の失敗のトラブルシューティング
Azure Communication Services PSTN 通話の失敗のトラブルシューティングを行う場合、ログを有効にすることをお勧めします。 その後、ResultCategories
、ParticipantEndReason
、ParticipantEndSubCode
の値を使用して、個々の通話が終了した理由と、システムが失敗を検出したかどうかを判断できます。
ResultCategories を使用して失敗をトラブルシューティングする
ResultCategories
配列は、通話概要ログ スキーマのプロパティです。 これには、通話がどのように終了したかを説明する一般的な理由の一覧が含まれます。
Success
Failure
UnexpectedClientError
UnexpectedServerError
この情報は、詳細なエラー ログを生成せずに、通話が終了した理由を確認するのに役立ちます。
ParticipantEndReason と ParticipantEndSubCode を使用して失敗をトラブルシューティングする
PSTN 通話をトラブルシューティングする際に ResultCategories
の詳細レベルが十分ではない場合、ParticipantEndReason
と ParticipantEndSubCode
を使用すると、通話が終了した理由をより詳細に把握できます。 ParticipantEndReason
と ParticipantEndSubCode
も、通話概要ログ スキーマのプロパティです。
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 サービスによって生成されたことを意味します。
関連するコンテンツ
- 一般的なトラブルシューティングについては、「Azure Communication Services でのトラブルシューティング」を参照してください。
- 一般的なエラー コードと推奨されるアクションの詳細については、Calling SDK、Call Automation SDK、PSTN 通話の通話終了応答コードのトラブルシューティングに関するページを参照してください。