XML Handler

From FusionPBX
Revision as of 18:49, 29 October 2013 by Soapee01 (talk | contribs) (Restart FreeSWITCH)
Jump to: navigation, search

FusionPBX allows for many of the FreeSWITCH XML configuration files can be generated on the fly from the FusionPBX database. Currently, the Dialplan and Directory configuration files can be completely replaced.

To enable this functionality:

XML not saved to the file system

Tell FusionPBX not to write XML configuration files for dialplans and extensions

Navigate to Advanced -> Default Settings
Under Switch, set dialplans and extensions to false

Remove the XML files

Remove the XML files in FreeSWITCH

Move or delete all XML files in conf/dialplans and conf/directory
Add an empty file (named empty.xml or such) to conf/dialplans and conf/directory

Configure Lua to use the xml_handler

Tell FreeSWITCH to load the dialplan and directory from lua

In conf/autoload_configs/lua.conf.xml, add:
 <param name="xml-handler-script" value="app.lua xml_handler"/>
 <param name="xml-handler-bindings" value="dialplan,directory"/>

Restart FreeSWITCH

Now all dialplan and directory entries will be queried from the database via the lua handler script.

Debugging

vim /usr/local/freeswitch/scripts/app/xml_handler/index.lua

Turn true|false as required.

--set the debug options
        debug["params"] = true;
        debug["sql"] = true;
        debug["xml_request"] = true;
        debug["xml_string"] = true;
        debug["cache"] = true;