Frigate Mobile App Notifications

I can access hass from phone via outside url non ssl and internally via hostname and ip, non of those do th clip or snapshot view
Playing with phone group as devices but yaml check always says not installed integration with the name i tried to give the group like notify for the first one

In your blueprint, put your external IP and port in the (Optional) Base URL. That should fix it. If this is not set, it uses the address under Settings->System->Network-Internet Field.

Helloā€¦thx for the answerā€¦
I have that in there alreadyā€¦tried with and without / at the end but no luckā€¦
Tried to find the ā€œclip.mp4ā€ in my system files on the frigate share, but they have all other namesā€¦
Is that clip just temporary called that way or symlinked of some sort?

On the HA Frigate integration, do you have Enable the media browser checked? If so, you should be able to go to the sidebar, Click Media, then Frigate, then Clips. This is where all the clips, recordings, and snapshots are accessed from.

Yup, that is enabled and everything locally is working buenno, just not from the frigate blueprint notification.
Only issue i have that i cannot access the clip or snapshot that is mentioned in the blueprint notification when i get it and i cannot find out how to create a group that would include my and my wifes phone and when we are not home the send notifications when someone is detectedā€¦
All i can do is selecting one or the other phone

Reference these two items above. These notify group goes under the configuration.xml of HA. Then what you named the group, for reference here ā€œMe and Herā€, you would put that in the notify group section of the blueprint. This is not a drop down for the group selection.

group:
  meandher:
    name: Us
    entities:
      - person.me
      - person.anyone

or instead of person you could use device trackers for your phones.

Edit: reference your url try enabling ā€œEnable the unauthenticated notification event proxyā€ in the frigate integration

Helloā€¦
I did the flag for the unauthorized notification.
Even flipped on and off to be double sure
No luck.
Just tried the groups thing and checked config in developer tools and got
invalid
Integration error: groups - integration ā€˜groupsā€™ not found.

Ideas?
Is in the configuration.yaml

Sorry itā€™s just group. No s

Thanks @SgtBatten for fixing this blue print. I used your latest post (when you could not update gist) above.

How ever, I could not get the thumbnail to work. (Running Latest Frigate, latest Hass, NabuCasa URL + Android phone)
So I edited all ā€œimage:ā€ lines in the blueprint and and added {{base_url}} and quotes to the statement.
And for me, that did the trick. My camera names got ā€œ_ā€ in them. Dont know if that has something to do with this.
Like this: image: "{{base_url}}/api/frigate/notifications/{{id}}/thumbnail.jpg?format=android"

Here is the full Blueprint with my mods to get thumbnails to work:

blueprint:
  name: Frigate Notification (0.10.1) - SgtB
  description: "## Frigate Mobile App Notification\n\nThis blueprint will send a notification
    to your device when a Frigate event for the selected camera is fired. The notification
    will initially include the thumbnail of the detection, but include an actionable
    notification allowing you to view the clip and snapshot.\n\nWith this blueprint,
    you may send the notification to multiple devices by leaving \"Device\" blank
    and instead use a [notification group][1].\n\n### Software Version Requirements\nMinimum
    Home Assistant Version: 2022.2\nMinimum Frigate Version: 0.10.0 Beta 10\nMinimum
    Frigate Integration Version: 2.2.0\nMinimum iOS Version: 15.0\n\n### Required
    entities:\n  - Frigate Camera Name\n  - Mobile App Device **or** the name of a
    Notification Group\n\n### Optional features:\n  - You can optionally send the
    notification as a critical alert.\n  - You can choose whether or not to update
    the notification with new thumbnails as they become available.\n  - You can limit
    notifications to objects entering pre-defined [zones][2] in Frigate.\n  - You
    can specify which [zones][2] to be notified about. This must be a list (e.g.):\n
    \   ```yaml\n    - backyard\n    ```\n  - You can specify what type of [objects][3]
    to be notified about. This must be a list (e.g.):\n    ```yaml\n    - person\n
    \   - car\n    ```\n  - You can disable notifications if a presence entity or
    group is \"home\".\n  - You can configure a cooldown for the camera to reduce
    the number of notifications when back-to-back events occur.\n  - You can silence
    future notifications for a defined amount of time through actionable notifications.
    This is helpful in situations where you know you will be triggering detections
    for an extended period of time. i.e. kids playing outside.\n  - You can set a
    loitering timer to notify you of stationary objects that remain for a set period
    of time.\n  \n### Updates by SgtBatten:\n  - Fix for fps_value template error
    as per https://community.home-assistant.io/t/frigate-mobile-app-notifications/311091/451?u=sgtbatten\n
    \ - Fix Zone Filter being bypassed by snapshots as per https://community.home-assistant.io/t/frigate-mobile-app-notifications/311091/421?u=sgtbatten\n
    \ - Improve camera entity selection by limiting it to frigate entities\n  - Improve
    presence entiy selection by limiting it to device trackers, persons and groups\n
    \ - You can prevent all secondary updates from making notification sounds (Alert
    Once)\n  - You can add use a state condition to restrict when you recieve notifications.
    E.g only when your door is locked, or only when your car isn't in the driveway
    or the sun is below the horizon. \n  \n\n[1]: https://companion.home-assistant.io/docs/notifications/notifications-basic#sending-notifications-to-multiple-devices\n[2]:
    https://blakeblackshear.github.io/frigate/configuration/cameras#zones\n[3]: https://blakeblackshear.github.io/frigate/configuration/objects\n"
  domain: automation
  source_url: https://gist.github.com/SgtBatten/10a2dc7f16af9f55f3ba83fe4523d8d7
  input:
    camera:
      name: Frigate Camera
      description: Select the camera entity that will trigger notifications. DO NOT
        select one with a trailing object. e.g select camera.front not camera.front_person
      selector:
        entity:
          integration: frigate
          domain: camera
          multiple: false
    notify_device:
      name: Device
      description: The device must run the official Home Assistant app to receive
        notifications.
      default: false
      selector:
        device:
          integration: mobile_app
          multiple: false
    notify_group:
      name: Notification Group
      description: The name of the notification group to call.
      default: ''
    base_url:
      name: (Optional) Base URL
      description: 'The external url for your Home Assistant instance. This will default
        to a relative URL and will open the clips in the app instead of the browser,
        which does not work well on iOS.

        '
      default: ''
    critical:
      name: (Optional) Critical Notification
      description: Send as a critical notification to the mobile device.
      default: false
      selector:
        boolean: {}
    alert_once:
      name: (Optional) Alert Once
      description: Only the first notification for each event can have a sound. Updates,
        including new thumbnails will be silent.
      default: false
      selector:
        boolean: {}
    update_thumbnail:
      name: (Optional) Update Thumbnail
      description: Update notification if a new "better" thumbnail is available.
      default: false
      selector:
        boolean: {}
    zone_filter:
      name: (Optional) Zone Filter
      description: Only notify if object has entered a defined zone.
      default: false
      selector:
        boolean: {}
    zones:
      name: (Optional) Trigger Zones
      description: A list (-) of zones you wish to recieve notifications for.
      default: []
      selector:
        object: {}
    labels:
      name: (Optional) Trigger Objects
      description: A list (-) of objects you wish to recieve notifications for.
      default: []
      selector:
        object: {}
    presence_filter:
      name: (Optional) Presence Filter
      description: Only notify if selected presence entity is not "home".
      default: ''
      selector:
        entity:
          domain:
          - device_tracker
          - person
          - group
          multiple: false
    state_filter:
      name: (Optional) State Filter
      description: Enable the two State Filter settings below. Only notify if selected
        entity is in the specified states.
      default: false
      selector:
        boolean: {}
    state_entity:
      name: (Optional) State Filter Entity
      description: Only notify if selected entity is in the below state. You must
        enable State Filter above to use this.
      default: ''
      selector:
        entity:
          multiple: false
    state_filter_states:
      name: (Optional) State Filter States
      description: A list (-) of states that the above entity must be in.
      default: []
      selector:
        object: {}
    cooldown:
      name: (Optional) Cooldown
      description: Delay before sending another notification for this camera after
        the last event.
      default: 30
      selector:
        number:
          max: 300.0
          min: 0.0
          unit_of_measurement: seconds
          step: 1.0
          mode: slider
    silence_timer:
      name: (Optional) Silence New Object Notifications
      description: 'How long to silence notifications for this camera when requested
        as part of the actionable notification. Note: This only applies to new objects.
        Existing tracked objects will not be affected.

        '
      default: 30
      selector:
        number:
          max: 300.0
          min: 0.0
          unit_of_measurement: minutes
          step: 1.0
          mode: slider
    loiter_timer:
      name: (Optional) Loitering Notifications
      description: 'Sends new loitering notification if a stationary object is detected
        for longer than the specified time. 0 is off and will not send notifications.

        '
      default: 0
      selector:
        number:
          max: 300.0
          min: 0.0
          unit_of_measurement: minutes
          step: 1.0
          mode: slider
mode: parallel
trigger_variables:
  input_camera: !input camera
  camera: '{{ input_camera | replace(''camera.'', '''') }}'
trigger:
- platform: event
  event_type: mobile_app_notification_action
  event_data:
    action: silence-{{ camera }}
  id: silence
- platform: mqtt
  topic: frigate/events
  payload: '{{ camera }}/new'
  value_template: '{{ value_json[''after''][''camera''] }}/{{ value_json[''type'']}}'
  id: frigate-event
variables:
  input_camera: !input camera
  camera: '{{ input_camera | replace(''camera.'', '''') }}'
  camera_name: '{{ camera | replace(''_'', '' '') | title }}'
  base_url: !input base_url
  critical: !input critical
  alert_once: !input alert_once
  update_thumbnail: !input update_thumbnail
  group_target: !input notify_group
  zone_only: !input zone_filter
  input_zones: !input zones
  zones: '{{ input_zones | list }}'
  input_labels: !input labels
  labels: '{{ input_labels | list }}'
  presence_entity: !input presence_filter
  cooldown: !input cooldown
  loiter_timer: !input loiter_timer
  fps: '{{ states(''sensor.'' + camera + ''_camera_fps'')|int(5) }}'
  state_only: !input state_filter
  input_entity: !input state_entity
  input_states: !input state_filter_states
  states_filter: '{{ input_states | list }}'
action:
- choose:
  - alias: Silence New Object Notifications
    conditions:
    - condition: trigger
      id: silence
    sequence:
    - service: automation.turn_off
      target:
        entity_id: '{{ this.entity_id }}'
      data:
        stop_actions: false
    - delay:
        minutes: !input silence_timer
    - service: automation.turn_on
      target:
        entity_id: '{{ this.entity_id }}'
  - alias: Frigate Event
    conditions:
    - condition: trigger
      id: frigate-event
    - '{{ is_state(this.entity_id, ''on'') }}'
    - '{{ not this.attributes.last_triggered or (now() - this.attributes.last_triggered).seconds
      > cooldown }}'
    sequence:
    - variables:
        id: '{{ trigger.payload_json[''after''][''id''] }}'
        object: '{{ trigger.payload_json[''after''][''label''] }}'
        label: '{{ object | title }}'
        initial_home: '{{ presence_entity != '''' and is_state(presence_entity, ''home'')
          }}'
        initial_entered_zones: '{{ trigger.payload_json[''after''][''entered_zones'']
          }}'
    - alias: Notifications enabled for object label
      condition: template
      value_template: '{{ not labels|length or object in labels }}'
    - alias: Notify on new object
      choose:
      - conditions:
        - '{{ not zone_only or initial_entered_zones|length > 0 }}'
        - '{{ not zones|length or zones|select(''in'', initial_entered_zones)|list|length
          > 0 }}'
        - '{{ not initial_home }}'
        - '{{ not state_only or states(input_entity) in states_filter }}'
        sequence:
        - choose:
          - conditions: '{{ not group_target }}'
            sequence:
            - device_id: !input notify_device
              domain: mobile_app
              type: notify
              message: A {{ label }} was detected on the {{ camera_name }} camera.
              data:
                tag: '{{ id }}'
                group: '{{ camera }}-frigate-notification'
                image: "{{base_url}}/api/frigate/notifications/{{id}}/thumbnail.jpg?format=android"
                clickAction: '{{base_url}}/api/frigate/notifications/{{id}}/{{camera}}/clip.mp4'
                ttl: '{{ iif(critical, 0, 3600000) }}'
                priority: '{{ iif(critical, ''high'', ''normal'') }}'
                url: '{{base_url}}/api/frigate/notifications/{{id}}/{{camera}}/clip.mp4'
                attachment:
                  url: /api/frigate/notifications/{{id}}/thumbnail.jpg
                push:
                  interruption-level: '{{ iif(critical, ''critical'', ''active'')
                    }}'
                actions:
                - action: URI
                  title: View Clip
                  uri: '{{base_url}}/api/frigate/notifications/{{id}}/{{camera}}/clip.mp4'
                - action: URI
                  title: View Snapshot
                  uri: '{{base_url}}/api/frigate/notifications/{{id}}/snapshot.jpg'
                - action: silence-{{ camera }}
                  title: Silence New Notifications
                  destructive: true
          default:
          - service: notify.{{ group_target }}
            data:
              message: A {{ label }} was detected on the {{ camera_name }} camera.
              data:
                tag: '{{ id }}'
                group: '{{ camera }}-frigate-notification'
                image: "{{base_url}}/api/frigate/notifications/{{id}}/thumbnail.jpg?format=android"
                clickAction: '{{base_url}}/api/frigate/notifications/{{id}}/{{camera}}/clip.mp4'
                ttl: '{{ iif(critical, 0, 3600000) }}'
                priority: '{{ iif(critical, ''high'', ''normal'') }}'
                url: '{{base_url}}/api/frigate/notifications/{{id}}/{{camera}}/clip.mp4'
                attachment:
                  url: /api/frigate/notifications/{{id}}/thumbnail.jpg
                push:
                  interruption-level: '{{ iif(critical, ''critical'', ''active'')
                    }}'
                actions:
                - action: URI
                  title: View Clip
                  uri: '{{base_url}}/api/frigate/notifications/{{id}}/{{camera}}/clip.mp4'
                - action: URI
                  title: View Snapshot
                  uri: '{{base_url}}/api/frigate/notifications/{{id}}/snapshot.jpg'
                - action: silence-{{ camera }}
                  title: Silence New Notifications
                  destructive: true
    - repeat:
        sequence:
        - wait_for_trigger:
          - platform: mqtt
            topic: frigate/events
            payload: '{{ id }}'
            value_template: '{{ value_json[''after''][''id''] }}'
          timeout:
            minutes: 2
          continue_on_timeout: false
        - variables:
            event: '{{ wait.trigger.payload_json }}'
            loitering: '{{ loiter_timer and event[''before''][''motionless_count'']/fps/60
              < loiter_timer and event[''after''][''motionless_count'']/fps/60 >=
              loiter_timer }}'
            new_snapshot: '{{ update_thumbnail and event[''before''][''snapshot_time'']
              != event[''after''][''snapshot_time''] }}'
            home: '{{ presence_entity != '''' and is_state(presence_entity, ''home'')
              }}'
            presence_changed: '{{ presence_entity != '''' and as_datetime(event[''before''][''frame_time''])
              < states[presence_entity].last_changed }}'
            last_zones: '{{ event[''before''][''entered_zones''] }}'
            entered_zones: '{{ event[''after''][''entered_zones''] }}'
            zone_filter: '{{ not zone_only or entered_zones|length > 0 and zones|select(''in'',
              entered_zones)|list|length > 0 }}'
            stationary_moved: '{{ event[''after''][''position_changes''] > event[''before''][''position_changes'']
              }}'
            zone_only_changed: '{{ zone_only and (entered_zones|length > 0 and not
              last_zones|length) }}'
            entered_zones_changed: '{{ zones|length > 0 and (zones|select(''in'',
              entered_zones)|list|length > 0 and not zones|select(''in'', last_zones)|list|length)
              }}'
            state_true: '{{ not state_only or states(input_entity) in states_filter
              }}'
            update: '{{ alert_once or (new_snapshot and not loitering and not presence_changed
              and not zone_only_changed and not entered_zones_changed) }}'
        - alias: Notify on loitering or significant change
          choose:
          - conditions: '{{ loitering or (not home and zone_filter and state_true
              and (new_snapshot or presence_changed or stationary_moved or zone_only_changed
              or entered_zones_changed)) }}'
            sequence:
            - choose:
              - conditions: '{{ not group_target }}'
                sequence:
                - device_id: !input notify_device
                  domain: mobile_app
                  type: notify
                  message: A {{ label }} {{ 'is loitering' if loitering else 'was
                    detected' }} on the {{ camera_name }} camera.
                  data:
                    tag: '{{ id }}{{''-loitering'' if loitering}}'
                    group: '{{ camera }}-frigate-notification{{''-loitering'' if loitering}}'
                    image: "{{base_url}}/api/frigate/notifications/{{id}}/thumbnail.jpg?format=android"
                    clickAction: '{{base_url}}/api/frigate/notifications/{{id}}/{{camera}}/clip.mp4'
                    ttl: '{{ iif(critical, 0, 3600000) }}'
                    priority: '{{ iif(critical, ''high'', ''normal'') }}'
                    alert_once: '{{ alert_once }}'
                    url: '{{base_url}}/api/frigate/notifications/{{id}}/{{camera}}/clip.mp4'
                    attachment:
                      url: /api/frigate/notifications/{{id}}/thumbnail.jpg
                    sound: '{{ iif(update, ''none'', ''default'') }}'
                    push:
                      interruption-level: '{{ iif(critical, ''critical'', ''active'')
                        }}'
                    actions:
                    - action: URI
                      title: View Clip
                      uri: '{{base_url}}/api/frigate/notifications/{{id}}/{{camera}}/clip.mp4'
                    - action: URI
                      title: View Snapshot
                      uri: '{{base_url}}/api/frigate/notifications/{{id}}/snapshot.jpg'
                    - action: silence-{{ camera }}
                      title: Silence New Notifications
                      destructive: true
              default:
              - service: notify.{{ group_target }}
                data:
                  message: A {{ label }} {{ 'is loitering' if loitering else 'was
                    detected' }} on the {{ camera_name }} camera.
                  data:
                    tag: '{{ id }}{{''-loitering'' if loitering}}'
                    group: '{{ camera }}-frigate-notification{{''-loitering'' if loitering}}'
                    image: "{{base_url}}/api/frigate/notifications/{{id}}/thumbnail.jpg?format=android"
                    clickAction: '{{base_url}}/api/frigate/notifications/{{id}}/{{camera}}/clip.mp4'
                    ttl: '{{ iif(critical, 0, 3600000) }}'
                    priority: '{{ iif(critical, ''high'', ''normal'') }}'
                    alert_once: '{{ alert_once }}'
                    url: '{{base_url}}/api/frigate/notifications/{{id}}/{{camera}}/clip.mp4'
                    attachment:
                      url: /api/frigate/notifications/{{id}}/thumbnail.jpg
                    sound: '{{ iif(update, ''none'', ''default'') }}'
                    push:
                      interruption-level: '{{ iif(critical, ''critical'', ''active'')
                        }}'
                    actions:
                    - action: URI
                      title: View Clip
                      uri: '{{base_url}}/api/frigate/notifications/{{id}}/{{camera}}/clip.mp4'
                    - action: URI
                      title: View Snapshot
                      uri: '{{base_url}}/api/frigate/notifications/{{id}}/snapshot.jpg'
                    - action: silence-{{ camera }}
                      title: Silence New Notifications
                      destructive: true
        until: '{{ not wait.trigger or wait.trigger.payload_json[''type''] == ''end''
          }}'

Thanks for this, I was going mad trying to figure out why this blueprint never triggered.
Working fine now!

2 Likes

The baseurl shouldnā€™t have been necessary, iā€™ve made no changes to that compared to the original blueprint. If itā€™s working then itā€™s no issue you added it i suppose.

Iā€™ve double checked quotation errors in the next update to the gist though. I did not find that it was missing the ones you refer too, perhaps the older version was.

version 0.11.0.3 Frigate 0.11 Notifications Ā· GitHub

  • fixes my own internal bug dealing with capitalised camera names in the frigate config.

OK! I finally got a group defined in configuration. yaml
And it is not yelling at me that this group is invalid! But when I use this group in the presence filter it still does not recognize us being home or not! Somehow I must must miss something very fundamental here!

P.s. how do i actually update a blueprint?

I have 3 cameras working in Frigate NVR via RTMP steamsā€¦ Frigate is identifying objects and creating both clips and recordingsā€¦ everything appears to be working well within Frigate. I have MQTT working and I am using EMQX as a broker. If I listen for figate/events, I do see traffic that MQTT is processing information. I have the notification blueprint for each camera automation to send notifications, but I receive nothing as far as notifications. Where do I begin looking for the issue? I am using iOS and have the native app. I have numerous other automation that send notifications and they are all working well.
When I look at the trace in the automation, I see an error of "stopped because of unknown reason ā€œnullā€ at October 23, 2022 @ 1:16:02 runtime (0.01 seconds)ā€¦ How do I figure out what this error means?

Here is a copy of an eventā€¦

    "before": {
        "id": "1666551155.92755-vumon3",
        "camera": "carport",
        "frame_time": 1666552911.256858,
        "snapshot_time": 1666551156.057987,
        "label": "car",
        "sub_label": null,
        "top_score": 0.8203125,
        "false_positive": false,
        "start_time": 1666551155.92755,
        "end_time": null,
        "score": 0.71484375,
        "box": [
            307,
            45,
            539,
            255
        ],
        "area": 48720,
        "ratio": 1.1047619047619048,
        "region": [
            259,
            0,
            587,
            328
        ],
        "stationary": true,
        "motionless_count": 8779,
        "position_changes": 1,
        "current_zones": [],
        "entered_zones": [],
        "has_clip": true,
        "has_snapshot": true
    },
    "after": {
        "id": "1666551155.92755-vumon3",
        "camera": "carport",
        "frame_time": 1666552971.50445,
        "snapshot_time": 1666551156.057987,
        "label": "car",
        "sub_label": null,
        "top_score": 0.8203125,
        "false_positive": false,
        "start_time": 1666551155.92755,
        "end_time": null,
        "score": 0.71484375,
        "box": [
            307,
            45,
            539,
            255
        ],
        "area": 48720,
        "ratio": 1.1047619047619048,
        "region": [
            259,
            0,
            587,
            328
        ],
        "stationary": true,
        "motionless_count": 9080,
        "position_changes": 1,
        "current_zones": [],
        "entered_zones": [],
        "has_clip": true,
        "has_snapshot": true
    },
    "type": "update"
}```

Look for errors in the home assistant log.

What version of frigate and what which blueprint are you using?

Does the presence filter itself work? Perhaps share itā€™s code here?

Make changes as required and save the file, the go to developer tools>yaml and click on automations to make any automations use the updated code.

Frigate NVR : 0.11.1
Blueprint Version: 0.10.0
HA Version: 2022.10.5

I am not seeing anything in the logs that is related to frigate or the cameras.

try this fix

2 Likes

Helloā€¦

sorry to be such a problemā€¦
First things first: yes, with just one phone in the presence filter it works.
Here my group

group:
  meandher:
    name: Wir
    entities:
      - device_tracker.jans_s9
      - device_tracker.nicosphone

here the yaml code from the automation

alias: Notification_Movement_on_Driveway
description: ""
use_blueprint:
  path: hunterjm/frigate_notification.yaml
  input:
    notify_group: NotificationGroup
    camera: driveway_cam
    base_url: https://url:8123
    labels:
      - person
    presence_filter: Wir

and here the full deal

mode: single
max_exceeded: silent
trigger:
  platform: mqtt
  topic: frigate/events
  payload: driveway_cam
  value_template: '{{ value_json[''after''][''camera''] }}'
variables:
  id: '{{ trigger.payload_json[''after''][''id''] }}'
  camera: '{{ trigger.payload_json[''after''][''camera''] }}'
  camera_name: '{{ camera | replace(''_'', '' '') | title }}'
  object: '{{ trigger.payload_json[''after''][''label''] }}'
  label: '{{ object | title }}'
  entered_zones: '{{ trigger.payload_json[''after''][''entered_zones''] }}'
  type: '{{ trigger.payload_json[''type''] }}'
  base_url: http://url:8123
  group_target: NotificationGroup
  zone_only: false
  input_zones: []
  zones: '{{ input_zones | list }}'
  input_labels:
    - person
  labels: '{{ input_labels | list }}'
  presence_entity: Wir
condition:
  - '{{ type != ''end'' }}'
  - '{{ not zone_only or entered_zones|length > 0 }}'
  - '{{ not zones|length or zones|select(''in'', entered_zones)|list|length > 0 }}'
  - '{{ not labels|length or object in labels }}'
  - '{{ not presence_entity or not is_state(presence_entity, ''home'') }}'
action:
  - choose:
      - conditions: '{{ not group_target }}'
        sequence:
          - device_id: false
            domain: mobile_app
            type: notify
            message: A {{ label }} was detected on the {{ camera_name }} camera.
            data:
              tag: '{{ id }}'
              group: frigate-notification-{{ camera }}
              image: /api/frigate/notifications/{{id}}/thumbnail.jpg?format=android
              attachment:
                url: /api/frigate/notifications/{{id}}/thumbnail.jpg
    default:
      - service: notify.{{ group_target }}
        data:
          message: A {{ label }} was detected on the {{ camera_name }} camera.
          data:
            tag: '{{ id }}'
            group: frigate-notification-{{ camera }}
            image: /api/frigate/notifications/{{id}}/thumbnail.jpg?format=android
            attachment:
              url: /api/frigate/notifications/{{id}}/thumbnail.jpg
  - repeat:
      sequence:
        - wait_for_trigger:
            - platform: mqtt
              topic: frigate/events
              payload: '{{ id }}'
              value_template: '{{ value_json[''after''][''id''] }}'
          timeout:
            minutes: 2
          continue_on_timeout: false
        - condition: template
          value_template: '{{ wait.trigger.payload_json[''type''] == ''end'' }}'
        - choose:
            - conditions: '{{ not group_target }}'
              sequence:
                - device_id: false
                  domain: mobile_app
                  type: notify
                  message: A {{ label }} was detected on the {{ camera_name }} camera.
                  data:
                    tag: '{{ id }}'
                    group: frigate-notification-{{ camera }}
                    url: >-
                      {{base_url}}/api/frigate/notifications/{{id}}/{{camera}}/clip.mp4
                    clickAction: >-
                      {{base_url}}/api/frigate/notifications/{{id}}/{{camera}}/clip.mp4
                    image: >-
                      /api/frigate/notifications/{{id}}/thumbnail.jpg?format=android
                    sound: none
                    attachment:
                      url: /api/frigate/notifications/{{id}}/thumbnail.jpg
                    actions:
                      - action: URI
                        title: View Clip
                        uri: >-
                          {{base_url}}/api/frigate/notifications/{{id}}/{{camera}}/clip.mp4
                      - action: URI
                        title: View Snapshot
                        uri: >-
                          {{base_url}}/api/frigate/notifications/{{id}}/snapshot.jpg
                      - action: silence-{{ camera }}
                        title: Silence Notifications
                        destructive: true
          default:
            - service: notify.{{ group_target }}
              data:
                message: A {{ label }} was detected on the {{ camera_name }} camera.
                data:
                  tag: '{{ id }}'
                  group: frigate-notification-{{ camera }}
                  url: >-
                    {{base_url}}/api/frigate/notifications/{{id}}/{{camera}}/clip.mp4
                  clickAction: >-
                    {{base_url}}/api/frigate/notifications/{{id}}/{{camera}}/clip.mp4
                  image: >-
                    /api/frigate/notifications/{{id}}/thumbnail.jpg?format=android
                  sound: none
                  attachment:
                    url: /api/frigate/notifications/{{id}}/thumbnail.jpg
                  actions:
                    - action: URI
                      title: View Clip
                      uri: >-
                        {{base_url}}/api/frigate/notifications/{{id}}/{{camera}}/clip.mp4
                    - action: URI
                      title: View Snapshot
                      uri: >-
                        {{base_url}}/api/frigate/notifications/{{id}}/snapshot.jpg
                    - action: silence-{{ camera }}
                      title: Silence Notifications
                      destructive: true
      until: '{{ wait.trigger.payload_json[''type''] == ''end'' }}'
  - wait_for_trigger:
      - platform: event
        event_type: mobile_app_notification_action
        event_data:
          action: silence-{{ camera }}
    timeout:
      seconds: 30
    continue_on_timeout: false
  - delay:
      minutes: 30
id: '1666219979205'
alias: Notification_Movement_on_Driveway
description: ''

Thx alot

Where did you copy the yaml you refer to as the ā€œfull dealā€ from? I donā€™t meant the original source, I mean where did you copy it from just now in your config to paste here?

Edit: I ask because it looks like youā€™ve tried to hard code a bunch of things.

The presence filter is an entity selector and when you selected Wir it should have populated the yaml with group.meandher. So i donā€™t even understand how weā€™ve got to this point.

Helloā€¦
i dont have any groups showing in the entity selector but you are saying i should write meandher in there as filter instead of Wir?