We are using Cisco Transfer element for making an outbound call to connect the caller to the desired destination. We are using consult transfer feature of Finesse to put the original caller on hold and involve VXML application to initiate a call. Once VXML connects the call we want to complete the transfer while hearing ringback. We do not want our agent to speak with the destination so the transfer should be completed before destination picks up the call.
We are getting an error if we try to complete the transfer before destination picks up the call. We want to know if there is a limitation at VXML end which is not allowing us to do this. We have found it working if we do not involve VXML to initiate a call.
Here is the call flow.
- A party dials the helpline number e.g. 321.
- Call transfers to the contact center and agent picks up the call on Finesse.
- Agent (B-party) dial VXML application number/ trigger e.g. 45213 to initiate an outbound call.
- VXML application initiates an outbound call using 'Transfer' element.
- Upon successful call transfer, the agent hears the ring back and complete the consult transfer.
- Once agent completes the transfer, conversation between A party and C party will be started.
We are getting callhandoff.failure error in VXML application activity logs while transfering during the ringback.
Without logs it's hard to be certain but the most likely problem you’re hitting is the call signalling being modified when you complete the transfer before a stable connected call has been established using the transfer element.
There’s a few things you could try and see if any of them makes a difference --
Add voice-class sip midcall-signaling block to the VRU leg incoming dial-peer.
Also make sure supplementary-service media-renegotiate isn’t set.
Insert an MTP on the SIP trunk to CVP.
Also, why not simply use the CVP Call Server to perform the transfer?