針對通話 SDK、通話自動化 SDK、PSTN、聊天 SDK 和 SMS SDK 的通話端回應碼進行疑難解答
本文說明針對通話 SDK、通話自動化和 PSTN 通話。
疑難排解秘訣
進行疑難排解時請考量下列秘訣:
- 您的應用程式未收到
IncomingCall Event Grid
事件:建立事件訂閱時,請確保應用程式端點使用事件方格進行驗證。 如果驗證成功,事件訂用帳戶的佈建狀態會標示為成功。 - 針對錯誤
The field CallbackUri is invalid
:呼叫自動化不支援 HTTP 端點。 請確定您提供的回撥 URL 支援 HTTPS。 PlayAudio
動作不會播放任何內容:音訊檔案目前僅支援 Wave 檔案 (.wav) 格式。 wave 檔案中的音訊內容必須是單聲道 (單一頻道)、16 位元樣本並使用 16,000 (16 KHz) 取樣率。- PSTN 端點上的動作無法運作:針對
CreateCall
、Transfer
、AddParticipant
和Redirect
電話號碼,您必須在動作要求中設定SourceCallerId
。 除非您使用直接路由,否則來源撥號者識別碼必須是通訊服務資源所擁有的電話號碼,動作才能成功。
如需關於產品小組追蹤問題的詳細資訊,請參閱已知問題。
注意
下列資料表列出的訊息和結果類別目錄為公開預覽狀態。 如需詳細資訊,請參閱 Microsoft Azure 預覽版增補使用條款。
了解呼叫程式碼和子程式碼的錯誤
錯誤碼、子程式碼和對應的結果類別可協助開發人員識別和診斷錯誤。 通話結束之後,這些錯誤碼會透過 call.callEndReason
屬性來公開。
錯誤碼詳細資料包括:
程式碼 - 代表用戶端或伺服器回應狀態的 3 位數整數。 錯誤碼類別:
- 成功回應 (200-299)
- 用戶端錯誤 (400-499)
- 伺服器錯誤 (500-599)
- 全域錯誤 (600-699)
子程式代碼 - 定義為整數,其中每個數位代表一個唯一原因,特定案例或特定案例結果群組。
訊息 - 用於描述結果,並在結果失敗時提供如何減輕問題的指示。
ResultCategory - 表示錯誤的類型。 視內容而定,值可以是 Success
、ExpectedError
、UnexpectedClientError
或 UnexpectedServerError
。
Azure 通訊服務呼叫 SDK 用戶端錯誤碼和子程式碼
針對用戶端錯誤,如果 resultCategories 屬性為 ExpectedError
,則從 SDK 的觀點來看,可能會發生錯誤。 這類錯誤通常發生在先決條件失敗時,例如應用程式傳遞的不正確引數,或當目前的系統狀態不允許 API 呼叫時。 應用程式應該檢查叫用 API 的錯誤原因和邏輯。
子代碼 | 代碼 | 訊息 | 結果類別 | 建議 |
---|---|---|---|---|
40101 | 408 | 無法建立 CallAgent。 請再試一次,如果問題持續發生,請收集瀏覽器控制台記錄、.HAR 檔案,並連絡 Azure 通訊服務支援。 |
UnexpectedClientError | |
40104 | 408 | 無法建立 CallAgent。 請再試一次,如果問題持續發生,請收集瀏覽器控制台記錄、.HAR 檔案,並連絡 Azure 通訊服務支援。 |
UnexpectedClientError | |
40114 | 408 | 無法連線到 Azure 通訊服務通訊服務。 請再試一次,並檢查瀏覽器的網路要求。 如果請求持續失敗,請收集瀏覽器控制台記錄、.HAR 檔案,並連絡 Azure 通訊服務支援。 |
UnexpectedClientError | 如需詳細資訊,請參閱網路需求。 |
40115 | 412 | 無法建立 CallAgent,無法初始化與 Azure 通訊服務基礎結構的連線。 請再試一次,並檢查瀏覽器的網路要求。 如果請求持續失敗,請收集瀏覽器控制台記錄、.HAR 檔案,並連絡 Azure 通訊服務支援。 |
UnexpectedClientError | 如需詳細資訊,請參閱網路需求。 |
40216 | 500 | 無法建立 CallAgent。 請再試一次,如果問題持續發生,請收集瀏覽器控制台記錄,並連絡 Azure 通訊服務支援。 | UnexpectedClientError | |
40228 | 409 | 無法建立 CallAgent,與此身分識別相關聯的 CallAgent 實例已存在。 處置現有的 CallAgent,或建立具有不同身分識別的新 CallAgent。 | ExpectedError | |
40230 | 409 | 無法建立 TeamsCallAgent,與此身分識別相關聯的 TeamsCallAgent 實例已存在。 建立新的 TeamsCallAgent 之前,先處置現有的 TeamsCallAgent。 | ExpectedError | |
40606 | 405 | 無法列舉喇叭,不支援在 Android Chrome、iOS Safari 或 macOS Safari 上列舉/選取喇叭。 | ExpectedError | Android Chrome、iOS Safari 和 macOS Safari 均不支援列舉/選取喇叭。 操作系統會自動選取喇叭 (輸出裝置)。 深入了解裝置管理,以及如何減輕這些問題。 |
40613 | 400 | 無法取得麥克風和/或相機的使用權限,該動作遭到拒絕或失敗。 確保允許瀏覽器和作業系統設定中的存取權限。 | ExpectedError | 深入了解如何處理裝置存取權限。 |
40614 | 500 | 無法要求裝置存取權限。確保已允許瀏覽器設定和作業系統設定中的存取權限,然後再試一次。 如果問題持續發生,請收集瀏覽器控制台記錄,並連絡 Azure 通訊服務支援。 | UnexpectedClientError | 深入了解如何處理裝置存取權限。 |
41006 | 400 | 無法接受來電,目前非響鈴狀態。 訂閱 CallAgent 的 incomingCall 事件,以接受來電。 |
ExpectedError | 請參閱下列文章,以識別問題的根本原因 - 接聽來電 - 訂閱 SDK 事件 |
41007 | 400 | 無法接受來電,目前非響鈴狀態。 訂閱 CallAgent 的 incomingCall 事件,以拒絕來電。 |
ExpectedError | 請參閱下列文章,以識別問題的根本原因 - 接聽來電 - 訂閱 SDK 事件 |
41015 | 500 | 無法將麥克風設為靜音。 請再試一次,如果該問題持續發生,請收集瀏覽器控制台記錄,並連絡 Azure 通訊服務支援。 | UnexpectedClientError | |
41016 | 400 | 無法取消麥克風靜音。 請再試一次,如果該問題持續發生,請收集瀏覽器控制台記錄,並連絡 Azure 通訊服務支援。 | UnexpectedClientError | |
41025 | 400 | 無法開始視訊,LocalVideoStream 實例無效或空白。 傳遞 LocalVideoStream 實例。 | ExpectedError | 請確保為開始視訊而傳遞的物件是 LocalVideoStream 的實例。 使用 VideoDeviceInfo 物件或 MediaStream 物件來建構 LocalVideoStream 。 請參閱下列文章,以識別問題的根本原因: - 使用視訊相機撥打電話 - 在通話時開始和停止傳送本機視訊 - 存取原始視訊 |
41027 | 400 | 無法開始視訊,已開始影片。 | ExpectedError | 實用連結: - 使用視訊相機撥打電話 - 在通話時開始和停止傳送本機視訊 |
41030 | 400 | 無法停止視訊,已停止影片。 | ExpectedError | 實用連結: - 使用視訊相機撥打電話 - 在通話時開始和停止傳送本機視訊 |
41032 | 400 | 無法停止視訊,無效的引數。 目前未傳送做為輸入的 LocalVideoStream。 | ExpectedError | 呼叫中正在傳送的 LocalVideoStream 會儲存在 Call.localVideoStreams[] 陣列中,且類型為 Video 或 RawMedia 。 請參閱下列文章,以識別問題的根本原因: - 使用視訊相機撥打電話 - 在通話時開始和停止傳送本機視訊 - 存取原始視訊 |
41033 | 500 | 無法保留通話。 請再試一次,如果該問題持續發生,請收集瀏覽器控制台記錄,並連絡 Azure 通訊服務支援。 | UnexpectedClientError | |
41034 | 500 | 無法繼續通話。 請再試一次,如果該問題持續發生,請收集瀏覽器控制台記錄,並連絡 Azure 通訊服務支援。 | UnexpectedClientError | |
41035 | 400 | 無法開始螢幕畫面分享,已開始螢幕畫面分享。 | ExpectedError | 深入了解在通話時如何開始和停止螢幕畫面分享 |
41041 | 400 | 無法停止螢幕畫面分享,已停止螢幕畫面分享。 | ExpectedError | 深入了解在通話時如何開始和停止螢幕畫面分享 |
41048 | 410 | 在通話設定流程時無法開始視訊。 確保已允許瀏覽器設定和作業系統設定中的視訊存取權限,並確保攝影機裝置不會使用於另一個流程。 | UnexpectedClientError | - 系統可能會停用攝影機裝置。 - 由另一個流程所使用的攝影機。 |
41056 | 412 | 無法開始或加入通話,此 Azure 通訊服務資源尚未啟用 Teams 企業語音資源。 請遵循在線教學課程,以啟用 Teams 企業語音資源。 | ExpectedError | 請參閱如何線上啟用企業語音和電話系統語音信箱使用者,以啟用 Teams 企業語音原則 |
41071 | 412 | 無法開始螢幕畫面分享,通話尚未處於連線狀態。 訂閱通話的 statteChanged 事件,以了解通話連線的時機。 |
ExpectedError | 實用連結: - 檢查通話屬性 - 訂閱 SDK 事件 |
41073 | 412 | 無法取得或設定自訂 MediaStream,Azure 通訊服務目前已停用此功能。 | ExpectedError | |
43000 | 412 | 無法開始視訊,其他流程/應用程式正在使用視訊裝置。 停止在其他流程/應用程式中使用您的攝影機,然後再試一次。 | ExpectedError | 深入了解如何處理另一個流程正在使用的攝影機 |
43001 | 403 | 無法開始視訊,未授予使用權限以使用選取的視訊裝置。 確保已允許瀏覽器設定和系統設定中視訊裝置的存取權限。 | ExpectedError | 確保已允許瀏覽器設定和裝置系統設定中攝影機的存取權限。 確保在裝置系統設定中攝影機不會遭到停用。 在 macOS 上,確保系統設定允許螢幕錄製。 實用連結: - 要求裝置權限- macOS 上的螢幕共用權限 - 在 macOS 和 iOS 上列舉或存取 Safari 的裝置 |
43002 | 500 | 無法開始視訊,未知錯誤。 然後再試一次。 如果問題持續發生,請連絡 Azure 通訊服務支援人員。 | UnexpectedClientError | |
43004 | 400 | 無法切換視訊裝置,無效的輸入。 輸入必須是 VideoDeviceInfo 類型。 | ExpectedError | 使用設備管理員來取得 VideoDeviceInfo 物件清單,然後使用 VideoDeviceInfo 物件來切換來源。 深入了解如何在通話時開始和停止傳送本機視訊 |
43005 | 400 | 無法切換視訊裝置,無法切換至相同的視訊裝置,已選取該視訊裝置。 | ExpectedError | |
43013 | 412 | 無法開始視訊,找不到視訊裝置。 確保視訊裝置已插入系統設定中並啟用。 | ExpectedError | 請確保攝影機已連線且安裝至您的裝置上。 |
43014 | 412 | 無法開始視訊,要求媒體串流時發生錯誤。 請再試一次,如果問題持續發生,請連絡 Azure 通訊服務支持人員。 | UnexpectedClientError | |
43015 | 412 | 無法開始視訊,媒體串流要求逾時。允許瀏覽器提示存取相機使用權限,然後再試一次。 | ExpectedError | 如果使用者未對瀏覽器的使用權限提示採取動作,以允許存取攝影機,便會發生此錯誤。 |
43016 | 412 | 無法開始視訊,系統拒絕使用權限。 確保已允許瀏覽器設定和系統設定中視訊裝置的存取權限。 | ExpectedError | - 確保已允許瀏覽器設定和裝置系統設定中攝影機的存取權限。 - 確保在裝置系統設定中攝影機不會遭到停用。 - 在 macOS 上,確保系統設定允許螢幕錄製。 實用連結: - 要求裝置權限 -macOS 上的螢幕共用權限 - 在 macOS 和 iOS 上列舉或存取 Safari 的裝置 |
43017 | 412 | 無法開始視訊,不支援的串流。 請再試一次,如果問題持續發生,請連絡 Azure 通訊服務支持人員。 | UnexpectedClientError | |
43018 | 412 | 無法開始視訊,無法設定條件約束。 請再試一次,如果問題持續發生,請連絡 Azure 通訊服務支持人員。 | UnexpectedClientError | 深入了解如何設定視訊條件約束 |
43019 | 412 | 無法開始視訊,尚未選取裝置。 請確保傳遞使用 VideoDeviceInfo 建構的 LocalVideoStream,然後再試一次。 如果問題持續發生,請連絡 Azure 通訊服務支援人員。 | UnexpectedClientError | 實用連結: - 使用視訊相機撥打電話 - 在通話時開始和停止傳送本機視訊 |
43200 | 412 | 無法轉譯視訊串流,無法使用此串流。 訂閱資料流的 isAvailable 屬性,讓遠端參與者在其影片開啟且串流可供轉譯時收到通知。 | ExpectedError | 實用連結: - 轉譯遠程參與者視訊/螢幕畫面分享串流 - 為應用程式新增 1:1 視訊通話功能 - 訂閱 SDK 事件 |
43202 | 404 | 無法轉譯視訊串流,無法更長時間使用此串流。 遠端參與者已關閉影片。 | ExpectedError | 遠端參與者在嘗試為視訊建立檢視時,關閉了其視訊。 |
43203 | 408 | 無法轉譯視訊串流,轉譯在等候視訊畫面時逾時。 請再試一次,如果問題持續發生,請連絡 Azure 通訊服務支持人員。 | UnexpectedClientError | |
43204 | 500 | 無法轉譯視訊串流,無法在 Azure 通訊服務基礎結構上訂閱影片。 請再試一次,如果問題持續發生,請連絡 Azure 通訊服務支持人員。 | UnexpectedClientError | |
43209 | 405 | 無法轉譯視訊串流,VideoStreamRenderer 在初始化流程期間已處置。 | ExpectedError | |
43210 | 400 | 無法處置 VideoStreamRenderer,因為已完成處置。 | ExpectedError | |
43220 | 400 | 無法建立檢視,已達到使用中 RemoteVideoStream 檢視的數目上限。 您可以處置先前的檔案,以建立新檔案。 |
ExpectedError | 深入了解如何正確支援傳入的視訊串流最佳數目 |
480 | 遠端用戶端端點未註冊。 | 請確定遠端端點可供使用。 | ||
481 | 無法處理傳入的通話。 | 透過 Azure 入口網站提出支援要求。 | ||
487 | 通話已取消、在本機遭到拒絕或已結束,因為端點不符或無法產生媒體供應項目。 | 預期的行為。 | ||
490、491、496、497、498 | 本機端點網路問題。 | 檢查您的網路。 | ||
503、504 | 通訊服務基礎結構錯誤。 | 透過 Azure 入口網站提出支援要求。 | ||
600 | 在任何地方顯示忙碌。 已成功連絡參與者,但傳回忙碌訊號。 | 預期的行為。 | ||
603 | 遠端通訊服務參與者的全域通話遭到拒絕。 | 預期的行為。 | ||
604 | 不存在任何地方。 要求的 URI 不存在。 | 預期的行為。 | ||
606 | 無法接受。 已成功連絡參與者,但所述的工作階段不受支援。 | 預期的行為。 |
了解呼叫程式碼和子程式碼的錯誤
錯誤碼、子程式碼和對應的結果類別可協助開發人員識別和診斷錯誤。 通話結束之後,這些錯誤碼會透過 call.callEndReason
屬性來公開。
錯誤碼詳細資料包括:
程式碼 - 代表用戶端或伺服器回應狀態的 3 位數整數。 錯誤碼類別:
- 成功回應 (200-299)
- 用戶端錯誤 (400-499)
- 伺服器錯誤 (500-599)
- 全域錯誤 (600-699)
子程式代碼 - 定義為整數,其中每個數位代表一個唯一原因,特定案例或特定案例結果群組。
訊息 - 用於描述結果,並在結果失敗時提供如何減輕問題的指示。
ResultCategory - 表示錯誤的類型。 視內容而定,值可以是 Success
、ExpectedError
、UnexpectedClientError
或 UnexpectedServerError
。
通話結束通話代碼和子程式碼
通話結束的原因有不同的說明。 以下是通話代碼結尾和子程式碼的意義,這些代碼會顯示通話的結束方式。
子代碼 | 代碼 | 訊息 | 結果類別 | 建議 |
---|---|---|---|---|
0 | 0 | 已由本機參與者順利結束通話。 | Success | |
0 | 487 | 已順利結束通話,因為來電者已取消通話。 | Success | |
0 | 603 | 已順利結束通話,因為已遭受話方拒絕。 | 成功 | 通話已結束,因為目標使用者已透過用戶端 SDK、通話自動化、Graph、PSTN 或 Teams 拒絕函式拒絕。 |
7 | 496 | 呼叫在用戶端中斷網路連線時突然結束,儘管重試多次,但無法連線 | ExpectedError | 瀏覽器已離線或有網路問題。 檢查瀏覽器的網路連線,然後重試。 |
3100 | 410 | 由於用戶端上發生非預期的網路問題,呼叫設定失敗,請檢查用戶端的網路並重試。 | UnxpectedClientError | 檢查網路設定,確定它遵循 Azure 通訊通話網路 需求。 |
3101 | 410 | 由於用戶端上發生非預期的網路問題,所以呼叫已中斷,請檢查客戶端的網路並重試。 | UnxpectedClientError | 檢查網路設定,確定它遵循 Azure 通訊通話網路 需求。 |
3111 | 410 | 通話設定失敗,連線通話時無法處理媒體供應專案。 | UnxpectedClientError | 然後再試一次。 如果問題持續發生,請收集通話資訊、用戶端記錄、瀏覽器控制台記錄,並連絡 Azure 通訊服務 支援。 |
3112 | 410 | 由於用戶端上的網路設定問題、檢查客戶端的網路設定,然後重試,呼叫安裝程序失敗。 | ExpectedError | 在這裡深入瞭解以 3112 子碼結尾的通話詳細數據。 |
4097 | 0 | 已結束會議召集人對所有使用者的通話。 | 成功 | |
4,502 | 490 | 呼叫失敗,因為網路連線問題,瀏覽器無法完成網路 HTTP 要求。 | UnexpectedClientError | 用戶端無法完成 HTTP 要求和回應。 然後再試一次。 如果問題持續發生,請收集通話資訊、用戶端記錄、瀏覽器控制台記錄,並連絡 Azure 通訊服務 支援。 |
4506 | 408 | 通話逾時。檢查被呼叫者是否已收到並接受通話。 | UnexpectedClientError | 然後再試一次。 如果問題持續發生,請收集通話資訊、用戶端記錄、瀏覽器控制台記錄,並連絡 Azure 通訊服務 支援。 |
4507 | 495 | 已結束通話,因為應用程式未提供有效的 Azure 通訊服務權杖。 | UnexpectedClientError | 請確保您的應用程式正確實作權杖重新整理機制。 |
4521 | 0 | 通話因使用者突然中斷通話連線而結束。 這可能是使用者關閉了裝載通話的應用程式所致,例如,使用者未正確掛斷即關閉瀏覽器索引標籤,因而終止了應用程式。 | ExpectedError | |
5000 | 0 | 已結束此參與者的通話。 另一個參與者已從交談中移除參與者。 | 成功 | |
5003 | 0 | 已順利結束呼叫,因為所有被呼叫者皆拒絕呼叫。 | 成功 | |
5300 | 0 | 這名參與者的通話已結束,因為另一名參與者將其從交談中移除。 | 成功 | 當另一個參與者移除此參與者時,呼叫已結束,可能是另一個用戶端、呼叫自動化 API、圖形 API。 |
5,317 | 0 | 目標參與者因參與者角色更新而遭到移除。 | ExpectedError | |
5828 | 403 | 因為使用者不是受邀者清單的一部分,因此未獲得會議室會議的授權。 | UnexpectedClientError | |
5829 | 403 | 會議結束時間或會議開始時間之前,不允許會議室會議加入。 | UnexpectedClientError | |
5830 | 403 | 僅允許通訊服務使用者加入會議室會議。 | ExpectedError | |
7000 | 0 | 呼叫已由 Azure 通訊服務呼叫自動化 API 或伺服器 Bot 結束。 | 成功 | 呼叫已由 ACS 呼叫自動化 API 或 Graph Bot 結束。 |
10003 | 487 | 此用戶端點的呼叫已取消,因為另一個端點已在其他地方接受。 | 成功 | 已起始呼叫目標使用者(開始通話、新增參與者、轉移),目標用戶同時有多個作用中端點,其中一個端點使用者接受呼叫。 這是一般行為,只有一個端點可以接受並連線到呼叫。 所有其他端點都會接收子碼 10003,表示已接受呼叫。 |
10004 | 487 | 通話在逾時時取消,因為目標使用者未及時接受或拒絕。 請確定使用者看到通知和/或應用程式可以自動處理,並嘗試再次起始該呼叫。 | ExpectedError | 在預先定義的時間量(通常是 2 分鐘)後取消通話,因為目標使用者不接受或拒絕。 |
10009 | 401 | 未經驗證的身分識別。 請確定您的 Azure 通訊服務 令牌有效且未過期。 | UnexpectedClientError | |
10024 | 487 | 通話已順利結束。 所有遭受話方端點拒絕的通話。 | 成功 | 嘗試再次撥打電話。 |
10037 | 480 | 目標用戶沒有任何向 ACS 註冊的端點。 請確定目標使用者至少有一個作用中的端點,且已上線。 | ExpectedError | 如果目標使用者使用 Azure 通訊服務 呼叫 SDK,請確定 SDK 在其用戶端應用程式中已成功初始化。 如果目標使用者是 Teams 使用者,請確定其用戶端已上線。 請確定目標使用者的標識碼(CommunicationUserIdentifier、MicrosoftTeamsUserIdentifier 或 MicrosoftTeamsBotIdentifier) 正確無誤。 如果 Graph API user 已將 屬性 department 設定為 Microsoft Communication Application Instance MicrosoftTeamsBotIdentifier ,則應該指定 。 |
10057 | 408 | 通話失敗,受話方無法完成通話設定,最有可能是受話方遺失網路或突然終止應用程式。 請確定用戶端已連線且可供使用。 | ExpectedError | |
10076 | 480 | 目標用戶已註冊,但未在通話時上線。 請確定目標使用者至少有一個作用中的端點,且已上線。 | ExpectedError | 如果目標使用者使用 Azure 通訊服務 呼叫 SDK,請確定 SDK 已成功在用戶端應用程式中初始化,且其端點已上線。 如果目標使用者是 Teams 使用者,請確定其用戶端已上線。 |
10077 | 480 | 目標使用者已向 ACS 和/或註冊推播通知,但在通話時並未上線。 請確定目標使用者至少有一個作用中的端點,且已上線。 | ExpectedError | 如果目標使用者使用 Azure 通訊服務 呼叫 SDK,請確定 SDK 已成功在用戶端應用程式中初始化,且其端點已上線。 如果應用程式利用推播通知,請確定已正確設定。 如果目標使用者是 Teams 使用者,請確定其用戶端已上線。 |
10078 | 480 | 遠端用戶端端點未註冊或無法連線。 請確定遠端用戶端端點已成功將網路要求傳送至 Azure 通訊服務。 | ExpectedError | - 如果目標使用者使用 Azure 通訊服務 呼叫 SDK,請確定 SDK 已成功在用戶端應用程式中初始化,且其端點已上線。 如果應用程式利用推播通知,請確定已正確設定。 - 如果目標使用者是 Teams 使用者,請確定其用戶端已上線。 |
301004 | 410 | 參與者已從 Azure 通訊服務 基礎結構的通話中移除,因為無法在通話安裝期間建立與 Azure 通訊服務 基礎結構的媒體連線。 檢查使用者的網路設定,包括局域網路、防火牆、VPN 設定,然後再試一次。 | UnexpectedClientError | 請確定使用者的網路已正確設定,請遵循「網路建議」公開檔。 |
301005 | 410 | 由於與相同基礎結構的媒體連線中斷,Azure 通訊服務基礎結構已從通話中移除參與者。 該情況通常會發生在參與者突然離開通話或失去網路連線。 如果參與者想要繼續通話,他們可以重新連線。 | UnexpectedClientError | 請確定您是在支援的環境中使用最新的 SDK。 |
540000 | 0 | 本機 PSTN 來電者已成功結束通話。 | 成功 | |
510403 | 403 | 已結束通話,其先前標示為垃圾通話,現在已封鎖。 | ExpectedError | - 請確保您的通訊服務權杖有效且未過期。 - 確保在通話選項中傳入 AlternateId 。 |
540487 | 487 | 已順利結束通話,因為來電者已取消通話。 | 成功 | |
560000 | 0 | 已由遠端 PSTN 參與者順利結束通話。 | 成功 | 可能的原因: - 使用者已結束通話。 - 由媒體代理程式結束的通話。 |
560486 | 486 | 已結束通話,因為遠端 PSTN 參與者忙碌中。 撥打的號碼正在電話中,或發生技術性問題。 | 成功 | - 如需直接路由通話,請檢查您的工作階段邊界控制記錄、設定和逾時設定。 可能的原因:呼叫的號碼已在通話中,或發生技術問題。 |
404 | 找不到通話。 | 確定您要通話的號碼 (或您要加入的通話號碼) 存在。 | ||
408 | 通話控制器逾時。 | 通話控制器因等候使用者端點的通訊協定訊息而逾時。 請確定用戶端已連線且可供使用。 | ||
410 | 本機媒體堆疊或媒體基礎結構錯誤。 | 請確定您是在支援的環境中使用最新的 SDK。 | ||
430 | 無法將訊息傳遞至用戶端應用程式。 | 請確定用戶端應用程式正在執行且可供使用。 | ||
480 | 遠端用戶端端點未註冊。 | 請確定遠端端點可供使用。 | ||
481 | 無法處理傳入的通話。 | 透過 Azure 入口網站提出支援要求。 | ||
490、491、496、497、498 | 本機端點網路問題。 | 檢查網路設定,確定它遵循 Azure 通訊通話網路 需求。 | ||
500、503、504 | 通訊服務基礎結構錯誤。 | 透過 Azure 入口網站提出支援要求。 |
瞭解呼叫程式代碼和子程序代碼
何時收到錯誤碼?
呼叫自動化的錯誤碼可以是 API 呼叫的同步回應,或透過提供的回呼 URI 進行異步回應。 在同步的情況下,如果已進行 API 呼叫且不接受,ACS 會提供錯誤碼,說明 API 呼叫遭到拒絕的原因。 在異步案例中,如果已進行 API 呼叫並接受,但仍發生錯誤,則會同時收到回呼事件和錯誤碼。 呼叫失敗的常見回呼事件範例是 callDisconnected
每當呼叫中斷連線時浮出水面的事件。 callDisconnected
一旦收到事件,該指定呼叫就不會再有回呼事件。 如需呼叫訊號回呼事件的清單,請參閱(此頁面),以及媒體動作的回呼事件清單,請參閱 (此頁面)。
錯誤碼語法
錯誤碼、子程式碼和對應的結果類別可協助開發人員識別和診斷錯誤。 錯誤碼詳細資料包括:
程式碼 - 代表用戶端或伺服器回應狀態的 3 位數整數。 錯誤碼類別:
- 成功回應 (200-299)
- 用戶端錯誤 (400-499)
- 伺服器錯誤 (500-599)
- 全域錯誤 (600-699)
子程式代碼 - 定義為整數,其中每個數位代表一個唯一原因,特定案例或特定案例結果群組。
訊息 - 描述結果,並提供提示如何在結果為失敗時減輕問題。
除了程式代碼和子程序代碼之外,還可以在通話記錄中找到更詳細的疑難解答資訊。 若要深入瞭解如何啟用和存取通話記錄,請參閱 此頁面 以取得詳細指引。
呼叫自動化 SDK 錯誤碼
下表包含最常見的程式代碼和子程序代碼。 如果您的錯誤不在下表中,請參閱泛型程式代碼和子程序代碼,以取得特定案例的詳細資訊。
最常見的通話自動化錯誤碼
代碼 | 子代碼 | 描述 | 風險降低 |
---|---|---|---|
404 | 8522 | 指出找不到資源的泛型錯誤碼。 資源可以包含通話和參與者。 | 雙重檢查通話狀態:通話可能已經結束,或參與者已離開通話。 |
400 | 8523 | 泛型錯誤碼,指出要求主體中的某個項目無效。 | 檢查以確定所有參數都有效。 請參閱錯誤訊息,以判斷哪個參數擲回錯誤。 |
400 | 8501 | 動作不支援呼叫未建立 | 當呼叫未使用時,已啟動與錯誤訊息相關聯的動作。 確定呼叫中斷連線之後,不會起始新的呼叫動作。 如果呼叫接近呼叫中斷連線的時間,則這個錯誤也可能是由呼叫作用中時叫用的動作所造成。 |
400 | 8500 | 無效的媒體模式 | 檢查媒體作業的狀態,以查看其中是否有任何活動,或目標參與者是否已經在媒體作業中。 如果有作用中的媒體作業,請等候作業完成,然後再試一次。 |
400 | 8559 | 動作不支援只允許一個單一撥號應用程式 | 重複的開始錄製要求,錄製已起始或進行中。 再次檢查錄製狀態,以確保在提交新的開始錄製通話之前處於非使用中狀態。 |
400 | 8528 | 不支援終止呼叫的動作 | 當呼叫終止時,已啟動與錯誤訊息相關聯的動作。 確定呼叫終止之後,不會起始新的呼叫動作。 如果呼叫接近呼叫終止時間,則這個錯誤也可能是由呼叫作用中時叫用的動作所造成。 |
409 | 8519 | 衝突 | 檢查以確定不會平行在相同的資源上執行多個動作。 請參閱錯誤訊息,以識別哪些兩個動作發生衝突。 |
403 | 7507 | 呼叫來源身分識別無效 | 來自授權令牌的應用程式身分識別與呼叫來源中的應用程式身分識別不符。 請檢查以確定您使用來自 ACS 資源的 連接字串,傳入通話 Webhook 已設定於 中(電話號碼必須由接聽通話的相同 ACS 資源所擁有)。 |
403 | 7504 | 應用程式許可權不足 | 許可權不足的一般程式代碼,請檢查錯誤訊息,以取得資源缺少許可權的內容。 |
400 | 8585 | 動作在目前呼叫狀態中無效 | 通話未建立或已中斷連線:等候呼叫建立,再重試媒體動作。 |
405 | 8520 | 目前不支援的功能 | 預期的錯誤:目前不支援工作流程。 請查看我們的發行部落格,以查看是否有已啟用這些功能的已更新 SDK。 如需不支援的工作流程清單,請參閱通話自動化已知限制頁面。 |
412 | 8583 | 先決條件失敗 | 參考 此頁面 列出不相容的媒體動作,以確保您未執行或將不相容的動作排入佇列。 |
400 | 8567 | ACS 資源服務主體未啟用 | Azure 認知服務資源未正確設定。 如需設定 Azure 認知服務資源的指南,請參閱此頁面。 |
405 | 8522 | 遺漏設定 | 如需需要建立設定的更多內容,請檢查錯誤訊息。 叫用 AnswerCall API 時,必須執行此設定。 |
一般錯誤碼
2xx 代碼
2xx 程式代碼代表成功的回應。 成功回應的子碼會是 0。
4xx 代碼
4xx Code 代表客戶端錯誤。
狀態碼 | 描述 |
---|---|
400 | 錯誤要求 |
401 | 未經授權 |
403 | 禁止 |
404 | 找不到 |
405 | 不允許方法 |
406 | 無法接受 |
408 | 逾時 |
409 | 衝突 |
412 | 前置條件失敗 |
413 | 要求實體太大 |
426 | 需要升級 |
429 | 太多要求 |
481 | 交易不存在 |
487 | 已取消 |
5xx 代碼
5xx 程式代碼代表伺服器錯誤。
狀態碼 | 描述 |
---|---|
500 | 內部伺服器錯誤 |
501 | 未實作 |
502 | 閘道不正確 |
503 | 服務無法使用 |
504 | 閘道逾時 |
6xx 代碼
6xx 程式代碼代表全域錯誤。
狀態碼 | 描述 |
---|---|
603 | 已拒絕 |
泛型子程序代碼
子代碼 | 描述 |
---|---|
0 | Success |
7000 | 非失誤性 |
7500 | 不支援的 AAD 身分識別 |
7501 | 無效的令牌 |
7502 | 未啟用存取 |
7504 | 應用程式許可權不足 |
7505 | 企業租使用者不符 |
7506 | 不受信任的憑證 |
7507 | 呼叫來源身分識別無效 |
7508 | 不支援的 ACS 身分識別 |
7509 | Hmac 驗證錯誤 |
7510 | 受控識別驗證錯誤 |
7600 | 未啟用資源存取 |
7601 | 無效的 ACS 來源身分識別 |
7602 | 無效的 ACS 目標身分識別 |
7603 | 無效的 ACS 身分識別 |
7604 | 未經授權的Teams Interop案例 |
7605 | 未經授權的Teams錄製Interop案例 |
7606 | 認知動作的未經授權 ACS 資源 |
8500 | 無效的媒體模式 |
8501 | 未建立呼叫 |
8502 | 我的參與者標識碼無法使用 |
8503 | 呼叫媒體狀態音訊非使用中 |
8504 | 媒體串流無法使用 |
8505 | 多個參與者取代 |
8506 | 不符合規範的錄製通話 |
8508 | 已取消作業 |
8509 | 已達到最大無聲逾時 |
8510 | 已達到初始靜音逾時 |
8511 | 播放提示失敗 |
8512 | 播放嗶聲失敗 |
8513 | 媒體接收逾時 |
8514 | 偵測到停止音調 |
8515 | 已達到記錄持續時間上限 |
8516 | 呼叫節流 |
8517 | 呼叫租用戶標識碼不符 |
8518 | 呼叫例外狀況 |
8519 | 衝突 |
8520 | 未實作 |
8521 | 太多躍點 |
8522 | 找不到 |
8523 | 無效的自變數 |
8524 | 合規性錄製無效的參與者計數 |
8525 | 非記錄合作物件 |
8526 | 無效的聯結令牌 |
8527 | 無效的聯結 URL |
8528 | 呼叫已終止 |
8529 | 已達到通話節流每月限制 |
8530 | 已達到通話節流作用中通話限制 |
8531 | 已接收的最大位數 |
8532 | 已達位數逾時 |
8533 | Dtmf 選項相符 |
8534 | 輸入的音調不正確 |
8535 | 無效的檔案格式 |
8536 | 檔案下載失敗 |
8537 | 已達到保持運作逾時 |
8538 | 被呼叫者拒絕 |
8539 | 被呼叫者忙碌中 |
8,540 | 被呼叫者忙碌無處不在 |
8541 | 被呼叫者無法使用 |
8542 | 已取消通話 |
8543 | 呼叫不存在 |
8544 | 無法連線到被呼叫者 |
8545 | 符合語音選項 |
8546 | 被呼叫端傳送無效的要求 |
8547 | 語音選項不相符 |
8548 | 通話不是群組通話 |
8549 | 複位目標交談建立失敗 |
8550 | 複位目標媒體交涉失敗 |
8551 | 不支持複位目標 |
8552 | 無法移除召集人 |
8553 | 重複錄製 |
8554 | 參與者退出會議音訊混合 |
8555 | 已進行中的複位目標 |
8556 | CR 呼叫不支援動作 |
8557 | 格式類型錯誤 |
8558 | 參與者不存在 |
8559 | 重複單一撥號 |
8560 | 由於鎖定的會議而封鎖加入交談 |
8561 | 無效的加入會議標識碼 |
8562 | 不支持錄製模式 |
8563 | 無法辨識語音 |
8564 | 語音服務連線錯誤 |
8565 | 認知服務錯誤 |
8566 | 不允許取消靜音作業 |
8567 | ACS 資源服務主體未啟用 |
8568 | 認知服務要求的受控識別失敗 |
8571 | 錄製作業衝突 |
8569 | 語音辨識 |
8570 | 認知服務語音辨識錯誤 |
8572 | 播放服務關機 |
8573 | 不允許暫停 Resume 方法 |
8578 | 轉譯失敗 |
8579 | 已取消轉譯 |
8580 | 轉譯服務關機 |
8581 | 無效的串流 URL |
8582 | 播放來源文字或 Ssml 空白 |
8583 | 先決條件失敗 |
8585 | 動作在目前呼叫狀態中無效 |
8586 | Bot 未認可來電 |
8587 | 內送通話未及時接聽 |
8588 | 記錄已完成,媒體接收逾時 |
8589 | 記錄節流 |
8594 | 更新會議狀態失敗 |
8603 | 媒體串流失敗 |
8604 | 媒體串流已取消 |
8605 | 不支援轉譯自定義語音模型 |
8,606 | 通訊標識碼建立失敗 |
8607 | 傳輸作業衝突 |
8608 | 錄製參與者客戶端錯誤 |
8609 | 來自 Bot 的聯結回應無效 |
8610 | 通知時沒有來自 Bot 的回應 |
8613 | 已達到通話節流即時輔助字幕限制 |
9001 | 基礎服務的未知錯誤 |
9002 | 基礎服務的逾時錯誤 |
9003 | 作業已取消錯誤 |
9998 | 嚴重錯誤 |
9999 | Unknown |
具有 ParticipantEndReason 的 PSTN 通話回應代碼
本節提供各種 ParticipantEndReason
和 ParticipantEndSubCode
回應代碼組合的疑難排解資訊。 針對本節中的資料表,ParticipantEndReason
= Code 和 ParticipantEndSubCode
= SubCode。
ParticipantEndReason 0
值為 0 的回應 ParticipantEndReason
通常表示一般通話清除,並會標記未發生錯誤的通話。
子代碼 | 代碼 | 訊息 | 結果類別 | 建議 |
---|---|---|---|---|
0 | 0 | 已由本機參與者順利結束通話。 | 成功 | |
560000 | 0 | 一般 PSTN 通話結束: - 使用者已結束通話。 - 由媒體代理程式結束的通話。 |
成功 | |
540000 | 0 | 一般 PSTN 通話結束: - 使用者已結束通話。 - 由媒體代理程式結束的通話。 |
成功 |
ParticipantEndReason 4xx
值為 4xx 的回應 ParticipantEndReason
表示通話尚未連線。
子代碼 | 代碼 | 訊息 | 結果類別 | 建議 |
---|---|---|---|---|
510403 | 403 | 已封鎖通話: - 尚未為通話提供替代識別碼。 - 使用者工作階段邊界控制器 (SBC) 不允許的電話號碼。 |
如需關於替代識別碼的詳細資訊,請參閱管理通話。 - 請確定已指定有效的替代識別碼。 識別碼必須是屬於您正在使用之資源的電話號碼。 - 確認您擁有用來撥打電話的資源。 - 針對直接路由通話,請確認您的工作階段邊界控制器不允許通話的原因。 |
|
560403 | 403 | - 禁止通話。 - 已取消通話。 - 通話遭到拒絕。 |
請確定您以正確的格式撥打有效的電話號碼。 如需支援號碼格式的詳細資訊,請參閱 https://en.wikipedia.org/wiki/E.164。 | |
511532 | 403 | 找不到資源 SIP 主幹設定。 | 在 Azure 入口網站中檢查您的直接路由設定。 如需詳細資訊,請參閱直接路由佈建。 | |
560404 | 404 | - 找不到電話號碼。 - 未指派給任何目標的電話號碼。 - 工作階段邊界控制器不允許的電話號碼。 |
- 請確定電話號碼屬於您正在使用的資源,以及您擁有該資源。 - 確認您撥打的號碼存在,並指派給有效目標。 |
|
511404 | 404 | - 找不到電話號碼。 - 通話中找不到的資源。 |
- 請確定使用的電話號碼屬於您正在使用的資源,以及您擁有該資源。 - 確認您撥打的號碼存在,並指派給一個有效目標。 - 請確定您用於呼叫的資源不會遭到刪除或停用。 - 請確定您的 Azure 訂用帳戶未遭到刪除或停用。 |
|
560408 | 408 | 受話方在規定的時間內沒有回應通話建立訊息。 | - 仔細檢查受話方沒有回應的原因。 - 對於直接路由通話,請檢查您的工作階段邊界控制 (SBC) 記錄和設定以及逾時設定。 |
|
500001 | 408 | 使用者閘道器逾時。 Azure 通訊服務未在指定的時間限制內收到來自用戶端的回應,並終止要求。 |
- 仔細檢查受話方沒有回應的原因。 - 對於直接路由通話,請檢查您的 SBC 記錄和設定以及逾時設定。 |
|
531004 | 410 | 檢查互動式連線建立 (ICE) 失敗。 | - 無法建立媒體路徑。 可能是因為網路設定不正確所導致。 確認您的網路設定,以確定必要的 IP 位址和連接埠不會遭到封鎖。 參閱 https://www.rfc-editor.org/rfc/rfc5245#section-7 中的指導方針。 - 對於直接路由通話,請檢查 ICE 設定和設定檔的 SBC 記錄與設定。 請連絡您的 SBC 廠商以取得設定說明。 如需詳細資訊,請參閱通過 Azure 通訊服務直接路由認證的工作階段邊界控制器清單。 |
|
560480 | 480 | - 沒有收到受話使用者的回應。 - 暫時無法連絡受話使用者。 |
- 仔細檢查受話方沒有回應的原因。 - 稍後再重試通話,以防被受話方暫時無法連絡。 - 對於直接路由通話,請檢查您的 SBC 記錄和設定以及逾時設定。 |
|
560484 | 484 | - 不完整或無效的受話方位址。 - 不完整或無效的受話方號碼格式。 |
- 在特定情況下,您可以忽略這些失敗訊息,因為使用者撥打了無效號碼。 - 請確定電話號碼為正確格式。 如需詳細資訊,請參閱https://en.wikipedia.org/wiki/E.164。 - 針對直接路由,SBC 可能會因為遺失通話轉移案例中的設定,而導致這些失敗。 |
|
60486 | 486 | 已撥打的號碼忙碌中 | - 所撥打的號碼可能連線到現有的通話,或發生技術問題。 - 對於直接路由通話,請檢查您的 SBC 記錄和設定以及逾時設定。 |
|
540487 | 487 | 來電者終止了通話要求。 | 請重試通話。 | |
560487 | 497 | - 來電者終止了通話要求。 - 要求會隨著一般通話結束而終止。 |
請重試通話。 |
ParticipantEndReason 5xx
值為 5xx 的回應 ParticipantEndReason
表示呼叫失敗,因為完成連線所需的軟體或硬體元件發生問題。
子代碼 | 代碼 | 訊息 | 結果類別 | 建議 |
---|---|---|---|---|
560500 | 500 | 其中一個涉及通話的服務發生內部伺服器錯誤。 | - 請重試通話。 如果問題持續發生,請連絡您的電信提供者或 Microsoft 支援服務。 - 對於直接路由通話,請檢查您的 SBC 記錄和設定以及逾時設定,以確認 SBC 是否導致失敗。 |
|
560503 | 503 | - 通話失敗,因為其中一個涉及通話的服務內部伺服器錯誤。 - 用來建立通話的網路不一致。 - 通話中涉及的一項服務暫時失敗。 |
- 檢查您的網路和路由設定是否有可能的問題。 驗證您的網路防火牆規則正確無誤。 - 請重試通話。 如果問題持續發生,請連絡電信提供者或 Microsoft 支援服務。 - 對於直接路由通話,請檢查您的 SBC 記錄和設定以及逾時設定,以確認 SBC 是否導致失敗。 |
ParticipantEndReason 603
值為 603 的回應 ParticipantEndReason
表示通話在未連線的情況下遭到拒絕。
子代碼 | 代碼 | 訊息 | 結果類別 | 建議 |
---|---|---|---|---|
560603 | 603 | - 受話方拒絕的通話。 - 由於偵測到詐騙而拒絕通話。 |
- 如果受話方拒絕,請重試通話。 - 請確保您未超過 Azure 通訊服務電話號碼允許的同時通話數目上限。 如需詳細資訊,請參閱 PSTN 通話限制。 |
聊天 SDK 錯誤碼
聊天 SDK 會使用下列錯誤碼,協助您對聊天問題進行疑難排解。 錯誤碼會透過錯誤回應中的 error.code
屬性顯示。
代碼 | 訊息 | 建議 |
---|---|---|
401 | 未經授權 | 請確定您的通訊服務權杖有效且未過期。 |
403 | 禁止 | 請確定要求的啟動器具有資源的存取權。 |
429 | 太多要求 | 請確定您的用戶端應用程式會以使用者方便操作的方式處理此案例。 如果錯誤持續發生,請提出支援要求。 |
503 | 服務無法使用 | 透過 Azure 入口網站提出支援要求。 |
SMS 錯誤碼
聊天 SMS SDK 會使用下列錯誤碼,協助您對 SMS 問題進行疑難排解。 錯誤碼會透過 SMS 傳遞報告中的 DeliveryStatusDetails
欄位顯示。
代碼 | 訊息 | 建議 |
---|---|---|
2000 | 已成功傳遞訊息。 | |
4000 | 訊息因詐騙偵測而遭拒絕。 | 請確定您未超過您的號碼所允許的訊息數目上限。 |
4001 | 訊息因來源/撥號者號碼格式無效而遭到拒絕 | 確定收訊號碼為 E.164 格式,且撥號者號碼格式為 E.164 或簡短代碼格式。 |
4002 | 訊息因目的地/收件者號碼格式無效而遭到拒絕。 | 確定收訊號碼採用 E.164 格式 |
4003 | 訊息因目的地不受支援而無法傳遞。 | 請檢查您嘗試傳送的目的地是否受到支援。 |
4004 | 訊息無法傳遞,因為目的地/收訊號碼不存在。 | 請確定您訊息傳送的收訊號碼有效。 |
4005 | 由目的地電信業者封鎖的訊息。 | |
4006 | 無法連線到目的地/收訊號碼。 | 請稍後嘗試重新傳送訊息。 |
4007 | 目的地/收訊號碼已選擇不接收來自您的訊息。 | 將目的地/收訊號碼標示為已退出,如此就不會再嘗試傳送訊息到該號碼。 |
4008 | 您已超過設定檔允許的訊息數目上限。 | 請確定您未超過您的號碼所允許的訊息數目上限,或使用佇列來分批處理訊息。 |
4009 | Microsoft 權利系統拒絕訊息。 | 最常在偵測到詐騙活動時發生。 如需詳細資料,請連絡支援人員。 |
4010 | 由於免付費電話號碼未經過驗證而封鎖訊息。 | 請檢閱未驗證的傳送限制,並盡快提交免付費電話驗證。 |
5000 | 無法傳遞訊息。 如需詳細資訊,請連絡 Microsoft 支援小組。 | 透過 Azure 入口網站提出支援要求。 |
5001 | 訊息因應用程式/系統暫時無法使用而無法傳遞。 | |
5002 | 電信業者不支援傳遞報告 | 如果電信業者不支援傳遞報告,則最常發生此情況。 由於訊息可能已傳遞,因此不需要採取任何動作。 |
9999 | 訊息因未知的錯誤/失敗而無法傳遞。 | 請嘗試重新傳送訊息。 |