- id: '1780072464609' alias: 'Camera: Send Motion Notifications' description: Sends a push notification to your primary mobile device when Nest cameras detect activity. triggers: - entity_id: - camera.entryway_camera - camera.front_door - camera.hallway_camera - camera.living_room_camera trigger: state conditions: [] actions: - action: notify.notify data: title: Motion Detected! message: Activity detected on one of your Nest security cameras. mode: parallel max: 10 - id: '1780125759253' alias: 'Tablet: Dim Screen at Night' description: Drops tablet brightness to zero at night triggers: - at: 01:00:00 trigger: time actions: - action: notify.mobile_app_sm_t387w data: message: command_screen_brightness_level data: command: 0 - id: '1780125803824' alias: 'Tablet: Restore Screen in Morning' description: Restores tablet brightness to normal in the morning triggers: - at: 07:00:00 trigger: time actions: - action: notify.mobile_app_sm_t387w data: message: command_screen_brightness_level data: command: 180 - id: '1780343863793' alias: Front Door Notification description: '' triggers: - trigger: state entity_id: - binary_sensor.front_door from: - 'off' to: - 'on' - trigger: state entity_id: - binary_sensor.patio_door from: - 'off' to: - 'on' conditions: [] actions: - target: entity_id: - light.kitchen_home_kitchen action: light.toggle - delay: 00:00:15 - target: entity_id: - light.kitchen_home_kitchen action: light.toggle - data: message: There is someone at the front door action: notify.notify mode: single variables: _cafe_metadata: version: 1 strategy: native nodes: trigger_1780343037167_0: x: -615 y: -705 action_1780343442574_1: x: -360 y: -630 delay_1780343604675_2: x: -120 y: -360 action_1780343739141_3: x: 75 y: -615 action_1780343804458_4: x: 330 y: -615 trigger_1780343965767_5: x: -615 y: -555 graph_id: 7ad98446-4ce0-4b88-a400-430ac474a617 graph_version: 1 - id: '1780441470361' alias: Reload Hilo Integrations on Reboot description: Reloads problematic integrations 2 minutes after Home Assistant starts up. triggers: - trigger: homeassistant event: start conditions: [] actions: - delay: hours: 0 minutes: 3 seconds: 0 milliseconds: 0 - action: homeassistant.reload_config_entry metadata: {} target: device_id: - 3e67afd88a4b4d17552c8f370aaf40b5 - baad176ac2f415f3642e2d075bb6a977 data: {} mode: single - id: '1780509027967' alias: Notify When Ring Console Battery Low description: '' triggers: - trigger: numeric_state entity_id: - sensor.entryway_keypad_battery below: 25 conditions: [] actions: - data: message: Keypad Battery Low. Please Charge ASAP title: Ring Console Battery action: notify.notify mode: single variables: _cafe_metadata: version: 1 strategy: native nodes: trigger_1780508927611_4: x: 15 y: -105 action_1780508992783_5: x: 285 y: 45 graph_id: 816af3b7-3eac-47c3-8da3-8797d1774c0c graph_version: 1 - id: '1780516946807' alias: Notify When Front Door Sensor Battery Low description: '' triggers: - trigger: numeric_state entity_id: - sensor.front_door_battery below: 25 conditions: [] actions: - data: message: Front Door Sensor Battery Low. Please Change Batteries ASAP. title: Ring Console Battery action: notify.notify mode: single variables: _cafe_metadata: version: 1 strategy: native nodes: trigger_1780508927611_4: x: 15 y: -105 action_1780508992783_5: x: 285 y: 45 graph_id: 816af3b7-3eac-47c3-8da3-8797d1774c0c graph_version: 1 - id: '1780813227139' alias: 'Alert: Fridge or Freezer Power Outage' description: Triggers an alert if the fridge or freezer smart plug power consumption drops to 0W for too long. triggers: - trigger: numeric_state entity_id: - sensor.freezer_power for: hours: 0 minutes: 45 seconds: 0 below: 0.2 id: freezer_down - trigger: numeric_state entity_id: - sensor.fridge_power for: hours: 0 minutes: 20 seconds: 0 below: 0.2 id: fridge_down conditions: [] actions: - if: - condition: trigger id: freezer_down then: - data: title: "\U0001F6A8 URGENT: Freezer Power Failure" message: The Freezer smart plug has drawn 0W of power for over 40 minutes! Check the physical appliance immediately. action: notify.notify else: - if: - condition: trigger id: fridge_down then: - data: title: "\U0001F6A8 URGENT: Fridge Power Failure" message: The Fridge smart plug has drawn 0W of power for over 20 minutes! Check the physical appliance immediately. action: notify.notify else: [] mode: single variables: _cafe_metadata: version: 1 strategy: native nodes: trigger_1780846348490_0_0: x: 12 y: 182 trigger_1780846348490_1_1: x: 12 y: 22 condition_1780846348491_2_2: x: 312 y: 92 action_1780846348491_3_3: x: 632 y: 12 condition_1780846348491_4_4: x: 632 y: 172 action_1780846348491_5_5: x: 952 y: 102 graph_id: 5948b900-b45d-4c2e-ae73-c880acc3a1bf graph_version: 1 - id: '1780989340205' alias: 'Kitchen: Coffee Maker Active Notification' description: Sends a mobile application push notification when the coffee maker power exceeds 1000W for 5 seconds. triggers: - entity_id: sensor.coffee_maker_power above: 1000 for: hours: 0 minutes: 0 seconds: 5 trigger: numeric_state conditions: [] actions: - data: title: ☕ Coffee Time message: Someone is Making Coffee action: notify.notify - action: notify.persistent_notification metadata: {} data: title: ☕ Coffee Time message: Someone is Making Coffee - delay: hours: 0 minutes: 4 seconds: 0 milliseconds: 0 mode: single - id: '1781024962776' alias: 'Office: Turn On Lights on Motion then Door Open' description: Triggers when office door opens, but only if living room motion happened in the last 30 seconds and light is off. triggers: - trigger: state entity_id: binary_sensor.office_door_contact to: 'on' conditions: - condition: time after: '10:00:00' before: '20:00:00' - condition: state entity_id: light.playroom_light state: 'off' - condition: template value_template: '{{ (now() - states.binary_sensor.basement.last_changed).total_seconds() < 30 }}' actions: - action: light.turn_on target: entity_id: light.playroom_light data: {} mode: single - id: '1781034724187' alias: 'Office: Turn Off Lights on Exit' description: Turns off office lights 2 minutes after the door closes, but only if living room motion was detected after the door shut. triggers: - trigger: state entity_id: binary_sensor.office_door_contact to: 'off' conditions: - condition: state entity_id: light.playroom_light state: 'on' - condition: template value_template: '{{ states.binary_sensor.basement.last_changed > states.binary_sensor.office_door_contact.last_changed }}' actions: - delay: minutes: 2 - action: light.turn_off target: entity_id: light.playroom_light data: {} mode: single - id: '1781102033733' alias: Water Leak Detected description: '' triggers: - type: moist device_id: 59bc102f385d7a3524c8f21a5c53592b entity_id: c268ff8842e905515de2274d09c5ab9e domain: binary_sensor metadata: secondary: false trigger: device conditions: [] actions: - action: notify.notify metadata: {} data: title: "\U0001F6A8 URGENT: Water Leak Detected" message: Water Leak Detected in Basement. Check Water Heater for Leaks. - action: persistent_notification.create metadata: {} data: title: "\U0001F6A8 URGENT: Water Leak Detected" message: Water Leak Detected in Basement. Check Water Heater for Leaks. mode: single - id: '1781112110968' alias: 'Freezer Safety: Alert if Plug Turns Off' description: Triggers an immediate notification if the freezer smart plug is turned off. triggers: - trigger: state entity_id: switch.freezer to: 'off' for: minutes: 1 actions: - action: notify.notify data: title: "\U0001F6A8 FREEZER PLUG TRIPPED!" message: The freezer smart plug turned off. Check it immediately to prevent food spoilage. - action: notify.persistent_notification metadata: {} data: title: "\U0001F6A8 FREEZER PLUG TRIPPED!" message: The freezer smart plug turned off. Check it immediately to prevent food spoilage. mode: single - id: '1781275767970' alias: 'Dishwasher: Cycle Finished Notification' description: Alerts when the dishwasher finishes washing triggers: - entity_id: - sensor.150633095332665_progress from: - Dry to: - Complete trigger: state actions: - action: notify.notify data: title: Dishwasher Done message: The dishwasher cycle has completed successfully! mode: single - id: '1781275801564' alias: 'Dishwasher: Rinse Aid Low Warning' description: Alerts when rinse aid needs a refill triggers: - entity_id: binary_sensor.150633095332665_rinse_aid to: 'on' trigger: state actions: - action: notify.notify data: title: Dishwasher Maintenance message: The dishwasher is low on rinse aid. Please refill it before the next cycle! mode: single - id: '1781278655292' alias: 'Dishwasher: Dishwasher Started Notification' description: Alerts when the dishwasher starts washing triggers: - entity_id: - sensor.150633095332665_status to: - Running trigger: state conditions: [] actions: - action: notify.notify data: title: Dishwasher Started message: The dishwasher cycle has started! mode: single - id: '1781279642928' alias: 'Dishwasher: Rinse Aid Refilled Notification' description: Alerts when rinse aid has been refilled triggers: - entity_id: - binary_sensor.150633095332665_rinse_aid to: - 'off' trigger: state from: - 'on' conditions: [] actions: - action: notify.notify data: title: Dishwasher Maintenance message: The dishwasher rinse aid has been refilled! mode: single - id: '1781282506359' alias: Dishwasher Cycle Tracker description: '' triggers: - trigger: state entity_id: - sensor.150633095332665_progress to: - Complete conditions: [] actions: - action: counter.increment target: entity_id: - counter.dishwasher_wash_cycles - counter.dishwasher_total_wash_cycles data: {} mode: single - id: '1781283625261' alias: 'Dishwasher: Create Persistent Filter Alert' description: Pins a notification to the sidebar when the dishwasher hits 40 cycles. triggers: - entity_id: - counter.dishwasher_wash_cycles above: 30 trigger: numeric_state conditions: [] actions: - action: persistent_notification.create data: title: Dishwasher Filter Maintenance message: The dishwasher has completed 30 cycles. Please clean the physical mesh filter and press Reset on your dashboard. notification_id: dishwasher_filter_reminder - action: notify.notify metadata: {} data: title: Dishwasher Filter Maintenance message: The dishwasher has completed 30 cycles. Please clean the physical mesh filter and press Reset on your dashboard. mode: single - id: '1781283661169' alias: 'Dishwasher: Clear Persistent Filter Alert' description: Automatically removes the sidebar notification when the counter is reset. triggers: - entity_id: counter.dishwasher_wash_cycles below: 10 trigger: numeric_state conditions: [] actions: - action: persistent_notification.dismiss data: notification_id: dishwasher_filter_reminder mode: single - id: '1781285278462' alias: 'Tablet: Dim Screen at Night v2' description: Shuts the tablet screen off completely at night triggers: - at: 01:00:00 trigger: time actions: - action: notify.mobile_app_sm_t387w data: message: command_screen_off_timeout data: command: 1000 - id: '1781285326960' alias: 'Tablet: Restore Screen in Morning v2' description: Wakes the tablet and restores brightness/timeout triggers: - at: 07:00:00 trigger: time actions: - action: notify.mobile_app_sm_t387w data: message: command_screen_on data: command: turn_on - action: notify.mobile_app_sm_t387w data: message: command_screen_off_timeout data: command: 120000 - action: notify.mobile_app_sm_t387w data: message: command_screen_brightness_level data: command: 180 - id: '1781320273276' alias: 'Tablet: Fix Greyed Out Brightness' description: Disables auto-brightness and restores manual slider control triggers: - at: 07:00:00 trigger: time actions: - action: notify.mobile_app_sm_t387w data: message: command_auto_screen_brightness data: command: turn_off - action: notify.mobile_app_sm_t387w data: message: command_screen_brightness_level data: command: 180 - id: '1781392657515' alias: 'Washing Machine: Cycle Status' description: Triggers notifications when the washing machine starts and finishes its cycle based on power consumption with debouncing. triggers: - entity_id: sensor.washer_power above: 10 id: washer_started trigger: numeric_state - entity_id: sensor.washer_power below: 3 for: hours: 0 minutes: 4 seconds: 0 id: washer_finished trigger: numeric_state conditions: [] actions: - choose: - conditions: - condition: trigger id: washer_started - condition: state entity_id: input_boolean.washer_running state: 'off' sequence: - action: input_boolean.turn_on target: entity_id: input_boolean.washer_running - action: notify.notify data: title: Washer Started message: The washing machine has started its cycle. - conditions: - condition: trigger id: washer_finished - condition: state entity_id: input_boolean.washer_running state: 'on' sequence: - action: input_boolean.turn_off target: entity_id: input_boolean.washer_running - action: notify.notify data: title: Washer Finished message: The washing machine has completed its cycle. Time to empty it! - id: '1781402128095' alias: Daily Morning Climate Report description: Triggers the weather and comfort report script every morning at 7:00 AM triggers: - at: 07:00:00 trigger: time conditions: [] actions: - action: script.weather_and_comfort_report mode: single - id: '1781403940897' alias: 'Microwave: Cycle Status' description: Triggers notifications when the microwave starts and finishes based on power consumption. triggers: - entity_id: - sensor.microwave_power above: 100 id: microwave_started trigger: numeric_state - entity_id: sensor.microwave_power below: 3 for: hours: 0 minutes: 1 seconds: 0 id: microwave_finished trigger: numeric_state conditions: [] actions: - choose: - conditions: - condition: trigger id: microwave_started - condition: state entity_id: input_boolean.microwave_running state: 'off' sequence: - action: input_boolean.turn_on target: entity_id: input_boolean.microwave_running - action: notify.notify data: title: Microwave Started message: The microwave is running. - conditions: - condition: trigger id: microwave_finished - condition: state entity_id: input_boolean.microwave_running state: 'on' sequence: - action: input_boolean.turn_off target: entity_id: input_boolean.microwave_running - action: notify.notify data: title: Microwave Finished message: The microwave has finished! - id: '1781404011664' alias: 'Ninja Toaster Oven: Cycle Status' description: Triggers notifications when the Ninja toaster oven starts and finishes cooking, with a buffer for element heat cycling. triggers: - entity_id: sensor.ninja_power above: 10 id: ninja_started trigger: numeric_state - entity_id: sensor.ninja_power below: 3 for: hours: 0 minutes: 3 seconds: 0 id: ninja_finished trigger: numeric_state conditions: [] actions: - choose: - conditions: - condition: trigger id: ninja_started - condition: state entity_id: input_boolean.ninja_running state: 'off' sequence: - action: input_boolean.turn_on target: entity_id: input_boolean.ninja_running - action: notify.notify data: title: Ninja Ovens Started message: The Ninja toaster oven is heating up. - conditions: - condition: trigger id: ninja_finished - condition: state entity_id: input_boolean.ninja_running state: 'on' sequence: - action: input_boolean.turn_off target: entity_id: input_boolean.ninja_running - action: notify.notify data: title: Ninja Oven Finished message: The Ninja toaster oven has finished cooking! - id: '1781445544080' alias: 'Kitchen: Coffee Maker Cycle Status' description: 'Triggers on the high-wattage grinder spike. Dynamically waits for the cycle to finish: it requires a minimum of 1 minute to pass AND the power to drop back to the TV baseline.' triggers: - trigger: numeric_state entity_id: sensor.coffee_maker_power above: 800 id: coffee_started - trigger: numeric_state entity_id: sensor.coffee_maker_power below: 15 for: hours: 0 minutes: 1 seconds: 0 id: coffee_finished conditions: [] actions: - choose: - conditions: - condition: trigger id: coffee_started - condition: state entity_id: input_boolean.coffee_maker_running state: 'off' sequence: - action: input_boolean.turn_on target: entity_id: input_boolean.coffee_maker_running - action: notify.notify data: title: ☕ Coffee Time message: Someone is making coffee. - action: notify.persistent_notification data: title: ☕ Coffee Time message: Someone is making coffee. - conditions: - condition: trigger id: coffee_finished - condition: state entity_id: input_boolean.coffee_maker_running state: 'on' sequence: - action: input_boolean.turn_off target: entity_id: input_boolean.coffee_maker_running - action: notify.notify data: title: ☕ Coffee Ready message: Your coffee is ready to enjoy! mode: single - id: '1781793117883' alias: Basement Temperature Change description: '' triggers: - type: temperature device_id: 3e67afd88a4b4d17552c8f370aaf40b5 entity_id: 64689573a8b11a83829efcae0022d7c1 domain: sensor trigger: device above: 15 below: 10 conditions: [] actions: - action: notify.notify metadata: {} data: title: Basement Temperature Change message: Basement Temperature Changed! mode: single - id: '1782161891986' alias: 'Notification: Pool Sensor Low Battery' description: Alert when the pool temperature sensor battery drops below 15% triggers: - entity_id: sensor.pool_temperature_battery below: 15 trigger: numeric_state conditions: [] actions: - data: title: Pool Sensor Battery Low message: The pool temperature sensor battery is currently at {{ states('sensor.pool_temperature_battery') }}%. Please change it soon. action: notify.persistent_notification - action: notify.notify metadata: {} data: title: Pool Sensor Battery Low message: The pool temperature sensor battery is currently at {{ states('sensor.pool_temperature_battery') }}%. Please change it soon. mode: single - &id001 id: commute_morning_traffic_alert_map alias: 'Commute: Morning Traffic Alert with Map' description: Checks commute times at 7:15 AM and attaches a map if traffic is bad. triggers: - at: 07:15:00 trigger: time conditions: - condition: or conditions: - condition: template value_template: '{{ states(''sensor.google_travel_time_work_work'') | float(0) > 35 }}' - condition: template value_template: '{{ states(''sensor.waze_travel_time'') | float(0) > 35 }}' actions: - action: camera.snapshot target: entity_id: camera.camera_commute_map data: filename: /config/www/commute_snapshot.jpg - action: notify.notify data: title: "\U0001F6A8 Commute Delay Alert!" message: "Traffic is heavier than usual this morning. \nGoogle Maps: {{ states('sensor.google_travel_time_work_work') }} mins. Waze: {{ states('sensor.waze_to_work_travel_time') }} mins." data: image: /local/commute_snapshot.jpg enabled: false - action: notify.persistent_notification data: title: "\U0001F6A8 Commute Delay Alert!" message: "Traffic is heavier than usual this morning. \nGoogle Maps: {{ states('sensor.google_travel_time_work_work') }} mins. Waze: {{ states('sensor.waze_to_work_travel_time') }} mins.\n![Commute Map](/local/commute_snapshot.jpg)" mode: single - *id001 - *id001 - id: '1782999027626' alias: 'Commute: Morning Traffic Alert' description: Pushes an interactive, live traffic map to my phone before the commute. triggers: - at: 07:15:00 trigger: time actions: - action: notify.notify data: title: Morning Commute Traffic message: Swipe down to view live traffic along your route. data: push: category: map action_data: latitude: '45.474668' longitude: '-73.737158' shows_traffic: true shows_scale: true - id: '1783000087983' alias: Morning Commute Alert description: Notify when commute is longer than 35 minutes. triggers: - trigger: time at: 07:15:00 conditions: - condition: time weekday: - mon - tue - wed - thu - fri - condition: or conditions: - condition: numeric_state entity_id: sensor.google_travel_time_work_work above: 35 - condition: numeric_state entity_id: sensor.waze_travel_time above: 35 actions: - action: notify.notify data: title: "\U0001F697 Morning Commute" message: "Google: {{ states('sensor.google_travel_time_work_work') }} min\nWaze: {{ states('sensor.waze_to_work_travel_time') }} min\n{% set g = states('sensor.google_travel_time_work_work') | float(0) %} {% if g > 50 %} \U0001F6A8 Major traffic delays. {% elif g > 40 %} ⚠️ Heavy traffic. {% else %} \U0001F7E1 Moderate traffic. {% endif %}" mode: single - id: '1783049020714' alias: Aqara-Magic-Cube-T1-Pro-(CTP-R01) - Franco description: '' use_blueprint: path: SirGoodenough/Zigbee2MQTT-Aqara-Magic-Cube-T1-Pro-CTP-R01-Xiaomi-Lumi.yaml input: topic: zigbee2mqtt/Ziggy action_slide_face_1: - action: light.toggle metadata: {} target: device_id: 2f8c5ab2ca0d4be31919fba6df365813 data: brightness_pct: 25 action_doubletap_face_1: [] action_rotate_cw_face_1: - action: script.cube_dimmer_control metadata: {} data: light: light.playroom_light angle: -20 action_rotate_ccw_face_1: [] action_flipped90_face_1: [] - id: '1783162325964' alias: Motion Shed - AI Description description: Takes a snapshot when the Nest camera detects motion, a person, an animal, or a doorbell press, analyzes it with AI, and sends a mobile and persistent notification. triggers: - trigger: event event_type: state_changed event_data: entity_id: event.front_door_front_door_motion enabled: false - trigger: state entity_id: event.living_room_living_room_camera_motion enabled: false - trigger: state entity_id: event.front_door_front_door_motion enabled: false - trigger: event.received target: entity_id: event.entryway_entryway_camera_motion options: event_type: - camera_motion - camera_person - camera_sound enabled: false - trigger: event.received target: device_id: 290f56e5a655e3af82cbf3cf9fd22406 options: event_type: - camera_motion - camera_person - camera_sound - ring enabled: false - trigger: event.received target: device_id: 679d52e0d16cf48648d11dd024b961f8 options: event_type: - camera_motion - camera_sound - camera_person enabled: true conditions: - condition: template value_template: '{{ trigger.event.data.new_state.attributes.event_type in [''motion'', ''person'', ''animal'', ''chime''] }}' enabled: false actions: - action: blink.trigger_camera target: entity_id: camera.backyard_shed data: {} - delay: hours: 0 minutes: 0 seconds: 5 milliseconds: 0 - action: homeassistant.update_entity target: entity_id: camera.backyard_shed - variables: snapshot_filename: blink_shed_{{ now().strftime('%Y%m%d_%H%M%S') }}.jpg - variables: notification_id: blink_shed_{{ now().strftime('%Y%m%d_%H%M%S_%f') }} - action: camera.snapshot target: entity_id: camera.backyard_shed data: filename: /media/{{ snapshot_filename }} - action: camera.snapshot target: entity_id: camera.backyard_shed data: filename: /config/www/{{ snapshot_filename }} - delay: hours: 0 minutes: 0 seconds: 4 milliseconds: 0 - action: ai_task.generate_data continue_on_error: true data: task_name: Blink Shed Camera Analysis entity_id: ai_task.google_ai_task instructions: Describe what you see in this image in brief. Focus on any people, objects, animals or activities. Text needs to be max 240 characters. attachments: - media_content_id: media-source://media_source/local/{{ snapshot_filename }} media_content_type: image/jpeg response_variable: ai_profile - action: notify.notify continue_on_error: true data: title: Motion Detected - Backyard Shed message: '{{ ai_profile.data if ai_profile is defined and ''data'' in ai_profile else ''Motion detected, but the AI Task integration failed to return a response.'' }}' - action: persistent_notification.create data: title: Motion Detected - Backyard Shed message: '{{ ai_profile.data if ai_profile is defined and ''data'' in ai_profile else ''Motion detected, but the AI Task integration failed to return a response.'' }} ![Snapshot](/local/{{ snapshot_filename }})' notification_id: '{{ notification_id }}' mode: queued max: 10 - id: '1783293479398' alias: Blink Camera Fast Update Cycle description: Polls the Blink cloud every 30 seconds to bypass the default 5-minute delay and force instant motion detection state updates. triggers: - trigger: time_pattern seconds: /30 actions: - action: homeassistant.update_entity target: entity_id: - binary_sensor.backyard_shed_motion - binary_sensor.front_door_motion mode: single - id: '1783304677475' alias: Motion Detection AI Tree description: Takes a snapshot when the Blink camera detects motion, analyzes it with AI, and sends a mobile and persistent notification. triggers: - trigger: state entity_id: binary_sensor.backyard_tree_motion to: 'on' conditions: [] actions: - action: blink.trigger_camera target: entity_id: camera.backyard_tree - delay: 00:00:02 - action: camera.snapshot target: entity_id: camera.backyard_tree data: filename: /media/blinkTree.jpg - action: camera.snapshot target: entity_id: camera.backyard_tree data: filename: /config/www/blinkTree.jpg - delay: 00:00:02 - action: ai_task.generate_data continue_on_error: true data: task_name: Backyard Shed Camera Analysis entity_id: ai_task.google_ai_task instructions: Describe what you see in this image in brief. Focus on any people, objects, animals or activities. Text needs to be max 240 characters. attachments: - media_content_id: media-source://media_source/local/blinkTree.jpg media_content_type: image/jpeg response_variable: ai_profile - action: notify.notify data: title: Motion Detected - Backyard Tree message: '{{ ai_profile.data if ai_profile is defined and ''data'' in ai_profile else ''Motion detected, but the AI Task integration failed to return a response.'' }}' - action: persistent_notification.create data: title: Motion Detected - Backyard Tree notification_id: backyard_tree_motion message: '{{ ai_profile.data if ai_profile is defined and ''data'' in ai_profile else ''Motion detected, but the AI Task integration failed to return a response.'' }} ![Snapshot](/local/blinkTree.jpg)' mode: queued max: 10 - id: '1783387792679' description: Takes a snapshot when the Blink camera detects motion, analyzes it with AI, and sends a mobile and persistent notification. triggers: - trigger: state entity_id: binary_sensor.backyard_shed_motion to: 'on' conditions: [] actions: - action: blink.trigger_camera target: entity_id: camera.living_room_living_room_camera - delay: 00:00:02 - action: camera.snapshot target: entity_id: camera.living_room_living_room_camera data: filename: /media/blink.jpg - action: camera.snapshot target: entity_id: camera.living_room_living_room_camera data: filename: /config/www/nest.jpg - delay: 00:00:02 - action: ai_task.generate_data continue_on_error: true data: task_name: Backyard Shed Camera Analysis entity_id: ai_task.google_ai_task instructions: Describe what you see in this image in brief. Focus on any people, objects, or activities. Text needs to be max 225 characters. attachments: - media_content_id: media-source://media_source/local/nest.jpg media_content_type: image/jpeg response_variable: ai_profile - action: notify.notify data: title: Motion Detected - Backyard Shed message: '{{ ai_profile.data if ai_profile is defined and ''data'' in ai_profile else ''Motion detected, but the AI Task integration failed to return a response.'' }}' - action: persistent_notification.create data: title: Motion Detected - Backyard Shed notification_id: backyard_shed_motion2 message: '{{ ai_profile.data if ai_profile is defined and ''data'' in ai_profile else ''Motion detected, but the AI Task integration failed to return a response.'' }} ![Snapshot](/local/nest.jpg)' mode: queued max: 10 - id: '1783452320698' alias: Nest Test Motion description: Takes a snapshot when the Blink camera detects motion, analyzes it with AI, and sends a mobile and persistent notification. triggers: - trigger: state entity_id: binary_sensor.backyard_tree_motion to: 'on' conditions: [] actions: - delay: 00:00:02 - action: camera.snapshot target: entity_id: - camera.front - camera.backyard_shed data: filename: /media/nest_Living2.jpg - action: camera.snapshot target: entity_id: camera.backyard_tree data: filename: /config/www/blinkTree.jpg - delay: 00:00:02 - action: ai_task.generate_data continue_on_error: true data: task_name: Backyard Shed Camera Analysis entity_id: ai_task.google_ai_task instructions: Describe what you see in this image in brief. Focus on any people, objects, or activities. Text needs to be max 225 characters. attachments: - media_content_id: media-source://media_source/local/blinkTree.jpg media_content_type: image/jpeg response_variable: ai_profile - action: notify.notify data: title: Motion Detected - Backyard Tree message: '{{ ai_profile.data if ai_profile is defined and ''data'' in ai_profile else ''Motion detected, but the AI Task integration failed to return a response.'' }}' - action: persistent_notification.create data: title: Motion Detected - Backyard Tree notification_id: backyard_tree_motion message: '{{ ai_profile.data if ai_profile is defined and ''data'' in ai_profile else ''Motion detected, but the AI Task integration failed to return a response.'' }} ![Snapshot](/local/blinkTree.jpg)' mode: queued max: 10 - id: '1783540959739' alias: Motion Front Door - AI Description description: Takes a snapshot when the Nest camera detects motion, a person, an animal, or a doorbell press, analyzes it with AI, and sends a mobile and persistent notification. triggers: - trigger: event event_type: state_changed event_data: entity_id: event.front_door_front_door_motion enabled: false - trigger: state entity_id: event.living_room_living_room_camera_motion enabled: false - trigger: state entity_id: event.front_door_front_door_motion enabled: false - trigger: event.received target: entity_id: event.entryway_entryway_camera_motion options: event_type: - camera_motion - camera_person - camera_sound enabled: false - trigger: event.received target: device_id: 290f56e5a655e3af82cbf3cf9fd22406 options: event_type: - camera_motion - camera_person - camera_sound - ring - trigger: event.received target: device_id: 679d52e0d16cf48648d11dd024b961f8 options: event_type: - camera_motion - camera_sound - camera_person enabled: false conditions: - condition: template value_template: '{{ trigger.event.data.new_state.attributes.event_type in [''motion'', ''person'', ''animal'', ''chime''] }}' enabled: false actions: - action: blink.trigger_camera target: entity_id: camera.front data: {} - delay: hours: 0 minutes: 0 seconds: 5 milliseconds: 0 - action: homeassistant.update_entity target: entity_id: camera.front - variables: snapshot_filename: blink_Front_{{ now().strftime('%Y%m%d_%H%M%S') }}.jpg - variables: notification_id: blink_front_{{ now().strftime('%Y%m%d_%H%M%S_%f') }} - action: camera.snapshot target: entity_id: camera.front data: filename: /media/{{ snapshot_filename }} - action: camera.snapshot target: entity_id: camera.front data: filename: /config/www/{{ snapshot_filename }} - delay: hours: 0 minutes: 0 seconds: 4 milliseconds: 0 - action: ai_task.generate_data continue_on_error: true data: task_name: Nest Front Camera Analysis entity_id: ai_task.google_ai_task instructions: Describe what you see in this image in brief. Focus on any people, objects, animals or activities. Text needs to be max 240 characters. attachments: - media_content_id: media-source://media_source/local/{{ snapshot_filename }} media_content_type: image/jpeg response_variable: ai_profile - action: notify.notify continue_on_error: true data: title: Motion Detected - Front Door message: '{{ ai_profile.data if ai_profile is defined and ''data'' in ai_profile else ''Motion detected, but the AI Task integration failed to return a response.'' }}' - action: notify.persistent_notification data: title: Motion Detected - Front Door message: '{{ ai_profile.data if ai_profile is defined and ''data'' in ai_profile else ''Motion detected, but the AI Task integration failed to return a response.'' }} ![Snapshot](/local/{{ snapshot_filename }})' data: notification_id: nest_front_motion enabled: false - action: persistent_notification.create metadata: {} data: message: '{{ ai_profile.data if ai_profile is defined and ''data'' in ai_profile else ''Motion detected, but the AI Task integration failed to return a response.'' }} ![Snapshot](/local/{{ snapshot_filename }})' title: Motion Detected - Front Door notification_id: '{{ notification_id }}' mode: queued max: 10 - id: '1783541174963' alias: Daily Snapshot Purge description: Triggers the snapshot purge script every night at midnight. triggers: - trigger: time at: 00:00:00 conditions: [] actions: - action: script.purge_old_blink_snapshot data: {} mode: single - id: '1783615071224' alias: 'TEST: AI Camera Motion Detection OLLAMA' description: Takes a snapshot when the Nest camera detects motion, a person, an animal, or a doorbell press, analyzes it with AI, and sends a mobile and persistent notification. triggers: - trigger: event event_type: state_changed event_data: entity_id: event.front_door_front_door_motion enabled: false - trigger: state entity_id: event.living_room_living_room_camera_motion enabled: false - trigger: state entity_id: event.front_door_front_door_motion enabled: false - trigger: event.received target: entity_id: event.entryway_entryway_camera_motion options: event_type: - camera_motion - camera_person - camera_sound enabled: false - trigger: event.received target: device_id: 290f56e5a655e3af82cbf3cf9fd22406 options: event_type: - camera_motion - camera_person - camera_sound - ring - trigger: event.received target: device_id: 679d52e0d16cf48648d11dd024b961f8 options: event_type: - camera_motion - camera_sound - camera_person enabled: false conditions: - condition: template value_template: '{{ trigger.event.data.new_state.attributes.event_type in [''motion'', ''person'', ''animal'', ''chime''] }}' enabled: false actions: - action: blink.trigger_camera target: entity_id: camera.front data: {} - delay: hours: 0 minutes: 0 seconds: 10 milliseconds: 0 - action: homeassistant.update_entity target: entity_id: camera.front - variables: snapshot_filename: blink_Front_{{ now().strftime('%Y%m%d_%H%M%S') }}.jpg - variables: notification_id: blink_front_{{ now().strftime('%Y%m%d_%H%M%S_%f') }} - action: camera.snapshot target: entity_id: camera.front data: filename: /media/{{ snapshot_filename }} - action: camera.snapshot target: entity_id: camera.front data: filename: /config/www/{{ snapshot_filename }} - delay: hours: 0 minutes: 0 seconds: 4 milliseconds: 0 - action: ai_task.generate_data continue_on_error: true data: task_name: Nest Front Camera Analysis entity_id: ai_task.ollama_ai_task instructions: Describe what you see in this image in brief. Focus on any people, objects, animals or activities. Text needs to be max 240 characters. attachments: - media_content_id: media-source://media_source/local/{{ snapshot_filename }} media_content_type: image/jpeg response_variable: ai_profile - action: notify.notify continue_on_error: true data: title: Motion Detected - Front Door message: '{{ ai_profile.data if ai_profile is defined and ''data'' in ai_profile else ''Motion detected, but the AI Task integration failed to return a response.'' }}' - action: notify.persistent_notification data: title: Motion Detected - Front Door message: '{{ ai_profile.data if ai_profile is defined and ''data'' in ai_profile else ''Motion detected, but the AI Task integration failed to return a response.'' }} ![Snapshot](/local/{{ snapshot_filename }})' data: notification_id: nest_front_motion enabled: false - action: persistent_notification.create metadata: {} data: message: '{{ ai_profile.data if ai_profile is defined and ''data'' in ai_profile else ''Motion detected, but the AI Task integration failed to return a response.'' }} ![Snapshot](/local/{{ snapshot_filename }})' title: Motion Detected - Front Door notification_id: '{{ notification_id }}' mode: queued max: 10