Call Insights, available in the console for each call under Voice > Logs > Calls, aims to ease the process of debugging and maintaining complex call flows by providing analytical data around each call. It displays four sections of information for each call UUID:
This section summarizes the call by providing these attributes:
Initiation Time: Time at which the call was initiated, displayed as date timestamp
Ring Time: Delta time it took for ring to start after the call was initiated
Answer Time: Delta time it took for the call to be answered after ringing started
End Time: Time at which the call was hung up, displayed as date timestamp
Duration: Duration of the call — the interval between answer time and end time
From: The source number from which the call originated
To: The destination number to which the call was made
Direction: The direction of the call — either Inbound or Outbound from Plivo’s perspective
Type: Either PSTN or SIP depending on the direction (inbound or outbound) and the from and to numbers:
For inbound calls
For outbound calls
Total Cost: Calculated as calling rate times billed duration. By floating the mouse over an info icon, you can see the details in a tool tip.
STIR Verification:
Suspected Issues: Possible issues with the call
Plivo Quality Score: Each call is rated between 1 to 5 based on the audio quality stats recorded for the call.
This section displays attributes of call legs that are related to the current page’s call UUID.
This section contains data specific to the current page’s call UUID.
Hangup Cause and Hangup Source: As described above
Originator, Originator Region, Terminated To, Termination Region: The possible call origination and call termination entities are defined in this table.
Allowed Values | ||
Outbound Calls | Inbound Calls | |
Originator Source of call |
Plivo media server (Make Call API or Dial XML) | Plivo (Browser SDK, Android SDK, IOS SDK, or external SIP device**), network operator of PSTN |
Originator Region | Media server region | Geographical location of SIP endpoint IP address or PSTN number |
Terminated To Where the call terminated |
Plivo (Browser SDK, Android SDK, IOS SDK, or external SIP device**), network operator of PSTN | Plivo media server |
Termination Region | Geographical location of SIP endpoint IP address or PSTN number | Media server region |
Post Dial Delay: Length of the interval between when the call was initiated and ringing began
Ring Duration: Length of the interval between when ringing began and the call was answered
This section displays audio quality statistics for each stream for the current page‘s call UUID, for the hop either between the Browser SDK and the Plivo web media server or the Plivo media server and the carrier.
Audio quality statistics are displayed in percentiles, which are color-coded to indicate good, average, and bad values. You can see the interpretation for each value by hovering over the info icon.
Percentiles: To indicate the spread of the data, we display values of audio quality statistics in percentiles: 5th, 30th, 50th (median), 95th, and 99th. In these values, the 5th percentile (for example) indicates the bottom 5% of data.
Thus a Jitter value of 80 ms in the 30th percentile implies that 30% of the call duration had less than 80 ms of jitter.
If the lesser percentiles for a metric are in yellow or red, it indicates that most of the call performed poorly on that metric.
Conversely, if higher percentiles are in yellow or red while the rest are in green, it indicates that most of the call performed well on that metric.
This table shows standard value ranges for audio quality statistics that are considered to be good, average, and bad.
Metric | Good | Average | Bad |
Jitter | <= 10 ms | 10 - 30 ms | >=30 ms |
Packet Loss | < 0.5% | 0.5% - 0.9% | >= 0.9% |
Audio Level | >-40dB | -80dB to -40dB | <-80dB |
RTT | < 200 ms | 200 - 300 ms | > 300 ms |
Let’s run through some real-world examples to see how the Call Insights page can help you debug issues.
Let’s start by mapping commonly observed audio quality issues to the metrics that directly correlate with them.
Suspected Issue | Metrics to Examine |
One-way audio | Packet count, audio level |
Broken audio | Packet loss |
Robotic audio | Jitter |
High connect time | Post-dial delay |
Audio lag | Round trip time (RTT) |
Low audio level | Audio level |
Scenario 1: Choppy audio on the call
High jitter causes voice data packets to overlap with each other during transmission, resulting in choppy or broken audio or a robotic audio effect.
To debug this problem, first identify the specific call leg causing an issue — some issues may be caused by a related call leg — then look at the audio stream with the issue to identify the source of the problem.
Step 1: In the console, visit Voice > Logs, select the relevant date range, and click Search. Click on the link in the date column to be redirected to the Call Insights page.
Step 2: Scroll down to the Call Relations section to view call legs related to the current one, where you should see any suspected issues corresponding to each of the related call legs. Identify the leg with choppy audio and click on it (if it’s not the current call leg).
Step 3: Scroll down to the Audio Quality Stats section. The stream with more values in the bad range for Jitter is likely the one with the issue. If it’s a stream coming to Plivo, the cause could be a network issue on the other end. If the other end is a SIP endpoint, the public network may be at fault. If the other end is a PSTN number, there may be an issue with the carrier’s network.
If the jitter is on a stream originating from Plivo, raise a ticket with Plivo support.
Scenario 2: Intermittent loss of audio during the call
High network congestion can sometimes cause packet loss, in which some voice data packets to be discarded or dropped. High packet loss can cause broken audio. The debugging process for this problem is same as that of the prior scenario, except that instead of looking at jitter, we look at packet loss statistics.
Scenario 3: Cannot hear audio on one stream
One-way audio may be caused by a low packet count or low audio level.
Note that audio level information is currently available only for Browser SDK calls.
Scenario 4: High lag or delay of audio
Audio lag can be due to high RTT.
You can evaluate the network path taken by a call by looking at the Origination and Termination regions under Call Stats. Plivo’s call routing engine is optimized to route calls through the closest Plivo PoP, but you may see a suboptimal routing if: