We currently have been deploying Asterisk to our clients but have been using the good old command line and editing the .conf files. Well our clients are clamoring for a GUI so here I am. Based on what I have gathered, FreePBX provides the logic to help build the various .conf files. How can we integrate our existing dial plan information and .conf files into the system so it could be used?
Assume we did not use any of our dial plan information; can we manually edit the .conf files as long as we maintain the same syntax, in other words does the GUI recognize manually edited items within the .conf files or is it using a database to store the data and building the static .conf files from that database?
FreePBX is not a ‘conf file editor’ so you really will want to start from scratch. FreePBX is an entire application layer that abstracts the configuration from the conf files and also includes many AGI scripts and astdb ‘objects’ that are the basis for the configuration. So what you are trying to do won’t really work. Once you configure up a system, there are plenty of hooks to either do custom dialplan work or even write you own FreePBX modules if appropriate - but that is the direction you are going to want to go.
Thank you for the quick response. Understood that using our own dial plan will require using the hooks provided. Regarding manual editing of the .conf files that FreePBX creates, will the GUI reflect those changes, i.e. add a user manually?
Where in the source code is a good place to start understanding the framework and building a module?
Thanks for the help.
If you use Freepbx you do not hand edit the files which freepbx create
Your hand editing is restricted to any custom files you wish to create and no they will not show up in the gui.
Freepbx does not look at the files… it creates them asterisk reads them (but you know this).
you can create your own custom includes and when you update freepbx versions you just go in and add the include file line into the _custom.conf files.
This way the update to add functions to freepbx do not over write your custom code.
Your best is just load a box the see for yourself.
the gui doesn’t look at the conf files for anything (with the exception of voicemail.conf). Everything is retained in a sql database plus some stuff is retained in the astdb. There is information on the dev wiki (set freepbx.org/trac) that is scattered around. You can also look at the code. Beware though - the project had been run quite loosely for the last couple of years so there is a real mix of stuff in there (plenty of stuff we are not proud of). Over time we are working to clean things up - but depending on what part of the code you look in, it might be quite scary at times. (just being honest…)
charge clients for your install time + suggested donation for every freepbx install/upgrade send donation to freepbx -)