Last beta show intents a bit better, witch intents having callback scenario or not, and on hover, which scenario is set and its tags. Which avoid having to open each intent to check that.
Now looking for a solution to be notified when wakeword is detected so Jeedom can mute sound in the room before we start talking to rhasspy. Will help the asr greatly, do it with snips and it works great.
If Jeedom can have this notification, then next big step for the plugin will be supporting base/satellite configuration when things get sorted on rhasspy side
Some bugfix on filter jeedom intent option, better UI (intents now in groups like scenarios, and some minor stuff).
And new option to set two variables rhasspyWakeWord / rhasspyWakeSiteId when rhasspy detect wakeword ! This allow you to start a scenario when wakeword is detected, to mute music for example when you are talking to rhasspy. Many thanks @synesthesiam for this !
@KiboOst , thanks for this plugn I didn’t test it as I didn’t migrate from Snips to Rhasspy. About this migration, do you have a quick tutorial, some tips, or whatever, to easily migrate from Snips to Rhasspy
I finally got my rpi zero and got a satellite working. Not so easy on a pi 0 buster but all works fine now.
So I’ve integrated satellites into the plugin.
They are automatically created once you ask something on one of them. Indeed when one device post an intent to Jeedom I can get its IP inside Jeedom and create the device. But I don’t have its port so I create it with default 12101 port. Let’s see in the future if we can get all devices from a master endpoint or such.
All works nice, scenario can answer with tts on the satellite where the intent was asked
Just for fun:
top: my jeedom alpha, on which I develop plugins and the Jeedom core V4
Bottom left : rhasspy master, with docker container. It handle all asr/nlu/intents and such (picoTTS, kaldi)
Bottom right : rpi 0WH, rhasspy venv with only wakeword and TTS.
Both with HermesLedControl and custom snowboy
Not sure I will publish this beta, as I prefer waiting for the next full hermes/services rhasspy ! I guess I will have to re-install everything to test and adapt the plugin.
Hope all hermes topics will be published like snips/amice to HermesLedControl can finally work as advertise. I also have a rhasspy_logger that listen to MQTT topics to log wake/think/speak for entire system (master+sats). Works perfect with snips, so will all mqtt topics it will works the same with rhasspy.
With next Rhasspy big step, this plugin could go to stable version soon
I have written several tools beside the plugin that everyone could benefit. Once all this is stable I will write some doc and share everything.
Rhasspy batcher : python tool to batch test intents after a new training
Rhasspy logger : python tool that listen mqtt and write a log file with wakewords, thinking / intents recognized, speak so you can read/show it anywhere and keep history of master/satellites interactions.
Snowboy custom wake tool : python tool to record samples and generate pmdl file.
For jeedom users, a way to handle intents with python directly inside Jeedom.
And different tips here and there
@synesthesiam the ball is in your court Give us full standard hermes topics and rhasspy-satellite container
Satellites can now be added manually.
Each device, being master or a satellite, have a set of buttons to automatically edit rhasspy profile, open interface, test tts etc.
Finally, just a note to say that jeeRhasspy fully support Jeedom Core v4.0 and v4.1 (even next one ) and I’m not able to test it on Jeedom v3. It shouldwork, but I won’t spend time on Jeedom v3 anymore.
Once more, many thanks to @synesthesiam and everyone working on this wonderful assistant!
Hello @KiboOst, thanks a lot for your great job on this plugin
I just migrated from Snips to Rhasspy.
I am not using any custom wakeword and with Rhasspy I didn’t find any wakeword engine working as good as snips hotword …
So I install Rhasspy on Docker and I also install snips-satellite package on docker to handle wakeword engine.
All is working fine except the ASK function because my snips-satellite cannot be declare as a satellite in jeerhasspy . I see in jeerhasspy logs that you are using Rhasspy HTTP API .
I am not sure but may be if your plugin used the MQTT websocket it will work ?
Hi,
Indeed jeerhasspy plugin won’t work with a snips satellite. It doesn’t install any dependency and doesn’t listen on mqtt.
Maybe you could try a plugin such a jmqtt but you would handle that with a code block I guess, making your own message on right mqtt topics to handle that. A starting point could be the snips plugin.
Rhasspy provide a lot of http handler/endpoints which allow the jeerhasspy plugin to stay dependancyless, being very simple and not requiring any daemon running, which is a strong point I think.
Thanks for your feedback
I am not skilled enough to do such integration but thanks for the suggestion !
Rhasspy provide a lot of http handler/endpoints which allow the jeerhasspy plugin to stay dependancyless, being very simple and not requiring any daemon running, which is a strong point I think.
Make sense !
This is not the topic ofthis thred but did you manage to find a suitable wakeword engine to put rhasspy in production ?
I tested Raven with 3 reccords of “hey snips” but it works 1 in 10 and wake up when I don’t ask him …
Snowboy no more usable …
Only problem preventing me to put rhasspy in production actually is the inability to recognize anything or even stop listening with bakground music once the wakeword has been recognized.
Hope @synesthesiam and other sound gurus are working on this, because apart this, all is just awesome.
I finally manage to achive what I want to do (just need to perform some more tests to validate it)
I manage (via asound.conf) to share my microphone between my rhasspy docker’s container and my snips-satellite docker’s container
By that way, I can use Snips wakeword engine and, when I want to use a #[Rhasspy-Intents][TTS-#profile#][Ask]# command, the answer is recorded via Rhasspy
One question @KiboOst, when a ASK is awaiting an answer there is no “beep” sound is it an expected behanioour ?