共用方式為


針對 Azure 通訊服務 PSTN 通話失敗進行疑難排解

當您針對 Azure 通訊服務 PSTN 呼叫失敗進行疑難排解時,建議啟用記錄。 然後,您可使用 ResultCategoriesParticipantEndReasonParticipantEndSubCode 值來判斷個別通話結束的原因,以及系統是否偵測到任何失敗。

使用 ResultCategories 針對失敗進行疑難排解

ResultCategories 陣列是通話摘要記錄結構描述的屬性。 其中包含描述通話結束方式的一般原因清單:

  • Success
  • Failure
  • UnexpectedClientError
  • UnexpectedServerError

這項資訊可協助您判斷通話結束的原因,而不會產生詳細的錯誤記錄。

使用 ParticipantEndReason 和 ParticipantEndSubCode 針對失敗進行疑難排解

如果您在針對 PSTN 通話進行疑難排解時,ResultCategories 中的詳細資料層級不足,您可以使用 ParticipantEndReasonParticipantEndSubCode 更詳細了解通話結束的原因。 ParticipantEndReasonParticipantEndSubCode 也是通話摘要記錄結構描述的屬性。

ParticipantEndReason

ParticipantEndReason 是顯示一般通話狀態的三位數代碼。 此代碼說明通話結束的原因,並依類別將失敗分組。 例如,ParticipantEndReason 404 表示找不到來電者或受話方。 ParticipantEndReason 500 表示發生服務錯誤。

此代碼是以工作階段初始通訊協定 (SIP) 回應碼為基礎。 如需詳細資訊,請參閱維基百科的 SIP 回應碼清單 (英文)。

ParticipantEndSubCode

ParticipantEndSubCode 是一個更具體的回應碼,長度通常為六位數。 其更詳細地說明通話發生問題的原因。

針對 Azure 通訊服務 PSTN 通話進行疑難排解的一個關鍵因素,是判斷通話的最終 SIP 回應碼是來自 Microsoft 程序還是使用者/操作員工作階段邊界控制器 (SBC)。 判斷代碼出處的簡單方式是查看 ParticipantEndSubCode 回應。

如果 ParticipantEndSubCode 值以 560 開頭,表示使用者/操作員的 SBC 產生回應碼。 在此情況下,您應該檢查 SBC 組態。

例如,如果 ParticipantEndSubCode 值為 560403,則表示 SBC 產生最終回應碼,且代碼為 403。 在該情況下,您應該使用 SBC 記錄開始針對通話進行疑難排解。

對於不是以 560 開頭的 ParticipantEndSubCode 回應,Microsoft 服務會產生最終回應碼。