home-assistant.io/source/_components/watson_tts.markdown
2019-06-10 19:30:39 +02:00

2.7 KiB

layout, title, description, date, sidebar, comments, sharing, footer, logo, ha_category, ha_release
layout title description date sidebar comments sharing footer logo ha_category ha_release
page Watson TTS Instructions on how to setup IBM Watson TTS with Home Assistant. 2019-04-22 12:00 true false true true watson_tts.png
Text-to-speech
0.94

The watson_tts text-to-speech platform that works with IBM Watson Cloud to create the spoken output. Watson is a paid service via IBM Cloud but there is a decent free tier which offers 10000 free characters every month.

{% linkable_title Setup %}

For supported formats and voices please go to IBM Cloud About section.

To get started please read the Getting started tutorial.

{% linkable_title Configuration %}

To configure Watson TTS, add the following lines to your configuration.yaml:

# Example configuration.yaml entry
tts:
  - platform: watson_tts
    watson_apikey: YOUR_GENERATED_APIKEY

You can get these tokens after you generated the credentials on the IBM Cloud console:

{% configuration %} watson_url: description: "The endpoint to which the service will connect." required: false type: string default: https://stream.watsonplatform.net/text-to-speech/api watson_apikey: description: "Your secret apikey generated on the IBM Cloud admin console." required: true type: string voice: description: Voice name to be used. required: false type: string default: en-US_AllisonVoice output_format: description: "Override the default output format. Supported formats: audio/flac, audio/mp3, audio/mpeg, audio/ogg, audio/ogg;codecs=opus, audio/ogg;codecs=vorbis, audio/wav" required: false type: string default: audio/mp3 {% endconfiguration %}

{% linkable_title Usage %}

Say to all media_player device entities:

- service: tts.watson_tts_say
  data_template:
    message: 'Hello from Watson'

or

- service: tts.watson_tts_say
  data_template:
    message: >
      <speak>
          Hello from Watson
      </speak>

Say to the media_player.living_room device entity:

- service: tts.watson_tts_say
  data_template:
    entity_id: media_player.living_room
    message: >
      <speak>
          Hello from Watson
      </speak>

Say with break:

- service: tts.watson_tts_say
  data_template:
    message: >
      <speak>
          Hello from
          <break time=".9s" />
          Watson
      </speak>