Home >

FreePBX is an easy-to-use GUI (Graphical User Interface) that controls and manages Asterisk.

FreePBX Installation

FreePBX can be installed manually or as part of a pre-configured FreePBX Distro that includes the system OS, Asterisk, FreePBX GUI and assorted dependencies:

The following open source distributions include FreePBX:

Over this installation, you add the VoiceXML browser following the “VoiceXML browser Installation” steps. The package detects the freePBX (and Elastix) folders and add the corresponding modules. You need to finish the installation from the Web Interface following this next steps.


The FreePBX integration is only available for V12 and after VXI* VoiceXML browser releases.

VoiceXML Module installation


To access FreePBX in Elastix you have to enable Direct access from Security >Advance Setting.

Enable direct access (Non-embedded) to FreePBX : ON

Open the Browser, access URL https://your_pbx_ip_address/admin

Step 1

Go to the Admin menu and select Module Admin items.

Step 2

You see a list of all the module Installed or available. The VoiceXML should be in the Application section. Its status is uninstalled.

Step 3

Select Acion :'Install', validate with 'Progress' and confirm the installation.

Step 4

To avoid a Message Warning associated to unsigned applications, you need to disable an option Enable Module Signature Module : set 'False' and validate.

VoiceXML Module

VoiceXML Settings (Settings)

The form configure main VoiceXML general parameters.

  • Record silence : When the record start, keep or remove the silence before the voice of the speaker.
  • Threshold : Adjust the sensibility of the VoiceActivityDetection used by the VoiceXML module.
  • WAV default codec : When the VoiceXML browser set encoding “audio/x-wav”, define the codec used with the Wav Contener.
  • Debug : Enable the VoiceXML logs (for the VoiceXML Asterisk Module, and for the VoiceXML browser with verbose DEV).
  • Priority Events : If mixed DTMF grammars with single DTMF keys and long DTMF inputs, set if after the first digits (events) the VoiceXML should return a value or if it should wait for possible long length input.
  • Dial format : String format parameter to set the asterisk Dial() parameter with the <transfer> destination attribute. Example: SIP/%s@sip_trunk.
  • Cache timeout : Remove Temporary TextToSpeech audio files after this time.

VoiceXML License (Settings)

Set the license options:

  • Key : License Key provider by i6net after purchasing a commercial license.
  • Expiration Date : Expiration date YYMMDD.
  • Video : Enable video functions (play/record/transcoder applications).
  • TextToSpeech : Enable TextToSpeech prompting.
  • Speech : Enable Speech/AutomaticSpeechRecognition recognizing.
  • Externals : Enable to execute Asterisk Dialplan Extension with keeping the VoiceXML session context.
  • Dialer : Enable Dialer ().

VoiceXML Statistics (Reports)

VoiceXML Log Files (Reports)

VoiceXML Application (Application)

Configuration example

Add a VoiceXML application

Select Menu Application and item VoiceXML. Fill the Application form like this :

The VoiceXML browser will play the audio file message.wav (in the same folder). In this example, the audio content is ​an english message.

<?xml version="1.0"?>
<vxml version = "2.0" xmlns="">
        <audio src="message.wav"/>

Download : index.vxml message.wav

To be able to execute The VoiceXML Application,​ you can set use a Misc Application to define a Feature Code to be able to call this service locally from any Extension Phone. Another way is to define in a '​Trunk'​ and use the '​Inbound route' ​ with '​Destination'​ set to the VoiceXML applicatiion.on.

Add a Misc application

To be able to execute The VoiceXML Application, you can set use a Misc Application to define a Feature Code to be able to call this service locally from any Extension Phone. Select the privous VoiceXML application added. Another way is to define in a SIP trunk configuration to set the VoiceXML application too.

Call the VoiceXML application

Apply the configuration modifications and call the 9999 from your phone extension.

Debug the VoiceXML application

With the VoiceXML Log Files you can access to the VoiceXML browser logs (to enable it you need to enable 'Debug' in the 'VoiceXML settings').

Log In