ISUPFacilityReq

Sends a facility request message to the far exchange.

Prototype

DWORD ISUPFacilityReq ( CTAHD ctahd, SuId suId, SiInstId suInstId, SiInstId spInstId, CirId circuit, SiFacEvnt *facEvnt, U8 eventType)

Argument

Description

ctahd

Natural Access handle returned by ctaCreateContext.

suId

ISUP service access point.

suInstId

Service user instance ID.

spInstId

Service provider instance ID.

circuit

Circuit with which this message is associated.

facEvnt

Pointer to the caller's facility event structure containing all parameters (IEs) included in the message to the far exchange.

eventType

Type of facility request. Refer to the Details section for a list of values.


Return values

Return value

Description

ISUP_SUCCESS

 

CTAERR_BAD_ARGUMENT

One or more arguments are invalid.

CTAERR_DRIVER_SEND_FAILED

Error occurred accessing the TX driver.

CTAERR_INVALID_CTAHD

Natural Access handle is invalid.


Details

The value specified in the suInstId field is passed to all subsequent events associated with this connection.

The value for spInstId must be the spInstId value that was received from the ISUP layer in the connect indication event.

Possible values for eventType are:

Value

Description

FACILITY

Facility

FACILITYREQ

Facility request

FACILITYACC

Facility accept

FACILITYREJ

Facility reject

FACILITYDEACT

Facility deactivate

FACILITYINFO

Facility information


Example

#define SAP_ID 0

CTAHD      FstCtaHd = Valid CTA Handle;
DWORD      status;
SiInstId   suInstId = 0;
SiInstId   spInstId = 0; 
SuId       suId = SAP_ID; 
CirId      circuit = 2;
U8         evntType =  FACILITYREQ;
SiAllSdus  sendBuffer;

status = ISUPFacilityReq( FstCtaHd, suId,  suInstId,  spInstId,  circuit,  
    sendBuffer.m.siFacEvnt, evntType );
if( status != ISUP_SUCCESS )
    {
        printf( "ERROR: ISUPFacilityReq( circuit %d, type %d ) failed [%d]", circuit,
            evntType, status );
        return( -1 );
    }