SL_CALL_RECONNECT_CNF primitive

Purpose

Confirm the reconnection of the original caller to Blueworx Voice Response, during or after a call transfer.

Requirement

Optional for all signaling processes. This primitive is one of the primitives used to implement the call transfer capability. signaling processes that implement the call transfer capability should specify SL_SIGPROC_CAPABILITY_TRANSFER on registration.

Library

The signaling interface library (libsl.a).

C syntax

typedef struct {
                SL_ID id;
                int iseq_no;
                pid_t pidCHP;
                SL_PRIMITIVE_TYPE Command;
                SL_CONFIRM_PARM_ST Parms;
} SL_CONFIRM_ST;
...
typedef union {
...
                struct _call_reconnect_confirm_st {
                      size_t sizetLength;
                      SL_REPLY_CODE ReplyCode;
                      SL_CALL_REF slCallReference;
                      SL_CALL_PROGRESS_TYPE tone_type;
                      int tone_id;
                      SL_APPL_INFO_ST slApplInfo;
                } call_reconnect_confirm_st;
...
} SL_CONFIRM_PARM_ST;

Description

The SL_CALL_RECONNECT_CNF primitive is sent by the signaling process to the channel process to confirm the reconnection of the original caller to Blueworx Voice Response after an unsuccessful call transfer. After attempting a call transfer which does not succeed, the original caller is assumed to be on hold, and Blueworx Voice Response is assumed to no longer be connected. The channel process reconnects the original caller to Blueworx Voice Response by sending an SL_CALL_RECONNECT_REQ primitive to the signaling process. The signaling process then signals to the network to reconnect the two parties. After the original caller has been reconnected to Blueworx Voice Response the signaling process sends back the SL_CALL_RECONNECT_CNF primitive. If the original caller cannot be reconnected for any reason, the signaling process sends the SL_CALL_RECONNECT_CNF primitive with the ReplyCode set to indicate the error.

Corresponding state table action

The SL_CALL_RECONNECT_REQ primitive and the matching SL_CALL_RECONNECT_CNF correspond to the ReconnectCall state table action. See the Blueworx Voice Response for AIX: Application Development using State Tables information.

Parameters

id
Eye-catcher that identifies the structure as containing a request primitive. Must be set to SLID_CONFIRM_ST.
iseq_no
The sequence number of the primitive. Must be set to the field iseq_no from the SL_CALL_RECONNECT_REQ primitive, to which this is the reply.
pidCHP
The process id of the channel process. This should be set to the pidCHP field from the corresponding SL_CALL_RECONNECT_REQ primitive.
Command.id
The primitive that the structure contains. Must be set to SL_CALL_RECONNECT_CNF.
Parms.call_reconnect_confirm_st.sizetLength
Must be set to sizeof(struct _call_reconnect_confirm_st).
Parms.call_reconnect_confirm_st.ReplyCode
Specifies whether the call was reconnected successfully or not.
SL_REPLY_ABORTED
The signaling process has received an SL_ABORT_REQ primitive specifying the sequence number of a SL_CALL_RECONNECT_REQ primitive, for a call which is on hold. If the call is still on hold, or is in an indeterminate state, the signaling process may reply with SL_REPLY_ABORTED. The call is in an indeterminate state. If the call has been reconnected, the signaling process should reply SL_REPLY_SUCCESS.
SL_REPLY_CALLER_HUNG_UP
The call was not reconnected successfully, because the signaling processes detected that the original caller has hung up.
SL_REPLY_DIAL_TONE
The call was not reconnected successfully because the signaling process received unexpected progress information from the network. The call is in an indeterminate state. Blueworx Voice Response may not be connected to the original caller.
SL_REPLY_INTERNAL_ERROR
An error occurred within the signaling process. The call was not reconnected successfully.
SL_REPLY_NOT_IMPLEMENTED
Should be returned by signaling processes that did not register support for SL_SIGPROC_CAPABILITY_TRANSFER.
SL_REPLY_OUTBOUND_LINE_PROBLEM
The call was not reconnected successfully because of an outbound line problem. The call is in an indeterminate state. Blueworx Voice Response may not be connected to the original caller.
SL_REPLY_SUCCESS
The call was reconnected successfully. The call is now in the connected state.
SL_REPLY_UNEXPECTED_TONE
The call was not reconnected successfully because the signaling process received unexpected progress information from the network. The tone_type and tone_id fields may contain further information. The call is in an indeterminate state. Blueworx Voice Response may not be connected to the original caller.
other values
Not supported.
Parms.call_reconnect_confirm_st.slCallReference
The call reference that identifies the call being reconnected. For exchange date link signaling protocols, this field should be set to SL_CALL_REF_NULL. For common channel signaling protocols, this field should be set to the call reference for the call, which was allocated by Blueworx Voice Response for a previous SL_CALL_SETUP_REQ, or SL_CALL_SETUP_IND primitive.
Parms.call_reconnect_confirm_st.tone_type
This field identifies a call progress tone type.

A common channel signaling process does not have access to inband call progress tones and therefore should set this field to PROG_UNKNOWN.

A signaling process can instead return a value based on the progress information it receives from the network. This information is made available to the application in the system variable System: Progress tone type (SV176).

Parms.call_reconnect_confirm_st.tone_id
This field identifies a call progress tone identifier.

A common channel signaling process does not have access to inband call progress tones and therefore should set this field to 0.

A signaling process can instead return a value based on the progress information it receives from the network. Tone ids are sequential identifiers for every tone that exists in each table in the system. This information is made available to the application in the system variable System: Progress tone ID (SV175).

Parms.call_reconnect_confirm_st.slApplInfo
Contains both the length of the call information tag string (including the null terminator '\0') and the call information tag string array itself. The string is used to pass information between state tables and the signaling process. For more information see SL_APPL_INFO_ST data structure

Related information