[Asterisk-Dev] extensions.conf limitations, and how to overcome them

Steven Critchfield critch at basesys.com
Mon Nov 7 10:56:16 MST 2005


On Mon, 2005-11-07 at 02:31 -0800, Quinn Weaver wrote:
> Hi,
> 
> I'm a relative newcomer to Asterisk, and I have some questions about
> the dialplan.  Before jumping in, I want to thank Mark, Digium, and
> everyone on this list for making Asterisk what it is.  Thanks for
> giving us such an awesome toy to play with. :)
> 
> 1) Has anyone thought about opening up programmatic access to
> Asterisk's internal representation of the dialplan?  With this, there
> would be no need to munge and reload extensions.conf.
> 
> Basically, I want to be able to reorder menus (extensions, priorities)
> from within a call via an AGI or res_perl script[1].  I'd also like to do
> the same thing between calls.
> 
> My understanding is that this is not possible in the Asterisk API.
> Do you think it's desirable?  How easily could I hack Asterisk to
> make it happen?  Where would I start?

Maybe if you described your needs better, there would be a better
solution to this problem. Then again, if you are needing that much
flexibility, maybe you need to write your own AGI app that essentially
handles the equivalent of your morphing dialplan needs.

> 2) Apart from question 1, has anyone given thought to the monolithic
> nature of extensions.conf?  It seems like a scaling problem for
> service providers that have many customers on each server, each with
> independent dialplans.
> 
> Of course, it's only a problem if you want to change dialplans often
> and programmatically, as I'm thinking of doing.  Has anyone else run
> into a wall with this?  How do you handle it?  Do you just work
> around it by upping the server-to-customer ratio?  (If no one here
> has faced this problem, I may post it to asterisk-biz and report back.)

First, the dialplan can be split many ways via the context tags. Next
#include in extensions.conf should help break it down into easier to
manage files.
-- 
Steven Critchfield <critch at basesys.com>




More information about the asterisk-dev mailing list