[asterisk-users] Asterisk "virtual hosting"

Steve Edwards asterisk.org at sedwards.com
Sat May 16 16:22:08 CDT 2015


On Sat, 16 May 2015, martin f krafft wrote:

> I am in the peculiar situation to have to set up a PBX for two
> independent sites, but operated by the same entity. Yes, I could set
> up two VPSs and install Asterisk to each, put common stuff (e.g.
> conferencing setup) into Git and share between both using includes,
> but for various reasons (among them simplicity and cost), I'd prefer
> a single Asterisk instance.
>
> I know I can #include files from sip.conf and extensions.conf, so
> making a extensions.conf that consists of
>
>  #include ext-common.conf
>  #include foo/extensions.conf
>  #include bar/extensions.conf
>
> is trivial. Unfortunately, the contexts in each of these files must
> not clash, and so I will be forced to use e.g. [bar-incoming] in
> bar/extensions.conf.
>
> That's a bit of redundancy here (which I am always trying to avoid
> like the plague) and I am wondering if there are better ways. Do you
> know of any, short of writing a script to "compile" the files and
> change the contexts based on path (which will be dirty and hard to
> get right)?

I use a preprocessor 
(http://software.hixie.ch/utilities/unix/preprocessor/) to tailor 
dialplans and configuration files to each host based on the client 
(or project) and the hostname.

This lets me do stuff like:

[globals]
         DATABASE-DATABASE               = @DATABASE_DATABASE@
         DATABASE-PASSWORD               = @DATABASE_PASSWORD@
         DATABASE-PRODUCTION-SERVER      = @DATABASE_PRODUCTION_SERVER@
         DATABASE-REPORTING-SERVER       = @DATABASE_REPORTING_SERVER@
         DATABASE-ROOT-PASSWORD          = @DATABASE_ROOT_PASSWORD@
         DATABASE-USERNAME               = @DATABASE_USERNAME@

and

#ifdef  A11
         exten = s,n,                    execif($[${ACCEPT-COUNTER} < 0]?hangup)
#else
         exten = s,n,                    execif($[${ACCEPT-COUNTER} < 0],hangup)
#endif

-- 
Thanks in advance,
-------------------------------------------------------------------------
Steve Edwards       sedwards at sedwards.com      Voice: +1-760-468-3867 PST
Newline                                              Fax: +1-760-731-3000



More information about the asterisk-users mailing list