Call Transfer

Hi Experts.

I’m using the asterisk version with openser as proxy. I’m using it for a contact center. I have enabled allowreinvite and directrtpsetup. My scenario is as follows.

  1. A calls the DID number
  2. Asterisk play announcement
  3. Asterisk connects to the Agent.
  4. Media negotiated between Agent and A
  5. A initated a consult transfer to B , A to B is made thorugh openser.
  6. Here A to Agent is thorugh astersik and A to B is thorough openser.
  7. Agent does a complete trasfer, But all the calls legs are getting disconnected as asterisk is not able to locate the dialog between A and B in the Replace Header of REFER message.

According to the RFC, If the dialog is not found, then UA should send a New Invite with Replace Header in the INVITE to B. But Asterisk is not sending it, instead it clearing the call.

Any Idea, How we can i make it work?
Is it possible to detect REFER message through configuration in the Dial Plan. My Idea is if i’m able to detect, then I can send the INVITE from Asterisk to B with replace Header recieved in the REFER message.

Another Question:

In the above steps after step 4, Is it possible by some means to handover the signalling direclty between A and Agent. I’m basically want to avoid asterisk after the Agent is connected… So that It will be easy for all my features to work as it will be direct.

Please let me know if you have any suggestions or let me know asterisk can support it.

Thanks in advance,