Hook Flash FXO port


I have a setup where an ATA with FXO port is connected to a PSTN analogue line. I can make calls to and from PSTN over the analogue line with no issues (to/from a softphone registered on the Free PBX).

The analogue line has a Call waiting feature on the PSTN switch. When I am on a call (softphone to/from PSTN) a 3rd party from the PSTN calls the analogue line and I can hear a ‘bip’ on the softphone , indicating there is a call waiting (this tone is generated by the public switch).

Now, as I am using a softphone I do not know how to simulate a ‘Hook Flash’ in order to answer the Call waiting. I need to be able to generate and pass the ‘Hook Flash’ to the analogue line (if I am able to do this the public switch will know to answer the 2nd call and put the other party on hold).

I hope the above is clear and make sense.

Thanks a lot in advance for any help

Only the ATA can generate a hook flash, see if it has a feature code for that.

Agree, but How do I signal from the Softphone via the FreePBX to the ATA to send the hook flash

that would depend on the ATA, on a linksys/cisco its *22 (flash call hold)

I will check that

Thank You

I have Obi110 and audiocodes MP-114. *22 does not seems to do the hook flash on these. Any idea what code may work with any of these ATAs.

I have looked at many previous threads for guys who tried this and none seems to have the answer.

Thanks for your help

I found a softphone that has a Flash key. When I press it, it sends an INVITE with DSP sendonly. However this INVITE is consumed by the FreePBX and I get Dial tone from the FreePBX. Can I make a config change that the PBX will not consume the Flash Hook? (pass it on to the PSTN GW.

Only the PSTN GW could have the hardware to do a hook-flash, so again it depends on your ATA

a) having that ability
b) responding appropriately to either a DTMF or SIP (REFER) event to so trigger it.

btw, the DSP in my previous message meant to be SDP.

I understand that the PSTN GW should support the hook flash (it has that option), however when I send the The INVITE with the sendonly (another way to indicate flash) or I send DTMF 16 (with registered hard phone to the PBX) the BPX consume them and does not send anything to the GW SIP trunk. Is there a way to configure the PBX to pass this to the GW?

It’s been a long time since I visited this but I seem to remember a very old version of Asterisk sortof did DTMF 16, insofar as dial() used to accept ‘f’ (for flash) , it needed surrounding 'w’s (500ms wait), but I think that is no longer there.

So I just used Cheapo Sipuras with *22 vertical code when we still had Analog lines, Sorry I couldn’t be of more help.

Thanks dicko

I believe the Freepbx understand the flash (the INVITE with sendonly) , but seems to act on it , giving dialtone to the party who sent the flash (I guess for call transfer etc.) and send music on hold to the other party. I just wish I could find a way for it just to pass it on to the GW somehow.

Yeah it detects it, but it was incomplete at best and code was never completed to do anything with it.

Again I suggest you rely on InBand DTMF codes and compatible hardware Grandstream and Linksys I have used in the past maybe others . . .

This seems to be mislabeled buttons or something specific to custom application. Sendonly does not seem to make much sense - 2nd party would hear you but you won’t hear it and this seems like worst case.
RFC2833 defined Flash as code 16 (and I’m using it in tSIP softphone), though RFC4733 obsoleted it.
In general I’ve seen:

RTP RFC2833 event (code 16, Aastra phones, Granstream Budgetone 100)
SIP INFO with application/dtmf body
SIP INFO with application/hook-flash body (Cisco PAP2)

This topic was automatically closed 31 days after the last reply. New replies are no longer allowed.