Why did the call terminate? Who hung up the call?
These are questions we receive from our customers regularly. The answer is often not that simple. For instance, an ongoing call could be hung up by the called party (callee), or by the caller. A call could be hung up during the call setup stage due to a ring timeout, the callee being busy or rejecting the call outright. Technical issue (such as a network error in fetching XML instructions from your server) could also have led to the hangup.
Understanding why a call hung up unexpectedly could give you useful insights into the end-to-end call flow, and therefore a powerful tool to take pre-emptive measures or carry out a root-cause-analysis. Moreover, if tracking call performance is a key part of your business success - this information could give you valuable insights into your customer behavior (Eg: what percentage of your target customers/prospects are rejecting your calls)
In our attempt towards providing absolute best-in-class debuggability on our platform - We have looked deeper into the millions of calls that get handled through our platform and come up with a comprehensive list of Plivo Hangup Causes and Hangup Sources so that next time there is an unexpected termination - you know exactly why it happened, and what needs to be done to improve your call completion metrics.
Finding Hangup causes & sources information
- We have made Hangup Cause and Hangup Source information a part of every Call Detail Record (CDR). This information is available in Get CDR API response and also on the Plivo Console.
Filter calls by Hangup Cause and Hangup Source on the Plivo console.
Hangup Cause and Source information in CDRs displayed on the Plivo console.
Hangup information is also included in callback requests sent on call hangup.
For outbound API calls, the hangup information is included in the payload sent to the hangup_url specified in the Make Call API request.
For incoming calls, this information is included in the payload sent to the hangup_url specified for the associated Plivo Application.
For calls initiated using <Dial> XML, this information is included in the payload of DialHangup events sent to the Dial callbackUrl.
All Plivo server-side SDKs have been updated to support the changes to made to our API.
The call debug screens on RYUK have been updated to display this information What’s more, customers can now filter for CDRs by hangup cause and source using the List Calls API.
We hope this feature will improve call debugging for our customers and for our support teams tremendously. And, as I said in the beginning, this is just the start of a host of updates we are making on our platform to offer you best-in-class debugging. Watch this space for many more exciting announcements in the coming few weeks!