Transfer functionality over a SIP trunk with a FXO gateway and an old analog PABX

Hello folks,

I’m struggling with a non-ZAP trunk with the absence of the Flash() command. I have an 8 FXO port, grandstream gateway GXW-4108, which is connected to my freepbx box via SIP extensions.

When a call comes from the old PABX into freebox via one of the SIP extensions, I have an IVR that answers the call and allows the customer to select an option that should be transferred back to the PABX on the particular PABX extension, thus releasing the trunk for the next call. I am trying to accomplish this by sending a FLASH command over the same channel, followed by the PABX extension, in a blind transfer mode.

However, I dont think the transfer DTMF is being sent and/or recognized by the gateway & PABX. I am trying SendDTMF(#), with the ‘#’ being the key to enter when attempting to get into transfer mode.

This is what I have as the destination that is supposed to flash back the PABX and blindly transfer the call to a particular extension 1234 on the PABX:

exten => s,1,Noop()
exten => s,n,SendDTMF(#,250)
exten => s,n,Wait(1)
exten => s,n,SendDTMF(1234,250)
exten => s,n,Wait(2)
exten => s,n,Hangup()

I tried to use exten => s,n,Flash() in the first line but asterisk complains that the channel is not a Zap trunk. How can I process something like Flash() on this SIP trunk or have an equivalent via SendDTMF?

thanks for any help

Is the only way possible for what I described, to use a ZAP interface? Considering that anyone using a SIP phone can transfer a call, I still hope there is a workaround for this.

Any help is greatly appreciated.


If I do not answer the channel, the dialplan mentioned above manages to transfer the call. I am now trying to Answer and still transfer the call.


Any hint on how to get Flash() to work on a SIP trunk, instead of a ZAP channel?