[asterisk-bugs] [Asterisk 0010411]: Variables in AEL2 context names

noreply at bugs.digium.com noreply at bugs.digium.com
Thu Aug 9 00:23:14 CDT 2007


A NOTE has been added to this issue. 
====================================================================== 
http://bugs.digium.com/view.php?id=10411 
====================================================================== 
Reported By:                adiemus
Assigned To:                murf
====================================================================== 
Project:                    Asterisk
Issue ID:                   10411
Category:                   PBX/pbx_ael
Reproducibility:            always
Severity:                   minor
Priority:                   normal
Status:                     assigned
Asterisk Version:           1.4.9  
SVN Branch (only for SVN checkouts, not tarball releases): N/A  
SVN Revision (number only!):  
Disclaimer on File?:        N/A 
Request Review:              
====================================================================== 
Date Submitted:             08-08-2007 18:04 CDT
Last Modified:              08-09-2007 00:23 CDT
====================================================================== 
Summary:                    Variables in AEL2 context names
Description: 
As part of our migration to 1.4.x, we're looking at moving to AEL2.  In so
doing, I've run across what looks like a bug in the native AEL parser.  (Or
I'm just missing something obvious, which I admit is very possible)

The relevant bits from extensions.ael:

globals {
  OFFICE_CODE=503;
}

context from-enum {
  includes {
    internal-extensions;
    pbx-extensions;
  }

  _${OFFICE_CODE}XXXX => {
        Answer();
        goto ${EXTEN:3}|1;
  }
}

With extensions.ael being loaded (and no extensions.conf), if I try to
dial into this context, I get:

[Aug  9 00:45:47] NOTICE[15582]: chan_iax2.c:7406 socket_process: Rejected
connect attempt from XXX.XXX.XXX.XXX, request '5039000 at from-enum' does not
exist

Interestingly, if I have aelparse dump an extensions.conf version of
extensions.ael, I end up with the following relevant code:

[globals]
OFFICE_CODE=503

[from-enum]
include => internal-extensions
include => pbx-extensions
exten => _${OFFICE_CODE}XXXX,1,Answer()
exten => _${OFFICE_CODE}XXXX,2,Goto(${EXTEN:3}|1)

If I have asterisk load this instead of the AEL, the context works as
expected.  (Hence my suspiscion it's the native AEL parser that's at
fault)

In the meantime, I've simply changed the extension to:

_XXXXXXX => {

which will work for now.  But I would like, if possible, to put variables
into extension names.

If there's any further information I can provide, please let me know.

Thanks,

-Chris

(NOTE: Mantis only lets me select 1.4.9, but I'm actually running into
this issue on 1.4.10)
====================================================================== 

---------------------------------------------------------------------- 
 murf - 08-09-07 00:23  
---------------------------------------------------------------------- 
I've uploaded the 10411.patch file, please merge the changes into your
release (there might be some offsets-- I built this on trunk; as long as
there's no rejects, you'll be ok).

Please let me know if it solves the problem. 

I discovered that the pbx_config stuff calls the
pbx_substitute_variables_helper func on the extension name before calling
add_extension2(). I will try to duplicate this when compiling. When merely
dumping extensions.conf format, we don't have to evaluate the variables
out, because the pbx_config stuff will do it for us. 

Issue History 
Date Modified   Username       Field                    Change               
====================================================================== 
08-09-07 00:23  murf           Note Added: 0068641                          
======================================================================




More information about the asterisk-bugs mailing list