I'm finishing up a first version of a web interface for end
users.  It's focus is specific for our own uses, but I plan on
releasing it under an open source license and would appreciate any
feedback while I wrap up the first version.<br>
<br>
The interface is designed for end users without any real technical
knowledge of asterisk except for some basic concepts of how things
relate to each other.&nbsp; Such as contexts in a dialplan and how they
relate to the context assigned to a sip/iax user, etc..&nbsp; The
interface is for day to day management of areas such as the dialplan
and configuring new providers and phones in sip.conf and
iax.conf.&nbsp; Things that an end user would want to change on their
own.&nbsp; It also includes a nice voicemail interface for voicemail
users,&nbsp; and some ability to manage/monitor asterisk via the
manager api.<br>
<br>
One of the main features is the ability to write canned scripts that
have associated configuration pages.&nbsp; A script is a text file with
the script, and a YAML definition file.&nbsp; In the text file you can
put variable placeholders, and in the YAML file you define the
variables.&nbsp; The web interface then builds an html form based on
the text file and the YAML definition.&nbsp; This way it's easy to add
configurable sections in extensions.conf without having to change any
of the base code.&nbsp; For instance providing canned scripts for
extensions, call routing, voice menu's, etc..&nbsp; If you have a
script that needs a more custom web interface you can do that also by
just creating the html form by hand.&nbsp; The same template approach
is also used for configuring phones.<br>
<br>
Since we will be using this for local and remote installations, we also
needed multi tenant capability.&nbsp;&nbsp; A basic multi tenant
feature set is built in, so multiple businesses can be maintained on
one copy of asterisk.<br>
<br>
Another requirement we had is to be able to coexist with an existing
asterisk installation, instead of requring that the management
interface take over all the asterisk config files.&nbsp; All you have
to do with asterisk is add one include line in each .conf file you want
to manage.<br>
<br>
And last but not least,&nbsp; another reason we couldn't use any of the
existing interfaces is that almost without exception all of them were
too difficult to install.&nbsp; Or more correctly unnecessarily
difficult.&nbsp; We need to have something we can hand our clients and
know they will be able to install the thing and run it with little
difficulty. &nbsp; Since this interface uses ruby on rails, it includes
a built in webserver, and the installation is a matter of untarring the
distribution into a directory, changing the ownership of the directory
to something asterisk can read, and running the start script to bring
up the webserver.&nbsp; If we can work out a bug in tar2rubyscript that
makes it fail on freebsd, then the distribution will be just one single
executable that you can run as is.<br>
<br>
<br>
I would be very interested in hearing about what features people would
like in a tool like this.&nbsp; Keeping in mind that it's not a
complete asterisk system and is designed to work with existing
installations.&nbsp; I will post a live demo in the next week or so
once we get the first release ready.<br>
<br>
Chris<br>
<br>
<br>
<br>
<br>
<br>
<br>