PREV TOC HOME INDEX NEXT


1.7.8. Retrieve Information for a GLOBAL or NULL CRN Event

The GCIS_EXID_GETNONCALLMSG extension ID retrieves information for a GLOBAL or NULL CRN event, at the time the event occurs. The GCIS_EXID_GETNONCALLMSG extension ID must be used immediately after the event is received if the application needs the call information. The library will not queue the call information; subsequent messages on the same board device will overwrite this information if it is not retrieved immediately. NULL events correspond to messages received with a dummy, or NULL, call reference value (CRV). These messages are of significance to all calls or channels on a particular trunk, that is, they do not correspond to a particular call. Therefore, the messages are delivered on the board level device (for example, briS1). This extension ID can be used to retrieve information for the following NULL events:

GLOBAL events correspond to messages received with a Zero call reference value. These messages are of significance to all calls or channels on a particular trunk, that is, they do not correspond to a particular call. Therefore, the messages are delivered on the board level device (for example, briS1). This extension ID can be used to retrieve the information for the following GLOBAL events:

Note: Some IEs may require a Call Reference Value (CRV) to be part of the contents. The Call Reference, in this case, must be the Call Reference value assigned by the network, not the Call Reference Number (CRN) that is generated by GlobalCall and retrieved using the gc_GetCRN( ) function. It is up to the application to correctly format and order the IEs. Refer to the ISDN Recommendation Q.931 or the switch specification of the application's ISDN protocol for the relevant CCITT format. See the example code for details. To receive GLOBAL and NULL events, an appropriate handler must be enabled on the board level device (see the sr_enbhdlr( ) function in the System Runtime Library Programmer's Guide).

The information related to a GLOBAL or NULL event must be retrieved immediately as it will be overwritten by the next event.

The following table provides the parameter inputs for the gc_Extension( ) function.

Parameter Input
target_type GCTGT_GCLIB_CHAN
target_id board device handle of the device
ext_id GCIS_EXID_GETNONCALLMSG
retblkp set_id - GCIS_SET_DLINK

parm_id - GCIS_PARM_DLINK_CES

values -

    • 0 for PRI
    • 1-8 for BRI when used as a network-side terminal.

value_type - char


parm_id - GCIS_PARM_DLINK_SAPI

values -

    • 0 for BRI and PRI
    • 16 for X.25 packets over D-channel

value_type - char


set_id - GCIS_SET_IE

parm_id - GCIS_PARM_IEDATA

values - user provided


value_type - char array, length should not exceed MAXLEN_IEDATA

mode EV_SYNC

Example
 int extGetNonCallMsg (LINEDEV handle)
{
         GC_PARM_DATAP parm_datap;
         GC_PARM_BLKP parm_blkp = NULL, ret_blkp = NULL;
         unsigned long mode;
         int ret_val = 0;
         GC_INFO  t_Info;
         mode = EV_SYNC;
          ret_val = gc_Extension( GCTGT_GCLIB_CHAN, handle,
                         GCIS_EXID_GETNONCALLMSG, parm_blkp, &ret_blkp, mode);
          if ( ret_val )
         {
             ret_val = gc_ErrorInfo(&t_Info);
             if (ret_val == GC_SUCCESS) {
                    printf("gc_ErrorInfo() successfully called\n");
                    PrintGC_INFO(&t_Info);
            }         
         gc_util_delete_parm_blk( parm_blkp );
         gc_util_delete_parm_blk( ret_blkp );
         return ret_val;
}

PREV TOC HOME INDEX NEXT

Click here to contact Dialogic Customer Engineering

Copyright 2001, Dialogic Corporation
All rights reserved
This page generated October, 2001