10-28-2010 10:04 AM - edited 03-14-2019 06:46 AM
Hi,
I'm new to scripting and did not write this one I'm attaching. The customer wants the calls that are in the queue for fifteen minutes to go to voicemail. If I hit "0" while I'm in the queue I do go to voicemail so the UCCX server can hit the mailbox. Any ideas on why this script will not shoot calls to VM after fifteen minutes?
Thanks,
Mike
Solved! Go to Solution.
10-28-2010 01:57 PM
i think you could get by just fine with the below pseudo code:
queue
:queue loop
cwd = get reporting (current wait duration)
if (cwd >= cwd_limit)
true
goto transfer to voicemail
false
play prompt (all reps busy, thank you for holding)
place call hold
delay 30
place call unhold
goto queue loop
the reporting step has a good help document if you open the step properties and click the help button.
good luck, and let me know how it works out.
10-28-2010 10:33 AM
I know this is not a rule per se, but post a screen shot of the section in your script you suspect is having an issue instead of the whole script. It's a pain to download the zip, then extract, then open my editor, which may not even be the correct version for the script you have. It's just messy. I can quickly preview your screen shot right in browser, and probably answer your question without needing to load the script in an editor.
This is more of a rant for the support community as a whole, and not directed towards you. so I apologize that this was stated in your post for help.
But, since I am here to help you, could you please post a screen shot of your queue loop?
10-28-2010 10:48 AM
10-28-2010 10:52 AM
In the screen shot I do not see a check for current wait duration, which is the metric you want to query if you need to dequeue after 15 minutes of queue time.
I do however see the expected wait time metric being compared to 900 seconds (or 15 minutes).
Perhaps it's just a missunderstanding of what the script is doing?
10-28-2010 10:58 AM
Thanks Anthony,
From what I understand and from calling it several times working on... the script answers the call and plays a brief recording before putting the call into queue. If an agent is available it routes the call correctly. If none are available it puts them on hold and every ten seconds it plays another recording about being on hold and you can press "0" to leave a voicemail. If they stay in the queue for fifteen minutes it's supposed to send them to voicemail but it does not. I guess I need the current wait duration?
Thanks,
Mike
10-28-2010 11:08 AM
correct, unless it's further down in your screenshot. but again, I see the EWT being compared to 15 minutes, so I'm thinking it's just a misunderstanding of what you have configured. certainly changing it to current wait duration is possible.
10-28-2010 11:17 AM
Thanks Anthony,
Can you point me to an example of how to configure the current wait duration in the script? Is there one in the script repository?
Thanks,
Mike
10-28-2010 01:57 PM
i think you could get by just fine with the below pseudo code:
queue
:queue loop
cwd = get reporting (current wait duration)
if (cwd >= cwd_limit)
true
goto transfer to voicemail
false
play prompt (all reps busy, thank you for holding)
place call hold
delay 30
place call unhold
goto queue loop
the reporting step has a good help document if you open the step properties and click the help button.
good luck, and let me know how it works out.
10-29-2010 10:40 AM
Anthony,
That did it. Thanks for all your help.
Mike
10-29-2010 12:31 PM
Hi Guys,
Can you answer a question of mine please? I also want to enable forward the call to voicemail when pressing 9. I created a menu and then create a connection called VM which I assigned digit 9 for it. I believe when user pressed 9, it will activate call redirect but that's not the case. I set the maximum retries to 0 so it won't ask me " are you there" and I put the timeout to be 15 and it did wait 20 seconds for me to input something. It's just when I click on 9, it doesn't forward calls.
One thing I notice from Mike's script, call redirect is targeting to "strDataSecurityVM" but mine is to "580" which is the extension that our general mailbox has. Could this be the problem?
I also don't understand why is there a "Set Contact Info" before the dequeue, Is that required for my script to work?
Any help is appreciated. Attached is my script.
Andy
10-29-2010 01:02 PM
Andy,
I'm new to this so I'm sure Anthony could help more but can you post a screen shot of that payne in the bottom left of the script editor while you have the script open?
Mike
10-29-2010 01:08 PM
10-29-2010 01:16 PM
Unless I'm not seeing all of your screen shot, I have a string called strDataSecurityVM with "1001" as the parameter (where you have "580"). The script then calls that string in the destination for the trigger contact for VM.
Maybe thats the problem?
Mike
10-29-2010 01:20 PM
10-29-2010 01:38 PM
The only ways I know to see are doing a reactive debug on the script and looking at the MIRV logs. If I debug the script and then click start,
when I press "0" to go to voicemail it goes down to the dequeuing section below and an OID or IOD message pops up. I can also see it redirecting the call to the VM number in the logs.
Hope that helps.
Mike
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