(Page 11 of 35 in this chapter) Version


ISUPRetrieveMessage

Description

Retrieves the next message from the ISUP layer.

Prototype

DWORD ISUPRetrieveMessage ( CTAHD ctahd,
SiAllSdus *event,
IsupRcvInfoBlk *infoBlk,
Bool wait )

ctahd CT Access handle returned by ctaCreateContext.

event Address of caller's event buffer, where the received event (if any) is returned to the caller. This buffer must be large enough to accommodate any of the events specified in Appendix B, as defined by the SiAllSdus structure (union of all event structures). The actual event structure returned (i.e., which member of the union) depends on the value of the infoBlk.indType field returned (see Details).

infoBlk Address of caller's receive information block, where information regarding the received event (if any) is returned to the caller. The structure of the receive information block is as follows:

typedef struct rcvInfoBlk {
  U8       indType;  /* indication 
                      * confirm. type   */
  U8       evntType; /* event type for 
                      * status &
                      * connection status
                      * indications     */
  SuId     suId;     /* service user(SAP)
                      * id-all          */
  SiInstId suInstId; /* caller's 
                      * reference 
                      * number-all      */
  SiInstId spInstId; /* ISUP's refnce
                      * number-all      */
  CirId    circuit;  /* circuit id - all*/
  Bool     globalFlg /* global/circuit
                      * specific flag -
                      * status ind. only*/
  U8       spare;    /* filler for future
                      * use             */
} IsupRcvInfoBlk;

The indication type (indType) identifies the event received and is coded to one of the following values:


EVTSITCONCFM  0x0D /* Connect confirm   */
EVTSITCONIND  0x0E /* Connect 
                    * indication        */
EVTSITDATIND  0x16 /* Data indication   */
EVTSITSUSPIND 0x3A /* Call suspend
                    * indication        */
EVTSITRESMIND 0x36 /* Call resume
                    * indication        */
EVTSITCNSTIND 0x5A /* Connection status 
                    * ind.              */
EVTSITRELIND  0x5E /* Connection release
                    * ind.              */
EVTSITRELCFM  0x5D /* Connection release 
                    * confirmation      */
EVTSITFACIND  0x6A /* Call facility
                    * indication        */
EVTSITSTAIND  0x7A /* Status 
                    * indication        */
The evntType identifies the actual message received for status and connection status indications. It is coded to one of the following values:


For Connection Status Indications

ADDRCMPLT      Address Complete
MODIFY         Call Modification Request
MODCMPLT       Call Modification Complete
MODREJ         Call Modification Rejected
PROGRESS       Call Progress information
FRWDTRSFR      Forward Transfer
IDENTREQ       Identification Request
IDENTRSP       Identification Response
INFORMATION    Information (response to
               INFORMATREQ)
INFORMATREQ    Information Request
SUBSADDR       Subsequent Address Message

For Status Indications

REATTEMPT      Reattempt Indication
ERRORIND       Error Indication
CONTCHK        Continuity Check
CONTREP        Continuity Report
STPCONTIN      Stop Continuity Indication
LOOPBCKACK     Loop Back Acknowledge
CONFUSION      Confusion Indication
CIRRESERVE     Circuit Reservation Request
CIRRESERVEACK  Circuit Reservation
               Acknowledge
CIRGRPQRYRSP   Circuit Group Query 
               Response
CIRBLKREQ      Circuit Block Request
CIRBLKRSP      Circuit Block Response
CIRUNBLKREQ    Circuit Unblock Request
CIRUNBLKRSP    Circuit Unblock Response
CIRRESREQ      Circuit Reset Request
CIRGRPBLKREQ   Circuit Group Block Request
CIRGRPBLKRSP   Circuit Group Block
               Response
CIRGRPRESACK   Circuit Group Reset
               Acknowledge
CIRGRPUNBLKREQ Circuit Group Unblock
               Request
CIRGRPUNBLKRSP Circuit Group Unblock
               Response
CIRUNEQPD      Circuit Unequipped
               Indication
MTPPAUSE       Pause indication received
               from MTP
MTPRESUME      Resume indication received
               from MTP
RMTUSRUNAVAIL  Remote user unavailable
RMTUSRAVAIL    Remote user available
MTPCONGEST     Congestion indication
               received from MTP
MTPSTOPCONGEST Stop congestion indication
               received from MTP
CIRGRPSET      Circuit group set status
CIRGRPGET      Circuit group get status

MTPBACKUP      BACKUP received from MTP
MTPPRIMARY     PRIMARY received from MTP
MTPSTANDALONE  STANDALONE received from MTP

For Facility Indications

FACILITY       facility
FACILITYREQ    facility request
FACILITYACC    facility accept
FACILITYREJ    facility reject
FACILITYDEACT  facility deactivate
FACILITYINFO   facility information

Note: The service provider instance id (spInstId) field from the first event received from the ISUP for each connection must be saved by the user application and used in subsequent requests associated with that connection.
wait Wait Flag - obsolete

Return Values

Details

The user application must call this routine to receive events (messages) from the ISUP layer.

If a message is received, ISUPRetrieveMessage copies the event to the caller's event buffer, performing any necessary byte order translation to convert to the host PC's native byte ordering. Information relative to the event is returned to the caller in the infoBlk parameter.

The following NTT-specific value may be received in the evntType member of the IsupRcvInfoBlk for indType equal to EVTSITCNSTIND:

CHARGE Charge Message

The event structure associated with a received message depends on the type of message received from the ISUP layer (as determined by the value of the infoBlk.indType field).
Indication Type

Event Structure Employed

EVTSITCONCFM

SiConEvnt

EVTSITCONIND

SiConEvnt

EVTSITDATIND

SiInfoEvnt

EVTSITSUSPIND

SiSuspEvnt

EVTSITRESMIND

SiResmEvnt

EVTSITCNSTIND

SiCnStEvnt

EVTSITRELIND

SiRelEvnt

EVTSITRELCFM

SiRelEvnt

EVTSITFACIND

SiFacEvnt

EVTSITFACCFM

SiFacEvnt

EVTSITSTAIND

SiStaEvnt

EVTSITRAWIND

SiRawEvnt



(Page 11 of 35 in this chapter) Version


tech_support@nmss.com
Copyright © 2000, Natural MicroSystems, Inc. All rights reserved.