How can I use TTS with NabuCasa Cloud?

Hi All,

How can I use this integration
with Nabu Casa TTS?

tts:
  - platform: ????
    service_name: tts.cloud_say
    language: 'nl-NL'
    options:
      gender: female

I don’t know what to enter as a platform. I have managed to successfully call the Cloud TTS service through the dev pages > Call Services. But I don’t need to enter a platform there.

The integration covers it in the documentation. Did you read the documentation you linked? It covers the entire configuration.

Hi Petro.

Yes, I’ve read the documentation I linked to. I’ve been using TTS with the “google_translate” platform for 2 years now. Today I found out I can use natural speech with my Nabu Casa subscription.
The documentation only mentions 2 possible platforms.

  • google_translate > This example is used throughout the documentation
  • amazon_polly > This example is used in the bottom of the page under REST API.

The documentation from Nabu Casa itself does not even mention the word platform anywhere except in a completely unrelated example where the platform is set to “state”.

It mentions it here in that documentation. It’s part of the existing services it’s just not explicitly covered in the examples.

service: tts.google_translate_say
entity_id: "all"
data:
  message: 'May the Force be with you.'
  options: 
    gender: male

EDIT: It’s also covered in the cloud docs you linked with a direct quote for the tts.cloud_say: “This service is automatically enabled when you are signed in to your Nabu Casa cloud account and can be called using the tts.cloud_say service in your automations.”. Meaning you’d have to log into your account on home assistant.

Hi Petro,

Thanks for your reply.
I think you misunderstand what I want to achieve. I want to use the NabuCasa tts.cloud_say service and NOT tts.google_translate_say.
https://www.nabucasa.com/config/tts/

Yes I did, see my edit

You don’t have to do anything in configuration.yaml. The integration is already active just like light.turn_on when you log in to your Nabu Casa account within HA.

Thanks guys, sorry if I don’t catch on quick enough.
If I click the Google home media player on my Lovelace dashboard I can enter a text there and press play. If I do so the sound from my Google home uses a terrible English voice even though my message is in Dutch. I assumed I had to configure the cloud_say TTS in configuration.yaml to fix this.

If I don’t have to change anything in configuration.yaml how can I change the configuration like language and gender?

FYI: I’ve already managed to get the cloud_say service working in my automations.

what does your service look like, post it here please.

I used node red for the service call.

Service to call is TTS.cloud_say.
Entity is media_player.googlehome.
This is the payload:
“{“message”:“Er staat iemand voor de deur”,“language”:“nl-NL”,“options”:{“gender”:“female”}}”

Then everything is set up properly. You’re most likely stuck with the terrible voice.

:frowning:
There is no way to influence the settings used by Lovelace when typing manual text there?

If it’s the base object, no. You can create a interface for yourself to use that calls a service. I.E. Make in input_text, then make a button that calls a script that uses the input_text.

Alright, thanks for your help!