[asterisk-bugs] [Asterisk 0017089]: Background behaves strangely[t when priority 1 is not available in current extension.

Asterisk Bug Tracker noreply at bugs.digium.com
Wed Mar 24 13:34:15 CDT 2010


A NOTE has been added to this issue. 
====================================================================== 
https://issues.asterisk.org/view.php?id=17089 
====================================================================== 
Reported By:                whardier
Assigned To:                
====================================================================== 
Project:                    Asterisk
Issue ID:                   17089
Category:                   Core/PBX
Reproducibility:            always
Severity:                   minor
Priority:                   normal
Status:                     feedback
Asterisk Version:           1.6.2.6 
JIRA:                        
Regression:                 No 
Reviewboard Link:            
SVN Branch (only for SVN checkouts, not tarball releases): N/A 
SVN Revision (number only!):  
Request Review:              
====================================================================== 
Date Submitted:             2010-03-23 22:20 CDT
Last Modified:              2010-03-24 13:34 CDT
====================================================================== 
Summary:                    Background behaves strangely[t when priority 1 is
not available in current extension.
Description: 
Apparently whatever extension lookup method is being used by BackGround
fails when the extension calling BackGround does not have priority 1 in the
current context.  I discovered this when including an IVR menu into another
context using a 50000 offset to extension 's' and a named priority.  See
additional information for a quick sample.

In the example below, if a caller is sent to Goto(tree-dish-AK-ANC,s,1)
the extension detection fails with:

[Mar 23 19:17:41]     -- Sent into invalid extension 's' in context
'tree-dish-common' on SIP/0011-Sales-0000001c
[Mar 23 19:17:41]     -- Executing [i at tree-dish-common:1]
Gosub("SIP/0011-Sales-0000001c", "s,common") in new stack

If I attempt to dial a 4 digit extension starting with 0 when a '0'
extension exists.  Something is 'wonky' if I can get technical with you
all.

Previously [tree-dish-AK-ANC] included [tree-dish-common] and simply went
to the named priority at priority 50000 via a local Goto which may have
worked.. untested.  

I can see how some users may want to jump into a named priority in another
context and use DTMF detection of some kind.  If the extension does not
have priority 1 this will fail.
====================================================================== 

---------------------------------------------------------------------- 
 (0119841) whardier (reporter) - 2010-03-24 13:34
 https://issues.asterisk.org/view.php?id=17089#c119841 
---------------------------------------------------------------------- 
extensions.conf:

[test-inbound]

exten => 1,1,Goto(test-menu,test1,start)
exten => 2,1,Goto(test-menu,test2,start)

[test-menu]

exten => test1,1(start),NoOp(test1)
exten => test1,n,Background(silence/10)
exten => test1,n,Hangup()

exten => test2,2(start),NoOp(test1)
exten => test2,n,Background(silence/10)
exten => test2,n,Hangup()

exten => _00xx,1,NoOp(Entered ${EXTEN})

exten => 0,1,NoOp(Entered ${EXTEN})
exten => 1,1,NoOp(Entered ${EXTEN})
exten => 2,1,NoOp(Entered ${EXTEN})
exten => 3,1,NoOp(Entered ${EXTEN})
exten => 4,1,NoOp(Entered ${EXTEN})
exten => 5,1,NoOp(Entered ${EXTEN})

Console Output Test 1 - Attempt to dial 0000 (Passes):

[Mar 24 10:31:41]     -- Executing [1 at test-inbound:1]
Goto("SIP/0011-00000031", "test-menu,test1,start") in new stack
[Mar 24 10:31:41]     -- Goto (test-menu,test1,1)
[Mar 24 10:31:41]     -- Executing [test1 at test-menu:1]
NoOp("SIP/0011-00000031", "test1") in new stack
[Mar 24 10:31:41]     -- Executing [test1 at test-menu:2]
BackGround("SIP/0011-00000031", "silence/10") in new stack
[Mar 24 10:31:41]     -- <SIP/0011-00000031> Playing 'silence/10.ulaw'
(language 'en')
[Mar 24 10:31:42]     -- Executing [0000 at test-menu:1]
NoOp("SIP/0011-00000031", "Entered 0000") in new stack
[Mar 24 10:31:42]     -- Auto fallthrough, channel 'SIP/0011-00000031'
status is 'UNKNOWN'

Console Output Test 2 - Attempt to dial 0000 (Fails):

[Mar 24 10:31:57]     -- Executing [2 at test-inbound:1]
Goto("SIP/0011-00000032", "test-menu,test2,start") in new stack
[Mar 24 10:31:57]     -- Goto (test-menu,test2,2)
[Mar 24 10:31:57]     -- Executing [test2 at test-menu:2]
NoOp("SIP/0011-00000032", "test1") in new stack
[Mar 24 10:31:57]     -- Executing [test2 at test-menu:3]
BackGround("SIP/0011-00000032", "silence/10") in new stack
[Mar 24 10:31:57]     -- <SIP/0011-00000032> Playing 'silence/10.ulaw'
(language 'en')
[Mar 24 10:31:59] WARNING[27367]: pbx.c:4358 __ast_pbx_run: Channel
'SIP/0011-00000032' sent into invalid extension 'test2' in context
'test-menu', but no invalid handler 

Issue History 
Date Modified    Username       Field                    Change               
====================================================================== 
2010-03-24 13:34 whardier       Note Added: 0119841                          
======================================================================




More information about the asterisk-bugs mailing list