Purpose
Issue an implementation-dependent subroutine call.
Library
The signaling interface library (libsl.a).
C syntax
#include <slescape.h>
...
SL_RET_CODE sl_escape
( SL_HANDLE * sl_handle
, SL_ESCAPE_ST * psl_escape_st
);
Description
This subroutine issues an implementation dependent subroutine call. The sl_escape() subroutine provides specific Blueworx Voice Response functions to the signaling
process. These functions are not intended for general use by signaling processes.
Parameters
- SL_ESCAPE_SET_ABCD
- This is used to set the ABCD bits.
This escape code is intended for
use in hybrid signaling systems which use common channel signaling over a
separate facility and use the channel associated signaling ABCD bits on a
trunk to signal channel block and channel unblock.
For an E1 trunk,
this escape sets the values of the ABCD bits for channel iChannelNo on
trunk iVpackNo. The ABCD bits are transmitted in timeslot 16 on the
trunk.
Note: If the trunk is being used for a common channel
signaling protocol which uses timeslot 16 to carry a signaling link (for
example, ISDN) use of this escape code will disrupt the signaling link.
If common channel signaling is being carried over a separate facility
(for example, TCP/IP) this escape code allows control of the ABCD bits.
- sl_handle
- The signaling handle returned by the sl_open() subroutine.
- psl_escape_st
- Pointer to the escape structure.
- id
- Must be set to SLID_ESCAPE.
- Command
- Must be set to SL_ESCAPE_SET_ABCD.
- Parms.set_abcd_bits_st.iVpackNo
- The trunk.
- Parms.set_abcd_bits_st.iChannelNo
- The channel.
- Parms.set_abcd_bits_st.abcd
- The low order four bits (X’0000000F’) hold the new value for
the abcd bits on the specified channel, in order B’abcd’. The remaining
bits are ignored.
- SL_ESCAPE_QUERY_ABCD
- This is used to query the abcd bits.
This escape code is intended
for use in hybrid signaling systems which use common channel signaling over
a separate facility and use the channel associated signaling ABCD bits on
a trunk to signal channel block and channel unblock.
Note: This
escape code cannot be used to implement a channel associated signaling (CAS)
signaling process, because it only allows the signaling process to query the
state of the bits at a point in time. There is no way for the signaling process
to be notified of every change in the state of the ABCD bits, within the timing
tolerances required by CAS protocols.
- sl_handle
- The signaling handle returned by the sl_open() subroutine.
- psl_escape_st
- Pointer to the escape structure.
- id
- Must be set to SLID_ESCAPE.
- Command
- Must be set to SL_ESCAPE_QUERY_ABCD.
- Parms.set_abcd_bits_st.iVpackNo
- The trunk.
- Parms.set_abcd_bits_st.iChannelNo
- The channel.
- Parms.set_abcd_bits_st.abcd
- The low order four bits (X’0000000F’) will be updated on return
from sl_escape() with the current value of the abcd bits on the
specified channel, and will be set to B’abcd’. The remaining bits
(X’FFFFFFF0’) are cleared.
Return values
- SLRC_OK
- Successful.
- SLRC_ERRNO
- An AIX error has occurred. Check the value of errno for more
information.
- SLRC_INVALID_ARGS
- The value of psl_escape_st is NULL.
- SLRC_INVALID_CHAN
- The value of iVpackNo or iChannelNo is invalid.
- SLRC_INVALID_HANDLE
- The parameter sl_handle is invalid.
- other
- The subroutine call failed.