IVR Troubleshooting

Updated 

Sprinklr IVR provides us the ability to take inputs from the customer and cater to their queries when they reach out to brands on voice as a medium. In this article we will learn about how to troubleshoot IVR issues.

There are various ways of troubleshooting issues in IVR, Issues like sudden disconnection, Prompts not being Voiced out, Caller not able to take input can be Identified by following listed methods

Detect node of disconnection Using IVR Reports

 

Every IVR has a transaction report which can be accessed through IVR flow manager by clicking on three dots prior to every IVR name. Click on View Reports  to open IVR builder showing node wise report showing how many executions were there on each node in the selected time range.

Users can put a Filter on Case Number, Call completed, Call status and Profile. For our use case to troubleshoot issues, we can use a Case number filter and track the nodes executed in that case. In case the IVR ended on the Hangup / end connection node then there were no issues in this IVR and we needed to check in Parent IVR. But while following a path you see no executions after a certain node then the last executed node has the issue.

This method takes you to the node causing the issue but doesn’t provide any insights on what the issue was. Also these reports take some time to be updated (around 7-10 mins) and hence can’t be used to debug cases immediately.


Check through voice API in RED

Users having access to Red can check logs for IVR in voice api (API name - fetch voice details for case / conversation) under Browser -> API Browser, User after selecting Partner ID and Case number / conversation id/ case id will get various details like conversations, participants and other values selected in the “Include fields”.

Conversation shares the details of number from which call was made and application on which call landed, direction of call, status of call and many other details.

Participants include the details of all the people that were part of the call, i.e. customer, Agent, other Agent (through transfer / conference) or IVRs. These details include a field disconnectionReason which gives the reason for why that participant was removed from the call. 

To troubleshoot, users can select Include fields as TOKEN which will give the transition path of that conversation and the user can track the path that was followed by the caller in that conversation and each conversation has an execution token ID which can be used to get logs from Graylog.

In the Transition Path, users can see all the IVRs that were triggered in that call with all nodes' names listed down in the Transition array which were executed in that conversation / call. 



To Troubleshoot if a message was played on IVR

User need a access to red and select voice api (API name - fetch voice details for case / conversation) under Browser -> API Browser, User after selecting Partner ID and Case number / conversation id/ case id will get various details like conversations, participants and select “Messages” in Include fields picklist.

Users will get the list of all the messages played in chosen conversation ID / call, within the details of messages User can check type of message, direction, isProcessed(If message was processed or not), time taken to process the message and many more details.


We need to follow following steps to debug this scenario - 

  1. If a message which was not Voiced out is not present in these messages then this signifies that IVR failed prior to that message and we can find the error message by tracing the IVR path either through IVR reports or RED (Graylog).

  2. If a message is present in these messages then check that message properties mainly isProcessed field if that field was processed or not, if not please raise this with Devs to check why this message was not processed.

  3. If the message was processed and still not getting played then users need to raise this with Telephone service providers. User needs to share conference sid of the call, message that was not played and DID on which IVR is linked to and path to reach that message.