Background
If I’m in my den and say
Hey Google, turn off the Den
That will turn off DenSpotlight, Desk, DenLiquor.
Now I’m in bed and say
Hey Google, turn off the bedroom.
That will turn off MBRspot, MBAspot, MBAshower, MBAtub.
Now for both the MBR, and Den, I have already defined scenes that turn on/off those lights to a specified light level using a specific ramp rate. These are not HomeAssistant scenes, however I can control them with HA. For every desired room I created a switch, so this example would have:
switch.Den
switch.MBR
So now not only can HA use these switches to turn on/off a room’s mise en scene, use google_assistant:
to expose these switches to Google Assistant (Alexa, Siri, HaHub, ISY, etc) and say:
Hey Google, turn on the Den
Google picks that up and then calls my HA which turns on switch.Den
The problem
I have Google speakers everywhere. Bedrooms, offices, kitchen, living room. So I can toggle every switch from any location.
Naming switches, lights, scenes is an art form. You want them to be short and recognizable. And if you want to use a personal assistant like Google’s, you better be able to communicate that to Google. And this is why I use switch.XXX.
Sounds like you can control all these “switches” with just your voice, what’s the problem?
You have to already know the switch names. When you come home stumbling buzzed, you can remember kitchen, good job. Is Den really that hard to remember? I’m not judging. What everyone can remember is LIGHTS.
Hey Google, turn on the lights.
If you haven’t figured it out just yet, spolier alert, there is no switch.lights
because “lights” is a poor name. Each room has a different configuration of what “lights” means.
Can Google communicate to HA which device GA responded to? So if I had 5 Google speakers, and someone said > Turn on the lights, when switch.lights events fire in HA I can discover which speaker responded, and then react appropriately.