openHAB Google Assistant Integration v2.0

No, since everything needs to be something like a “device”. You could only exploit a fake device to do the trick, e.g. with a fan or with the (not yet available in openHAB integration) modes trait for various devices

What about using the StatusReport trait?
https://developers.google.com/assistant/smarthome/traits

I think a bunch of new traits was released today or the last few days.

  • Carbon Monoxide detectors
  • Media Remotes
  • Sensors
  • Set-top-boxes
  • Televisions
  • Water Purifiers
  • Water Softeners

@all:

Changes are deployed into Production and current version is v2.0.22.
It shall have all the PRs included.

@michikrug
We have a security issue with “minimist”: which shall be >=1.2.3.
Currently I had problems to bump it as also other modules are depending on it like “mkdirp” etc.
I think we must apply the version upgrade. Do you think it is save to just bump the version? I am scared this will bring new issues due to dependencies?

4 Likes

Thanks for the update.

I will have a look regarding the dependency update.

1 Like

Thanks Mehmet!

Hi, is this the correct way to use a roomHint?

Dimmer light_bedroom "Bedroom [%d %%]" { ga="Light" [ name="Light Bedroom", roomHint="Bedroom" ], synonyms="Bedroom Light" }

It is not working for me.

What language do we have to use?

Thanks!

Hi, yes this is correct. Unfortunately, I have no clue how Google uses that option. I just implemented it like the docu says.

roomHint : String. Optional. Provides the current room of the device in the user’s home to simplify setup.

1 Like

I had 2 different homes set up, when I reconnected openhab today… this might have been the issue as well…

Synonyms do not seem to work either? Has anyone had success?

@michikrug
Does [ inverted=true ] work for switches? If not, would it be possible?

EDIT - I gave it a try, and it do seem to work allright :smiley:

Yes. Was implemented in the last release.

1 Like

Doesn’t work for me too. Poke @michikrug, @MARZIMA

I have a problem trying to control more than one device (unit) at the same time, when its a rollershutter.

Question is simple. Anyone using several windows, blinds (rollershutters) with GA integration and beeing able to tell Google to either open/close all windows or open/close 2 of 4 windows…

My problem:
In our livingroom we have 4 Velux skylight windows. They are all set up through openhab using the Velux binding, and integrated into GA through the cloud connection.
Individually they´re all working perfectly. I can tell GA to close window 1, and it will be successfull.

But if I tell GA to open/close all windows, GA respond with, “I´m not sure which all Window unit you would like to close”.
I can not tell GA to close window 1 and window 2… Again GA respond with the same message, “dont know which window 1 and window 2 unit you would like to close”…

My windows are numbered (named), Window 1, Window 2, Window 3 etc… (I have 8 windows in all).

Lights/dimmers works just fine commanding several lights at the same time… So I really wonder why rollershutters isnt working.

Is this a GA issue controlling several rollershutter devices at the same time? Or is it perhaps a openhab/GA integration issue?

No, I have given up on rollershutters. I have about 10 of them, but very seldom does it work. First off google says he does not understand, but looking in his log, it is clear that he should have. Many times he responds “playing ‘rollershutter’ on spotify” (translated from Swedish, that bloody song is horrible, I have heard it too many times now! If not, he recommends some shop nearby or some wikipedia article.

Also room does not work well with rollershutters. Sometimes open works but not closing, then it is the other way around, sometimes I understand he instead manouvers some other rollershutters in the house, “I am closing two blinds”, then you have to walk around to see which ones… If any…
I now use a zwave button instead, and live a happier life. :slight_smile:

I believe it’s a language issue. At first I had my rollershutters tagged as “blinds”, and then I couldn’t control them all at once. But when I changed to “awning”, (which translates to “markis” in swedish) it worked. I think that when you command a single item it selects it by name, but when you command multiple it selects them by type.

Do you have your windows tagged as ga="Window" or something else?

1 Like

Also got a switch (remote), but I would prefere using voice commands :smiley: It is however quite frustrating.

Yes, all are tagged correctly, (otherweise I couldnt control them individually :slight_smile: ).

Rollershutter   Vindue01       "nummer 3 [%d %%]"              <window>          { channel="velux:actuator:home:VindueTh01:position", autoupdate="false", ga="Window" [ inverted=true ] }
Rollershutter   Vindue02       "nummer 7 [%d %%]"              <window>          { channel="velux:actuator:home:VindueTh02:position", autoupdate="false", ga="Window" [ inverted=true ] }
Rollershutter   Vindue03       "nummer 4 [%d %%]"              <window>          { channel="velux:actuator:home:VindueTh03:position", autoupdate="false", ga="Window" [ inverted=true ] }
Rollershutter   Vindue04       "nummer 1 [%d %%]"              <window>          { channel="velux:actuator:home:VindueTh04:position", autoupdate="false", ga="Window" [ inverted=true ] }
Rollershutter   Vindue05       "nummer 6 [%d %%]"              <window>          { channel="velux:actuator:home:VindueTh05:position", autoupdate="false", ga="Window" [ inverted=true ] }
Rollershutter   Vindue06       "nummer 8 [%d %%]"              <window>          { channel="velux:actuator:home:VindueTh06:position", autoupdate="false", ga="Window" [ inverted=true ] }
Rollershutter   Vindue07       "nummer 2 [%d %%]"              <window>          { channel="velux:actuator:home:VindueTh07:position", autoupdate="false", ga="Window" [ inverted=true ] }
Rollershutter   Vindue08       "nummer 5 [%d %%]"              <window>          { channel="velux:actuator:home:VindueTh08:position", autoupdate="false", ga="Window" [ inverted=true ] }

I think this is a Google issue, but I´m having alot of problems troubleshooting enough to say for sure.
I think I need to ask someone not using openhab, but having a more direct connection (through the Home app). If they can controle more than one window, it got to be an openhab/integration issue somewhere.

I think Google Assistant struggles when item names are easily confused, because it doesn’t know how to pick when it has multiple options. So, you have to make your devices names relatively unique and easy for GA to interpret. Also, it struggles with compound words.

For example, I named my induction plate “hotplate”, and Google wouldn’t turn it on/off–it just kept giving me search results. But after I changed it to “hot plate”, it works perfectly.

I suspect the same thing might be an issue for rollershutter. “Roller shutter” might work better.

TLDR: Google struggles when it has too many choices, so help it out with easily identifiable device names.

1 Like

I use word “shutter” and either it moves all shutters in the actual room, or I put the place in witch room at the end of the sentance. Plus I defined two group items one for windows shutters and one for all shutters.
I use Zwave Fibaro Roller Shutter 2 for more than 2 years. Zwave button is also very good, I use Philio Color Button what can set the exact position without Openhab as they are linked together.

Rollershutter   ZWaveNode044ShutterKitchen_BlindsControl   "Shutter Kitchen"  (gShutter)                           {channel="zwave:device:14f03b7e:node44:blinds_control", ga="Blinds"  [ name="Shutter Door", roomHint="Kitchen" ] }

I believe my windows are name quite easily for even Google to be able to understand.
And my problem is only when trying to controle more than one window in the same command. Thats where Google´s intelligense seems to stop :smiley:

May I have a question? Avaiable modes in Google Actions site (https://developers.google.com/assistant/smarthome/traits/temperaturesetting.html): “off, heat, cool, on, heatcool, auto, fan-only, purifier, eco, dry”. Avaiable modes GA Integration are(https://www.openhab.org/docs/ecosystem/google-assistant/): “off,heat,cool,on,heatcool,auto,eco”. I set up my Gree Aircon and I can control with GA now. Avaiable modes in GA App on my android phone are: “heat, cool, heat-cool, eco, off”. It differs from the GA Integration instructions. Last interesting thing is that when I talk to my GA I can use mode: “auto” as well, what is visible in GA Integration instructions but not on my Phone’s GA app. Both “Eco, Dry” modes are missing. Is that possible to implement all modes in GA Integrations what are avaiable at Google now? That would extend the usuability of that control for air conditioners also. It is working very well now, and I can live without these modes, but it would be nice if all modes can be used.