The Call Routing Interface enables Blueworx Voice Response to ask the ICM for instructions on how to route (transfer) a call. Blueworx Voice Response supplies information about the call that is to be routed, and the ICM returns a label that specifies how the call is to be routed. The label is a character string that encodes the instructions for routing the call. For example, a label might consist of the digit-sequence that is needed to make the transfer; or it might contain the name of a program that is to be run to make the transfer.
Blueworx Voice Response requests routing instructions by invoking the Route_Request_Event custom server function. This function starts a dialog between Blueworx Voice Response and the ICM that is identified by a cross reference ID. The ICM responds with routing instructions that the calling application obtains through the Get_Route custom server function. The application ends the dialog by invoking the Route_End_Event custom server function.
The sequence of custom server functions that are called in a routing dialog is:
Blueworx Voice Response can end the routing dialog before normal completion. For example, the application can invoke Route_End_Event before it invokes Get_Route in the event of a caller hanging up. If the ICM cannot supply a route, a status code is returned from the Get_Route ReceiveData action.
You must issue Route_End_Event to end each Call Routing dialog inside a set time period, typically 10 seconds, from when you invoked Get_Route. The ICM system administrator sets the time period.
To send the result of the routing dialog to the ICM, use the Route_End_Event custom server function to set the status code to one of the following values:
If the ICM ends the routing dialog, it specifies the result by setting the status code (returned by the Get_Route custom server function) to one of the following values:
The Call Routing Interface is also used when the ICM has routed the call to Blueworx Voice Response by a translation route. In this condition, the ICM has additional information that is associated with the call, and the ICM arranges for the call to arrive at Blueworx Voice Response with a reserved DNIS value. Blueworx Voice Response recognizes this reserved DNIS value and uses Route_Request_Event to request the additional information that is associated with the call; the ICM provides the additional information that it gets by using the Get_Route custom server function.
The Cisco ICM custom server has several functions that you can call from a state table by using SendData and ReceiveData actions. These functions are summarized in Table 1.
Some parameters are optional. If an optional parameter is not to be sent to the ICM it must be coded in the state table as the null string. The maximum length of a string (the number of allowable characters) is given in square brackets after the data type.
The Call Routing Dialog column in Table 1 indicates whether you can invoke the function when a dialog is in progress. The EDFI/CRI column in Table 1 indicates the interface command set of which an event is part of.
Activity |
Function |
Call Routing Dialog? |
State of trunk |
See |
EDFI |
---|---|---|---|---|---|
A call has ended |
Call_Cleared_Event |
No |
ignored |
EDFI |
|
An inbound call has been received |
Delivered_Event |
Yes |
ignored |
EDFI |
|
A call has been diverted to a new service |
Diverted_Event |
No |
busy |
EDFI |
|
Get an identification for a call |
Get_CallID |
Yes |
N/A |
EDFI |
|
Get the data to enable the call to be routed |
Get_Route |
Yes |
busy |
CRI |
|
Get the number of a service |
Get_ServiceID |
Yes |
N/A |
EDFI |
|
The call is to be handled as a new call |
New_Transaction_Event |
No |
busy |
EDFI |
|
An outbound call has been made |
Originated_Event |
No |
ignored |
EDFI |
|
A routing request has ended |
Route_End_Event |
Yes |
ignored |
CRI |
|
The call is to be routed to another number |
Route_Request_Event |
No |
busy |
CRI |
|
Some variables must be reported to the ICM |
Set_Call_Variables_Event |
Yes |
N/A |
EDFI |
|
Some status information must be reported to the ICM |
Set_VRU_Status_Variables |
Yes |
N/A |
EDFI |