Bug maybe with IVR timeouts?

I’m having a weird problem and I think it might be a bug in FreePBX. I’m using the latest version of PBX In A Flash Purple 32-bit, and FreePBX 2.8.1.5.

My IVRs do not seem to respect the timeout they are given. Normally the IVR should timeout and repeat after 10 seconds, but for me it just sits there forever.

This didn’t used to be the case the last time I remember playing with FreePBX Distro a year or two back… so maybe it’s related to PIAF, or Asterisk 1.8… or something I don’t know.

I’ve traced the problem down to extensions_additional.conf. Inside the IVR context the command “WaitExten()” doesn’t have any parameters. It seems to hang forever.

Here’s the snippet of my IVR:

[ivr-4]
include => ivr-4-custom
exten => h,1,Hangup
exten => s,1,Set(MSG=custom/telemarketing-filter)
exten => s,n,Set(LOOPCOUNT=0)
exten => s,n,Set(__DIR-CONTEXT=)
exten => s,n,Set(IVR_CONTEXT${CONTEXT}=${IVR_CONTEXT})
exten => s,n,Set(_IVR_CONTEXT=${CONTEXT})
exten => s,n,GotoIf($["${CDR(disposition)}" = “ANSWERED”]?begin)
exten => s,n,Answer
exten => s,n,Wait(1)
exten => s,n(begin),Set(TIMEOUT(digit)=3)
exten => s,n,Set(TIMEOUT(response)=10)
exten => s,n,Set(__IVR_RETVM=)
exten => s,n,ExecIf($["${MSG}" != “”]?Background(${MSG}))
exten => s,n,WaitExten(,)
exten => hang,1,Playback(vm-goodbye)
exten => hang,n,Hangup
exten => 11,1,Noop(Deleting: ${BLKVM_OVERRIDE} ${DB_DELETE(${BLKVM_OVERRIDE})})
exten => 11,n,Set(__NODEST=)
exten => 11,n,Goto(from-did-direct,200,1)
exten => i,1,Noop(Deleting: ${BLKVM_OVERRIDE} ${DB_DELETE(${BLKVM_OVERRIDE})})
exten => i,n,Set(__NODEST=)
exten => i,n,Goto(app-blackhole,hangup,1)
exten => t,1,Set(MSG=goodbye)
exten => t,n,Set(LOOPCOUNT=$[${LOOPCOUNT} + 1])
exten => t,n,GotoIf($[${LOOPCOUNT} <= 0]?s,begin)
exten => t,n,Noop(Deleting: ${BLKVM_OVERRIDE} ${DB_DELETE(${BLKVM_OVERRIDE})})
exten => t,n,Set(__NODEST=)
exten => t,n,Goto(app-blackhole,hangup,1)

; end of [ivr-4]

If I replace the WaitExten(,) with say WaitExten(5), then the timeout works perfectly (a 5 second timeout, of course)!

But of course I can’t just change that… it will be overwritten as soon as I make changes to my config in FreePBX.

Is anybody else experiencing this issue? It really makes my IVRs quite unfriendly.

Please open a ticket on this issue:

http://www.freepbx.org/trac/newticket

Thank you for tracing this down.

Thanks for pointing me at the right place to file/search for bugs. I didn’t know where it was before.

It looks like this bug has already been discovered, and fixed. I found ticket 5094 which seems to talk about it.

http://www.freepbx.org/trac/ticket/5094

Apparently it has been fixed as of FreePBX 2.9.0.5, in Changeset 12042, back in April 2011.

Yikes. Am I really using that old a version of FreePBX? Come to think of it PIAF gave me several FreePBX options, 2.8, 2.9 and another one. I was under the impression the 2.9 versions were too beta to be stable yet, but if this was years ago then probably I’m mistaken. Time to upgrade!

Yup… just upgraded to the latest 2.9 and it’s fixed.

Thanks for your help!