IVR breake out on error or timeout

Hi All,

I’m playing around with the IVR function in FreePBX. To my onion the GUI of FreePBX for the IVR module is missing an option.
When a customer now dials into the IVR and does not do anything or is not able to send any DTMF tones, the customer is now disconnected by default (which is no really customer friendly)
It would be more polite if the customer is forwarded to a final destination (receptionist) or that there is an option witch gives you the choice of disconnecting of forwarding the customer.
It tried a little tweak in the extensions_additonal (this will only work as long as you do not update the configuration via the GU). This seems to work. This is what I did
exten => hang,1,Goto(ext-local,12986,1)
;exten => hang,1,Playback(vm-goodbye)
;exten => hang,n,Hangup
exten => 1,1,dbDel(${BLKVM_OVERRIDE})
exten => 1,n,Set(__NODEST=)
exten => 1,n,Goto(ivr-3,s,begin)
exten => 2,1,dbDel(${BLKVM_OVERRIDE})
exten => 2,n,Set(__NODEST=)
exten => 2,n,Goto(ivr-3,s,begin)
exten => i,1,Playback(invalid)
exten => i,n,Goto(loop,1)
exten => t,1,Goto(loop,1)
exten => loop,1,Set(LOOPCOUNT=$[${LOOPCOUNT} + 1])
exten => loop,n,GotoIf($[${LOOPCOUNT} > 2]?hang,1)
exten => loop,n,Goto(ivr-3,s,begin)

As you can see is misused the loop detection. It works but how can I implement this in e real live scenario using the GUI. I also created my own extensions_customers.conf witch also works (if you include this file in the extensions.conf). But then you lose all the comfort of the GUI.


You can also add an “i” or a “t” options for invalid or timeout in the gui screen.