Default Inbound Voice Callback subroutine

This subroutine workflow is the default workflow for customers in queue to submit voice callbacks. Callers who leave queue when presented with the option from the Callback Request activity can use this workflow to leave a message and set a time to be contacted later.

Note:
  • If you change any of the activities in the workflow, ensure that the prompts used are still accurate and reflect the options offered to the callers.
  • To further illustrate the workflow’s activity and their operations, we recommend you expand the entire workflow and all annotations.
To expand the workflow
  • Click the Expand All button.
To show all annotations
  • Right-click the workflow and select Annotations… > Show all.

Description

The first step in the workflow is a Collect Digits activity. This activity prompts callers to enter the phone number they would like to be reached at, which the workflow then stores in the <<CallbackClientNumber>> variable. By default, callers must enter between four and ninety-nine digits and press # as the terminating digit, but these defaults may be altered. For information on changing the defaults, see "Configuring the Collect Digits activity".

Note:
  • This activity is mandatory, but another activity that can obtain and store the caller’s number in the CallbackClientNumber variable could be used instead of collect digits.

The Collect Digits activity has four branches: Phone Number Collected, Timeout, Invalid, and Failure. Callers are routed to the Timeout Branch if they do not enter anything after 5 seconds. This branch contains a Play activity, whose prompt informs callers that there was no input, and a Go To activity, which returns callers to this Collect Digits activity. Callers are routed to the Invalid branch if the phone number goes over or under the specified minimum and maximum number of digits. This branch is identical to the Timeout branch. Callers are routed to the Failure branch when their timeouts or invalid digit entries exceed the set number of Invalid attempts, which by default is 3. The Failure branch contains a Hang Up activity that terminates the workflow. For information on configuring Collect Digits activity options, see "Configuring the Collect Digits activity".

If a caller successfully enters their phone number, they are routed into the Phone Number Collected branch. This branch validates the caller’s phone number against a phone number exclusion list, ensuring contact center agents are only handling valid callback requests. The first activity of this branch is a Variable Compare activity, which compares the <<CallbackClientNumber>> variable to a series of conditions in the activity’s Invalid Numbers condition. These numbers can be changed and additional numbers can be added to the exclusion list. For information on configuring the Variable Compare activity, see "Configuring the Variable Compare activity".

The Variable Compare activity contains two branches: Invalid Numbers and No Match. If the phone number collected in <<CallbackClientNumber>> matches any of the conditions of the exclusion list, then the caller is routed into the Invalid Numbers branch. This branch contains a Play activity, which informs callers they have input an invalid phone number. Next in this branch is a Go To activity, which returns the caller to the Collected Digits activity. If the phone number in the <<CallbackClientNumber>> does not match anything in the exclusion list, the caller is routed through the No Match branch to the next activity in the workflow.

The workflow’s next step is to capture the customer’s preferred date and time for the callback. The workflow continues with a Collect Digits activity, which prompts the caller to enter the requested date and time for their callback. The format for this is DDMMYYYYTTTTXX, where XX is either ‘26’ for AM or ’76’ for PM. IVR Routing will not offer the caller’s callback request to a queue until this date and time.

Note:
  • This activity and its branches are not mandatory and may be removed from the workflow if you do not want to enable callers to specify a date and time for a callback. If no date or time is entered by callers, the preferred date time of Now is set on the callback request by IVR Routing.

This activity has four branches: Success, Timeout, Invalid, and Failure. The Timeout and Invalid branches are standard Collect Digits branches. Callers are routed to the Timeout Branch if they do not enter anything after 12 seconds, while callers are routed to the Invalid branch if they enter too few digits or too many digits. Callers are routed to the Failure branch when their timeouts or invalid digit entries exceed the set number of Invalid attempts, which by default is 3. The Failure branch contains a Hang Up activity that terminates the workflow. For information on modifying the timeout duration of the Collect Digits activity, see "Configuring the Collect Digits activity".

If they enter valid digits, the caller is routed to the Success branch, where the Collect Digit activity reads back the date and time entered. The branch contains a Date Time Validation activity. This activity validates the entered date to ensure that the date and time are formatted correctly for use in the Outbound Callback workflow. This activity contains three branches: Success, Timeout, and Failure. Callers are routed to the Failure branch if the format of the date is not recognized as valid. This branch contains a Go To activity that returns the caller to this Collect Digits activity. The Success branch routes callers to the next activity in the workflow.

The Success branch contains a Set Variables activity that defines the window of opportunity the system has to offer a callback to a caller. By default it is configured to 30 minutes, so if the system is unable to contact the customer within 30 minutes of their preferred date and time, it will not try again. The time may be customized to match contact center requirements for callbacks. For information on modifying the Set Variables activity, see "Configuring the Set Variables activity".

Once the date and time have been saved, the workflow continues to a Record activity, so callers can leave a message with their callback request. The Record activity contains three branches: Save, Discard, and Review. Discard and Review branches are standard Record activity branches. The Record activity’s Save branch contains a Play activity, which informs callers that the recording has been saved. The branch continues to a Set Variables activity that links the .wav file to the submitted callback in SQL, ensuring that it is available to the agent when they receive this callback request. For information on configuring the Record activity and its branches, see "Configuring the Record activity".

Note:
  • This activity and its branches are not mandatory and may be removed from the workflow if you do not want to offer callers the ability to record a message.

The workflow continues with a Menu activity. This activity is the final step in the workflow for the caller, requesting that they either confirm or cancel their callback request. The instruction prompt informs the caller 'To submit this callback request, Press 1. To cancel this request and exit this system, please press the * key.' The Menu activity has five branches: 1. Confirm, *. Cancel, Timeout, No Match, and Failure. The Timeout and No Match branches are standard Menu branches with no additional configuration. The Failure branch contains no activities and routes callers through to the Save Callback to Requeue Activity, the *. Cancel branch, which contains a Play activity informing callers that their callback has been cancelled, and a Hang Up activity, which ends the workflow. The Confirm Branch contains no activities and routes the callers through to the Save Callback activity.

Note:
  • This activity and its branches are not mandatory and may be removed from the workflow if you do not want to offer callers to ability to confirm or cancel their callback request.

The final activity in this workflow is a Save Callback activity. This activity saves the callback request to the SQL database with the reason ‘New Request – Voice’, which enables the system to detect it and offer it to the queue. This activity contains two branches: Success and Failure. The Success branch contains a Play activity that informs the caller that the callback has been submitted and routes the caller out of the workflow. The Failure branch has a Play activity that informs callers that the callback request submission failed, followed by a Go To activity that returns the callers to the Menu activity to attempt callback resubmission.