Rhasspy 2.5 server client

+1 for the external MQTT method for a master/satellite setup. It’s working great for me.

My intent handling happens on the satellites (I plugged my Home Assistant details into each one). If it’s supposed to happen on the server, then maybe I don’t have something configured right. But it seems to work well when handled by the satellites!

You can handle intents on the satellites, it just is more work doing so and the server is normally more powerful. It also means that you have to configure intents on all satellites instead of doing so once on the server.

Indeed. I’d certainly like to handle the intents on the server, but if I disable intent handling on the satellites and enable it on the server, nothing seems to be sent to Home Assistant.

If you’re talking about intent recognition, then yes, the server does that pretty well in my case. It’s just the handling that still has to be done on my satellites - the actual sending of events or intents to Home Assistant.

Can you share your configuration on both server and satellite?
For some reason when i ask for the time i get the response 4 time!
I also can’t seem to see the siteId sent in the intent json

Can you share your configuration on both server and satellite?

  • For some reason when i say the wake wordf I hear the beep twice and the tts twice as well!
  • how hass.io knows to which satellite it should send the tts respond?
  • I can’t seem to see the siteId of the satellite sent in the intent json

I followed the exact instructions at the Getting Started Guide for an external MQTT broker. On my satellites I use arecord for recording, Snowboy for wake word, and aplay for playback. Speech to text, intent recognition, and text to speech are all set as Hermes MQTT. On the server, I have speech to text set to Kaldi, intent recognition as Fuzzywuzzy, and text to speech as PicoTTS. Make sure you name each satellite differently and then include those siteId’s as comma separated in the text fields for each of those server entries.

I actually don’t use Rhasspy for text to speech as I already have something else in place for that through Home Assistant. So I can’t answer your last two questions.

Hope that helps!

How do you do the tts part on ha and pass it to the satellite?

Each of the Pi Zero satellites I have around my house are running Snapcast, so my automations in HA just play TTS feedback on all of them. I have motion sensors around the house and mute/unmute each one based on my current location in the house. So Rhasspy is not doing any of the TTS at this point.

Interesting, I assume you use docker? Because Hermes MQTT does not seem to work from satellite to server at all (it works the other way around for playing sounds) if you use the python virtual env, see this post: Rhasspy 2.5: sattelite can not remotely detect wakeword

Yes, I use docker. And I don’t use Hermes MQTT for audio.

any idea why i keep hearing everything twice?
when i test it with text in the ui in happens only once.
when doing it with voice it happens twice.

and how to pass satellite siteID to hass?

and what are the pros and cons for events vs intents

If you are using snips: in your HA configuration.yaml file, I’ve found you don’t need to set up intent handling with Rhasspy. The Snips component in HA listens to all of the Hermes MQTT topics and responds to intents (not events) appropriately.

I don’t know why you are beeping or getting the TTS twice.

Try disabling/turning off Home Assistant to see if you still get that behavior when you wake Rhasspy.

Beyond that, I’m not sure what your problem is.

I can’t seem to make it work with the Master/Satellite over MQTT.
Master/Satellite over HTTP works great, except for the fact that the intent json doesn’t send siteID to hass. any idea for this?

I just saw i have 2 containers of rhasspy 2.5

I installed only once… how is that?

You may want to pull the latest docker image, there’s been a fair amount of bugfixes and changes that have been committed.

will appreciate instructions how to do that

docker pull rhasspy/rhasspy:2.5.0-pre

for both server and satellite?

Throwing my observations in there - if both dialogue managements (on sat and server) are on, I also get multiple beeps - different ones, when I set different sound files.

This is not the case for me.
Everything is happening twice :frowning: