Skip to content

Commit ef1ce37

Browse files
authored
Merge pull request #267951 from vac0224/vc_troubleshooting
Create troubleshoot-web-voip-quality.md
2 parents ea530a7 + 13562e3 commit ef1ce37

File tree

3 files changed

+106
-1
lines changed

3 files changed

+106
-1
lines changed
Lines changed: 102 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,102 @@
1+
---
2+
title: Azure Communication Services troubleshooting VoIP call quality
3+
titleSuffix: An Azure Communication Services concept document
4+
description: Learn how to troubleshoot web VoIP call quality with Azure Communication Services.
5+
author: Cardiohater1
6+
ms.author: drohmetra
7+
manager: dacarte
8+
9+
services: azure-communication-services
10+
ms.date: 3/6/2024
11+
ms.topic: conceptual
12+
ms.service: azure-communication-services
13+
ms.subservice: calling
14+
---
15+
16+
17+
# Troubleshooting VoIP call quality
18+
19+
This article describes how to troubleshoot and improve web VoIP call quality in Azure Communication Services.
20+
21+
Voice and video calling experiences are an essential communication tool for businesses, organizations, and individuals in today's world. However, customers can experience quality issues. Quality in calls can be impacted based on four network parameters: bandwidth available, round-trip time (RTT), packet loss, and jitter.
22+
23+
VoIP calling using Azure Communication Services is an efficient and reliable way to communicate. If quality issues arise, follow the troubleshooting steps in this article to ensure the best possible user experience.
24+
25+
## Pre call check-up
26+
27+
When using the internet at various locations, you experience different internet speeds. At home, internet speed and reliability can differ due to factors such as the type of internet connection, the quality of the router, and the number of devices connected to the network. In the office, internet speed and reliability are impacted by the number of users on the network, the quality of the network infrastructure, and the type of internet connection. When you are using cellular data, internet speed and reliability are affected by factors such as the strength of the cellular signal, the distance from the cell tower, and the number of users on the network. Additionally, some cellular plans have data caps or throttling, which can affect internet speed and reliability.
28+
29+
Overall, internet connections can vary depending on the location and the factors that affect the quality of the connection. It's important to test network ability.
30+
31+
Run a network diagnostic check at [Azure Communication Services Network Diagnostic Tool](https://azurecommdiagnostics.net/) to learn more about the network connection and settings of your machine. This tool checks all the essential parameters to help you determine if the network connection at your local machine is compatible with Azure Communication Services. You can also run this test this on mobile devices. For more information about network quality, bandwidth, configuration, and optimization, see [Network recommendations](network-requirements.md).
32+
33+
Enable logging via diagnostic settings in Azure monitor. For more information, see [Enable logs via Diagnostic Settings in Azure Monitor](../analytics/enable-logging.md).
34+
35+
Once the logs are enabled, you can view call insights in your Azure resource. For more information, see [Voice an video Insights Preview](../analytics/insights/voice-and-video-insights.md).
36+
37+
You can improve audio quality in poor network environments by using video constraints to reduce the number of bandwidth users video streams consume. For more information, see [Video constraints](video-constraints.md).
38+
39+
You can programmatically validate a client’s readiness to join an Azure Communication Services Call using the Pre-Call API. Access this API through the Calling SDK. The Pre-Call API provides multiple diagnostics including device, connection, and call quality. Pre-Call APIs are available only for Web (JavaScript). We welcome your feedback about other platforms you would like to see prioritized. For more information, see [Pre-Call diagnostic](pre-call-diagnostics.md).
40+
41+
## Network issues that can cause quality problems
42+
43+
### Choppy or robotic sounding call audio
44+
45+
When call audio has robotic-sounds or choppy cuts in and out, it can be caused by packet loss due to excessive jitter on the line. Jitter is the term used when packets are received out-of-order and can be caused by several factors including network traffic, or the technologies used in the call.
46+
47+
### One-way or missing call audio
48+
49+
When a caller can hear the other party, but the other party can't hear the caller, we refer to this as one-way audio. Missing audio streams can be caused by several factors including errors in the connection/handshake, problems during a network handoff, or issues at the source or destination.
50+
51+
### Delayed call audio
52+
53+
When caller or callee reports excessive delays in the call audio. It can be caused by excessive latency on the line. Call audio latency can be caused by several factors including delayed packet transmission or delivery somewhere along the line, or the technologies used in the call.
54+
55+
### Call audio echoing
56+
57+
When a caller or callee reports that they hear their own delayed audio being transmitted back to them, we refer to this as call audio echo. Echo can be caused by positioning and volume levels of the speaker and microphone at one end of the line, or by crosstalk on copper wire (landline) networks.
58+
59+
### Volume indicator API
60+
61+
When a caller or callee reports that the volume of a call is either too loud or too quiet, we typically classify this as a call audio volume issue. These call volume issues are often caused by the hardware used, including the positioning and levels of the speaker and/or microphone at one end of the line. If the input and output indicator show that the user’s volume is low, you can prompt the user to speak louder.
62+
63+
For more information, see [Accessing call volume level](../../quickstarts/voice-video-calling/get-started-volume-indicator.md).
64+
65+
### Call static
66+
67+
When a caller or callee reports audio interference or background noise on a call, we typically classify this as a call audio static issue. These audio quality issues can be caused by the hardware in use, including the placement, positioning, and levels of the speaker and/or microphone at one end of the line.
68+
69+
Also, make sure that the application you're using for web calling is hosted on the latest SDK. For more information, see [Azure Communication Services Calling Web (JavaScript) SDK - Release History](https://github.com/Azure/Communication/blob/master/releasenotes/acs-javascript-calling-library-release-notes.md).
70+
71+
## Mid call check-ups
72+
73+
Developers can enable user facing diagnostics (UFD) in web calling applications. UFDs help the end customers see what is wrong with the call, such as an unreliable network connection or the microphone isn't responding. For more information about UFDs, see [User Facing Diagnostics](user-facing-diagnostics.md).
74+
75+
You can enable media statistics on the web calling application to help debug and troubleshoot quality related issues on Azure Communication Services Web calling. Media statistics includes, round-trip time (RTT), bitrates, packet loss, jitter, and so on. Media statistics help engineers better understand the problem and the exact timing. For more information, see [Media quality statistics](media-quality-sdk.md).
76+
77+
Sometimes users have multiple browsers tabs with instances of Azure Communication Services running that can disrupt audio and video behavior on the target call. You can detect if a user has multiple instances running in a browser. For more information, see [How to detect if an application using Azure Communication Services' SDK is active in multiple tabs of a browser](../../how-tos/calling-sdk/is-sdk-active-in-multiple-tabs.md).
78+
79+
## Post call check-ups
80+
81+
You can check the log insights from the Azure portal for calling to determine the exact issue during the call. For more information, see [Query call logs](../analytics/query-call-logs.md).
82+
83+
If you tried all the previous steps and still face quality issues, [Create an Azure support request](../../../azure-portal/supportability/how-to-create-azure-support-request.md). If necessary, Microsoft can run a network check for your tenant to ensure call quality.
84+
85+
## End of call survey
86+
87+
Enable End of Call surveys to give Azure Communication Services users the option to submit qualitative feedback about their call experience.
88+
89+
For more information, see [End of Call Survey overview](end-of-call-survey-concept.md) and related tutorial [Use the End of Call Survey to collect user feedback](../../tutorials/end-of-call-survey-tutorial.md).
90+
91+
## Next steps
92+
93+
For more information about using Call Quality Dashboard (CQD) to view interop call logs, see [Use CQD to manage call and meeting quality in Microsoft Teams](https://learn.microsoft.com/microsoftteams/quality-of-experience-review-guide).
94+
95+
For more information about Calling SDK error codes, see [Troubleshooting in Azure Communication Services](../troubleshooting-info.md#calling-sdk-error-codes). You can use these codes to help determine why a call ended with disruptions.
96+
97+
To ensure smooth functioning of the application and provide better user experience, app developers should follow a checklist. For more information, see the [Checklist for advanced calling experiences in web browsers - Microsoft Community Hub](https://techcommunity.microsoft.com/t5/azure-communication-services/checklist-for-advanced-calling-experiences-in-web-browsers/ba-p/3266312).
98+
99+
For more information about preparing your network or your customers’ network, see [Network recommendations](network-requirements.md).
100+
101+
For best practices regarding Azure Communication Services web calling, see [Best practices: Azure Communication Services calling SDKs](../best-practices.md).
102+

articles/communication-services/concepts/voice-video-calling/user-experience.md

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -21,3 +21,4 @@ Developers building their audio and video experience with Azure Communication Se
2121

2222
## Next steps
2323
- Learn more about [Capability APIs](../../how-tos/calling-sdk/capabilities.md).
24+
- [Troubleshooting VoIP call quality](./troubleshoot-web-voip-quality.md)

articles/communication-services/toc.yml

Lines changed: 3 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -669,7 +669,9 @@ items:
669669
- name: Security
670670
href: concepts/interop/guest/security.md
671671
- name: Known issues
672-
href: concepts/interop/guest/limitations.md
672+
href: concepts/interop/guest/limitations.md
673+
- name: Troubleshooting VoIP call quality
674+
href: concepts/voice-video-calling/troubleshoot-web-voip-quality.md
673675
- name: Communication as Teams user
674676
items:
675677
- name: Overview

0 commit comments

Comments
 (0)