Differences
This shows you the differences between two versions of the page.
Both sides previous revision Previous revision Next revision | Previous revisionLast revisionBoth sides next revision | ||
text-to-speech_guide:tts_http_protocol:start [2015/03/03 20:37] – borja | legacy:text-to-speech_guide:tts_http_protocol:start [2017/07/28 23:53] – ↷ Links adapted because of a move operation javier | ||
---|---|---|---|
Line 1: | Line 1: | ||
====== HTTP/TTS Protocol ====== | ====== HTTP/TTS Protocol ====== | ||
- | [[: | + | [[legacy: |
===== Description ===== | ===== Description ===== | ||
+ | |||
+ | The VoiceXML browser can connect to a TTS engine using HTTP. | ||
+ | The HTTP protocol is used to transform the prompt text to an audio file. | ||
+ | The audio file can be store in a cache directory in order to optimize the TTS ressources using. | ||
+ | The first access request to generate the audio file, and save it into the cache. The next times, if you use the __same__ text content, the VoiceXML browser will directly use the file in cache, as a prerecorded audio. | ||
This protocol is simple : | This protocol is simple : | ||
* From the VoiceXML browser, you configure to use HTTP, a (POST recommended) request containing mainly the text content and additional parameters (like language, voice...). | * From the VoiceXML browser, you configure to use HTTP, a (POST recommended) request containing mainly the text content and additional parameters (like language, voice...). | ||
- | * The server treats your request. | + | * The web server |
- | * The VoiceXML browser receives an audio file (cpataible | + | * The VoiceXML browser receives an audio file (compatible |
+ | * If you try to use the same content after, the VoiceXML will check and use the cache content instead of requesting the TTS engine. | ||
- | ===== Configuration | + | ===== VoiceXML Browser configuration |
- | The main TTS configuration is set in / | + | The main TTS configuration is set in / |
- | When you set the **method** with POST or GET the HTTP/TTS protocol is used to process < | + | * **method** |
- | If you set the value ASTERISK, the VoiceXML browser will send the content to the Asterisk module (as a text/UTF8 or XML/UTF8 content). | + | * **uri** : You need to set the ' |
+ | * **urivideo** : same as uri but when you sent the xml: | ||
+ | * **format** : Configure the audio file ' | ||
+ | * **formatvideo** : same as format but when you sent the xml: | ||
+ | * **maxage** : The parameter ' | ||
+ | * **checkBreak** : Allows to parse the prompt content (in SSML) an search for the < | ||
+ | * **cutPrompt** : The option ' | ||
+ | * **ssml** : The option ' | ||
- | You need to set the **url** for the TTS (or TextToVideo) service (our scripts install the services in http:// | ||
- | Configure the audio file **format** used, all the scripts not support all the format. Have a look on the install documentation to check and set the correct format. | + | Configuration example |
- | + | ||
- | The parameter **maxage** force to refresh the cache after sometime. The value 0, disable the caching, the HTTP request will be use for each prompt. The value -1 define infinite age. If the file exist in the cache, it will be always used from the cache directly. | + | |
- | + | ||
- | The option **cutPrompt**, | + | |
- | + | ||
- | The option **ssml** for to send the content as SSML/XML well formatted content (with <? | + | |
< | < | ||
Line 46: | Line 52: | ||
# | # | ||
client.prompt.resource.0.ssml | client.prompt.resource.0.ssml | ||
+ | </ | ||
+ | |||
+ | Most of this parameters can be change from the VoiceXML syntax using properties. Use the property name ' | ||
+ | |||
+ | VoiceXML example : | ||
+ | |||
+ | < | ||
+ | < | ||
</ | </ | ||
===== HTTP Parameters ==== | ===== HTTP Parameters ==== | ||
- | * text : the text to synthesize : from the < | + | |
- | * language : the language used (en-GB, fr-FR...) : from the xml:lang attribut. | + | |
- | * format : the audio format to return (wav, gsm, mp4... formats supported by Asterisk) : from the configuration. | + | |
- | * voice : the voice (Carla, Marcos... depends on the TTS provider) : from the xml:lang attribut. | + | |
- | * size* : the size of the image : from the property promptsize. | + | |
- | * backgroud* : the image reference or color used for the background : from the property promptbackground. | + | |
- | * color* : the color for the text : from the property promptcolor. | + | |
- | * font* : the size of the font : from the property promptfont. | + | |
- | * offset* : the offset X shift to the text : from the property promptoffset | + | |
- | * position* : the position Y shift to the text : from the property promptposition | + | |
- | * hmac : MD5 key generated for Voxygen Cloud integration. | + | |
+ | |||
+ | * : Only for TextToVideo function. When you set xml: |