Dialogic Global Call IP Benutzerhandbuch

Seite von 604
 in the function call must be GCTGT_GCLIB_CRN, and the t
 must be the 
CRN handle for the current call. 
The following standard header fields are generally required for INFO messages: 
To 
From 
Contact 
Request-URI 
Diversion 
Call-ID 
If the application does not explicitly set the Request-URI, the library populates it with the URI 
from the To header field by default.
The following standard header fields are also commonly used in INFO requests: 
Content-Disposition 
Content-Encoding 
The Content-Length and Content-Type header fields are normally filled in by the library and should 
not be set by the application.
The following code snippet illustrates the essential steps for constructing and sending an INFO 
request. The example assumes that a GC_PARM_BLK has already been declared.
gc_util_insert_parm_val(&parmblkp,
                        IPSET_MSG_SIP,
                        IPPARM_MSGTYPE,
                        sizeof(int),
                        IP_MSGTYPE_SIP_INFO);
// Insert SIP Call ID field 
gc_util_insert_parm_ref(&parmblkp,
                        IPSET_SIP_MSGINFO,
                        IPPARM_CALLID_HDR,
                        strlen(m_CurrentCallID),
                        m_CurrentCallID);
// Insert other SIP header information here
   .
   .
   .
// transmit INFO message to network 
retval = gc_Extension(GCTGT_GCLIB_CRN, crn, IPEXTID_SENDMSG, parmblkp, &retblkp, EV_ASYNC);
   .
   .
   .
// outbound INFO has been sent.
// expect to receive a GCEV_EXTENSION containing a response
4.13.2
Receiving a Response to an INFO Message
After an INFO message is sent, the SIP stack will receive a response message and the library will 
generate a GCEV_EXTENSION event of type IPEXTID_RECEIVEMSG to notify the application.