4.9.2. Nonstandard Facility Message (Q.931)
Use the gc_Extension( ) function in asynchronous mode with an ext_ id (extension ID) of IPEXTID_SENDMSG to send nonstandard facility (Q.931 Facility) messages. The target_type should be GCTGT_GCLIB_CRN and the target_id should be the actual CRN. At the sending end, a GCEV_EXTENSIONCMPLT event is received indicating that the message has been sent. At the receiving end, a GCEV_EXTENSION event with the same ext_id value is generated. The extevtdatap field in the METAEVENT structure for the GCEV_EXTENSION event is a pointer to an EXTENSIONEVTBLK structure which in turn contains a GC_PARM_BLK that includes all of the data in the message.
The relevant parameter set IDs and parameter IDs are:
- IPSET_MSG_Q931
- IPSET_NONSTANDARDDATA
- Either
- IPPARM_NONSTANDARDDATA_DATA - Actual nonstandard data. The maximum length is MAX_NS_PARM_DATA_LENGTH (128).
- IPPARM_NONSTANDARDDATA_OBJID - Object ID string. The maximum length is MAX_NS_PARM_OBJID_LENGTH (40).
- or
- IPPARM_NONSTANDARDDATA_DATA - Actual nonstandard data. The maximum length is MAX_NS_PARM_DATA_LENGTH (128).
- IPPARM_H221NONSTANDARD - H.221 nonstandard data identifier.
- Note: The message type (IPPARM_MSGTYPE) is mandatory. At least one other information element must be included.
See Section 6.12, IPSET_MSG_Q931 Parameter Set and Section 6.14, IPSET_NONSTANDARDDATA Parameter Set for more information.
The following code shows how to set up and send a Q.931 nonstandard facility message.
char ObjId[]= "1 22 333 4444"; char NSData[]= "DataField_Facility"; GC_PARM_BLKP gcParmBlk = NULL; gc_util_insert_parm_val(&gcParmBlk, IPSET_MSG_Q931, IPPARM_MSGTYPE, sizeof(int), IP_MSGTYPE_Q931_FACILITY); gc_util_insert_parm_ref(&gcParmBlk, IPSET_NONSTANDARDDATA, IPPARM_NONSTANDARDDATA_OBJID, sizeof(ObjId), ObjId); gc_util_insert_parm_ref(&gcParmBlk, IPSET_NONSTANDARDDATA, IPPARM_NONSTANDARDDATA_DATA, sizeof(NSData), NSData); gc_Extension( GCTGT_GCLIB_CRN, crn, IPEXTID_SENDMSG, gcParmBlk, NULL, EV_ASYNC); gc_util_delete_parm_blk(gcParmBlk);
Click here to contact Telecom Support Resources
Copyright 2003, Intel Corporation