Purpose
Request to set a message waiting indicator on a specified number.
Requirement
Optional for all 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 _station_set_mwi_request_st{
size_t sizetLength;
char phone_num[SL_NUM_SZ];
SL_MWI_STATE state;
} station_set_mwi_request_st;
...
} SL_REQUEST_PARM_ST;
Description
There is no way to determine from a phone number which signaling process
controls the corresponding message waiting indication, so the SL_STATION_SET_MWI_REQ primitive must be set to each active signaling process in the system.
To set a message waiting indication, call the sl_send_request() function once for each possible signaling process, passing an SL_STATION_SET_MWI_REQ primitive. Ignore return codes of SLRC_NOT_INSTALLED as
this means that a given signaling process is not available in this system.
The caller should not call sl_receive_confirm(), because
to simplify the use of message waiting, the signaling interface suppresses
the receipt of the SL_STATION_SET_MWI_CNF by the requester.
This matches the behavior of many signaling protocols that provide message
waiting, that also do not provide positive confirmation of changes of the
message waiting states.
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_STATION_SET_MWI_CNF primitive.
- Command.id
- The primitive that the structure contains. Must be set to SL_STATION_SET_MWI_REQ.
- Parms.station_set_mwi_request_st.sizetLength
- Must be set to sizeof(struct _station_set_mwi_request_st).
- Parms.station_set_mwi_request_st.phone_num
- Specifies the phone number, for which the message waiting indicator
should be changed.
- Parms.istation_set_mwi_request_st.state
- Identifies the required state of the message waiting indicator.
- SL_MWI_FAST
- Set the message waiting indicator to blink rapidly, if this feature
is available. If a rapid blink is not available, then set the message waiting
indicator.
- SL_MWI_OFF
- Clear the message waiting indicator.
- SL_MWI_ON
- Set the message waiting indicator.
- SL_MWI_SLOW
- Set the message waiting indicator to blink slowly, if this feature is
available. If a slow blink is not available, set the message waiting indicator.