Author Message
RajatVerma
Joined: Mar 5, 2014
Messages: 101
Offline
Hello All,

I have written a simple program for monitoring calls coming on a VDN, and if call gets disconnected without answered I keep these calls as abandoned calls for further processing. I am simply monitoring the VDNs for calls (No Agent extension).

Now customer has introduced the CBA (Call Back Assist) as well on same VDNs for monitoring, if caller is on queue beyond threshold limit (lets say 2 minutes) CBA comes in play and announcements are played i.e. 1 for CBA and 2 for continue. As soon as this announcement is played we get an answer event and can't identify if this call is abandoned or not. Possible cases for abandonment are if caller selects 2 for ignoring CBA option and continue to wait over IVR queue.

As I have explored more I believe we are getting answer event on CBA as this announcements are provided by CBA application over AAEP (VXML application) and as soon as call is delivered to VXML application we get the answer event.

what are the possible ways to ignore this answer event, I can think of below
[list]start monitoring the Agent extensions as well and consider the call as answered only when call is delivered to those extensions. But in this case I have to keep monitoring all the Agent extensions as well.

Thanks,
Rajat Verma
JohnBiggs
Joined: Jun 20, 2005
Messages: 1139
Location: Rural, Virginia
Online
I don't believe you want to ignore the answer event from the IVR ... the call did get answered and given you are monitoring a VDN the answer will impact what events your monitor on the call will get going forward. If you wanted to ignore the IVR answer event and knew the range of extensions that represented the IVR you could filter the answers events for those extensions - but I don't think that by itself will address the problem you now have. The question is what happened to the call next. How does the IVR handle getting the call to an agent if the customer chooses to wait, if you are discarding the IVR answer event how can your application know if a call back was requested so you don't get a false positives on abandonment? In the customer chooses to wait, does the IVR transfer the call back into the queue/VDN? A different queue/VDN? Can your application use a value like UCID to recognize what is occurring when the customer chooses to wait? Additionally, will your VDN monitor even continue to deliver events for the call?

Is your application looking at the connection cleared event to see which party disconnects first? Probably not as this problem is new to you. A true abandon would probably always come from the 'customer' trunk side of the call first, but again we would need to examine the behavior of the Call Back Assist application to see how it behaves in the case callback was requested.

Assuming that the call flows back to the same or another VDN you could monitor for and observe the connection established events and check for agent ID extension ranges.

I can't design this for you (for one, there is a lot about the call flow that is not in evidence here), but the call flow just got more complex I don't believe a simple ignore a particular answer event coming from a range of extensions will be a sufficient cure.
RajatVerma
Joined: Mar 5, 2014
Messages: 101
Offline
Hello John,

Thanks for your feedback.

I think I have shared some details which are not related to my query. I am working on 2-3 different approach for this and with one of those I had some doubts which I specified here.

I wanted to know if I monitor only VDNs for calls (not monitoring agent extensions), will I get the extension number on which it was answered. I believe we get this and think I have also validated this some time back with one of my other application, but in my current test setup I am not able to get the extension. can you share feedback on this if you have some details.

Really don't expecting support on design part as I am already on that and few functionalities need to be validated in reference to different approaches. More ever there are few more complexities which needs to be handled for some other components and for all various possible use cases. Can't list down all those here.

Regarding few of queries in your feedback
1. What happens if caller choose to wait(doesn't accepts the CBA) - It will bring back to caller to the same VDN, and application will still be monitoring it. It can be handled without much difficulty in application.
2. How to handle the callers who opted for CBA if I ignore the answer event from CBA IVR - This is important to handle and I am already working on 2-3 different approaches with testing. I am also trying to validate if post success, CBA can be routed to some disconnect VDN as that will make my work very simpler. I will share the exact detail once I get results on few of my test cases.


Thanks,
Rajat Verma

JohnBiggs
Joined: Jun 20, 2005
Messages: 1139
Location: Rural, Virginia
Online
my experience is that if you are monitoring a VDN, and the call is routed to and delivered to an agent through that VDN you will get an established event containing the answering parties extension. You may want to simplify things and use the TSAPI or JTAPI exerciser (or look at the TSAPI logs to confirm what events/data is being sent).
RajatVerma
Joined: Mar 5, 2014
Messages: 101
Offline
Thanks John.

Yes, I have planned to test with TSAPI/JTAPI excersior to validate it today.

Will keep you updated.
Go to:   
Mobile view