I have a few devices which ultimately talk to an MQTT bus. This bus is monitored by my own program (in Python) which makes decisions based on the context ("scenarios").

I am considering to add a Google Home speaker to this (I do not own one yet) and i am wondering whether it is possible to connect it to my system.

I imagine that there is a need to

  • explain to Google that when I say "switch on the lights in the living room", it needs to send/set a flag for "lights in the living room" to be "on" in my profile
  • get this message / flag to my orchestration program (either by pooling Google, or via websockets, or via another protocol)

Is this at all possible for DIY orchestrators?

If so - is there a reasonable documentation for this? I searched in Google and surprisingly I didn't not find anything (I am used to its API docs as I retrieve Calendar and Directions informations from there). There is quite a lot of advertisement on what it can do and all the devices it can connect to but nothing API-like.

I initially thought that Actions would be the way to go but it looks like this is a way to extend Google Assistant (and Google Home) to new actions. My actions are (so far) quite standard - it is rather the "where to apply them" which I do not know how to approach.


The API for this sort of thing is here

Google Assistant lets you write Smart Home Actions which let you add your devices to Model and then pass messages to your backend to then control the devices.

Unless you want to end up writing a LOT of code, do a load of testing and then get it approved by Google, you don't want to try and do this from scratch. Using an existing Open Source framework like Home Assistant that supports Google Assistant. Home Assistant also supports MQTT.

At some point I'll get round to finishing my Node-RED Google Assistant Smart Home node to go with my Amazon Alexa version.


My Google Home Action for Node-RED is now live here

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.