I'm currently designing an Intelligent Routing Inbound Call flow. This flow uses a data dip connector into our Dynamics system to gather the callers postcode, and route the call accordingly.
Should the postcode not be retrieved for whatever reason, I am directing the call to a 'standard IVR' menu, which is a part of the same Inbound Call Flow. What I would like to know is if there is anyway that I can report on the amount of times the call is sent to the IVR menu.
I was thinking I could declare a variable early in the flow, and then put an 'Set Data' in before any 'Jump to Menu' to the IVR, to set the data to a True/False or something. Would it then be possible to retrieve this data from an API?
I was thinking I could declare a variable early in the flow, and then put an ‘Set Data’ in before any ‘Jump to Menu’ to the IVR, to set the data to a True/False or something. Would it then be possible to retrieve this data from an API?
The issue with this is that participant data is not available in analytics results. You would have to request each conversation one by one using GET /api/v2/conversations/calls/{conversationId} to get the participant attributes on each. This is possible, but requires a custom script that handles rate limiting appropriately, because you will certainly hit the 300 requests per minute threshold doing this.
An more straightforward approach might be to create a web service on your side that serves as a counter for this purpose. The data action could send the conversation ID, and any other information you wish to store, whenever a call hits your standard IVR menu. The service could then write the info to a database that you can easily query to find out which and how many calls were routed to your standard IVR menu.
I believe adding IVR reporting in PureCloud is currently underway, though I don't have a target release date.