Dialogic Dialogic Global Call IP IP Phone User Manual


 
Dialogic
®
Global Call IP Technology Guide — November 2007 373
Dialogic Corporation
Third Party Call Control (3PCC) Operations and Multimedia Support
// insert the body
if (gc_util_insert_parm_val(&gcParmBlk_mime,
IPSET_MIME,
IPPARM_MIME_PART_BODY,
sizeof(unsigned long),
(unsigned long)(c_iFrameRequest)) < 0)
{
agwReport(ERROR_GCALL, s_eType, "SendIFrameRequest() -> gc_util_insert_parm_val()
failed on %s for IPPARM_MIME_PART_BODY ", m_devName);
bOk = false;
}
// insert the list of parmBlks into the top level parmBlk
if (gc_util_insert_parm_val(&gcParmBlk_mime1,
IPSET_MIME,
IPPARM_MIME_PART,
sizeof(unsigned long),
(unsigned long)gcParmBlk_mime) < 0)
{
agwReport(ERROR_GCALL, s_eType, "SendIFrameRequest() -> gc_util_insert_parm_val()
failed on %s for IPPARM_MIME_PART", m_devName);
bOk = false;
}
// now set it on the device
if (gc_SetUserInfo(GCTGT_GCLIB_CRN,
m_gcCurrentCrn,
gcParmBlk_mime1,
GC_SINGLECALL) < 0) // for this call only
{
agwReport(ERROR_GCALL, s_eType, "gc_SetUserInfo() failed on %s for MIME body in INFO");
bOk = false;
}
// insert the message type
if (gc_util_insert_parm_val(&gcParmBlk_info,
IPSET_MSG_SIP,
IPPARM_MSGTYPE,
sizeof(int),
IP_MSGTYPE_SIP_INFO) < 0)
{
agwReport(ERROR_GCALL, s_eType, "SendIFrameRequest() -> gc_util_insert_parm_val()
failed on %s for SIP INFO", m_devName);
bOk = false;
}
if (gc_Extension(GCTGT_GCLIB_CRN,
m_gcCurrentCrn,
IPEXTID_SENDMSG,
gcParmBlk_info,
NULL,
EV_ASYNC) < 0)
{
agwReport(ERROR_GCALL, s_eType, "SendIFrameRequest() -> gc_Extension failed");
bOk = false;
}
gc_util_delete_parm_blk(gcParmBlk_info);
gc_util_delete_parm_blk(gcParmBlk_mime);
return bOk;
}