Utilizing FreePBX as an Autodialer for notifications via call files using TTS

Greetings, I am attempting to do something I am not sure is possible. My goal is to use FreePBX as an autodialer for notifications coming from another platform.(not for marketing robocalls)

My thought process is to utilize call files. I have done this successfully to play prerecorded sound files. While I had issues with VM detection that seemed to work for the most part.

However what I really need is to somehow utilize TTS to read out text placed in the call file (places there programmatically by another platform).

I cannot find any syntax to do this but the info out there for call files seems scant.

Any help or suggestions (in any direction) is appreciated. Thank you.

We literally use FreePBX for mainly this function. We went with Amazon Polly for TTS. We added the TTS variables as variables in the call file, then use the Polly TTS command to read it in the dialplan to the callee.

It is very cost effective, and more importantly there is a guide to get it all setup. IT works extremely well. My hope is one day FreePBX will have a module to make adding these TTS services easier.

Thank you very much for that info! That is very helpful.

Is the link to the other thread the guide?

And yes I agree this would be super helpful as a module, especially in the IOT world.

Thank you again.

Whew, that thread is daunting. If you got that going from that my hat off to you. I am going to give that a try but not being a programmer (although I have access to a few) makes it difficult. Thanks again.

OK last reply and I will leave you be. I saw no reference to a call file anyone was using for that. Can you post an example? All the digging I did I could not find any variables for using TTS in a call file.

Thank you!

1 Like

You need to create a context and run the polly and play the audio

[tts];Simple example

exten => s,1,Answer()
same => n,System(your script polly)
same => n,Playback(your_audio.wav)
same => n,Hangup()

1 Like

Also not a programmer, and I can tell you once you get started it is nowhere near as daunting as it appears to be.

This entry in the thread summarizes how to make Polly a TTS engine in the GUI. You can make your call file point to a context in the GUI, then start using the TTS from the GUI, using the variables you have stored in the call file.

Otherwise as jerson mentioned, you need to put a context that references it in the call file.

The guy in this post put everything in an php script as another option to try.

1 Like

This topic was automatically closed 7 days after the last reply. New replies are no longer allowed.