05-15-2023 05:54 AM
Hi!
Basically, I am trying to achieve a paying call center on UCCX. E.g. Customer calls into Call center, he is PIN-authenticated against the DB, and it is checked if he has enough prepaid minutes available in order to be connected to agents. If so, he goes into CSQ, and those minutes (seconds) start to countdown as soon as he is connected to the living agent. As soon as he is put on hold (or transferred, or out to another queue), those seconds should stop with countdown, until the next agent starts conversaion.
And that is the tricky part, I put a loop decrementing the seconds in "connected" branch of select resources step, I see it counting down, but it doesnt stop when the caller is put on hold (logically-script itself doesn't differentiate talking and being on hold). I need another logic step in the loop to check if the calling party (customer) is in HELD state, and if so, not to do the decrement of the seconds.
So question is:
Is there a way to check if the agent put the calling party on hold?
Thanks a lot
05-15-2023 06:19 AM
Once the call is connected to an agent, the CCX script is effectively out of the mix. You should be able to do this after the fact by looking at the CDR information in CUCM. You might also be able to do it from the ContactCallDetail table in CCX.
05-15-2023 06:53 AM
Like @Elliot Dierksen said you should NOT do this in the scripting, but after the fact, maybe nightly? Look at the DB and calculate how much time has been consumed by the caller and update your system.
david
05-16-2023 01:29 AM
Hi, thanks both for the answers. Unfortunatelly, this countdown has to be in real time, as they want to be able to warn the customer that they have only one minute left on their account, or not admitting customer in the call center if he just spent all the minutes etc.
05-16-2023 05:59 AM
I don't think you're getting what all is possible here. First, you'll need a 3rd party system (CRM) that tracks how many minutes a caller has available. You can call this system via the IVR when the call first arrives and let them know how much time they have, to pay for more minutes, or that they can't be serviced because of lack of funds. Next, when the call arrives to an agent you can reach out to the CRM when the call started talking (I would do this via a gadget). So now you have the start time. When a call starts talking I would then run a query every 5 minutes to find out the stop time by hitting the DB directly. No, this is not real time, but pretty darn close.
david
05-16-2023 04:52 AM
You can announce that while the caller is in queue, or check before admitting them to the queue. The script ends when the call is connected to the agent, so the actual debiting of minutes will have to come via some other mechanism after the call has ended.
05-23-2023 03:25 AM
AFAIK the latest release of CCX is 12.5 SU3. Not sure where you got version 14 from?
05-23-2023 03:30 AM
yeah, my bad...12.5
05-24-2023 05:12 AM
I think i would make a custom gadget that does the following.
Discover and save your favorite ideas. Come back to expert answers, step-by-step guides, recent topics, and more.
New here? Get started with these tips. How to use Community New member guide