Purpose
Confirm that a trunk has been enabled.
Requirement
Mandatory for signaling processes that registered with the capability SL_SIGPROC_CAPABILITY_TRUNK_MGMT. Otherwise this primitive
is not used.
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 _trunk_enable_confirm_st {
size_t sizetLength;
SL_REPLY_CODE ReplyCode;
int iVpackNo;
} trunk_enable_confirm_st;
...
} SL_CONFIRM_PARM_STÂ ;
Description
The SL_TRUNK_ENABLE_CNF primitive is sent by the signaling
process to Blueworx Voice Response system management to confirm the successful enabling of
a trunk or to notify the system manager that a trunk has failed to enable.
On receipt of the SL_TRUNK_ENABLE_REQ primitive, the signaling
process enables the trunk. Once the trunk is enabled, the signaling process
sends the SL_TRUNK_ENABLE_CNF primitive, with the ReplyCode set to indicate the success.
If the signaling process replies unsuccessfully to this primitive, the
system manager logs an error, reporting that the signaling process has failed,
or that it received a non-zero return code. It is the responsibility of the
signaling process to log the reason for the failure and diagnostic information.
Corresponding state table action
None.
Corresponding user interface action
The System Monitor window shows the trunk as enabled.
Parameters
- id
- Eye-catcher that identifies the structure as containing a confirm primitive.
This 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_TRUNK_ENABLE_REQ primitive to
which this is the reply.
- pidCHP
- The process id of the requesting process. This should be set to the pidCHP field from the corresponding SL_TRUNK_ENABLE_REQ primitive.
- Command.id
- The primitive that the structure contains. Must be set to SL_TRUNK_ENABLE_CNF.
- Parms.trunk_enable_confirm_st.sizetLength
- Must be set to sizeof(struct _trunk_enable_confirm_st).
- Parms.trunk_enable_confirm_st.ReplyCode
-
- SL_REPLY_ABORTED
- The signaling process has received an SL_ABORT_REQ primitive
specifying the sequence number of an SL_TRUNK_ENABLE_REQ for
a trunk which is being enabled. The signaling process should reply with SL_REPLY_ABORTED, and disable the trunk if necessary. The trunk
is now in state SL_TRUNK_STATE_DISABLED. All channels on
the trunk are now in state SL_CHANNEL_STATE_DISABLED.
- SL_REPLY_INTERNAL_ERROR
- The signaling process experienced an internal failure while processing
the SL_TRUNK_ENABLE_REQ primitive. The trunk is in an indeterminate
state.
- SL_REPLY_INVALID_STATE
- The signaling process has received an SL_TRUNK_ENABLE_REQ primitive specifying the id of a trunk that is not in the SL_TRUNK_DISABLED state. The signaling process should log an error explaining the failure,
using CA_Log_Error(). The trunk remains in its current state.
- SL_REPLY_NO_signaling_TRUNK
- The trunk failed to enable because no signaling trunk is enabled.
Note: In an ISDN NFAS configuration, the primary (or backup) trunk must
be enabled, before any non-signaling trunk is enabled. If the signaling process
receives an SL_TRUNK_ENABLE_REQ for a non-signaling trunk
before any signaling trunks are enabled, it may reply with SL_REPLY_NO_signaling.
The trunk is now in state SL_TRUNK_STATE_DISABLED. All channels on the trunk are now in state SL_CHANNEL_STATE_DISABLED.
- SL_REPLY_OUTBOUND_LINE_PROBLEM
- The trunk failed to enable. The trunk is now in state SL_TRUNK_STATE_DISABLED. All channels on the trunk are now in state SL_CHANNEL_STATE_DISABLED. The signaling process should log an error explaining the failure, using CA_Log_Error().
- SL_REPLY_SUCCESS
- The trunk has been enabled successfully. The trunk is now in state SL_TRUNK_STATE_ENABLED. All channels on the trunk are now in
state SL_CHANNEL_STATE_DISABLED.
- other values
- Not supported. The trunk is in state SL_TRUNK_STATE_DISABLED. All channels on the trunk are now in state SL_CHANNEL_STATE_DISABLED.
- Parms.trunk_enable_confirm_st.iVpackNo
- Identifies the trunk which was enabled.