針對 Azure 通訊服務 PSTN 通話失敗進行疑難排解
當您針對 Azure 通訊服務 PSTN 呼叫失敗進行疑難排解時,建議啟用記錄。 然後,您可使用 ResultCategories
、ParticipantEndReason
和 ParticipantEndSubCode
值來判斷個別通話結束的原因,以及系統是否偵測到任何失敗。
使用 ResultCategories 針對失敗進行疑難排解
ResultCategories
陣列是通話摘要記錄結構描述的屬性。 其中包含描述通話結束方式的一般原因清單:
Success
Failure
UnexpectedClientError
UnexpectedServerError
這項資訊可協助您判斷通話結束的原因,而不會產生詳細的錯誤記錄。
使用 ParticipantEndReason 和 ParticipantEndSubCode 針對失敗進行疑難排解
如果您在針對 PSTN 通話進行疑難排解時,ResultCategories
中的詳細資料層級不足,您可以使用 ParticipantEndReason
和 ParticipantEndSubCode
更詳細了解通話結束的原因。 ParticipantEndReason
和 ParticipantEndSubCode
也是通話摘要記錄結構描述的屬性。
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 服務會產生最終回應碼。
相關內容
- 如需一般疑難排解資訊,請參閱 Azure 通訊服務中的疑難排解 (英文)。
- 如需常見錯誤碼和建議動作的詳細資訊,請參閱針對通話 SDK、通話自動化 SDK 和 PSTN 通話的通話結束回應碼進行疑難排解 (英文)。