SL_STATION_SET_MWI_REQ primitive

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.

Related information