Netatmo Event filter on camera_id

Hi guys!

I used to have a working set-up of my 3x Netatmo Presence cameras, where in the automations I was able to filter on which camera to listen to (e.g. I want an update when a human is seen on the front garden camera, not the back garden camera). Worked like a charm, using this code in the automation:

- alias: Outdoor camera motion detected
  trigger:
  - platform: event
    event_type: netatmo_event
    event_data:
      type: human
      camera_id: aa:bb:cc:dd:ee:ff
  condition:
    condition:

Then Home Assistant did some kind of refactor of the Netatmo integration, got the cameras to work again as always, but the filtering functionality in the automation doesnt work anymore. It just ignores it (no errors in the logs, nothing).

In order to find out more, I log the complete webhook call from Netatmo:

 2020-07-25T07:37:16.496494+00:00 <Event netatmo_event[L]: type=human, data=user_id=58d7, snapshot_id=5f1be, snapshot_key=3cf880, snapshot_url=https://netatmocameraimage.blob.core.windows.net/production/5f1be, vignette_id=5f1be, vignette_key=eef2c, vignette_url=https://netatmocameraimage.blob.core.windows.net/production/5f1be1, event_type=human, camera_id=aa:bb:cc:dd:ee:ff, device_id=aa:bb:cc:dd:ee:ff, home_id=58da2, home_name=Thuis, event_id=5f1be, subevent_id=5b7c1345, message=Person seen by Achterdeur, push_type=NOC-human>

It looks like the “camera_id” is now one layer deeper under ‘data’… but filtering on data.camera_id doesn’t work (or throw an error) either.

data.camera_id: aa:bb:cc:dd:ee:ff

Help?

When was the last time this worked?

Hi all, old thread, but same problem here … 2 x Netatmo Presence outdoor camera’s, Nabucasa, integration works, I have video image in the Overview and can handle netatmo_event’s for “human”. But I would like to differentiate between the 2 camera’s. Tried the camera_id: MAC as mentioned above, but that does not work (makes no difference, the automation is called for both camera’s even if there is a MAC address present).

Has anybody solved this? Thanks!

Hi there! It’s OP. I tinkered with it several times but still no success :frowning:

Hi all, with some searching and a lot of trial and error … I found the following workaround:

  alias: Netatmo event human Achterkant
  trigger:
    - platform: event
      event_type: netatmo_event
      event_data:
        type: human
#        camera_id: '70:ee:50:xx:xx:xx'
  condition:
    condition: template
    value_template: "{{ trigger.event.data['data']['camera_id'] == '70:ee:50:xx:xx:xx' }}"
  action:
  - data:
      message: Netatmo event human Achterkant
    service: notify.mobile_app_iphone_van_xxx
  mode: single

This works fine to distinguish events from my two camera’s.

1 Like

Thanks a lot @MennoW, this did the trick for me as well!!! Cheers!!

Would y be able to confirm if this still works for you today? I myself have trouble with netatmo which doesn’t fire events I can catch?

Hi, yes this still runs correctly without any modification for me. Event notification is very stable. What is not very stable is whether the user interface shows camera images (“recording”) or just says “unavailable”. But I must add I still run an old version of Home Assistant. My configuration.yaml just has client_id and client_secret for Netatmo. Configuration / Integrations shows “Netatmo configuration.yaml, 2 devices, 2 entities” (and also, for each camera, a “discovered” tile that I have never touched).