Fun with Freeswitch and FusionPBX audio using soundtouch

FusionPBX is definitely more difficult to setup than FreePBX, but it does give you direct access to the dial plan which makes it fairly straight forward to do some advanced call handling.

In this example I’m going to set up and inbound number and then create an echo test that manipulates the callers voice, before echoing it back to them.

Inbound Number with UKDDI

First I’m going to create an Inbound Number with UKDDI and forward it to my FusionPBX server –

UK DDI inbound number

Inbound Number in FusionPBX

Next I create a ‘Destination’ in FusionPBX –

FusionPBX destination

The destination will be the same as the DDI number we forwarded our Inbound Number to with UKDDI. Enabled should be set to true –

Inbound Route in FusionPBX

Now we create an Inbound Route in FusionPBX to tell it what to do with our incoming call –

We’ll call the Inbound Route the same as our DDI number and select the Destination Number we created earlier. We will just set the Action to ‘answer’ for now –

Once we’ve saved this we click on the ‘e’ to go back in and edit it –

Now we are going to add a new line to our dial plan –

We are going to create a new action at ‘Order’ 120 and select ‘soundtouch’. In the Data box enter ‘hook_dtmf -0.3o 0.8r’. This will slow down the pitch and rate of the audio. See here for more info – https://wiki.freeswitch.org/wiki/Mod_soundtouch

Once we’ve saved that add another entry and Order 140 and select Type of ‘delay_echo’ and Data of ‘5000’. This will give a delay of 5 seconds before echoing the audio back to the caller –

This should be what you end up with –

Obviously we don’t need to pass it to an echo test. The call could be forwarded anywhere.

Hear the results by calling the number at the top of the blog post and saying something!