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

Quinn Weaver asterisk at funkspiel.org
Mon Nov 7 03:31:59 MST 2005


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?

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.)

In any case, a solution to 1 would obviate this problem.

-----------
[1] I am aware that AGI has SET CONTEXT, SET EXTENSION, and SET PRIORITY
commands, but those are for conditional branching within an individual
call.  What I want to do is to modify parts of the dialplan in a way
that will affect all calls.



More information about the asterisk-dev mailing list