11-29-2018 04:34 AM - edited 03-15-2019 06:44 AM
Hi All,
Not quite sure how to accomplish this but I'm looking to insert logic in one of my scripts that will check how many callers are currently in queue. My goal would be to send callers after a certain amount to a separate set of instructions that would help them understand that there is high call volume thus allowing them to "opt out" and leave a VM instead. The only thing I'm struggling with is how I can check the Queue volume and how to apply that number to decide where to send the call. We have CCX 11.6.
Solved! Go to Solution.
11-29-2018 05:25 AM
Look at the 'Get Reporting Statistic' step, you can pull all sorts of information about the CSQ. You just need to get the value into a variable then you can run a simple IF statement to check is the value is more than you want it to be and perform an action based on that event.
Something like if > 10 = True then.... Use a menu that will play a prompt with an option to go to voicemail. If the caller doesn't want to go to voicemail you can use the timeout to just return the call to the script.
Hope that helps.
Matty
11-29-2018 05:25 AM
Look at the 'Get Reporting Statistic' step, you can pull all sorts of information about the CSQ. You just need to get the value into a variable then you can run a simple IF statement to check is the value is more than you want it to be and perform an action based on that event.
Something like if > 10 = True then.... Use a menu that will play a prompt with an option to go to voicemail. If the caller doesn't want to go to voicemail you can use the timeout to just return the call to the script.
Hope that helps.
Matty
11-29-2018 08:44 AM
Thank you so much for this! One quick thing I'm hoping you can help with. When I added the Get Reporting Statistics and had it populate an integer variable the reactive script debug I ran, with only myself calling in, returned a value of -1. Will it return negative variables or did I do something wrong?
11-29-2018 08:51 AM
Have you set the name of the CSQ you want to query in the 'Row Identifier' ? If I rememeber corrently it returns -1 if there is a problem!
11-29-2018 11:19 AM
I've attached a screenshot of the config for it. The Row Identifier 'CSQTechForce1' references a String variable with "TechForce1" defined which is the name of the Queue.
11-30-2018 02:33 AM
So I just did a quick test in my lab:
CSQ is a String with the name of the CSQ.
DelayInSconds is an int.
Which sounds exactly like what yoy have done? The above is working fine for me!
Maybe check the the CSQ name is 100% correct? It is case sensitive.
11-30-2018 04:16 AM - edited 11-30-2018 04:17 AM
Really appreciate the lengths in which you went to ensure the solution was valid. After some testing of my own I figured out what was causing the problem. The variable I used to define the queue name, CSQTechForce1, had that name predefined in the variable. However, inside the script itself was another String variable called vCSQ which had a "= Set vCSQ = "TechForce1"" command defining itself inside the script. When I used that variable instead the values returned were correct. Still not exactly sure why the original value could not be used but as long as it's working I'm happy. Thanks again for all your help!
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