0

I have an Asterisk 13.23.1 server with freePBX 10.13.66-1.

My problem is this, in one IVR when the caller puts a no valid destination (enter a number not configured in the IVR plan) it should go to the "no valid option" destination (extension 2300) but instead of that the IVR plan hops to the group extension 2400, I search for the log of the call an still not getting WHY it hops to that destination.

Here is the problem in the logs:

[2019-08-19 11:43:45] VERBOSE[26052][C-00000091] pbx.c: Executing [s@ivr-21:9] Set("DAHDI/i2/961599280-2f", "IVR_MSG=custom/IVR_gesthispania") in new stack
[2019-08-19 11:43:45] VERBOSE[26052][C-00000091] pbx.c: Executing [s@ivr-21:10] Set("DAHDI/i2/961599280-2f", "TIMEOUT(digit)=3") in new stack
[2019-08-19 11:43:45] VERBOSE[26052][C-00000091] func_timeout.c: Digit timeout set to 3.000
[2019-08-19 11:43:45] VERBOSE[26052][C-00000091] pbx.c: Executing [s@ivr-21:11] ExecIf("DAHDI/i2/961599280-2f", "1?Background(custom/IVR_gesthispania)") in new stack
[2019-08-19 11:43:45] VERBOSE[26052][C-00000091] file.c: <DAHDI/i2/961599280-2f> Playing 'custom/IVR_gesthispania.slin' (language 'es')
[2019-08-19 11:44:00] VERBOSE[26052][C-00000091] pbx.c: Invalid extension '225' in context 'ivr-21' on DAHDI/i2/961599280-2f
[2019-08-19 11:44:00] VERBOSE[26052][C-00000091] pbx.c: Executing [i@ivr-21:1] Set("DAHDI/i2/961599280-2f", "INVALID_LOOPCOUNT=1") in new stack
[2019-08-19 11:44:00] VERBOSE[26052][C-00000091] pbx.c: Executing [i@ivr-21:2] GotoIf("DAHDI/i2/961599280-2f", "0?final") in new stack
[2019-08-19 11:44:00] VERBOSE[26052][C-00000091] pbx.c: Executing [i@ivr-21:3] Set("DAHDI/i2/961599280-2f", "IVR_MSG=no-valid-responce-pls-try-again") in new stack
[2019-08-19 11:44:00] VERBOSE[26052][C-00000091] pbx.c: Executing [i@ivr-21:4] Goto("DAHDI/i2/961599280-2f", "s,start") in new stack
[2019-08-19 11:44:00] VERBOSE[26052][C-00000091] pbx_builtins.c: Goto (ivr-21,s,10)
[2019-08-19 11:44:00] VERBOSE[26052][C-00000091] pbx.c: Executing [s@ivr-21:10] Set("DAHDI/i2/961599280-2f", "TIMEOUT(digit)=3") in new stack
[2019-08-19 11:44:00] VERBOSE[26052][C-00000091] func_timeout.c: Digit timeout set to 3.000
[2019-08-19 11:44:00] VERBOSE[26052][C-00000091] pbx.c: Executing [s@ivr-21:11] ExecIf("DAHDI/i2/961599280-2f", "1?Background(no-valid-responce-pls-try-again)") in new stack
[2019-08-19 11:44:00] WARNING[26052][C-00000091] file.c: File no-valid-responce-pls-try-again does not exist in any format
[2019-08-19 11:44:00] WARNING[26052][C-00000091] file.c: Unable to open no-valid-responce-pls-try-again (format (alaw)): No such file or directory
[2019-08-19 11:44:00] WARNING[26052][C-00000091] pbx_builtins.c: ast_streamfile failed on DAHDI/i2/961599280-2f for no-valid-responce-pls-try-again
[2019-08-19 11:44:00] VERBOSE[26052][C-00000091] pbx.c: Executing [s@ivr-21:12] WaitExten("DAHDI/i2/961599280-2f", "10,") in new stack
[2019-08-19 11:44:04] VERBOSE[26052][C-00000091] pbx.c: Executing [2@ivr-21:1] Set("DAHDI/i2/961599280-2f", "__ivrreturn=0") in new stack
[2019-08-19 11:44:04] VERBOSE[26052][C-00000091] pbx.c: Executing [2@ivr-21:2] Goto("DAHDI/i2/961599280-2f", "ext-group,2400,1") in new stack
[2019-08-19 11:44:04] VERBOSE[26052][C-00000091] pbx_builtins.c: Goto (ext-group,2400,1)
[2019-08-19 11:44:04] VERBOSE[26052][C-00000091] pbx.c: Executing [2400@ext-group:1] GotoIf("DAHDI/i2/961599280-2f", "0?cid") in new stack
[2019-08-19 11:44:04] VERBOSE[26052][C-00000091] pbx.c: Executing [2400@ext-group:2] Progress("DAHDI/i2/961599280-2f", "") in new stack
[2019-08-19 11:44:04] VERBOSE[26052][C-00000091] pbx.c: Executing [2400@ext-group:3] Macro("DAHDI/i2/961599280-2f", "user-callerid,") in new stack
[2019-08-19 11:44:04] VERBOSE[26052][C-00000091] pbx.c: Executing [s@macro-user-callerid:1] Set("DAHDI/i2/961599280-2f", "TOUCH_MONITOR=1566207824.2133") in new stack
[2019-08-19 11:44:04] VERBOSE[26052][C-00000091] pbx.c: Executing [s@macro-user-callerid:2] Set("DAHDI/i2/961599280-2f", "AMPUSER=961599280") in new stack
[2019-08-19 11:44:04] VERBOSE[26052][C-00000091] pbx.c: Executing [s@macro-user-callerid:3] GotoIf("DAHDI/i2/961599280-2f", "0?report") in new stack
[2019-08-19 11:44:04] VERBOSE[26052][C-00000091] pbx.c: Executing [s@macro-user-callerid:4] ExecIf("DAHDI/i2/961599280-2f", "1?Set(REALCALLERIDNUM=961599280)") in new stack

hope someone can help me understanding why is this happening and how can I fix it.

Albin
  • 9,307
  • 11
  • 50
  • 89
  • `file no-valid-responce-pls-try-again does not exist in any format` might be part of the reason? What does the actual plan look like? Could it be that your "default" is invalid and as such not taken? Do you have instances where it works? Did you check the documentation to see whenever the order of elements in the configuration is important? – Seth Aug 22 '19 at 08:54

1 Answers1

0

Sorry for my late answer. On this particular call the user at 11:44:04 had entered only "2" on their keypad during the WaitExten application which had been called at 11:44:00. This sent dialplan execution to extension 2 in the ivr-21 context which at the second priority sends dialplan execution to extension 2400 in the ext-group context. Extension 2 is a valid match for the 2 that the user entered on their keypad before the 3 second digit timeout.

In the ivr-21 context you might have multi-digit extension names that start with "2x" in addition to the single-digit extension name 2. It would be better to have all extension names that start with 2 be the same length so you do not end up with errors due to timeouts that can occur while a user enters digits.

bruce57
  • 1
  • 1
  • thak you for your answer, but still a little confused, in this IVR dialplan if your enter "2" you go to ring group 2400 (and also some extensions in the form 2XXX) My question is, if the customer enter a number "2" and this is a valid destination (it is correctly configured in the IVR) how is this sound record is being played? [2019-08-19 11:44:00] VERBOSE[26052][C-00000091] pbx.c: Executing [s@ivr-21:11] ExecIf("DAHDI/i2/961599280-2f", "1?Background(no-valid-responce-pls-try-again)") in new stack – joaquin Oct 08 '19 at 13:26
  • @joaquin - The caller arrived at priority 11 in extension s in context ivr-21 because they had erroneously entered 225 and the i (invalid) extension sent them there. The sound record you wish to play at that point is either misspelled or it is not present in /var/lib/asterisk/sounds/. Let me know if this answers your question. – bruce57 Oct 11 '19 at 18:43