Wiki pages on Github

Hi there,

When just starting with Rhasspy, you probably have tons of questions. One of the most heard questions and topics related to it, is how to integrate Rhasspy with Home Assistant.

For this reason, I have written some Wiki pages in the github page.

It is written with a beginner in mind, but if things are not clear please respond on this topic so we can clarify or correct mistakes.
There will probably be changes and addition on the pages, with the hope we can create some very comprehensive guides.

Happy reading!

3 Likes

Good post, but readthedocs should probably be put first, since all the guides are there.

A list of common problems could be nice too, like Larynx requiring AVX and libffi.so.6 missing in newer Linux distros.

That might indeed be a good asset, but that is maybe a bit more for the experienced user.

I have added the Node Red part though. Obviously this is not a “this is how it should be done” page, but more of a starter to help people get motivated after the installed Rhasspy and are at the “what to do next” stage :slight_smile:
That is in my opinion missing in the documentation page.

Just a remark: This wiki page is just dealing with Home Assistant, adding some NodeRed as a kind of supporting system.
So where’s the place to add other, alternative and standalone solutions? I’m using FHEM for home automation, and Rhasspy integration into FHEM with the recent versions of the respective plugin is “a piece of cake” (at least imo an as far as I have feedback from (most) other users) :slightly_smiling_face:.
(Using in other languages than german or english (or spanish) might need some additional translation work, but that’s one time work that could be provided to others as well…).

Yes indeed, that Wiki is for Home Assistant because that is where the most questions were coming from.
The Wiki might also be a good place for adding other solutions, but I personally have no knowledge of it and it seems to be primarily German orientated.

If you can create a good Wiki-like write up, we can post it there as well IMO

There’s also a (slightly outdated) english introduction available at https://github.com/fhem/fhem-rhasspy, but (beside beeing outdated) that’s also too long to integrate in your wiki.

Basic instrucion is as follows:

  • download the latest version(s) (either development from the forum link or “official contrib version” via https://github.com/fhem/fhem-rhasspy#fhem-svn) for the plugin (“module”) and the language-file (optional, but recommended for english)
  • connect FHEM to the MQTT server Rhasspy uses:
define m2c_rhasspy MQTT2_CLIENT <IP:port (MQTT)>
attr m2c_rhasspy subscriptions setByTheProgram
attr m2c_rhasspy clientOrder RHASSPY
  • activate the plugin, choose e.g. german as language (optional), and integrate language file (second line, also optional):
define rhasspy RHASSPY baseUrl=<IP:Port (Web-interface)> language=de
attr rhasspy languageFile ./rhasspy-de.cfg
  • then start off configuring your lights, thermostats, switches, … In most cases it’s sufficient to just set a so called attribute to your devices:
attr switch_bathroom genericDeviceType switch
attr light_bedroom genericDeviceType light
  • update Rhasspy by set rhasspy update devicemap and you should be able to control your devices via voice commands (assuming you configure your sentences.ini accordingly). FHEM will analyze your devices then and send the gathered data to Rhasspy. This will fill quite a lot of slots you can use then in your sentences. In above example both devices can be switched on and off, so they automatically will be part of the slot de.fhem.Device-SetOnOff
[de.fhem:SetOnOff]
\[(schalt|mach)] [den|die|das] $de.fhem.Device-SetOnOff{Device} [$de.fhem.Room{Room}] $OnOffValue{Value}

If you don’t like to use the name ‘switch_bathroom’ in Rhasspy, just change it by attr switch_bathroom rhasspyName ceiling lamp

  • For all relevant attributes there’s a short english context help that will be displayed, a complete commandref (in english only) will be shown, if one issues help RHASSPY once the module code is placed at the right location in your local filesystem.

Should be rather easy to understand, if one either has some knowledge in FHEM itself or knows how Rhasspy works internally.

Glad, if you want to integrate that in some way in your documentation. Also a short remark in https://github.com/rhasspy/rhasspy#readme would be fine :slightly_smiling_face:.