IVR - Line Hangs Up after 30 sec, before spoken Menu ends

Hello,
I successfully installed FreePBX 15.0.24 with 6 main lines One line is connected to a IVR. The whole IVR message takes about 45 sec - but the call ist terminated after 30 sec. All Options going to voicemail via vmblast list.
If the numbers are dialed early - not waiting for the whole message - everything works, but it is not possible to go through the whole menu.

Which configuration must be set, so that the whole message can be heard and perhaps replayed .?
Thank for good ideas
Privacy

That depends on why it is terminating at 30 seconds, and there isn’t enough information. The most likely reason is bad NAT configuration (public signalling address), but it could also be because of early media being timed out by the caller.

I now noticed, that the FreePBX always hangs up after 32 sec - even when I call directly to the mailboxes, My first test calls were too short, so i didn’t realize this.

Here a log file from the asterisk console:
Executing [000387852444@from-pstn:1] Set(“PJSIP/dus_PBX-0000001a”, “__DIRECTION=INBOUND”) in new stack
– Executing [000387852444@from-pstn:2] Gosub(“PJSIP/dus_PBX-0000001a”, “sub-record-check,s,1(in,000387852444,dontcare)”) in new stack
– Executing [s@sub-record-check:1] GotoIf(“PJSIP/dus_PBX-0000001a”, “0?initialized”) in new stack
– Executing [s@sub-record-check:2] Set(“PJSIP/dus_PBX-0000001a”, “__REC_STATUS=INITIALIZED”) in new stack
– Executing [s@sub-record-check:3] Set(“PJSIP/dus_PBX-0000001a”, “NOW=1667501141”) in new stack
– Executing [s@sub-record-check:4] Set(“PJSIP/dus_PBX-0000001a”, “__DAY=03”) in new stack
– Executing [s@sub-record-check:5] Set(“PJSIP/dus_PBX-0000001a”, “__MONTH=11”) in new stack
– Executing [s@sub-record-check:6] Set(“PJSIP/dus_PBX-0000001a”, “__YEAR=2022”) in new stack
– Executing [s@sub-record-check:7] Set(“PJSIP/dus_PBX-0000001a”, “__TIMESTR=20221103-194541”) in new stack
– Executing [s@sub-record-check:8] Set(“PJSIP/dus_PBX-0000001a”, “__FROMEXTEN=unknown”) in new stack
– Executing [s@sub-record-check:9] Set(“PJSIP/dus_PBX-0000001a”, “__MON_FMT=wav”) in new stack
– Executing [s@sub-record-check:10] NoOp(“PJSIP/dus_PBX-0000001a”, “Recordings initialized”) in new stack
– Executing [s@sub-record-check:11] ExecIf(“PJSIP/dus_PBX-0000001a”, “0?Set(ARG3=dontcare)”) in new stack
– Executing [s@sub-record-check:12] Set(“PJSIP/dus_PBX-0000001a”, “REC_POLICY_MODE_SAVE=”) in new stack
– Executing [s@sub-record-check:13] ExecIf(“PJSIP/dus_PBX-0000001a”, “0?Set(REC_STATUS=NO)”) in new stack
– Executing [s@sub-record-check:14] GotoIf(“PJSIP/dus_PBX-0000001a”, “2?checkaction”) in new stack
– Goto (sub-record-check,s,17)
– Executing [s@sub-record-check:17] GotoIf(“PJSIP/dus_PBX-0000001a”, “1?sub-record-check,in,1”) in new stack
– Goto (sub-record-check,in,1)
– Executing [in@sub-record-check:1] NoOp(“PJSIP/dus_PBX-0000001a”, “Inbound Recording Check to 000387852444”) in new stack
– Executing [in@sub-record-check:2] Set(“PJSIP/dus_PBX-0000001a”, “FROMEXTEN=unknown”) in new stack
– Executing [in@sub-record-check:3] ExecIf(“PJSIP/dus_PBX-0000001a”, “9?Set(FROMEXTEN=Anonymous)”) in new stack
– Executing [in@sub-record-check:4] Gosub(“PJSIP/dus_PBX-0000001a”, “recordcheck,1(dontcare,in,000387852444)”) in new stack
– Executing [recordcheck@sub-record-check:1] NoOp(“PJSIP/dus_PBX-0000001a”, “Starting recording check against dontcare”) in new stack
– Executing [recordcheck@sub-record-check:2] Goto(“PJSIP/dus_PBX-0000001a”, “dontcare”) in new stack
– Goto (sub-record-check,recordcheck,3)
– Executing [recordcheck@sub-record-check:3] Return(“PJSIP/dus_PBX-0000001a”, “”) in new stack
– Executing [in@sub-record-check:5] Return(“PJSIP/dus_PBX-0000001a”, “”) in new stack
– Executing [000387852444@from-pstn:3] Set(“PJSIP/dus_PBX-0000001a”, “CHANNEL(tonezone)=de”) in new stack
– Executing [000387852444@from-pstn:4] Set(“PJSIP/dus_PBX-0000001a”, “__FROM_DID=000387852444”) in new stack
– Executing [000387852444@from-pstn:5] Set(“PJSIP/dus_PBX-0000001a”, “CDR(did)=000387852444”) in new stack
– Executing [000387852444@from-pstn:6] ExecIf(“PJSIP/dus_PBX-0000001a”, “0 ?Set(CALLERID(name)=Anonymous)”) in new stack
– Executing [000387852444@from-pstn:7] Set(“PJSIP/dus_PBX-0000001a”, “__MOHCLASS=”) in new stack
– Executing [000387852444@from-pstn:8] Ringing(“PJSIP/dus_PBX-0000001a”, “”) in new stack
– Executing [000387852444@from-pstn:9] Set(“PJSIP/dus_PBX-0000001a”, “__RINGINGSENT=TRUE”) in new stack
> 0x69ba2498 – Strict RTP learning after remote address set to: 83.125.8.158:50370
– Executing [000387852444@from-pstn:10] Set(“PJSIP/dus_PBX-0000001a”, “__REVERSAL_REJECT=FALSE”) in new stack
– Executing [000387852444@from-pstn:11] GotoIf(“PJSIP/dus_PBX-0000001a”, “1?post-reverse-charge”) in new stack
– Goto (from-pstn,000387852444,13)
– Executing [000387852444@from-pstn:13] NoOp(“PJSIP/dus_PBX-0000001a”, “”) in new stack
– Executing [000387852444@from-pstn:14] Set(“PJSIP/dus_PBX-0000001a”, “__CALLINGNAMEPRES_SV=allowed_not_screened”) in new stack
– Executing [000387852444@from-pstn:15] Set(“PJSIP/dus_PBX-0000001a”, “__CALLINGNUMPRES_SV=allowed_not_screened”) in new stack
– Executing [000387852444@from-pstn:16] Set(“PJSIP/dus_PBX-0000001a”, “CALLERID(name-pres)=allowed_not_screened”) in new stack
– Executing [000387852444@from-pstn:17] Set(“PJSIP/dus_PBX-0000001a”, “CALLERID(num-pres)=allowed_not_screened”) in new stack
– Executing [000387852444@from-pstn:18] NoOp(“PJSIP/dus_PBX-0000001a”, “CallerID Entry Point”) in new stack
– Executing [000387852444@from-pstn:19] Goto(“PJSIP/dus_PBX-0000001a”, “app-announcement-1,s,1”) in new stack
– Goto (app-announcement-1,s,1)
– Executing [s@app-announcement-1:1] GotoIf(“PJSIP/dus_PBX-0000001a”, “0?begin”) in new stack
– Executing [s@app-announcement-1:2] Answer(“PJSIP/dus_PBX-0000001a”, “”) in new stack
> 0x69ba2498 – Strict RTP switching to RTP target address 83.125.8.158:50370 as source
– Executing [s@app-announcement-1:3] Wait(“PJSIP/dus_PBX-0000001a”, “1”) in new stack
– Executing [s@app-announcement-1:4] NoOp(“PJSIP/dus_PBX-0000001a”, “Playing announcement Vorspann”) in new stack
– Executing [s@app-announcement-1:5] Playback(“PJSIP/dus_PBX-0000001a”, “custom/PC_IVRVorspann,noanswer”) in new stack
– <PJSIP/dus_PBX-0000001a> Playing ‘custom/PC_IVRVorspann.g722’ (language ‘de_DE’)
> 0x69ba2498 – Strict RTP learning complete - Locking on source address 83.125.8.158:50370
– Executing [s@app-announcement-1:6] Goto(“PJSIP/dus_PBX-0000001a”, “ivr-1,s,1”) in new stack
– Goto (ivr-1,s,1)
– Executing [s@ivr-1:1] Set(“PJSIP/dus_PBX-0000001a”, “TIMEOUT_LOOPCOUNT=0”) in new stack
– Executing [s@ivr-1:2] Set(“PJSIP/dus_PBX-0000001a”, “INVALID_LOOPCOUNT=0”) in new stack
– Executing [s@ivr-1:3] Set(“PJSIP/dus_PBX-0000001a”, “_IVR_CONTEXT_ivr-1=”) in new stack
– Executing [s@ivr-1:4] Set(“PJSIP/dus_PBX-0000001a”, “_IVR_CONTEXT=ivr-1”) in new stack
– Executing [s@ivr-1:5] Set(“PJSIP/dus_PBX-0000001a”, “__IVR_RETVM=”) in new stack
– Executing [s@ivr-1:6] Set(“PJSIP/dus_PBX-0000001a”, “__RVOL=1”) in new stack
– Executing [s@ivr-1:7] GotoIf(“PJSIP/dus_PBX-0000001a”, “1?skip”) in new stack
– Goto (ivr-1,s,9)
– Executing [s@ivr-1:9] Set(“PJSIP/dus_PBX-0000001a”, “IVR_MSG=custom/PC_IVRAuswahl”) in new stack
– Executing [s@ivr-1:10] Set(“PJSIP/dus_PBX-0000001a”, “TIMEOUT(digit)=3”) in new stack
– Digit timeout set to 3.000
– Executing [s@ivr-1:11] ExecIf(“PJSIP/dus_PBX-0000001a”, “1?Background(custom/PC_IVRAuswahl)”) in new stack
– <PJSIP/dus_PBX-0000001a> Playing ‘custom/PC_IVRAuswahl.g722’ (language ‘de_DE’)
== Spawn extension (ivr-1, s, 11) exited non-zero on ‘PJSIP/dus_PBX-0000001a’
– Executing [h@ivr-1:1] Hangup(“PJSIP/dus_PBX-0000001a”, “”) in new stack
== Spawn extension (ivr-1, h, 1) exited non-zero on ‘PJSIP/dus_PBX-0000001a’

Privacy

32 seconds is a more accurate value for the timeout you get if you don’t set the public signalling address, or local network addresses, correctly, when you are inside NAT. It’s the timeout for retransmitting requests that must be acknowledged, and get triggers when the other side is given the wrong address to which to send ACK.

I’m inside a NAT - and I the local net 172.16.x./255.255.255.0 was configured. Although I gave my public address (dynamic dnns address).

(I have no problems using SIP Softphones in the NAT - even vor LONG calls). Ping works …

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