TromboneMakeCall

Description

TromboneMakeCall is called with several parameters, most of them required for the MakeCall action and to determine which state table to use to make the call.

Using the data provided by the input parameters, the custom server invokes a state table (the default is IBMTromboneOut) to make a call to the third party. It then waits for a response in the form of a TromboneMakeCallStatus request from the invoked state table. If this response indicates that the outbound call was successful, the custom server returns a zero response in the make_call_status to indicate that the outbound call is in place. The TromboneConnect function call should be used next to connect the caller and the third party.

If any of the steps in this process fail, the TromboneMakeCall request returns a non-zero response in the make_call_status to indicate that the trombone operation has failed for the given reason.

Input parameters

char phone_number[40]:

The number to dial for the outgoing part of the trombone (see the definition of Phone_Number in the MakeCall state table action for details).

char format[50]:

The format string for the number to dial for the outgoing part of the trombone (see the definition of format in the MakeCall state table action for details).

char permitted_channel_groups[64]:

The permitted channel groups for the outgoing part of the trombone (see the definition of SV178 for information on how this variable is used).

char permitted_channels[64]:

The permitted channels for the outgoing part of the trombone (see the definition of SV228 for information on how this variable is used).

char log_filename[64]:

The filename to which to send event logging information. This should be blank if no event logging is required.

char user_data[64]:

Some user-defined data for simple communications from the IBMTromboneCall state table to the IBMTromboneOut state table.

char outbound_state_table_name[16]:

The name of the state table to use for the outbound part of the trombone operation. If this is blank, the default state table “IBMTromboneOut” is used.

char outbound_state_table_entry_point[16]:

The entry point within the state table to use for the outbound part of the trombone operation. If this is blank, the default label begin is used.

char additional_call_info1[140]:

Reserved for Blueworx Voice Response.

char additional_call_info2[35]:

Reserved for Blueworx Voice Response.

char additional_call_info3[35]:

Reserved for Blueworx Voice Response.

char additional_call_info4[35]:

Reserved for Blueworx Voice Response.

char additional_call_info5[35]:

Reserved for Blueworx Voice Response.

Output parameters

short trombone_make_call_status:

The trombone_make_call_status for the TromboneMakeCall request indicates the status of the trombone operation. The trombone_make_call_status falls into various groups defined in Table 1.

long partner_call_id:

The Call Reference of the outbound part of the trombone operation. It is supplied to provide a unique link between the two halves of the trombone operation, for debug purposes.

string user_status_data[65]:

Some user-defined data provided to allow for simple communications from the outbound state table to the inbound state table. This may be used, for example, to indicate the response of the third party to the trombone request (such as a reason code for connection refused). The inbound state table can then play a prompt to the caller appropriate to the third party response.

Table 1. Return values for the trombone_make_call_status parameter of the TromboneMakeCall function

Make Call Status

Error Description

0

Trombone function request was successful.

1 - 99

Bad return code from the IBMTromboneOut state table.

100

IBMTromboneOut state table returned a trombone_make_call_status outside the valid range (0 to 99).

101

The IBMTromboneOut state table performed a CloseHostServerLink while the custom server was waiting for a response to the TromboneMakeCall request.

102

The custom server request is invalid at this time (probably because of an error in the sequence of custom server calls).

103

CA_Open_CHP_Link() failed, probably because there were not enough free CHPs.

104

CA_Execute_State_Table() failed, probably because of an invalid state table name, entry point, or the state table not being validated.

105

CA_Get_Channel_Info() failed, probably because the outbound call was terminated.

112-199

Spare