Home Blog UCCX Scripting Call Back


Jul 12
UCCX Scripting Call Back
Posted by Freddy Tabet

Recently we’ve updated, reviewed and revamped a lot of our customers’ call center scripts in order to make them more efficient. A call center should never lose focus of its purpose:

  1. Decrease the time callers/customers spend in the Queue/on hold.

  2. Give the caller an expectation about the amount of time they might be spending it on hold.

  3. Direct the customer to the correct department and agent that possess the skills that enable them to solve the caller’s problem (first call resolution).

  4. Present the callers with tools that will allow them to be called back.

Depending on the nature of the Call Center, it might be unreasonable to target a waiting time of 0 seconds. To make efficient use of the Call Center, its expected for callers to remain sometime in the queue while agents are handling other calls.

There’s also no golden number about the maximum amount of time callers usually tend to find queuing time acceptable. If you’re calling to reschedule airline tickets you might find it acceptable to wait more than 30 minutes, but if you’re calling to make dinner or movie reservations then you might find 5 minutes being a long time.

The best thing to do is to provide tools to the callers so they can make the decision themselves. First you would tell them how long they’re expected to wait and then give them options to either leave a voicemail or schedule a call back.

In this blog we’re going to cover the requirements to configure a call back script. Recently we deployed the call back option for a client, and they witnessed a higher percentage of handled calls, we also had the chance of enhancing a current call back deployment by asking people who schedule call back to record their names, so when agents do call them back, they know who they’re addressing. A lot of users call in and schedule callbacks from their office numbers and sometimes those numbers do not ring the call back users directly. So, in knowing the name of the person that scheduled the call back it made it easier for the agents to reach them and address their needs.

In this Blog we shall have 3 scripts and their function are described below:

  1. Main Script: The script that accepts the call, save the calling number, check for agents, queue the call if there are no agents available and present a call back option. It will also place the callback.

  2. General_Callback: Script that will obtain the callback number, callback extension if any, and record the caller’s name.

  3. Callback Script: The script that will search for an available agent to take the call back.


A caller calls the main script and opts for a callback. The Main Script runs the Call sub flow command with the following parameters:

UCCX Scripting Call Back

We’re pushing the variable values of Calling Number, Called Number and Session ID in the sub flow. Called Number and CSQ are optional.

We’re also taking from the Sub flow the values for Callback Number and the recorded name. Those will be processed in the Sub flow and then provided back to us in the main script.

I. General Callback Script
    1. Check length of the calling number, if it’s 10 digits verify with callers if that is the number they want to have agents call them back on.
      1. Use the callingNumber.Length function to check number of digits.
      2. Use the created Generated Prompt and Container Prompt functions to create a prompt from a string variable.

    2. If this is not the number, give them an option to enter another number.

    3. Validate the number they entered.

      UCCX Scripting Call Back

    4. Ask the caller to record their name so it’s easier for the agent to reach them and verify that they reached the correct user

      i. Use the recording function to prompt the callers to record their name after the tone.

      ii. The recorded name will be stored in a document variable.

      UCCX Scripting Call Back

      iii. Playback the recorded name to caller and ask them to verify it’s correct, give them a chance to re-record it.

      UCCX Scripting Call Back

    5. Now we got the values for Call Back number and the recorded name. We pass them back to the main script through the call sub flow command we ran above.


II. Call Back Script

  1. Main Script get its call back number and recorded name and then places a call to the call back script.

  2. This is considered a ghost call and will be kept in the queue until an agent is available.

  3. The destination is the trigger of the Call Back Script.

  4. There should be a dedicated Call Control Group that is used only for Call Back and this Call Control group is different than the one associated with the Main Script.

  5. This call is stored in the call contact variable “Ghost Call”.

    UCCX Scripting Call Back

  6. The call will be in a queue configured in the Call Back Script.

  7. The Call Back script need to know which Queue this Call Back is associated with, the way to pass this information is to map the session ID of the Main script with the Call Back Script.

  8. We then run a Get Session info that will pass along the CSQ variable.

    UCCX Scripting Call Back

  9. Once an agent is ready, we send the call back to the Main Script.


III. Main Script

  1. When an agent is ready, they will be notified on their finesse that there’s a call back scheduled, if they answer the call, it will play a prompt for them: there’s a call back scheduled press any digit to take the call.

  2. Once the agent presses a digit, the script will play the recorded name and make the call.

    UCCX Scripting Call Back

    As a final note and a tip to enhance the call back feature, there’s a misconception that the script will hold the position of the caller in the queue and when that time passes it will place the call back. However, UCCX currently doesn’t have this feature built in, and with this call back method described here, it would place the call back as soon as an agent becomes available. Meaning people who schedule call back will jump to the front of the queue.

One way to fix that, is to use the calculated estimated wait time in the queue and add that as a delay before placing the call to the Call Back script.

As always if you have any questions on Webex Calling and would like to schedule a free consultation with us, please reach out to us at sales@lookingpoint.com and we’ll be happy to help!

Contact Us

Written By:

Freddy Tabet, Network Engineer

subscribe to our blog

Get New Unique Posts