Text To Speech - TTS is a new feature that is implemented in the PBXware version 7.6. Basically, TTS is a feature that allows creation of sounds files using AI.
TTS is a license feature, so for it to be available, it needs to be enabled in the license.
If it enabled in the license, to enable it on system, you need to navigate to:
Settings -> Tenants -> Tenant (On a CC system, you should navigate to Settings -> Server and click on the Server's name) -> Text to speech subsection -> Enable TTS -> Set to "Yes".
Once you enable the feature, option "Provider" will not be greyed-out anymore and you can select provider for the TTS option from the dropdown menu.
In this guide, we used "OpenAI" as a provider. After we select the "OpenAI" as a provider, "API Key" field will appear under it.
You will need to have a working "API Key" from OpenAI for the feature to work correctly.

In order to create sound files, you will need to navigate to:
Home -> System -> Sound files (if you are on a MT system, make sure you do this on the tenant that has TTS enabled).
Click on the "Generate sound file" in order to create a sound file.

Once you do that, you will be prompted with a pop-up window.

Under option "Model" you will be able to select one of the options from the dropdown menu (tts-1, tts-1-hd, and gpt-4o-mini-tts).

Under option "Voice" you will be able to select one of the options from the dropdown menu (alloy, ash, coral, echo, fable, nova, onyx, sage and shimmer).

These are different voice actors. You could listen to their voice by clicking on the button "Play Sample"

The "Use for" option is for selecting for which object the sound file will be used (DID, Ring Group, etc...).
Once you select one of the options from the dropdown menu, option "Name" will automatically be populated with prefix for the type of sound file.
In this case, we selected "IVR Greeting" as the "Use for" and the prefix "greeting-" was automatically added to the "Name" field.

If you try to save a sound file and see the "File name is not valid. Please use only letters, numbers, underscores, and hyphens." error message appear, indicating that the name is invalid, you will not be able to save the sound file.
When naming sound files, please use only letters, numbers, underscores and hyphens. Any other symbol is not acceptable and it will result in an error message appearing.
If you try to save a sound file and see the "File name is not valid. File already exists. File name: '{{name}}'." error message appear, indicating that a sound file with that name already exist, you will not be able to save the sound file.
Under the "Text" field enter the text you want to be transformed to sound file.
After you have entered the text, click on the "Generate" button at the bottom.

If the entered text is valid, you will be prompted with the success message:
"Your file has been generated successfully. Please click "Listen" button to listen to it."

In order to listen to the generated sound file, click on the "Listen" button.

You should be able to listen to the message you have written in the "Text" field.
If you are satisfied with the sound file, you click on the "Save" button in order to save the sound file.
Sound files can be found on the location:
Home -> System -> Sound files

If you try to generate a sound file that has nothing in the "Text" field, you will be prompted with the error message:
"Input text must not be empty."

If you try to generate a sound file that has over 4096 characters in the "Text" field, you will not be able to do it. It will cut off the rest of the characters if you copy/paste it or if you enter it manually, you will not be able to write anything after the character 4096.

You will not be prompted with an error message, but you can clearly see that the sentence has been cut-off in the middle.
If you turn off the "TTS" feature in the Servers settings, you will not be able to see "Generate sound file" button under Sound files section.


If the "TTS" feature is turned on in the Servers settings, but the API Key is empty, once you try to save settings, you will be prompted with the error message:
