Hi there, currently I am fighting my way through call transfers. My problem is one the "B-side". I am receiving a GCEV_REQ_XFER event, accept the transfer and on GCEV_ACCEPT_XFER make the call to the rerouting number. This all works fine and the call gets transferred and I can play a wave file to it. I receive the GCEV_XFER_CMPLT event on the primary line device upon which I try to drop the call on the primary line as required according to the documentation: void OnXferComplete(CHMPLineDev *pLine, METAEVENT &rEvent) { LogDebug(_T("Line %d, Xfer to \"%s\" complete"), pLine- nId, pLine- sRoutingNum); if(gc_DropCall(pLine- nCallRef, GC_NORMAL_CLEARING, EV_ASYNC) != GC_SUCCESS) LogGCError(pBase, _T("Drop on Xfer complete")); } gc_DropCall return GC_SUCCESS, but I don't receive the GCEV_DROPCALL event and therefor cannot release the call. Instead after about 30 seconds I receive a GCEV_XFER_FAIL event on the primary line device with this reason: "Event caused by time-out" (1282) Lib GC_H3R_LIB: IPEC_SUBS_REASON_TRANSC_TIME_OUT (158) After another 32 seconds I finally get the GCEV_DROPCALL event for the primary line and can relaese it. What am I doing wrong here? As always looking forward to your suggestions Floh
↧