分享方式:


改善和管理通話品質

本文介紹 Azure 通訊服務中,可用來監視、疑難排解及改善通話品質的重要工具。 下列資料可協助您規劃最佳的終端使用者體驗。 請務必先閱讀我們的通話概觀資料,自行熟悉這項服務。

使用 QoS 準備網路並排定重要網路流量的優先順序

使用者開始使用 Azure 通訊服務進行通話和會議時,可能會遇到來電者的聲音或是通話或會議斷斷續續的情況。 分享的視訊可能凍結或像素化,或是完全失敗。 這是因為代表語音和視訊流量的 IP 封包遇到網路壅塞,或是未依序抵達或完全未抵達。 如果發生這種情況 (或是若要事先避免發生這個情況),請遵循我們的網路建議,使用服務品質 (QoS)。

使用 QoS 時,您可以優先處理對延遲敏感的網路流量 (例如語音或視訊串流),讓它插在較不敏感的流量前面 (例如下載新的應用程式,就算下載多花一秒也影響不大)。 QoS 使用 Windows 群組原則物件和稱為連接埠型存取控制清單的路由傳送功能,識別及標記即時串流的所有封包,指示網路為語音、視訊和螢幕畫面分享提供專用網路頻寬。

在理想情況下,您在內部網路實作 QoS,同時為推出 Azure 通訊服務解決方案準備就緒,不過您隨時完成皆可。 如果規模夠小,可能不需要用到 QoS。

如需詳細指導,請參閱:網路最佳化

為品質和可靠性調查準備部署

視終端使用者的即時通訊使用案例和觀點而定,品質有不同的定義。 有許多變數會影響即時通話體驗的感知品質,改善一項變數可能導致另一項變數出現負面變化。 例如,增加視訊通話的畫面播放速率和解析度,可提高網路頻寬使用率和處理能力。

因此,開始開發之前,您必須先判斷客戶的使用案例和需求。 例如,需要同時監視數十部保全攝影機摘要的客戶,可能不需要每個視訊串流所能提供的最高解析度和畫面播放速率。 在這個案例,您可以使用我們的視訊條件約束功能,限制每個視訊串流所使用的頻寬量。

原生平台的記錄

根據記錄檔擷取教學課程實作記錄,對於收集原生開發的詳細資料非常重要。 詳細的記錄有助於診斷裝置型號或 OS 版本特有的問題。 我們鼓勵開始設定記錄 API 的開發人員,取得通話存留期的詳細資料。

在部署之前實作現有的品質和可靠性功能

注意

建議您使用我們易於實作且最佳化的範例,為使用者提供最佳通話品質。 請參閱:範例

如果我們的通話範例不符合您的需求,或您決定自訂解決方案,請確定您在自訂通話情節實作下列功能,也了解這些功能。

在您啟動並調整自訂的 Azure 通訊服務通話解決方案之前,請先實作下列功能,才能支援高品質的通話體驗。 這些工具有助於防止常見的品質和可靠性通話問題發生,並在發生時診斷問題。 請記住,除非您實作這些通話資料,否則不會建立或儲存這些資料。

下列各節詳細說明在不同通話階段實作的工具:

  • 通話之前
  • 通話期間
  • 通話之後

通話之前

通話前整備 – 使用 Azure 通訊服務提供的通話前檢查,您可以在通話之前了解使用者的連線狀態,並代替他們主動採取動作。 例如,如果您了解使用者連線不佳,可以建議他們在加入通話之前關閉視訊,改善音訊連線品質。

網路診斷工具

網路診斷工具提供託管體驗,讓開發人員在開發期間驗證通話整備程度。 您可以檢查使用者的裝置和網路狀況,對於連線服務是否為最佳狀態,確保優異的通話體驗。 此工具會在網路、裝置和通話品質上執行診斷。

  • 使用網路診斷工具,您可以鼓勵使用者解決可靠性問題,並在加入通話之前改善網路連線品質。

  • 如需詳細資訊,請參閱:網路診斷工具

通話前診斷 API

或許您想建置自己的網路診斷工具,或是將這項工具更深入整合至應用程式。 如果是,您可以使用執行通話 SDK 網路診斷工具的通話前診斷 API。 通話前診斷 API 可讓您自訂使用者介面的體驗。 然後,您可以執行網路診斷工具所使用的相同測試系列,確保測試通話的相容性、連線能力和裝置權限。 您可以決定通話開始之前告知使用者如何修正問題的最佳方式。 您也可以在針對品質和可靠性問題進行疑難排解時執行特定檢查。

  • 例如,如果使用者的硬體測試有問題,您可以通知相關使用者,管理未來通話的期望和變更。

  • 如需詳細資訊,請參閱:通話前診斷

衝突的呼叫用戶端

Azure 通訊服務語音和視訊通話在 Web 和行動瀏覽器執行,因此使用者可能有多個瀏覽器索引標籤執行個別的 Azure 通訊服務通話 SDK 執行個體。 這個情況可能因為各種原因發生。 或許使用者忘記關閉先前的索引標籤。或許使用者無法在會議召集人未出席的情況下加入通話,而且他們重新嘗試開啟加入會議的 URL 連結,因而另行開啟了行動瀏覽器索引標籤。無論使用者最終同時有多個通話瀏覽器索引標籤的原因為何,都會在他們嘗試參與的通話 (稱為目標通話) 造成音訊和視訊行為中斷。 您應該在通話開始之前先確定,並未開啟多個瀏覽器索引標籤,並且在整個通話生命週期持續監視。 您可以主動通知客戶關閉多餘的索引標籤,或在客戶無法加入通話之初,以實用的傳訊協助他們正確加入通話。

通話期間

通話期間的通訊 – 通話期間,使用者的網路狀況可能會惡化,或者他們可能遇到可靠性和相容性問題,進而導致通話體驗不佳。 本節協助您運用各種功能管理通話期間的問題,並且與使用者通訊。

使用者端診斷 (UFD)

使用者通話期間,請務必主動即時通知他們通話期間的問題。 使用者端診斷 (UFD) 為使用者提供問題的即時旗標,例如在說話或網路品質不佳時,將他們的麥克風靜音。 您可以提示他們,或代替他們採取行動。 除了傳訊之外,您還可以考慮以主動方式保護使用者擁有的有限頻寬。 您可以量身打造使用者介面訊息,以符合您的情節。 如果您發現使用者收到通知時未一致關閉視訊,則可以主動關閉使用者的視訊,優先處理音訊連線,或甚至在客戶加入通話之前,隱藏使用者介面的的視訊功能。

例如:

  • 如果發現網路問題,您可以提示使用者關閉視訊、變更網路,或移至網路情況或連線較佳的位置。

  • 如果發現裝置問題,您可以提示使用者切換裝置。

  • 如需詳細資訊,請參閱:使用者端診斷

視訊條件約束

視訊串流耗用大量的網路頻寬,如果您知道使用者的網路頻寬有限或網路狀況不佳,可以透過視訊條件約束減少使用者視訊連線的網路使用量。 限制使用者視訊串流可以耗用的頻寬量時,您可以在不良的網路環境中,保護獲得良好音訊品質所需的頻寬。

音量指示器

有時使用者無法聽到對方聲音;可能是喇叭太小聲、接聽者的裝置未接收音訊封包,或者有音訊裝置問題阻擋聲音。 說話太小聲,或者其他人聽不到他們的聲音時,使用者不知情。 您可以使用輸入和輸出指標表示使用者音量太小或沒聲音,並提示使用者透過使用者介面提高說話音量,或是調查音訊裝置問題。

詳細的媒體統計資料

通話期間網路狀況可能改變,因此即使使用者開始通話時沒有問題,也可能回報音訊和視訊品質不佳。 我們的媒體統計資料,針對每個輸入和輸出音訊、視訊和螢幕畫面分享串流,提供詳細的品質計量。 這些詳細的深入解析協助您監視進行中的通話、為使用者顯示整個通話的網路品質狀態,以及偵錯個別通話。

  • 這些計量有助於指出 Azure 通訊服務用戶端 SDK 傳送和接收媒體串流的問題。 例如,您可以主動監視傳出視訊串流 availableBitrate、警告持續低於 1.5 Mbps 建議值的情形,並且通知使用者他們的視訊品質降低。

  • 請務必注意,伺服器記錄資料只會在通話結束之後提供整體通話摘要。 我們詳細的媒體統計資料,提供通話期間的低階計量,供通話期間使用以及通話之後進行更深入的分析。

  • 若要深入了解,請參閱:媒體品質統計資料

最佳視訊計數

在參與者 2 位以上的群組通話期間,使用者視訊品質可能因為網路狀況及其特定硬體限制變更而改變。 使用最佳視訊計數 API,透過了解本機端點在不使品質下降的情況下一次可轉譯的視訊串流數目,即可改善使用者通話品質。 實作這項功能即可維持本機端點的通話品質和頻寬,否則會造成視訊轉譯不佳。 API 會公開最佳 optimalVideoCount 這個屬性,以動態變更的方式回應本機端點的網路和硬體功能。 這項資訊在執行階段提供,並在整個通話期間更新,讓您在網路和硬體狀況改變時調整使用者的視覺體驗。

  • 若要實作,請造訪 Web 平台指導管理影片,並檢閱標題為遠端視訊品質的段落。

通話問卷結束

客戶意見反應非常寶貴,通話結束後問卷這項工具,讓您了解終端使用者對於 JavaScript/Web SDK 通話解決方案的整體品質和可靠性感想為何。 如果已經有問卷解決方案,可以將問卷修改為各種問卷格式。 發佈問卷資料之後,您可以透過 Azure 監視器檢視問卷結果,進行分析和改善。 Azure 通訊服務也利用問卷 API 結果監視及改善品質和可靠性。

通話之後

監視及疑難排解通話品質和可靠性 - 釋出及調整 Azure 通訊服務通話解決方案之前,請先實作這些品質和可靠性監視功能,確保收集可用的記錄和計量。 實作這些功能之前不會儲存這些通話資料,因此沒有這些資料,您無法監視及偵錯通話品質和可靠性。

開始收集通話記錄

檢閱此文件,開始收集通話記錄:透過 Azure 監視器的診斷設定啟用記錄。

  • 建議您選擇類別群組「allLogs」,然後選擇 [傳送至 Log Analytics 工作區] 的目的地詳細資料,在 Azure 監視器檢視和分析資料。
  • 如果您沒有要傳送資料的 Log Analytics 工作區,您必須先建立一個工作區
  • 建議您因應成本考量,視需要監視資料使用量和保留原則。 請參閱:控制成本

使用通話診斷進行通話診斷

通話診斷是 Azure 監視器體驗,在 Azure 入口網站的特殊化遙測和診斷頁面,提供量身自訂的深入解析。

開始將記錄資料儲存在記錄分析工作區,您就可以將個別通話搜尋視覺化,以及將通話診斷中的資料視覺化。 在 Azure 監視器帳戶,您只需要瀏覽至 Azure 通訊服務資源,然後在側邊窗格找到 [通話診斷] 刀鋒視窗即可。

  • 請參閱通話診斷,了解如何充分利用這項功能。

使用語音和視訊深入解析預覽檢查通話品質

啟用記錄之後,您便可在 Azure 資源中,使用視覺效果範例檢視通話深入解析:語音和視訊深入解析

使用通話結束問卷分析終端使用者意見

啟用診斷設定擷取問卷資料後,您便可使用我們在 Azure Log Analytics 的通話記錄查詢範例,分析使用者所感受的品質體驗。 使用者意見反應可透露您不知道的問題,並協助您排定品質改良的優先順序。

直接從用戶端分析通話資料

收集媒體統計資料、使用者端診斷和通話前 API 這類通話資料,您即可檢討品質不佳的通話,在疑難排解問題時進行根本原因分析。 例如,使用者可能有進行一小時的通話,並在通話某個時間點回報音訊不佳。

通話可能引發使用者端診斷,指出傳入或傳出的媒體串流品質有嚴重問題。 若是儲存通話的詳細媒體統計資料,您便可檢查 UFD 何時發生,了解這個時間左右是否出現大量封包遺失、抖動或延遲,也就是代表網路狀況不佳。 您探索影響網路的因素是否為,例如外部用戶端非受控網路、服務品質 (QoS) 網路優先順序原則不當導致不必要的網路流量,或者不必要的虛擬私人網路 (VPN)。

注意

一般而言,建議您將使用者的音訊連線頻寬排在視訊連線之前,並且將音訊和視訊優先順序都排在其他網路流量之前。 網路無法同時支援音訊和視訊時,您可以主動停用使用者的視訊,或提示使用者停用視訊。

要求支援

如果您遇到無法解決且需要支援的品質或可靠性問題,您可以提出技術支援要求。 您在要求提供的資訊越詳細越好 (原生記錄對於最佳化回應時間極為重要),不過您還是可以提出只有部分資訊的要求來展開調查。 請參閱:如何建立 Azure 支援要求

  • 如果嘗試提出技術支援要求時收到授權需求的通知,您可能必須依照需求,選擇最合適的付費 Azure 支援計劃。 請參閱:比較支援計劃
  • 如果您不想購買支援,可以善用社群支援。 請參閱:社群支援

其他考量

下一步