Dialogic Dialogic Global Call IP IP Phone User Manual


 
The parameter element that identifies the message type is:
IPSET_MSG_REGISTRATION
IPPARM_MSGTYPE
value = IP_MSGTYPE_REG_NONSTD
The parameter element for the Nonstandard Data data is:
IPSET_NONSTANDARDDATA
IPPARM_NONSTANDARDDATA_DATA
value = Nonstandard Data string, max length = max_parm_data_size (configurable at
library start-up)
The parameter element for the Nonstandard Data identifier is one (and only one) of the following:
IPSET_NONSTANDARDDATA
IPPARM_NONSTANDARDDATA_OBJID
value = array of unsigned integers, max length = MAX_NS_PARM_OBJID_LENGTH
IPSET_NONSTANDARDDATA
IPPARM_H221NONSTANDARD
value = IP_H221NONSTANDARD structure
The following code snippet illustrates how to send an H.323 nonstandard registration message.
{
GC_PARM_BLKP parmblkp = NULL;
char h221nonstd_id[] = "My H.221 Nonstandard data identifier";
/* must be <= MAX_NS_PARM_OBJID_LENGTH (40) */
char nonstd_data[] = "My nonstandard_data";
gc_util_insert_parm_val(&parmblkp, IPSET_PROTOCOL, IPPARM_PROTOCOL_BITMASK,
sizeof(char), IP_PROTOCOL_H323);
gc_util_insert_parm_val(&parmblkp, IPSET_MSG_REGISTRATION, IPPARM_MSGTYPE,
sizeof(unsigned long), IP_MSGTYPE_REG_NONSTD);
gc_util_insert_parm_ref_ex(&parmblkp, IPSET_NONSTANDARDDATA, IPPARM_NONSTANDARDDATA_DATA,
sizeof(nonstd_data), nonstd_data);
gc_util_insert_parm_ref(&parmblkp, IPSET_NONSTANDARDDATA, IPPARM_H221NONSTANDARD,
sizeof(h221nonstd_id), h221nonstd_id);
if (gc_Extension(GCTGT_CCLIB_NETIF, bdev, IPEXTID_SENDMSG, parmblkp, NULL,
EV_ASYNC) != GC_SUCCESS)
{
printandlog(ALL_DEVICES, GC_APIERR, NULL, "gc_Extension() Failed", 0);
exitdemo(1);
}
}
See Section 9.2.15, “IPSET_MSG_REGISTRATION”, on page 523 and Section 9.2.18,
“IPSET_NONSTANDARDDATA”, on page 526 for more information.
4.17.4 Sending Facility, UII, or Registration Message Scenario
The gc_Extension( ) function can be used to send H.245 UII messages or Q.931 nonstandard
facility messages. Figure 50 shows this scenario.