cancel
Showing results for 
Search instead for 
Did you mean: 
cancel
4477
Views
20
Helpful
15
Replies

Max Steps Excuted

Tony Knight
Level 1
Level 1

On CCX 8, I have a script that presents the caller with an option to schedule a callback.  This initates a separate script which request the caller enters a desire number for the call back and to leave a message associated with the call back. (pretty much from the sample repository)  It then waits for an agent to become available.  Currently, it reaches the Max steps Excutable at about 4.5 hours.

Any ideas as to how I can get this not to reach the maximum limit?

15 Replies 15

anubhati
Cisco Employee
Cisco Employee

Hi Tony

By default maximum number of steps UCCX 8 can execute in a script is 10,000. You can change the value through system parameters page.

Appadmin - Cisco unified CCX admin - system - "Maximum number of Execued steps"

Hope this helps

Anuj

You made me double check.  That should read 1,000.  Not 10,000.

The reason that there may not be an agent available for a long time, is that we use the call back as a mechanism for callers to leave call back request after operational hours.

I am not sure I completely understand what you have suggested but I will try what I think you mean and give you some feedback.

You could just use voicemail for this purpose, yeah?

Anthony Holloway
Cisco Employee
Cisco Employee

What is it doing for 4.5 hours?  And why are your Agents not available for 4.5 hours?\

You have two scripts involved in the 4.5 hours though correct?  The calling and the called scripts?

Called Script Solution

Use the delay step in a separate callback queue script.  There is no documented maximum, and you would realistically only need to set to the max call duration define in CUCM anyway.  Which is 12 hours be default, or 43200 seconds.

This parameter specifies the minutes that a call can remain active before Cisco CallManager clears it. A value of zero disables the timer.

       This is a required field.

       Default:  720

       Minimum:  0

       Maximum:  35791

       Unit: min

Calling Script Solution

Use the place call hold step in the calling script, so when the agent answers and hears your customized MOH that says, "press any key to listen to the callback message" they can press a key, and the script takes them off hold, then plays the message.  As for the pressing a key part, use a get digit string step with a prompt of DP[43200000], which is a delay for 12 hours.  You have to do it this way since there is an imposed limit on the timeout value you can supply:  8 seconds, and the retries: 5 times, for a total of 48 seconds.

I have never tried this, I just thought it up as I read your post.  So give it a try and report back, that way we can know if it worked or not.

I just recently had the chance to update the script with your suggestions.....

Is this the correct syntax for using the DP[43200000] + P[announcement] ?  It accepted the change but I am not sure that it is correct.

I will update tomorrow as to how well this works.

On the voicemail question, you are absolutely right but they do not have voicemail.  This is why I am trying to use the call back option.

If you have premium you could send them an email with the audio document attached.

Also, no, that does not look like the correct way to implement the delay prompt literal.  That would wait for 12 hours before it played your announcement.

The delay prompt is the prompt on the get digit string step, and you play the announcement after they press a key.

E.g.,

Place Call Hold (called_contact)

CED = Get Digit String (called_contact, DP[43200000])

  Successful

    Place Call Unhold (called_contact)

    Play Prompt (called_contact, audio_recording)

Pulling my hair out....


I tried the things that you suggested but to no avail.  I changed the steps to include a simple delay function.  It keeps the call in the queue for 53:48 seconds and then the call is removed from the queue.

I have attached the 2 scripts.

The first script that is called by is Gather_Callback_Info.  This gathers the telephone number and the message.  It then calls Call_Back_Customer which places the call in the queue.  Once a agent becomes available, the call is moved back to the first script and the call is delivered to an agent.

Any thoughts?

I looked at your scripts and they are not setup how I described.

Here take a look at this quickly thrown together example:

The script on the left is the script the caller would have called into, and I only illustrate the callback portion of that script.  It then calls the script on the right, which is your queue script.  Here, I have created a new callback script for the sole purpose of waiting 12 hours for the agent to respond.

Notice how I placed the call on hold in the left script.  If you setup an moh source file that plays a repeating message like "A caller has requested a callback.  Please press any key to retrieve."  then as soon as the Agent answers, they will hear the MOH message looping.  Then they press any key, and presto, we take them offhook, and play the callers personalized message.  And loop it forever, or until the agent hangs up, or we execute the max steps.

Also note, I use the delay prompt in the get digit string step, even though it's not showing in the screen shot.

With this setup, you only execute 4 steps in order to park a callback within the callback routine of the calling script, and 3 steps in the called script.  And you gain 12 hours of waiting.

Does that make more sense, now that you see it?

I don't have a dog in this fight, but kudos to Anthony for going as far as to put together an example.

Regards,

Geoff

I totally agree, Kudos to Anthony!!!

I am traveling at the moment but once I get back to my home base, I will try this suggestion out and see what affect it has.

Thanks Anthony

Hi Anthony,

Excellent post.

I am facing the same issue. The difference is that we are using voicemail instead of call back. The customer wants to queue the voicemail up to 7 days, for example, if a caller leaves a message during the Christmas holiday.

My questions:

1. Do you see any system performance issue if queuing a voicemai for 7 days?

2. I am still not clear how to setup delay prompt in the get digit string step. Could you please explain more here?

3. I don't have MoH file to play the prompt to agent and don't use Hold/Un-hold steps. Can I setup the Initial Timeout in the Input Tab of Get Gigit String step to gain long waiting time?

4. Is Default Session Timeout relevent to the max queuing time? Its default value is 30 minutes.

Thanks very much.

Michael


michaelzhq asked:

1. Do you see any system performance issue if queuing a voicemai for 7 days?

You simply cannot "Queue" a call for 7 days.  In fact, there is a CUCM parameter which limits all calls to 12 hours by defualt.  Your next best option here would be to dump the voicemails into voicemail (E.g., CUC) and have someone check those messages when people return from holiday break.

michaelzhq asked:

2. I am still not clear how to setup delay prompt in the get digit string step. Could you please explain more here?

In any step that requires you to specify a prompt, just type this: DP[5000].  That will [play 5 seconds of silence.  It's in millis, hence the thousands.

michaelzhq asked:

3. I don't have MoH file to play the prompt to agent and don't use Hold/Un-hold steps. Can I setup the Initial Timeout in the Input Tab of Get Gigit String step to gain long waiting time?

That's what the delay prompt does for you: nets you long queue times without burning up your max executed steps.

michaelzhq asked:

4. Is Default Session Timeout relevent to the max queuing time? Its default value is 30 minutes.

No it's not.  There's no relationship at all.

Unfortunately, CUC is not an option for this customer.

For the question 1, just checked the CUCM service parameters, I think you are talking about Maximum Call Duration Timer.

CallManager - Service Parameters - Cisco CallManager - Maximum Call Duration Timer

The default duration is 12 hours and the max value is 35791. So how will it work if I increase it to 10080 (minutes)?

Thanks.

Getting Started

Find answers to your questions by entering keywords or phrases in the Search bar above. New here? Use these resources to familiarize yourself with the community: