Voice output to satellite?

Hi,

I successfully set up my first satellite and it is working fine so far. However, when I have my Node-Red flow running, I pass the spoken confirmation to the master via a text to speech node. Then the master say something like “Switched on the kitchen light”. But I would like to get the confirmation on the satellite I issued the command on, how is ths possible?

Kind regards

Okay, I found it out already. I set the dialogue management on the rhasspy satellite to rhasspy and in Node-RED I read the siteId and route it to the satellite tts url with a switch node.

Is it intended like that? Problem is I get the output four times now :smiley:

Update: It seems that when I enter an intent on the satellite and recognize it, the Node-Red webhook recieves two inputs: one from the satellite and a second one originating from the master. Any idea why that happens?

To be more precise: When I recognize an intent on the satellite, the Node-RED webhook recieves two msg inputs with siteId from the satellite and one with siteId from the master. confused

What are your rhasspy settings for the satelites ?
Are you using a shared mqtt broker for the setup or the method with http api ?

Your hint goes right in the correct direction.

While experimenting I mixed up the setting for using MQTT and HTTP and therefore the stuff was sent out on multiple channels I guess.

Removed all http stuff and set it to external MQTT and removed the satellite disabled dialogue management on the satellite, now it is working fine :slight_smile:

Hello,
I’m doing my first steps in node red.
I use server / satellite install with external MQTT.
I created my first node red for the getTime intent and it works well.
My question is how to send the tts to the satellite?
When i send it this way it works:
http://192.168.1.xxx:12101/api/text-to-speech?siteId=satellite_name
How can i make satellite_name to be dynamic?

Hi,

I am not so active here right now, being busy with a lot of other stuff. Seeking to find more time to bring my Home Automation projects forward again soon and participate here more again…

However you could have a look here, how I solved the dynamic satellite output in my Node red flows:

Hope this helps!

You can do it like this in node-red 127.0.0.1:12101/api/text-to-speech?siteId={{{siteId}}} in the http node if msg.siteId contains the siteId.

Doesn’t seem to work…

how exactly are you doing your intent handling and TTS responses. To do it similar to my example the msg to the http node needs to contain the SiteId in some way.

There is an issue in 2.5.6 where the server isn’t passing along the site id’s. There is a fix in 2.5.7, that will hopefully be out soon.
I’ve been watching the progress on GitHub.