This illustration shows a sample script. The key below explains the nodes.
Start node: Create the Start node by selecting a new Routing Script from the Script Editor.
Set Variable (Call.Calling Line ID) node: (optional). If required, you can set the CallingLineID (CLID/ ANI) variable to implement a "dial-plan," pre-pending a set of digits to the phone number provided by the customer so that it can be correctly routed. For example, it is often necessary to add 9 to the phone number to reach an outside line. In other cases, more pre-pended digits may be required to reach the end customer.
You can also set up Unified Communications Manager Route Patterns to respond to a certain set of digits by routing the call to an outside line with a specified area code. To implement a dial-plan, add a Set Variable node before the queue, as shown in this example. In this case, a 9 is pre-pended to the customer phone number using the built-in concatenate function.
Queue to Skill Group node: The Agent Request call can be queued against one or more Skill Groups, Precision Queues, or a queue-to-agent node. In the example script, the call is queued against a single skill group.
Set Variable (Call.Estimated Wait Time) node: A customer who requests a voice callback might want to know approximately how long it will be before the call is returned. You can configure voice callback to provide an estimate of the wait time back to the customer. The estimated wait time is calculated once, when the call enters the queue. The time is not updated as the position in the queue changes.
The default estimated wait time algorithm is based on a running five minute window of the rate of calls leaving the queue. Any calls that are routed or abandoned during the previous 5 minutes are taken into account as part of the rate leaving queue. For Precision Queues, the rate leaving queue represents the rate at which calls are delivered or abandoned from the entire precision queue, not any individual recision Queue steps. The algorithm computes the wait time for each of the queues against which the call is queued (Skill Groups or Precision Queues) and then returns the minimum estimated wait time. Queue to Agent is not supported.
While the queue builds, the small number of calls in the queue makes the estimated wait time less accurate and the value fluctuates rapidly. As the queue operates with more calls over time, the estimated wait time is more accurate and consistent. If CCE does not have enough data to calculate EWT, the callback API returns a value of -1. Customers must determine how their custom applications handle this situation.
Note that the built-in function also applies to inbound calls that queue.
Set the Call Wait time as follows:
Run Ext Script node: Apply the Network VRU script as follows:
From the Set Variable node, select Call from the Object type drop-down menu.
From the Variable drop-down menu, choose Estimated Wait Time(). You can then work with the Formula Editor to use the default estimated wait value or create a formula and use your own value.
Click Formula Editor, and do either of the following:
To use the default estimated wait value, click the Built-In Functions tab and choose EstimatedWaitTime()
To create a formula and use your own value, click the Variables tab and choose an entry in the Object type list and an entry in the Object list. Then double-click a variable in the Variable list.
Click the Queue tab.
Click Run External Script.
Click inside the script. A Run External Script node appears.
Double-click the node and choose the Network VRU script from the list; then click OK. The call variable Estimated Wait Time now contains a value in the EstimatedWaitTime field and can be passed to peripherals. Note that a Run External Script node is required to send the EstimatedWaitTime to SocialMiner.
Wait node: The wait period before an agent becomes available.
End node: The script ends if no agent becomes available.