Purpose
Issue a request internally within the signaling process.
Requirement
Optional for common channel signaling processes and exchange data link
signaling processes.
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_REQUEST_PARM_ST Parms;
} SL_REQUEST_ST;
...
typedef union {
...
struct _internal_command_request_st {
size_t sizetLength;
int command;
int iChannelNo;
int iVpackNo;
unsigned char data[SL_USER_DATA_LEN]
} internal_command_request_st;
...
} SL_REQUEST_PARM_ST;
Description
The SL_INTERNAL_COMMAND_REQ primitive is sent by the
signaling process to itself. This is a special primitive that may be used
internally by the signaling process. This primitive is not intended for use
by channel processes or custom servers. If the signaling process provides
additional implementation-dependent primitives for the use of channel processes
or custom servers these should be implemented using the SL_USER_IND primitive.
Corresponding state table action
None.
Parameters
- id
- Eye-catcher that identifies the structure as containing a request primitive.
Must be set to SLID_REQUEST_ST
- iseq_no
- The sequence number of the primitive. This field must be set to 0 when
the primitive is sent to Blueworx Voice Response; the actual sequence number is allocated by Blueworx Voice Response,
and is available to the sender on return from sl_send_request(). The field is set when the primitive is received from Blueworx Voice Response by the
signaling process.
- pidCHP
- The process id of the sending process. The signaling process should
use this value to set the pidCHP field of the corresponding SL_INTERNAL_COMMAND_CNF primitive.
- Command.id
- The primitive that the structure contains. Must be set to SL_INTERNAL_COMMAND_REQ.
- Parms.internal_command_request_st.sizetLength
- Must be set to sizeof(struct _internal_command_request_st).
- Parms.internal_command_request_st.command
- This field is provided for use by the signaling process to differentiate
internal requests. The values of this field are implementation-dependent,
and are defined by the provider of the signaling process.
- Parms.internal_command_request_st.iChannelNo
- Identifies the channel.
- Parms.internal_command_request_st.iVpackNo
- Identifies the trunk on which the channel is located.
- Parms.internal_command_request_st.data
- Up to SL_USER_DATA_LEN bytes of implementation-dependent
information. The interpretation of this field depends on the value of Parms.internal_command_request_st.command, and is defined by
the provider of the signaling process.