Specify Dial Command for Call Transfer
This command is used in an infobox of $type transfer to specify the number to be dialed and the type of transfer. It may also be used with the obsolete infobox types $type call_phone or $type call_ext which cause the transfer type to default to callp or nocallp respectively.
This command is used both for a normal 'call transfer' (where the transferred call is then released by CopiaFacts) and for a call connection, where a second CopiaFacts line is used to place a call which is then connected to the first.
The parameters on this command are used as follows:
|dialstring||The dial codes and phone or extension number to be dialed. The special characters for Dialogic boards are "&" to hook flash and "," to delay 2 seconds. The special characters for Brooktrout boards are "!" to hook flash, "," to delay one second, and ";" to delay five seconds. This option has to be used on a line that can get a dial tone via a hook flash. This is normally done via a PBX, Centrex, or special DID interface that also has a dial tone line attached to it. For Dialogic Diva call transfers the hook flash character need not be included in the string as the board takes care of the mechanics of the transfer appropriately for the line type. For Diva and Brooktrout boards, in-band dialing and delays can be added after a vertical bar character (|) as described for $fax_phone.|
|transtype||One of the following keywords:|
|callp, cp2||transfer the call (or place the second call) with call progress (when supported by the voice hardware). On PRI circuits this setting causes analysis to be done on in-band tones (using the voice channel) after the call placement is complete. This is the default unless the infobox is $type call_ext.|
|cp1||transfer the call (or place the second call) and wait on PRI circuits until call placement is signalled as complete, then return without doing any analysis of in-band tones.|
|nocallp, cp0||transfer the call (or place the second call) without waiting to determine the result. This is the default when the infobox is $type call_ext.|
|linegroup||This parameter specifies the line or line group to be used to place a separate outbound call. If the outbound call is successful, the inbound line will be connected to the outbound line using either the Dialogic SC-Bus or the Dialogic Diva line interconnect feature. Both calls are then terminated when either is hung up. If this parameter is not given, the incoming line is assumed to be from a PBX or other system which can accept a hook flash or other signal to transfer the call.|
|If a linegroup name of the form 'RRn...' is used, where n is a digit from 1 to 8, then the line is selected from the linegroup on a 'round-robin' basis. Up to 8 different groups can be specified in this way. The default is to allocate the lowest numbered available line in the group. This feature does not apply to PRI-ISDN lines where the outbound telephony channel is selected using the channelrange parameter and the sequence of use of the voice channels is not relevant.|
|channelrange||This parameter specifies a range (e.g. '31-60') of telephony channel numbers that can be used for the Dialogic SC-Bus transfer call. It is used when outbound call transfers must be restricted to specific ISDN span(s) in a node. For Dialogic Diva calls, the span is implied by the linegroup parameter.|
On voice boards which support call progress analysis, control will be passed to the infobox specified by $error_exit if the call progress is specified and the call transfer fails due to busy, no answer or other error conditions. Since the caller will hear the call tones (e.g. ring, busy, etc.) you should make sure that your prompt advises staying on the line if you intend to take back control of the call after failure to connect. The system variable CATERM is set with a numeric error code giving the reason for the failure. In addition the following special codes may be returned:
|101||Cannot connect lines, already connecting or connected|
|102||No suitable line available in specified group, for outbound call|
The call is normally hung up after a call transfer on a single line. However by specifying $error_exit in the same infobox you skip the hangup for a failed call-progress call. And specifying a $next_box value in the same infobox you can avoid hanging up the line after a successful call-progress operation, and after a non-call-progress operation. This feature allows you to send a command to a local PBX, signalled by a hook-flash, and continue to process the original call.
For outbound calls connected over SC-Bus, the Dialogic default call progress parameters are often not appropriate. Overrides may be applied by assigning values to the system variable VOICE_PARMS, using $set_var statements in the $type transfer infobox. The following settings are recommended:
$set_var VOICE_PARMS intflg=6 ;enable voice detect, disable SIT
$set_var VOICE_PARMS pamd_spdval=2 ;PAMD_QUICK
$set_var VOICE_PARMS maxansr=200 ;2 seconds of speech = connect
$set_var VOICE_PARMS hedge=1 ;return connect immediately
$set_var VOICE_PARMS noanswer=1000 ;10 sec ringing gives no ans
Values set in this way are effective for transferred calls only. They are not cumulative with commands set in the configuration file, so you must repeat any settings which you need in both places. If you set any values in the infobox, no values from the configuration file are used for the outbound dial. Though the values are set in a infobox on the inbound line, the values are used for the outbound line if two lines are involved in the transfer. The list of available parameters appears under $cpb_parm.
A preliminary implementation of this feature is available for Copia VoIP ports from build 18.104.22.168. Note that the transtype parameter must be set to CP2 and the linegroup parameter must specify lines defined using the same $voip command as the line that is originating the call. In addition the DTMF parameter on the $allow_interrupt command (to filter which DTMF keys are to break the connection) is not yet supported.
Hardware Issues: Only Dialogic lines with SC-Bus support, or Dialogic Diva lines using Line Interconnect, or Copia VoIP ports (see limitations above) can be used to place a separate outbound call. The second line must be in the same node and of the same type as the inbound call.
Default: none (required in infobox of above types)
$script "Your call is being transferred"
$image_desc standard ; use operator.vox
$dial_cmd "&,0" callp
$error_exit noxfer ; go to noxfer.iif on error
$dial_cmd "&,9,5551212" ; dial outside number