Table of Contents Index NMS Glossary Previous Page Next Page (Page 6 of 7 in this chapter) Version


MTP3RetrieveMessage

Description

Checks for and retrieves an incoming message from the MTP 3 layer.

Prototype

DWORD NMSAPI MTP3RetrieveMessage (CTAHD ctahd,
void *pMsgInd,
short *Length)

ctahd Natural Access Handle.

pMsgInd Pointer to buffer where the received message will be returned.

Length Pointer to where the length of the indication is returned.

Return Values

Details

This routine must be called periodically to process incoming messages. This can be done using a polling process to retrieve a message only when notification has indicated that one is available.

Note: The size of the buffer identified in the pMsgInd field must be large enough to contain a data indication.

Data Indication

This structure will be received by an application, via the MTP3RetrieveMessage function, when data matching the application's service information octet is received from a remote signaling point.

typedef struct data_ind_s 
  U8   code;           /* MTP3_DATA_IND (0x1A)              */
  U8   spare1;         /* Alignment                         */
  U16  sapId;          /* Service user Id from Open Services*/
  U32  opc;            /* Originating Point Code            */
  U32  dpc;            /* Destination Point Code            */
  U8   srvInfo;        /* Service information octet         */
  U8   lnkSel;         /* Link selector field               */
  U16  spare2;         /* Alignment                         */
  U8   data[MAXDATA]   /* Received data packet              */
DATA_IND;
Field Name

Description

code

This code identifies whether an indication is data or status. Always MTP3_DATA_IND for data indications.

sapID

Service user identifier passed as suId in the Open Services call.

opc

Point code of the remote node that sent this data. Possible values are 0 to 0xFFFFFF.

dpc

Destination point code from the routing label of the incoming message. Possible values are 0 to 0xFFFFFF.

srvInfo

Service information octet from the incoming message, specifying the upper layer protocol and the network indicator.

lnkSel

Link selector field from the incoming message. Possible values are:

· 0 to 15 (ITU-T)

· 0 to 31 (ANSI)

· 0 to 255 (TUP only)

data

The data that was received.

Status Indication

This structure will be received by an application, with MTP3RetrieveMessage, when an important status change occurs on a circuit matching the application's service information octet. These are generated by the local MTP 3 layer. Refer to Section 2.11, Status Indications, for detailed information about each possible status indication.

typedef struct stat_ind_s {
  U8   code;      /* MTP3_STAT_IND (0x7A)                 */
  U8   spare1;    /* Alignment                            */
  U16  sapId;     /* Service user Id from Open Services   */
  U32  pc;        /* Point Code related to the status ind */
  S16  status;    /* Status indicator. See defines above  */
  U8   priority;  /* Priority of this status indication   */
  U16  spare2;    /* Alignment                            */
} STAT_IND;
Field Name

Description

code

This code identifies whether an indication is data or status. Always MTP3_STAT_IND for status indications.

sapId

Service user identifier passed as suId in the Open Services call.

pc

Point code of the remote node affected by this status indication.

status

Status event that occured:

· StatPaused - Data traffic paused

· StatResumed - Data traffic resumed

· StatCongested - Data congested

· StatUsrUnavail - User unavailable

· StatRestart - Restart in progress

· StatRestartEnd - Restart completed

· StatCongestionEnds - Congestion has ended

· StatPrimary - MTP 3 is primary in redundant configuration

· StatBackup - MTP 3 is backup in redundant configuration

· StatStandAlone - MTP is not in a redundant configuration

priority

Current congestion level for congestion related indications. Valid range is 0 (lowest) to 3 (highest).

Extended Status Indication

If the application has registered to receive extended status indications, the following structure is received by an application through MTP3RetrieveMessage when an important status change occurs on a link. These indications are generated by the local MTP 3 layer. Refer to Section 2.12, Extended Status Indications, for detailed information concerning each possible extended status indication.

type def struct xstat_ind_s {
  U8   code;    /* MTP3_XSTAT_IND (0x3A)              */
  U8   spare1;  /* Alignment                          */
  U16  sapId;   /* Service user Id from Open Services */
  U16  status;  /* Extended Status Type               */
  U16  link;    /* Affected MTP3 link                 */
  U16  spare2;  /* Reserved for future use            */
  U16  spare3;  /* Reserved for future use            */
} XSTAT_IND;
Field Name

Possible Values

Description

code

MTP3_XSTAT_IND

This code identifies the type of indication (i.e. data or status). The value is always MTP3_XSTAT_IND for extended status indications.

sapId

0-15

Service user identifier passed as suId in the Open Services call.

link

0-15

The link number of the affected MTP 3 link.

status

One of the following:

XStatLinkUp
XStatLinkDown
XStatLinkInh
XStatLinkInhDen
XStatLinkUninh
XStatLinkUninhDen
XStatLinkRemBlock
XStatLinkRemUnblock
XStatLinkLocBlock
XStatLinkLocUnblock

The status event that occurred.

Link Up
Link Down
Link Inhibited
Link Inhibit Denied
Link Uninhibited
Link Uninhibit Denied
Link Remotely Blocked
Link Remotely Unblocked
Link Locally Blocked
Link Locally Unblocked

spare1

N/A

Reserved for future use.

spare2

N/A

Reserved for future use.



Table of Contents Index NMS Glossary Previous Page Next Page (Page 6 of 7 in this chapter) Version


Want to send us feedback on our documentation? Email: Tech_Pubs@nmss.com
Copyright © 2002, NMS Communications Corporation. All rights reserved.