[RELEASE] Google SDM API - Nest integration

The errors are due to missing implementation in the Doorbell driver - thanks for reporting! It does not affect the event-based integration with Google, but means you can't currently run the push(1) command from the Hubitat device page. Will add a fix for this

Something along the lines of

def push(btn) {
    logDebug("Button ${btn} pushed")
    if (btn == 1) processChime()
}
1 Like

Hi, when I push the door bell button, I'm get nothing from 'Notifier' on my speakers. Will doing the fix in the also solve this??
Would it be best to do this in 'Button Controllers' Notifiers' or RM?? Or doesn't matter

Hmm, that's odd. There are several ways to manage it... I have a Notifier set up for my doorbell. Probably best if you post why you've tried that isn't working (screenshot?) - so that I can see what you're trying and whether there's an obvious change

Got my wife to try it & its now working. So all good there. Looks like some parts of it take hours to start linking up.
To get the image to show in the Dashboard what do I select? I found 'Image' however it needs a URL

Use the "attribute" tile, then select the "image" attribute from the device

Thanks, how often does it refresh?? Looks like at a minimum when motion is detected.

It is entirely event-driven - so any chime, motion, person, or sound event will update the image (assuming you have image download enabled for each in the Device settings). Google doesn't provide any interface for an on-demand capture to update at a scheduled interval

Thanks for your help, & for getting this whole integration up & running. I have a couple of cameras on order so will be adding them when they arrive.
Thanks again.

dkilgore90,

this is awesome, thank you for building, maintaining, and supporting this. I have two wired doorbells and wired outdoor IQ cam.

I am trying to create a basic rule to announce when a person is detected at one of the doorbells. At this point, the motion detection is throwing too many actions as it is facing down a street. I have tried to create an activity zone in the nest app, excluding the street, but it did not change anything on the hubitat side.

I am running a basic rule but it only allows me to use motion being active as a trigger. I noticed in the device settings that I can toggle capturing a person vs motion image. Is there a way to create a rule using the person detection rather than motion?

I hope this makes sense. Thank you

The "person" events from Google/Nest are modeled in Hubitat as a "presence" sensor - so you can use "presence sensor arrives" as a trigger for your rule

Will give it a try.

Thanks!

I have an older Nest doorbell that works great with this API. I've just added 2 of the newer Nest battery Cams and they're in HE but I'm not seeing any interaction. For example, the "motion" state always shows "inactive". In addition, the 2 battery cameras fail to save any images to Google Drive, (the doorbell is fine). I've tried deleting them from HE and the "discover" option to bring them back, also, went through the "Auth Link". I'm running the 1.0.0 version of the app. Any help would be appreciated.

Btw, thanks so much for this app, it really adds value to the doorbell.

AFAIK the new battery cams don't support any sort of image capture via the API (they really cut down the feature set), though the new battery doorbell supports a 10-frame clip preview.

It should register motion events, etc, though. If not, check the event history for the device, and/or turn on debug logs for the App and Device, then go dance in front of the camera to trigger it, and provide the resulting logs for me to take a look.

Hi dkilgore90 Google Nest Cam Indoor Wired 2nd Generation?
I have done the 'Auth Link' clicked on the 2 options. Then discovered it, & it is showing in 'Devices'
In the device it is indicating -

Current States

  • image :
  • motion : active
  • presence : not present
  • rawImg :
  • sound : not detected
  • streamUrl :

How do I get it to work. If I move in front of it the motion doesn't change. As you can see theres no image. These 2nd Generation cameras are added with the 'Home' app, they don't show in the Nest app at all.

Is the motion event trigger in HE affected by the zones and notification settings on the Google Home side?

In Google home you can specify zones and what events you want to be notified for (people vs animal vs vehicle inside or outside different zones). Does this affect what triggers a motion event in HE or do all motion events just send a trigger to HE?

I'm using some Nest Cam Battery's with Nest Aware if that makes a difference (familiar face detection enabled).

@greghoward1962 seems likely that something has gone wrong with the event subscription between Hubitat and Google. I would suggest enabling debug logs for both the device and app, then go dance in front of the camera (to trigger events). If all is working correctly, you should see logs for the events and subsequent processing. If you get errors, please post the full set of logs here. If no logs, try using the debug button in the app Subscribe to events - then recheck.

@user32 the Google API does not expose any details of the zone that was triggered. It will send all motion, person, etc events to Hubitat - what you do with those events is up to you. Debug logs for the app print the full event JSON, feel free to take a peek, if there is some detail not currently exposed, feel free to point it out, and we can figure out how to integrate it.

But if you told Google home to ignore certain events outside of a zone, does it still trigger in HE? Or if you told Google to ignore "animal" events? Like on the Google home side, a motion event is still being triggered, it's just deciding not to record it. You can also specify for an event to be recorded but NOT to notify you. Is the HE trigger based off of Google home notifications?

Thanks for your all your help! Sorry, I'm not technical enough to understand what's going on in the background or what JSON is..

I think I've got everything set up but when I trigger my nest cams nothing shows in hubitat.

The cameras were discovered and from what I can tell the app is connected/authorized and everything. How do I go about trouble shooting?

Tia

Edit:
I've tried unsubscribing and resubscribing to events. I've tried deleting devices and rediscovering them.

Hi, I've just walked in front of one of the new cameras, the camera doesn't show in the log at all, GOGLE SDM Api did, although might not be related as the front door bell was in the log. I opened the debug button & pushed 'Subscribe to events', got this read out (Note-I walked in front of the 'Lounge Room' camera & got a video activity in the Home app from 8:49.05 until 8:49.50) -
app:43222022-03-01 08:53:24.366 pm infocreateEventSubscription returned status code 409 -- subscription already exists

app:43222022-03-01 08:53:23.537 pm infoCreating Google pub/sub event subscription

app:43222022-03-01 08:52:36.446 pm debugGenerateImage returned url https://nexusapi-us1.dropcam.com/sdm_resource/CiUA2vuxr6ToMuteQuOHcmEnA7TzuEQ7KSD2bPAGurJZB3xVlOvUEsEBAPVtlzjUbazM5NLkjxiWgZWz0IpNXSk0jczkAPrNc4KB693CXwnGxgz7reYGW2dHvZQG-MMQJt4f7BCD0jSX2N8Mv59_5idSsrdE0SQTei5pXB-ji9PcQWqpsB0ZHlP9H3qMkbB3vIZ4w1crjFTjY0q-2KoC6StBQCCsi883qWd92Gskf9Zo9hjvuIa85fSkMl710YCdQ4ZHqilL_H42tnYPvuOklAo810Z2tPgkdLNd_qEOeIPAhkWeEjMQc61Rgw/snapshot, downloading image

app:43222022-03-01 08:52:34.326 pm debugSending sdm.devices.commands.CameraEventImage.GenerateImage to Front Door Bell - Nest Camera with params: [eventId:CiUA2vuxr6ToMuteQuOHcmEnA7TzuEQ7KSD2bPAGurJZB3xVlOvUEsEBAPVtlzjUbazM5NLkjxiWgZWz0IpNXSk0jczkAPrNc4KB693CXwnGxgz7reYGW2dHvZQG-MMQJt4f7BCD0jSX2N8Mv59_5idSsrdE0SQTei5pXB-ji9PcQWqpsB0ZHlP9H3qMkbB3vIZ4w1crjFTjY0q-2KoC6StBQCCsi883qWd92Gskf9Zo9hjvuIa85fSkMl710YCdQ4ZHqilL_H42tnYPvuOklAo810Z2tPgkdLNd_qEOeIPAhkWeEjMQc61Rgw]

app:43222022-03-01 08:52:34.224 pm debug{ "eventId": "abff1661-4444-4a0b-ba47-3cd7a0feed2f", "timestamp": "2022-03-01T09:52:26.253Z", "resourceUpdate": { "name": "enterprises/5b2e8df4-b886-4b7f-8df8-f462c0026d42/devices/AVPHwEsQoH1uQAjwq5MC1Zd-SxT4rBm2RxONuvgvMJGBwbjWKLig6Yis2OunOTyzzHSZPn1GKxwTrVquFnaN6K4M8r8WhQ", "events": { "sdm.devices.events.CameraMotion.Motion": { "eventSessionId": "AVPHwEtVlRWlKfh3IBbX65j72KKxk0d2Ue5a27wfNV-JPf1KEuTC3zAItcBwdGFatvOLwk6gCMpLWNB_VmzUwwVBQweZBw", "eventId": "CiUA2vuxr6ToMuteQuOHcmEnA7TzuEQ7KSD2bPAGurJZB3xVlOvUEsEBAPVtlzjUbazM5NLkjxiWgZWz0IpNXSk0jczkAPrNc4KB693CXwnGxgz7reYGW2dHvZQG-MMQJt4f7BCD0jSX2N8Mv59_5idSsrdE0SQTei5pXB-ji9PcQWqpsB0ZHlP9H3qMkbB3vIZ4w1crjFTjY0q-2KoC6StBQCCsi883qWd92Gskf9Zo9hjvuIa85fSkMl710YCdQ4ZHqilL_H42tnYPvuOklAo810Z2tPgkdLNd_qEOeIPAhkWeEjMQc61Rgw" } } }, "userId": "AVPHwEs-ReI2Y3wsZtJnk6patuzW3dMhcYZBcREMNU0n", "resourceGroup": ["enterprises/5b2e8df4-b886-4b7f-8df8-f462c0026d42/devices/AVPHwEsQoH1uQAjwq5MC1Zd-SxT4rBm2RxONuvgvMJGBwbjWKLig6Yis2OunOTyzzHSZPn1GKxwTrVquFnaN6K4M8r8WhQ"]}

app:43222022-03-01 08:52:34.221 pm debugEvent received from Google pub/sub

app:43222022-03-01 08:48:36.993 pm debugGenerateImage returned url https://nexusapi-eu1.dropcam.com/sdm_resource/CiUA2vuxr5i3ry-FGzIjKruwQT9IkcV6aaDxtW4jYgLwfKOYX2EXEo0BAPVtlzhFD_OcRanSLXoj7pEQWocl4FmcSxmKdmhbCtMhWd2raUMNvl0My4ot1Y4A7uC2as6oanN19FR50_s0v742hUBkgP3igxF0fttn5ASw8QMGd5Tyn7G1qPo3oORUxisY8k_83o6JqNLajm683RjbFK8VVCtBvYgKFOixNZ1qcdMLij078opvIPFa/snapshot, downloading image

It looks like it appears in the log sometimes, not all the time?? I did get an motion activity show on the dashboard, & saw it in the log. Then I walk in front of it again & nothing.

Also, I just installed a 2nd Nest Hello, the camera showed up as soon as I clicked on 'Initialize' in the device in Hubitat. So the probelm with the 3 indoor cameras could be that there 2nd Generation & aren't integrated via the Nest App, they can only be added via the Home App???