0

I am playing around with the nodejs packages googleapis and actions-on-google.

I am stuck reporting the state, which changed without googles note, so that google keeps in sync! Sadly this does not work. I am using this method: homegraph.devices.reportStateAndNotification().

described here: https://developers.google.com/assistant/smarthome/reference/rest/v1/devices/reportStateAndNotification

The call is fine, I am getting a correct answer and everythign seems fine. Except that my google home app does not update the state.

I have another thirdparty-device which has a button to toggle the state, this works fine. So the app has no bug, it must be on my side..

I am wondering if this "feature" does only work in production and not during the test phase?

test suite says its fine too:

enter image description here

slaesh
  • 16,659
  • 6
  • 50
  • 52

3 Answers3

1

Google Home Assistant UI depends on various factors for the state, including query and report state responses. One should make sure that they are invoking the query correctly.

You should also try to verify that your report state implementation is correct by making use of tools provided by Google like Home Graph Viewer (make sure states are updated in the homegraph) and Test Suite (to see if both query and report state implementation pass).

  • thanks! added a screenshot.. test-suite says its fine. what do you mean with "invoke the query correctly"? do we need "report the state" and somehow tell the assistant to "query again"? – slaesh Jul 25 '22 at 17:04
  • The Test Suite screenshot indicates that you are able to do report state correctly. Why do you think your report state fails? (what are the symptoms?) – Siddhant Priyadarshi Jul 29 '22 at 16:44
  • Since my google-home-app does NOT update its state :( – slaesh Aug 01 '22 at 07:16
1

I don't think the status shown by the Google Home app coming from what you have reported to HomeGraph by using the reportStateAndNotification. The QUERY intent must be invoked from Google Home app in order to see the current status of your device.

Ref

When Google Assistant wants to take an action that requires understanding the current state of a device, it can simply look up the state information in the Home Graph instead of issuing a QUERY intent

As an above statement, I think the status that you reported to HomeGraph is beneficial only for the Google Assistant not for your Google Home app.

  • thanks for that point! got that, but still not sure how to tell the google home app that it should please invoke a query :) – slaesh Aug 02 '22 at 20:16
  • Have you tried manually pull-to-refresh using a touchscreen gesture when you are on the home screen page of your Google Home app? I'm not sure but I think when you leave your phone on the home screen page, it normally periodically invokes the QUERY intent for you. – Anukoon Suchinda Aug 03 '22 at 07:48
  • yeah - sure it works if I manually refresh the page or long-tap the device to see go to the "device-page"... BUT, I have another device (socket) which has a button to toggle the state.. and if I press that button, the google home app gets a new state nearly immediately!! so there must be a way! if I toggle my state.. nothing happens for minutes (never tried to wait longer..) – slaesh Aug 03 '22 at 11:50
0

We found it, see this issue-tracker too:

https://issuetracker.google.com/issues/238499831#comment16

Google Home App does ONLY use the home-graph for devices that are associated with your home "directly".

It is not enough to just have them in the bottom of your app in the section "other devices connected with your account" ..

You NEED to add them properly..

slaesh
  • 16,659
  • 6
  • 50
  • 52