Hi there - thanks for the all the work here - much appreciated as always. I'm trying to get this set up and running into an error. I am able to get the project id as well as the needed json credentials, but am receiving an "Error 400: redirect_uri_mismatch" when trying to authorize. I checked and rechecked everything and can't seem to identify where the problem could be. Any help is appreciated!
Did you add the URI redirect?
Thank you - I had added the URI as https://google.com since I thought I had seen those instructions somewhere. I now replaced it with https://cloud.hubitat.com/oauth/stateredirect and am now receiving this error instead...
Just saw an article that the Protects are coming to the Google Home app. Would that mean we might be seeing them within the SDM?
I'm really slow these days with updates... I think my wife calls it "having a life and a family"
Released app:1.1.3 with this fix -- hopefully it removes this problem for you!
You're wife is right, but you already knew that. I even know that.
Seriously though, thank you. I can confirm that a reboot, after upgrading the app, did not add another thermostat.
Being added to the home app doesn’t explicitly mean they’ll expose the APIs for use, but IMO it would be foolish to add something that can’t be manipulated by a 3rd party. I’m crossing my fingers and hoping that we once again get access to the protect APIs with this. I would think that if they are being added that the beta APIs would have methods for use, but I don’t have access myself to the beta APIs to confirm that.
I got this working a while back to help get various speakers (other than Google proprietary ones) to announce when a wired Nest Doorbell Generation 1 was rung. However, it stopped working a while back. Seeing the app and related drivers have gone through a lot of changes (as likely as Google's API) since I set it up, I removed everything and started over.
Overall, it seems to be working. My doorbell was discovered again on a fresh project and install. However, the door bell presses aren't showing up in logging or as events as best I can tell. As a result, of course this means my automations and announcements related to the doorbell won't trigger.
Did Google in some way deprecate the API in capturing the doorbell button press event, or is something else going on?
The button press should still trigger an event. As a first troubleshooting step, enable Debug logs in the App, then go push the (physical) doorbell button. This should trigger a webhook call from Google to your Hubitat with the pub/sub event details, which will be logged by the App (at debug level).
If the log is generated by the App, but no event/trigger generated on the Device in Hubitat, it suggests an internal issue in my code. If not, we need to focus on the Google/Nest side -- IIRC some of the Google Home notification settings (on your phone) also impact whether it generates a Pub/Sub event?
For the first gen, they are still controlled in Nest app. I do not have to have notifications on in the nest app for the camera to get Motion or People (presence). There is no setting for the doorbell itself. There is an option to turn off the "chime" if you do not have a wired doorbell. But, that just keeps it from breaking the connection so that a wired chime itself works (thus the need for the internal battery that fails after a few years).
Just verified that my first gen is getting button push events. So, I am not thinking your code.
Note in the events log, it sees motion as active even though I do not have motion detection turned on in the nest app (WAAaaaay to many false positives. So, I just use person detection)
I've enabled debug logging:
For events, no entries after pushing a button, but it's clearly getting events:
And sadly no log entries (enabled recently, but pushed button right after enabling and refreshed log):
One thing I've considered, did I miss a setup step on the Pub/Sub topic? I can't find what I need to enter here, if anything:
Yes -- you need the Pub/Sub topic enabled. Toggle this on (via the 3 dots menu on the right of the highlighted line), then verify that the Pub/Sub API is enabled (step 14 in the Google Setup section at the top of the README) so that the App can set up the URL for Google to call with events.
There should be a recurring task running each hour -- since the pub/sub subscription setup has been failing to this point -- or you can click over to the "Debug Buttons" in the app, and use the Subscribe to events
button there for instant gratification!
This is where I'm missing something.
When I try to enable the Pub/Sub Topic, I get this screen:
What am I supposed to put here?
Also, the Cloud Pub/Sub API is enabled:
I'm having this same issue. Cloud Pub/Sub API is enabled but I don't know what to put in the pubsub topic field you screenshotted above.
I just set this all up the other night and chaging my nest thermostat reflected instantly on the hubitat device page and vice versa. But now a day later, I can still control the nest thermostat through hubitat but changing a the temp set point on the thermostat now doesn't reflect in the device page on hubitat unless I hit refresh. I'm wondering if it's related to not having a pubsub topic entered? But odd that changes to the thermostat were showing up instantly in the device page of hubitat initially but not a day later.
I think Google has changed their requirements and you have to manually set up the Pub/Sub topic.
Look at "Enable events and Pub/Sub topic [Device Access & Cloud Console]" in Home Assistant's updated instructions