05-17-2018 03:07 PM - edited 03-14-2019 06:11 PM
Is there anyway to create automated prompts like these http://www.fromtexttospeech.com/ and use them in UCCX? I have attempted to do this and corrected the settings in Audacity however, when the prompts play they are extremely garbled and cannot be understood. I figured it would be nice to use text to speech and create these.
Solved! Go to Solution.
05-23-2018 02:37 PM
I found out what the issue was. I had to set the project to 8000 and use "Tracks > Resample" before exporting. Once I did that everything sounds normal. Thank you for your help and pointing out all of these various resources and guides.
05-18-2018 05:52 AM
As long as you save them with proper audio settings it does not matter where you get the prompts from. Assuming your UCCX is using G711 codec you need to save the file with following settings:
Here is good blog:
https://www.netcraftsmen.com/uc-toolkit-using-audacity-to-create-and-edit-cisco-uccx-prompts/
07-03-2019 04:01 PM
07-04-2019 12:20 AM
Prompt should be in 8 bit, 8 KHz, mono, u-law format.
Other wise, you will hear a bad sound.
Are you looking to move the prompt from one folder to another in Prompt Management?
05-20-2018 11:33 AM
I use Cisco Tropo to do this.
A developer account is free and you can write simple scripts to record calls and store the results on an ftp server. Tropo supports various languages - the script below is Python. When the application associated with it is called it plays a welcome message, then plays and records to sample prompts and transfers the recordings to an ftp server (in this case drivehq which is free) and then plays a goodbye prompt and hangs up.
say("Welcome to Tropo James")
startCallRecording("ftp://ftpusername@gmail.com:password@ftp.drivehq.com/troporecordings/abpopen.wav")
say("Thank you for calling Example Company. Please select from the following options. For Sales press 1. For support press 2. For Customer Services press 3.", {"voice":"kate"} )
stopCallRecording()
startCallRecording("ftp://ftpusername@gmail.com@ftp.drivehq.com/troporecordings/abpclosed.wav")
say("Thank you for calling Example company. Our office hours are Monday to Friday 8 a m to 5 p m. Please call back within these hours.", {"voice":"kate"} )
stopCallRecording()
say("Goodbye James")
Free developer accounts do not have DDI numbers but do have SIP URIs that can be called using a Windows SIP softphone and free SIP account.
The recordings can be downloaded from the FTP server using something like Filezilla. They are not in G711 format so I use NCH Switch to convert them.
Trop offers lots of different voices and the prompts are pretty good quality.
https://www.tropo.com/docs/scripting/international-features/speaking-multiple-languages
This may sound complex but it is actually pretty simple.
I am currently writing a Python script which will automatically generate a Tropo python script from a CSV file containing prompt text, prompt names and voices.
Hope this helps
James
05-22-2018 05:37 AM
James, I dont think you can sign up for free Tropo account anymore.
05-22-2018 09:36 AM
Hi Chris,
It does look like you can still apply for a free Tropo developer account at the link below:
https://www.tropo.com/register
They do seem to be asking for a lot more information than was the case when I signed up though.
I guess that your application will be reviewed and could be refused if they do not think that there is a sensible use case and generating prompts for UCCX probably would not make the cut.
05-22-2018 07:19 AM
I'm not sure I understand your use case completely. Are you trying to do TTS in your IVR, like to read back a balance or a street address? Or do you want to be able to record new prompts using TTS and then upload them to UCCX?
For the first, UCCX offers some basic TTS-like functionality for numbers and dates, for more advanced stuff like reading back a status or some phrase you can use Nuance. For the second, the Tropo approach is what I would do, but not use Tropo. Amazon, Google, and Microsoft all offer pretty cheap TTS services. Here's some code which takes a CSV and produces MP3s using Amazon Polly. I haven't touched this code in over a year and I slapped it together when I had to do a few hundred prompts quickly, so please don't judge it too hard.
// Load the SDK const AWS = require('aws-sdk') var fs = require('fs') var csv = require('fast-csv'); // Create an Polly client const Polly = new AWS.Polly({ signatureVersion: 'v4', region: 'us-east-1' }) fs.createReadStream('OrderRefills.csv') .pipe(csv()) .on('data',function(data){ // console.log(data[1]); let params = { 'Text': data[1], 'OutputFormat': 'mp3', 'VoiceId': 'Kimberly' } Polly.synthesizeSpeech(params, (err, stuff)=>{ if (err){ console.log(err.code) } else if (stuff){ if(stuff.AudioStream instanceof Buffer) { fs.writeFile("./"+data[0]+".mp3", stuff.AudioStream, function(err){ if(err){ return console.log(err) } console.log(data[0]+".mp3 "+"File was saved"); }) } } }) }) .on('end',function(data){ console.log('Done'); });
05-23-2018 02:49 AM
05-23-2018 02:37 PM
I found out what the issue was. I had to set the project to 8000 and use "Tracks > Resample" before exporting. Once I did that everything sounds normal. Thank you for your help and pointing out all of these various resources and guides.
Discover and save your favorite ideas. Come back to expert answers, step-by-step guides, recent topics, and more.
New here? Get started with these tips. How to use Community New member guide