Call transfer using REFER/300 Response in Asterisk

Hello, this is my first post in Asterisk forum, sorry for making it very long but I had some issues when trying to redirect calls using REFER method or 300 “Multiple choices” Response.

All my sip soft phones are registered to the same Asterisk server.

When issuing a call between two of them, Asterisk creates a sip channel for the incoming INVITE
and a second sip channel for the outgoing one and which have a different call-ID, similarly when
one client initiates a REFER request, the Asterisk takes the control and initiate a new INVITE using
the Refer-To URI and with a different call-ID, delete the channel of the Transferor and associate the new sip channel created with the channel of the Transferee.

The Transferee isn’t notified that the call is being transferred so how to ask approval from the user to transfer the call ?
Is there any method or configuration to make Asterisk forward the REFER request directly to the transferee ?
I tried also to transfer the call using 300 Response but Asterisk behave the same and the 300 Response never reaches its intended recipient.
Is it possible to make Asterisk behave like a sip proxy ?
There is another issue when a callee sends REFER request before accepting the call with 200 “OK” Response, the transfer does not take place and Asterisk sends a Notify with 400 “Bad Request” to end this callee subscription to the refer event. Why it isn’t possible to transfer a incoming call without accepting it ?
Any recommendations will be appreciated.
Thanks in advance
Regards

Asterisk is a back to back user agent, not a proxy, and, in general it is not possible to make it look like a proxy.

With chan_sip,at least, you need to explicitly call the Transfer application if you want to forward transfers