Files
HomeAssistantVS/automations.yaml
T

3251 lines
92 KiB
YAML

- id: '1780125759253'
alias: 'Tablet: Dim Screen at Night'
description: Drops tablet brightness to zero at night
triggers:
- at: '23:30: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: '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:
- 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: Light Control Motion'
description: Turns on office lights when the door opens, or via motion if turned
off by inactivity within the last hour. Turns off lights after 1 hour of no occupancy.
Prevents motion from re-triggering if turned off manually/Alexa. Respects a master
override toggle helper.
triggers:
- trigger: state
entity_id: binary_sensor.office_door_contact
to: 'on'
id: door_opened
- trigger: state
entity_id: binary_sensor.office_occupancy
to: 'on'
id: motion_detected
- trigger: state
entity_id: binary_sensor.office_occupancy
to: 'off'
for:
hours: 1
minutes: 0
seconds: 0
id: turn_off_logic
- trigger: state
entity_id: input_boolean.office_keep_lights_on
to: 'on'
id: keep_on_enabled
conditions: []
actions:
- choose:
- conditions:
- condition: time
after: '10:00:00'
before: '20:00:00'
- condition: state
entity_id: light.playroom_light
state: 'off'
- condition: state
entity_id: input_boolean.office_motion_override
state: 'off'
- condition: or
conditions:
- condition: trigger
id: door_opened
- condition: and
conditions:
- condition: trigger
id: motion_detected
- condition: template
value_template: '{{ (now() - states.light.playroom_light.last_changed).total_seconds()
< 3600 and states.light.playroom_light.context.parent_id == none }}'
sequence:
- action: light.turn_on
target:
entity_id: light.playroom_light
data: {}
- conditions:
- condition: trigger
id: turn_off_logic
- condition: state
entity_id: light.playroom_light
state: 'on'
- condition: state
entity_id: input_boolean.office_keep_lights_on
state: 'off'
sequence:
- action: light.turn_off
target:
entity_id: light.playroom_light
data: {}
- action: notify.notify
data:
message: Office Lights Turned Off due to inactivity
title: ⚡️ Office Lights
- conditions:
- condition: trigger
id: keep_on_enabled
sequence:
- action: light.turn_on
target:
entity_id: light.playroom_light
data: {}
mode: restart
- 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
}}'
- condition: state
entity_id: input_boolean.office_keep_lights_on
state: 'off'
actions:
- delay:
minutes: 2
- action: light.turn_off
target:
entity_id: light.playroom_light
data: {}
- action: notify.notify
metadata: {}
data:
message: Office Lights Turned Off
title: ⚡️ Office Lights
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: '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.
- 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:
- trigger: numeric_state
entity_id: sensor.basement_temperature
above: 15
- trigger: numeric_state
entity_id: sensor.basement_temperature
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_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_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_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'') | 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 to Work is heavier than usual this morning. \n- Google Maps:
{{ states('sensor.google_travel_time_work') }} mins."
data:
image: /local/commute_snapshot.jpg
enabled: false
- action: notify.persistent_notification
data:
title: "\U0001F6A8 Commute Delay Alert!"
message: "Traffic to Work is heavier than usual this morning. \n- Google Maps:
{{ states('sensor.google_travel_time_work') }} 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
above: 35
actions:
- action: notify.notify
data:
title: "\U0001F697 Morning Commute"
message: "Google: {{ states('sensor.google_travel_time_work') }} min\n\n{% set
g = states('sensor.google_travel_time_work') | float(0) %} {% if g > 50 %}
\U0001F6A8 Major traffic delays. {% elif g > 40 %} ⚠️ Heavy traffic. {% else
%} \U0001F7E1 Moderate traffic. {% endif %}"
mode: single
- 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: state
entity_id: input_boolean.blink_shed_camera_motion
to: 'on'
enabled: true
- 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: false
conditions:
- condition: template
value_template: '{{ trigger.event.data.new_state.attributes.event_type in [''motion'',
''person'', ''animal'', ''chime''] }}'
enabled: false
actions:
- action: camera.record
target:
entity_id:
- camera.blink_backyard_shed
data:
duration: 10
lookback: 0
filename: /media/blinkshed.mp4
enabled: false
- delay:
hours: 0
minutes: 0
seconds: 10
milliseconds: 0
enabled: false
- action: homeassistant.update_entity
target:
entity_id: camera.blink_backyard_shed
data: {}
- delay:
hours: 0
minutes: 0
seconds: 2
milliseconds: 0
- action: camera.snapshot
target:
entity_id: camera.blink_backyard_shed
data:
filename: /config/www/flush_cache.jpg
- delay:
hours: 0
minutes: 0
seconds: 3
milliseconds: 0
- action: homeassistant.update_entity
target:
entity_id: camera.blink_backyard_shed
data: {}
- delay:
hours: 0
minutes: 0
seconds: 2
milliseconds: 0
- 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.blink_backyard
data:
filename: /media/{{ snapshot_filename }}
- delay:
hours: 0
minutes: 0
seconds: 2
milliseconds: 0
- action: ai_task.generate_data
continue_on_error: true
data:
task_name: Blink Backyard Camera Analysis
entity_id: ai_task.ollama_ai_task_video
instructions: Describe what you see in this image in brief, but make it a little
humorous. 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: '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
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
response_variable: ai_profile
data:
task_name: Blink InShed Camera Analysis
entity_id: ai_task.ollama_ai_task_video
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
- 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
- trigger: state
entity_id:
- input_boolean.blink_front_camera_motion
to:
- 'on'
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.blink_front
data: {}
enabled: false
- delay:
hours: 0
minutes: 0
seconds: 10
milliseconds: 0
enabled: false
- action: homeassistant.update_entity
target:
entity_id: camera.blink_front
- delay:
hours: 0
minutes: 0
seconds: 2
milliseconds: 0
- 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.blink_front
data:
filename: /media/{{ snapshot_filename }}
- action: camera.snapshot
target:
entity_id: camera.blink_front
data:
filename: /config/www/{{ snapshot_filename }}
- delay:
hours: 0
minutes: 0
seconds: 2
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, but make it a little
humorous. 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: '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: {}
enabled: false
- delay:
hours: 0
minutes: 0
seconds: 10
milliseconds: 0
enabled: false
- 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.blink_front
data:
filename: /media/{{ snapshot_filename }}
- action: camera.snapshot
target:
entity_id: camera.blink_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_2
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: '1783628026617'
alias: 'Garage Door: Open Notification'
description: ''
triggers:
- trigger: state
entity_id:
- binary_sensor.garage_door_contact
to:
- 'on'
conditions: []
actions:
- action: notify.notify
metadata: {}
data:
message: 'Garage Door is Opened '
title: Garage Door
mode: single
- id: '1783628088925'
alias: 'Garage Door: Closed Notification'
description: ''
triggers:
- trigger: state
entity_id:
- binary_sensor.garage_door_contact
to:
- 'off'
from:
- 'on'
conditions: []
actions:
- action: notify.notify
metadata: {}
data:
message: Garage Door Closed
title: Garage Door
mode: single
- id: '1783643893067'
alias: Blink Shed Camera Motion Triggered
description: Triggers local actions when the front Blink camera senses motion
triggers:
- entity_id: input_boolean.blink_shed_camera_motion
to: 'on'
trigger: state
conditions: []
actions:
- data:
title: Shed Door Alert
message: Motion detected on the Shed Blink camera!
action: notify.persistent_notification
mode: single
- id: '1783647055563'
alias: Motion Backyard - 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: state
entity_id:
- input_boolean.blink_backyard_camera_motion
to:
- 'on'
enabled: true
- 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: 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.blink_backyard
data: {}
enabled: false
- delay:
hours: 0
minutes: 0
seconds: 10
milliseconds: 0
enabled: false
- action: homeassistant.update_entity
target:
entity_id: camera.blink_backyard
- delay:
hours: 0
minutes: 0
seconds: 2
milliseconds: 0
- variables:
snapshot_filename: blink_backyard_{{ now().strftime('%Y%m%d_%H%M%S') }}.jpg
- variables:
notification_id: blink_backyard_{{ now().strftime('%Y%m%d_%H%M%S_%f') }}
- action: camera.snapshot
target:
entity_id: camera.blink_backyard
data:
filename: /media/{{ snapshot_filename }}
- action: camera.snapshot
target:
entity_id: camera.blink_backyard
data:
filename: /config/www/{{ snapshot_filename }}
- delay:
hours: 0
minutes: 0
seconds: 2
milliseconds: 0
- action: ai_task.generate_data
continue_on_error: true
data:
task_name: Blink Backyard Camera Analysis
entity_id: ai_task.google_ai_task
instructions: Describe what you see in this image in brief, but make it a little
humorous. 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
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
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: '1783649304797'
alias: Motion Inside 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: state
entity_id:
- input_boolean.blink_inside_shed_camera_motion
to:
- 'on'
enabled: true
- 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: 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.blink_backyard_tree
data: {}
enabled: false
- delay:
hours: 0
minutes: 0
seconds: 10
milliseconds: 0
enabled: false
- action: homeassistant.update_entity
target:
entity_id: camera.blink_backyard_tree
- delay:
hours: 0
minutes: 0
seconds: 2
milliseconds: 0
- variables:
snapshot_filename: blink_Inshed_{{ now().strftime('%Y%m%d_%H%M%S') }}.jpg
- variables:
notification_id: blink_Inshed_{{ now().strftime('%Y%m%d_%H%M%S_%f') }}
- action: camera.snapshot
target:
entity_id: camera.blink_backyard_tree
data:
filename: /media/{{ snapshot_filename }}
- action: camera.snapshot
target:
entity_id: camera.blink_backyard_tree
data:
filename: /config/www/{{ snapshot_filename }}
- delay:
hours: 0
minutes: 0
seconds: 2
milliseconds: 0
- action: ai_task.generate_data
continue_on_error: true
data:
task_name: Blink InShed Camera Analysis
entity_id: ai_task.google_ai_task
instructions: Describe what you see in this image in brief, but make it a little
humorous. 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 Inside 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
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.''
}}'
notification_id: '{{ notification_id }}'
mode: queued
max: 10
- id: '1783736251030'
alias: 'Office: Teams Webhook Busy Light'
description: Triggers light based on Windows 11 Teams log file status changes
triggers:
- webhook_id: office_teams_meeting_status_webhook_secret_99
allowed_methods:
- POST
local_only: false
trigger: webhook
conditions: []
actions:
- choose:
- conditions:
- condition: template
value_template: '{{ trigger.json.status in [''busy'', ''do not disturb'']
}}'
sequence:
- target:
entity_id: light.night_light
data:
brightness_pct: 100
rgb_color:
- 255
- 0
- 0
action: light.turn_on
- conditions:
- condition: template
value_template: '{{ trigger.json.status in [''available'', ''offline'', ''away'']
}}'
sequence:
- target:
entity_id: light.night_light
data:
brightness_pct: 20
rgb_color:
- 255
- 255
- 255
action: light.turn_on
mode: single
- id: '1783737753660'
alias: 'Office: Manual Meeting Status Busy Light - Working Hours'
description: 'Work hours: Toggle controls Red/Green (Motion ignored). After hours
OR Away Mode: Pure motion night light (Toggle ignored).'
triggers:
- id: status_changed
entity_id: input_boolean.in_a_meeting
trigger: state
- id: motion_detected
entity_id: binary_sensor.night_light_occupancy
trigger: state
to: 'on'
- id: motion_cleared
entity_id: binary_sensor.night_light_occupancy
trigger: state
to: 'off'
conditions: []
actions:
- choose:
- conditions:
- condition: trigger
id: status_changed
- condition: state
entity_id: input_boolean.in_a_meeting
state: 'on'
- condition: state
entity_id: input_boolean.away_mode
state: 'off'
- condition: time
after: 08:00:00
before: '18:00:00'
weekday:
- mon
- tue
- wed
- thu
- fri
sequence:
- target:
entity_id: light.night_light
data:
brightness_pct: 100
rgb_color:
- 255
- 0
- 0
action: light.turn_on
- conditions:
- condition: trigger
id: status_changed
- condition: state
entity_id: input_boolean.in_a_meeting
state: 'off'
- condition: state
entity_id: input_boolean.away_mode
state: 'off'
- condition: time
after: 08:00:00
before: '18:00:00'
weekday:
- mon
- tue
- wed
- thu
- fri
sequence:
- target:
entity_id: light.night_light
data:
brightness_pct: 20
rgb_color:
- 5
- 245
- 45
action: light.turn_on
- conditions:
- condition: trigger
id: motion_detected
- condition: or
conditions:
- condition: state
entity_id: input_boolean.away_mode
state: 'on'
- condition: not
conditions:
- condition: time
after: 08:00:00
before: '18:00:00'
weekday:
- mon
- tue
- wed
- thu
- fri
sequence:
- target:
entity_id: light.night_light
data:
brightness_pct: 30
rgb_color:
- 255
- 255
- 255
action: light.turn_on
- conditions:
- condition: trigger
id: motion_cleared
- condition: or
conditions:
- condition: state
entity_id: input_boolean.away_mode
state: 'on'
- condition: not
conditions:
- condition: time
after: 08:00:00
before: '18:00:00'
weekday:
- mon
- tue
- wed
- thu
- fri
sequence:
- target:
entity_id: light.night_light
action: light.turn_off
mode: restart
- id: '1783738120074'
alias: 'Office: Webhook Toggle Meeting Status'
description: Toggles the meeting status boolean when the secret webhook URL is opened
triggers:
- webhook_id: toggle_my_meeting_status_secret_abc123
allowed_methods:
- POST
- GET
local_only: false
trigger: webhook
conditions: []
actions:
- target:
entity_id: input_boolean.in_a_meeting
action: input_boolean.toggle
mode: single
- id: '1783806626578'
alias: 'Office: TEST Meeting Status Lights'
description: 'DEDICATED TESTING: Forces Red/Green colors anytime the switch is toggled.
Disable production automation before using.'
triggers:
- entity_id: input_boolean.in_a_meeting
trigger: state
conditions: []
actions:
- choose:
- conditions:
- condition: state
entity_id: input_boolean.in_a_meeting
state: 'on'
sequence:
- target:
entity_id: light.night_light
data:
brightness_pct: 100
rgb_color:
- 255
- 0
- 0
action: light.turn_on
- conditions:
- condition: state
entity_id: input_boolean.in_a_meeting
state: 'off'
sequence:
- target:
entity_id: light.night_light
data:
brightness_pct: 20
rgb_color:
- 5
- 245
- 45
action: light.turn_on
mode: single
- id: '1783824363227'
alias: Downstairs Bathroom Light Control
description: Turn on bathroom switch when occupied, turn off after 30 minutes of
no occupancy.
triggers:
- entity_id: binary_sensor.downstairs_bathroom_occupancy
to: 'on'
id: motion_detected
trigger: state
- entity_id: binary_sensor.downstairs_bathroom_occupancy
to: 'off'
for:
hours: 0
minutes: 30
seconds: 0
id: motion_clear
trigger: state
conditions: []
actions:
- choose:
- conditions:
- condition: trigger
id: motion_detected
sequence:
- target:
entity_id: switch.downstairs_bathroom_switch
action: switch.turn_on
- conditions:
- condition: trigger
id: motion_clear
sequence:
- target:
entity_id: switch.downstairs_bathroom_switch
action: switch.turn_off
mode: restart
- id: '1783896963375'
alias: 'Office: Smart Button Toggles Meeting Status - IKEA BILRESA'
description: Toggles the meeting input boolean when the smart button is pressed
triggers:
- trigger: event
event_type: state_changed
event_data:
entity_id: event.office_button_button_1
conditions: []
actions:
- target:
entity_id: input_boolean.in_a_meeting
action: input_boolean.toggle
mode: single
- id: '1783901121760'
alias: Ikea BILRESA scroll wheel - Bedroom Switch
description: ''
use_blueprint:
path: BoGu5/kea BILRESA scroll wheel (sensors for scroll, events for press).yaml
input:
remote: c7289314a586fc3739316abfeee0cdf5
click_action_ch1:
- action: light.toggle
metadata: {}
target:
entity_id: light.bedroom_lights
data: {}
scroll_wheel_target_ch1:
- light.bedroom_lights
scroll_wheel_mode_ch1: 'lights: color temp only'
- id: '1783904189553'
alias: IKEA Bilresa Scrollwheel - Bedroom Light Control V1 - Atomic
description: ''
use_blueprint:
path: stone13/ikea_bilresa_atomic_v1.yaml
input:
light_entity: light.bedroom_lights
sensor_1: sensor.bedroom_switch_current_switch_position_1
sensor_2: sensor.bedroom_switch_current_switch_position_2
sensor_4: sensor.bedroom_switch_current_switch_position_4
sensor_5: sensor.bedroom_switch_current_switch_position_5
sensor_7: sensor.bedroom_switch_current_switch_position_7
sensor_8: sensor.office_scroll_wheel_current_switch_position_8
event_taste_1: event.bedroom_switch_button_3
event_taste_2: event.bedroom_switch_button_6
event_taste_3: event.bedroom_switch_button_9
scroll_logic_4_5: brightness
scroll_logic_7_8: brightness
- id: '1783905541495'
alias: Ikea Bilresa Switch Bedroom Light Control
description: ''
use_blueprint:
path: jhol-byte/Ikea_bilresa_scroll_wheel.yaml
input:
remote: c7289314a586fc3739316abfeee0cdf5
click_action_ch1:
- action: light.toggle
metadata: {}
target:
entity_id: light.bedroom_lights
data: {}
scroll_wheel_target_ch1:
- light.bedroom_lights
- id: '1783906561328'
alias: IKEA BILRESA - Light Controller for PLAYROOM TEST2
description: ''
use_blueprint:
path: SvKRO/ha-blueprint-ikea-bilresa-scrollwheel_en.yaml
input:
remote_device: 353fb9eb9f1b2a138e468b02fb9fbf06
input_click_1:
- action: light.toggle
metadata: {}
target:
device_id: 2f8c5ab2ca0d4be31919fba6df365813
data: {}
input_light_1:
device_id: 2f8c5ab2ca0d4be31919fba6df365813
input_mode_1: brightness
input_long_1: []
input_double_1: []
input_sens_1: 15
input_transition_1: 34
input_light_2:
device_id: 2f8c5ab2ca0d4be31919fba6df365813
input_sens_2: 15
input_light_3:
entity_id: light.bedroom_lights
input_sens_3: 10
input_transition_2: 0
- id: '1783909375854'
alias: 'Office: Playroom Light Toggle - IKEA BILRESA'
description: Toggles the meeting input boolean when the smart button is pressed
triggers:
- trigger: event
event_type: state_changed
event_data:
entity_id: event.office_button_button_2
conditions: []
actions:
- action: light.toggle
metadata: {}
target:
device_id: 2f8c5ab2ca0d4be31919fba6df365813
data: {}
mode: single
- id: '1783960650360'
alias: 'Bedroom: Ikea Bilresa Scrollwheel - Light Control'
description: ''
use_blueprint:
path: jhol-byte/Ikea_bilresa_scroll_wheel.yaml
input:
remote: c7289314a586fc3739316abfeee0cdf5
click_action_ch1:
- action: light.toggle
metadata: {}
target:
entity_id: light.bedroom_lights
data: {}
scroll_wheel_target_ch1:
- light.bedroom_lights
scroll_wheel_mode_ext_ch1: instant
long_click_action_ch1:
- action: light.turn_on
metadata: {}
target:
entity_id: light.bedroom_lights
data:
brightness_pct: 80
double_click_action_ch1:
- action: light.toggle
metadata: {}
target:
entity_id: light.bedroom_lights
data:
brightness_pct: 25
dim_turns_lights_on: true
click_action_ch2:
- action: light.toggle
metadata: {}
target:
entity_id: light.bedroom_lights
data: {}
scroll_wheel_target_ch2:
- light.bedroom_lights
scroll_wheel_mode_ext_ch2: instant
click_action_ch3:
- action: light.toggle
metadata: {}
target:
entity_id: light.bedroom_lights
data: {}
scroll_wheel_target_ch3:
- light.bedroom_lights
scroll_wheel_mode_ext_ch3: instant
- id: '1783962246983'
alias: 'OFFICE: IKEA BILRESA E2489 Dual Button (Matter) - In Meeting and Away Mode'
description: Ikea BILRESA E2489 Dual Button controls in Meeting toggle, and enable
Away Mode
use_blueprint:
path: censay/ikea-bilresa-e2489-matter-smart-button.yaml
input:
target_device: 0c00a80e3106a9d7089f44c4781e0187
button1_event: event.office_button_button_1
button2_event: event.office_button_button_2
button1_single:
- action: input_boolean.toggle
metadata: {}
target:
entity_id: input_boolean.in_a_meeting
data: {}
button2_single:
- action: input_boolean.toggle
metadata: {}
target:
entity_id: input_boolean.away_mode
data: {}
button2_double:
- choose:
- conditions:
- condition: template
value_template: '{{ states(''input_text.office_lamp_previous_color'')
== '''' }}'
sequence:
- action: light.turn_on
target:
entity_id: light.office_lamp
- action: input_text.set_value
target:
entity_id: input_text.office_lamp_previous_color
data:
value: '{{ state_attr(''light.office_lamp'', ''rgb_color'') | join('','')
}}'
- action: light.turn_on
target:
entity_id: light.office_lamp
data:
rgb_color:
- 135
- 206
- 250
default:
- action: light.turn_on
target:
entity_id: light.office_lamp
data:
rgb_color: '{{ states(''input_text.office_lamp_previous_color'').split('','')
| map(''int'') | list }}'
- action: input_text.set_value
target:
entity_id: input_text.office_lamp_previous_color
data:
value: ''
button1_long_press: []
button2_long_press: []
- id: '1783972932942'
alias: 'Notification: Office Meeting Status'
description: Sends a notification when entering or leaving a meeting
triggers:
- entity_id: input_boolean.in_a_meeting
to: 'on'
id: meeting_started
trigger: state
- entity_id: input_boolean.in_a_meeting
to: 'off'
id: meeting_ended
trigger: state
conditions: []
actions:
- choose:
- alias: Meeting Started Notification
conditions:
- condition: trigger
id: meeting_started
sequence:
- action: notify.notify
data:
title: Meeting Active
message: "Your status is now set to: \U0001F534 DO NOT ENTER"
- alias: Meeting Ended Notification
conditions:
- condition: trigger
id: meeting_ended
sequence:
- action: notify.notify
data:
title: Meeting Ended
message: "Your status is now set to: \U0001F7E2 AVAILABLE"
- id: '1784037118280'
alias: 'Blink Safeguard: Auto Reset Stuck Toggles'
description: Forces stuck Blink helper toggles to turn off after 2 minutes and logs
the event
triggers:
- trigger: state
entity_id:
- input_boolean.blink_backyard_camera_motion
- input_boolean.blink_front_camera_motion
- input_boolean.blink_inside_shed_camera_motion
- input_boolean.blink_shed_camera_motion
to: 'on'
for:
minutes: 2
conditions: []
actions:
- action: logbook.log
data:
name: Blink Safeguard
message: Alexa failed to clear motion. Forcing auto-reset.
entity_id: '{{ trigger.entity_id }}'
- action: input_boolean.turn_off
target:
entity_id: '{{ trigger.entity_id }}'
mode: parallel
- id: '1784070582456'
alias: 'Office: Lamp and lights control with IKEA Scroll Wheel'
description: ''
use_blueprint:
path: jhol-byte/Ikea_bilresa_scroll_wheel.yaml
input:
remote: c9c7e25e54eb6ac497a6791fe9cf70fe
click_action_ch1:
- action: light.toggle
metadata: {}
target:
device_id: 2f8c5ab2ca0d4be31919fba6df365813
data: {}
scroll_wheel_target_ch1:
- light.playroom_light
scroll_wheel_mode_ext_ch1: instant
long_click_action_ch1:
- action: light.turn_on
metadata: {}
target:
entity_id: light.playroom_light
data:
brightness_step_pct: 30
double_click_action_ch1: []
click_action_ch2:
- action: light.toggle
metadata: {}
target:
entity_id: light.office_lamp
data:
color_temp_kelvin: 5564
scroll_wheel_target_ch2:
- light.office_lamp
scroll_wheel_mode_ext_ch2: instant
double_click_action_ch2: []
scroll_wheel_mode_ch2: 'lights: dim'
on_hold_action_ch2:
- action: light.turn_on
metadata: {}
target:
entity_id: light.office_lamp
data:
color_temp_kelvin: 5765
triple_click_action_ch2:
- action: light.turn_on
metadata: {}
target:
entity_id: light.office_lamp
data:
color_temp_kelvin: 2348
click_action_ch3:
- action: light.toggle
metadata: {}
target:
entity_id: light.bedroom_lamp
data: {}
scroll_wheel_target_ch3:
- light.bedroom_lamp
scroll_wheel_mode_ext_ch3: instant
on_hold_action_ch1:
- action: light.turn_on
metadata: {}
target:
entity_id: light.playroom_light
data:
brightness_pct: 30
dim_turns_lights_on: true
- id: '1784073759556'
alias: 'Office: Desk Lamp Meeting Alert'
description: Flashes the desk lamp red when meeting starts, green when it ends,
then returns to original state.
triggers:
- trigger: state
entity_id: input_boolean.in_a_meeting
to: 'on'
id: meeting_on
- trigger: state
entity_id: input_boolean.in_a_meeting
to: 'off'
id: meeting_off
conditions:
- condition: state
entity_id: input_boolean.meeting_lamp_override
state: 'off'
- condition: state
entity_id: input_boolean.away_mode
state: 'off'
actions:
- choose:
- conditions:
- condition: trigger
id: meeting_on
sequence:
- action: scene.create
data:
scene_id: desk_lamp_before_alert
snapshot_entities:
- light.office_lamp
- action: light.turn_on
target:
entity_id: light.office_lamp
data:
brightness_pct: 100
hs_color:
- 0
- 100
transition: 0.5
- delay:
seconds: 1.5
- action: scene.turn_on
target:
entity_id: scene.desk_lamp_before_alert
data:
transition: 1
- conditions:
- condition: trigger
id: meeting_off
sequence:
- action: scene.create
data:
scene_id: desk_lamp_before_alert
snapshot_entities:
- light.office_lamp
- action: light.turn_on
target:
entity_id: light.office_lamp
data:
brightness_pct: 100
hs_color:
- 120
- 100
transition: 0.5
- delay:
seconds: 1.5
- action: scene.turn_on
target:
entity_id: scene.desk_lamp_before_alert
data:
transition: 1
default: []
mode: queued
max: 2
- id: '1784153893584'
alias: 'Office: Manual Meeting Status Busy Light (Night Light) - Working Hours +
Motion Detection - v2'
description: 'Work hours: Automatically turns Green or Red at 8 AM depending on
status. Toggle controls Red/Green. At 6 PM, light clears and switches to motion
detection. After hours OR Away Mode: Pure motion night light. Instant transition
when Away changes. Only triggers motion if dark.'
triggers:
- id: status_changed
entity_id: input_boolean.in_a_meeting
trigger: state
- id: away_changed
entity_id: input_boolean.away_mode
trigger: state
- id: motion_detected
entity_id: binary_sensor.night_light_occupancy
trigger: state
to: 'on'
- id: motion_cleared
entity_id: binary_sensor.night_light_occupancy
trigger: state
to: 'off'
- id: work_day_started
trigger: time
at: 08:00:00
- id: work_day_ended
trigger: time
at: '18:00:00'
conditions: []
actions:
- variables:
is_work_hours: '{{ 8 <= now().hour < 18 and now().isoweekday() in [1,2,3,4,5]
}}'
is_away: '{{ is_state(''input_boolean.away_mode'', ''on'') }}'
is_dark: '{{ states(''sensor.night_light_illuminance'') | float(0) < 15 }}'
- choose:
- alias: '--- WORKING HOURS MODE ---'
conditions:
- condition: template
value_template: '{{ is_work_hours and not is_away and (trigger.id in [''status_changed'',
''work_day_started''] or (trigger.id == ''away_changed'' and not is_away))
}}'
sequence:
- choose:
- alias: 'Meeting is active: Set light to solid Red (100%)'
conditions:
- condition: state
entity_id: input_boolean.in_a_meeting
state: 'on'
sequence:
- action: light.turn_on
target:
entity_id: light.night_light
data:
brightness_pct: 100
rgb_color:
- 255
- 0
- 0
- alias: 'Meeting is inactive: Set light to solid Green (20%)'
conditions:
- condition: state
entity_id: input_boolean.in_a_meeting
state: 'off'
sequence:
- action: light.turn_on
target:
entity_id: light.night_light
data:
brightness_pct: 30
rgb_color:
- 5
- 245
- 45
- alias: '--- WORK DAY ENDED: CLEAR LIGHT ---'
conditions:
- condition: template
value_template: '{{ trigger.id == ''work_day_ended'' }}'
sequence:
- action: light.turn_off
target:
entity_id: light.night_light
- alias: '--- AFTER HOURS / AWAY: MOTION DETECTED ---'
conditions:
- condition: template
value_template: '{{ is_dark and (not is_work_hours or is_away) and trigger.id
== ''motion_detected'' }}'
sequence:
- action: light.turn_on
target:
entity_id: light.night_light
data:
brightness_pct: 40
color_temp_kelvin: 2700
- alias: '--- AFTER HOURS / AWAY: MOTION CLEARED ---'
conditions:
- condition: template
value_template: '{{ (not is_work_hours or is_away) and trigger.id == ''motion_cleared''
}}'
sequence:
- delay: 00:00:05
- action: light.turn_off
target:
entity_id: light.night_light
- alias: '--- INSTANT AWAY TRANSITION ---'
conditions:
- condition: template
value_template: '{{ trigger.id == ''away_changed'' and is_away }}'
sequence:
- action: light.turn_off
target:
entity_id: light.night_light
- alias: '--- FALLBACK: MEETING ENDS AFTER HOURS ---'
conditions:
- condition: template
value_template: '{{ not is_work_hours and trigger.id == ''status_changed''
and is_state(''input_boolean.in_a_meeting'', ''off'') }}'
sequence:
- action: light.turn_off
target:
entity_id: light.night_light
mode: restart
- id: '1784246257858'
alias: Sync Alexa Volume Slider
description: Syncs the Alexa Master Volume slider with the currently selected speaker.
triggers:
- entity_id: input_number.alexa_master_volume
id: slider_changed
trigger: state
- entity_id: input_select.alexa_target_device
id: speaker_changed
trigger: state
conditions: []
actions:
- choose:
- conditions:
- condition: trigger
id: slider_changed
sequence:
- action: media_player.volume_set
target:
entity_id: '{{ states(''input_select.alexa_target_device'') }}'
data:
volume_level: '{{ states(''input_number.alexa_master_volume'') | float /
100 }}'
- conditions:
- condition: trigger
id: speaker_changed
sequence:
- action: input_number.set_value
target:
entity_id: input_number.alexa_master_volume
data:
value: "{% set target = states('input_select.alexa_target_device') %} {%
if state_attr(target, 'volume_level') != none %}\n {{ (state_attr(target,
'volume_level') | float * 100) | round(0) }}\n{% else %}\n 20\n{% endif
%}"
mode: restart
- id: ai_agent_auto_1784596277269
alias: Blink Shed Motion Notification
description: Sends a notification when motion is detected by the Blink Backyard
Shed camera.
triggers:
- entity_id: binary_sensor.blink_backyard_shed_motion
to: 'on'
trigger: state
- entity_id:
- binary_sensor.blink_backyard_tree_motion
to:
- 'on'
trigger: state
- entity_id:
- binary_sensor.blink_front_motion
to:
- 'on'
trigger: state
- entity_id:
- binary_sensor.blink_backyard_tree_motion
to:
- 'on'
trigger: state
conditions: []
actions:
- data:
title: Motion Detected!
message: Motion detected in the Blink Backyard Cameras using HomeBridge.
action: persistent_notification.create
mode: single
- id: '1784597653614'
alias: New automation
description: ''
triggers: []
conditions: []
actions:
- action: webrtc.create_link
metadata: {}
data:
open_limit: 1
time_to_live: 60
entity: camera.blink_backyard_shed
mode: single
- id: '1784599010203'
alias: Motion Backyard - AI Description - Version 2
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: state
entity_id:
- input_boolean.blink_backyard_camera_motion
to:
- 'on'
enabled: true
- 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: false
conditions:
- condition: template
value_template: '{{ (now() - state_attr(this.entity_id, ''last_triggered'')).total_seconds()
> 60 }}'
- condition: template
value_template: '{{ trigger.event.data.new_state.attributes.event_type in [''motion'',
''person'', ''animal'', ''chime''] }}'
enabled: false
actions:
- action: shell_command.cleanup_blink_snapshots
- action: switch.turn_on
target:
entity_id: switch.backyard_refresh_snapshot
- delay:
hours: 0
minutes: 0
seconds: 20
milliseconds: 0
- action: homeassistant.update_entity
target:
entity_id: camera.blink_backyard
enabled: true
data:
entity_id:
- camera.blink_backyard
- delay:
hours: 0
minutes: 0
seconds: 3
milliseconds: 0
- action: blink.trigger_camera
target:
entity_id: camera.blink_backyard
data: {}
enabled: false
- delay:
hours: 0
minutes: 0
seconds: 10
milliseconds: 0
enabled: false
- variables:
snapshot_filename: blink_backyard_{{ now().strftime('%Y%m%d_%H%M%S') }}.jpg
- variables:
notification_id: blink_backyard_{{ now().strftime('%Y%m%d_%H%M%S_%f') }}
- action: camera.snapshot
target:
entity_id: camera.blink_backyard
data:
filename: /media/{{ snapshot_filename }}
- action: camera.snapshot
target:
entity_id: camera.blink_backyard
data:
filename: /config/www/{{ snapshot_filename }}
- delay:
hours: 0
minutes: 0
seconds: 2
milliseconds: 0
- action: ai_task.generate_data
continue_on_error: true
data:
task_name: Blink Backyard Camera Analysis
entity_id: ai_task.ollama_ai_task_video
instructions: Describe what you see in this image in brief, but make it a very
funny. Focus on any people, objects, animals or activities.
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
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
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: '1784601034537'
alias: Motion Front Door - AI Description - Version 2
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
- trigger: state
entity_id:
- input_boolean.blink_front_camera_motion
to:
- 'on'
enabled: true
conditions:
- condition: template
value_template: '{{ (now() - state_attr(this.entity_id, ''last_triggered'')).total_seconds()
> 60 }}'
- condition: template
value_template: '{{ trigger.event.data.new_state.attributes.event_type in [''motion'',
''person'', ''animal'', ''chime''] }}'
enabled: false
actions:
- action: shell_command.cleanup_blink_snapshots
- action: switch.turn_on
target:
entity_id: switch.front_refresh_snapshot
- delay:
hours: 0
minutes: 0
seconds: 20
milliseconds: 0
- action: homeassistant.update_entity
target:
entity_id: camera.front
enabled: true
data:
entity_id:
- camera.front
- delay:
hours: 0
minutes: 0
seconds: 3
milliseconds: 0
- action: blink.trigger_camera
target:
entity_id: camera.front
data: {}
enabled: false
- delay:
hours: 0
minutes: 0
seconds: 10
milliseconds: 0
enabled: false
- 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.blink_front
data:
filename: /media/{{ snapshot_filename }}
- action: camera.snapshot
target:
entity_id: camera.blink_front
data:
filename: /config/www/{{ snapshot_filename }}
- delay:
hours: 0
minutes: 0
seconds: 2
milliseconds: 0
- action: ai_task.generate_data
continue_on_error: true
data:
task_name: Blink Front Camera Analysis
entity_id: ai_task.ollama_ai_task_video
instructions: Describe what you see in this image in brief, but make it a very
funny. Focus on any people, objects, animals or activities.
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: persistent_notification.create
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 }})'
notification_id: '{{ notification_id }}'
mode: queued
max: 10
- id: '1784601274723'
alias: Motion Shed - AI Description - Version 2
description: Takes a snapshot when the shed's Blink camera detects motion, analyzes
it with AI, and sends a mobile and persistent notification. Structurally mirrors
the working Front automation (same switch/camera device pairing). If the AI description
still doesn't match the physical shed, camera.backyard_shed may be mislabeled
in the HomeKit Controller integration -- check its live feed against camera.garage_side
and camera.backyard_tree to confirm which physical camera is which, then rename
if needed.
triggers:
- trigger: state
entity_id: input_boolean.blink_shed_camera_motion
to: 'on'
enabled: true
- 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: false
conditions:
- condition: template
value_template: '{{ (now() - state_attr(this.entity_id, ''last_triggered'')).total_seconds()
> 60 }}'
- condition: template
value_template: '{{ trigger.event.data.new_state.attributes.event_type in [''motion'',
''person'', ''animal'', ''chime''] }}'
enabled: false
actions:
- action: shell_command.cleanup_blink_snapshots
- action: switch.turn_on
target:
entity_id: switch.backyard_shed_refresh_snapshot
- delay:
hours: 0
minutes: 0
seconds: 30
milliseconds: 0
- action: homeassistant.update_entity
target:
entity_id: camera.blink_backyard_shed
enabled: true
data:
entity_id:
- camera.blink_backyard_shed
- delay:
hours: 0
minutes: 0
seconds: 5
milliseconds: 0
- action: camera.record
target:
entity_id:
- camera.blink_backyard_shed
data:
duration: 10
lookback: 0
filename: /media/blinkshed.mp4
enabled: false
- delay:
hours: 0
minutes: 0
seconds: 10
milliseconds: 0
enabled: false
- variables:
snapshot_filename: blink_shed_{{ now().strftime('%Y%m%d_%H%M%S') }}.jpg
- variables:
notification_id: blink_backyard_{{ now().strftime('%Y%m%d_%H%M%S_%f') }}
- action: camera.snapshot
target:
entity_id: camera.blink_backyard_shed
data:
filename: /media/{{ snapshot_filename }}
- action: camera.snapshot
target:
entity_id: camera.blink_backyard_shed
data:
filename: /config/www/{{ snapshot_filename }}
- delay:
hours: 0
minutes: 0
seconds: 2
milliseconds: 0
- action: ai_task.generate_data
continue_on_error: true
response_variable: ai_profile
data:
task_name: Blink Shed Camera Analysis
entity_id: ai_task.ollama_ai_task_video
instructions: Describe what you see in this image in brief, but make it a very
funny. Focus on any people, objects, animals or activities.
attachments:
- media_content_id: media-source://media_source/local/{{ snapshot_filename }}
media_content_type: image/jpeg
- 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: '1784601377055'
alias: Motion Garage - AI Description - Version 2
description: Takes a snapshot when garage motion is detected and analyzes it with
AI. Deliberately uses the 'backyard_tree' Blink camera (switch.backyard_tree_refresh_snapshot
/ camera.backyard_tree) as the garage-monitoring camera -- entity names don't
match the physical location, but this pairing is intentional, not a bug.
triggers:
- trigger: state
entity_id:
- input_boolean.blink_inside_shed_camera_motion
to:
- 'on'
enabled: true
- 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: false
conditions:
- condition: template
value_template: '{{ (now() - state_attr(this.entity_id, ''last_triggered'')).total_seconds()
> 60 }}'
- condition: template
value_template: '{{ trigger.event.data.new_state.attributes.event_type in [''motion'',
''person'', ''animal'', ''chime''] }}'
enabled: false
actions:
- action: shell_command.cleanup_blink_snapshots
- action: switch.turn_on
target:
entity_id: switch.backyard_tree_refresh_snapshot
- delay:
hours: 0
minutes: 0
seconds: 30
milliseconds: 0
- action: homeassistant.update_entity
target:
entity_id: camera.blink_backyard_tree
enabled: true
data:
entity_id:
- camera.blink_backyard_tree
- delay:
hours: 0
minutes: 0
seconds: 5
milliseconds: 0
- action: blink.trigger_camera
target:
entity_id: camera.blink_backyard_tree
data: {}
enabled: false
- delay:
hours: 0
minutes: 0
seconds: 10
milliseconds: 0
enabled: false
- variables:
snapshot_filename: blink_Inshed_{{ now().strftime('%Y%m%d_%H%M%S') }}.jpg
- variables:
notification_id: blink_Inshed_{{ now().strftime('%Y%m%d_%H%M%S_%f') }}
- action: camera.snapshot
target:
entity_id: camera.blink_backyard_tree
data:
filename: /media/{{ snapshot_filename }}
- action: camera.snapshot
target:
entity_id: camera.blink_backyard_tree
data:
filename: /config/www/{{ snapshot_filename }}
- delay:
hours: 0
minutes: 0
seconds: 2
milliseconds: 0
- action: ai_task.generate_data
continue_on_error: true
data:
task_name: Blink InShed Camera Analysis
entity_id: ai_task.ollama_ai_task_video
instructions: Describe what you see in this image in brief, but make it a very
funny. Focus on any people, objects, animals or activities.
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 - Garage
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 - Garage
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: '1785027869879'
alias: Alfred Lock - Silent Force Hardware Sync
description: Mutes living room Echo, forces Alexa to check physical lock state,
and restores volume.
triggers:
- minutes: /15
trigger: time_pattern
actions:
- action: scene.create
data:
scene_id: echo_volume_snapshot
snapshot_entities:
- media_player.living_room_1_2
- action: media_player.volume_set
target:
entity_id: media_player.living_room_1_2
data:
volume_level: 0
- action: media_player.play_media
target:
entity_id: media_player.living_room_1_2
data:
media:
media_content_id: Is the front door locked?
media_content_type: custom
metadata: {}
- delay:
seconds: 5
- action: scene.turn_on
target:
entity_id: scene.echo_volume_snapshot
mode: single
- id: '1785108022773'
alias: Alfred Lock - Auto Sync on Door Contact
description: Forces a lock state resync whenever the front door opens or closes.
triggers:
- entity_id: binary_sensor.front_door
to:
- open
- 'off'
trigger: state
actions:
- action: homeassistant.update_entity
target:
entity_id: input_boolean.alfred_lock_sync_switch
- action: homeassistant.update_entity
target:
entity_id: lock.alfred_front_door
mode: single
- id: doorbell_flash_kitchen_lights
alias: 'Doorbell: Flash Kitchen Lights'
description: Flashes all kitchen lights when the front doorbell rings, then restores
their original state (on or off).
triggers:
- trigger: state
entity_id: event.front_door_front_door_chime
conditions: []
actions:
- action: scene.create
data:
scene_id: kitchen_lights_before_doorbell
snapshot_entities:
- light.kitchen_group_kitchen_group_home_kitchen_sink_light
- light.kitchen_island_switch
- light.kitchen_kitchen_home_kitchen
- light.kitchen_kitchen_home_kitchen_group
- light.kitchen_spotlight_switch
- action: light.turn_on
target:
entity_id:
- light.kitchen_group_kitchen_group_home_kitchen_sink_light
- light.kitchen_island_switch
- light.kitchen_kitchen_home_kitchen
- light.kitchen_kitchen_home_kitchen_group
- light.kitchen_spotlight_switch
data:
flash: long
- delay:
seconds: 5
- action: scene.turn_on
target:
entity_id: scene.kitchen_lights_before_doorbell
data:
transition: 1
mode: single
- id: '1785339249610'
alias: 'TEST: Nest Snapshot Capture'
description: Manual test for nest_snapshot.capture. Trigger from Developer Tools
after restart.
triggers: []
actions:
- action: nest_snapshot.capture
data:
entity_id: camera.front_door_front_door
filename: /media/nest_snapshot_test_{{ now().strftime('%Y%m%d_%H%M%S') }}.jpg
mode: single
- id: '1785688553432'
alias: 'Basement: Switch Toggles Living Room Lights'
description: Ikea BILRESA E2489 Dual Button (Basement Switch) toggles the Dining
Room Switch light on Button 1 single press. Button 2 single press dims to 30%
and restores the previous brightness.
use_blueprint:
path: censay/ikea-bilresa-e2489-matter-smart-button.yaml
input:
target_device: 2101b0e6d9ae7b4b2e1cb727a9ed42f0
button1_event: event.basement_switch_button_1
button2_event: event.basement_switch_button_2
button1_single:
- action: light.toggle
metadata: {}
target:
entity_id: light.living_room_living_room_home_living_room
data: {}
button2_single:
- choose:
- conditions:
- condition: template
value_template: '{{ states(''input_text.living_room_previous_brightness'')
in ['''', ''unknown'', ''unavailable'', none] }}'
sequence:
- action: light.turn_on
target:
entity_id: light.living_room_living_room_home_living_room
- action: input_text.set_value
target:
entity_id: input_text.living_room_previous_brightness
data:
value: '{{ state_attr(''light.living_room_living_room_home_living_room'',
''brightness'') }}'
- action: light.turn_on
target:
entity_id: light.living_room_living_room_home_living_room
data:
brightness_pct: 30
default:
- action: light.turn_on
target:
entity_id: light.living_room_living_room_home_living_room
data:
brightness: '{{ states(''input_text.living_room_previous_brightness'')
| int }}'
- action: input_text.set_value
target:
entity_id: input_text.living_room_previous_brightness
data:
value: ''
- id: '1786066880942'
alias: 3D Print Started - Playroom Light & Basement Heat
description: When an OctoPrint print starts (MQTT event), turn on the playroom light
and set the basement to 22 degrees C.
triggers:
- trigger: mqtt
topic: octoPrint/event/PrintStarted
actions:
- action: light.turn_on
target:
entity_id: light.playroom_light
- action: light.turn_on
target:
entity_id: light.bedroom_lamp
- action: climate.set_temperature
target:
entity_id: climate.basement
data:
temperature: 22
hvac_mode: heat
mode: single
initial_state: false
- id: '1786068561172'
alias: 3D Printer Running - Playroom Light & Basement Heat
description: When the 3D printer running helper turns on (print started), turn on
the playroom light and bedroom lamp and set the basement to 22 degrees C. When
it turns off (print ended), turn off only the playroom light.
triggers:
- trigger: state
entity_id: input_boolean.3d_printer_running
to: 'on'
id: printer_started
- trigger: state
entity_id: input_boolean.3d_printer_running
to: 'off'
id: printer_stopped
actions:
- choose:
- conditions:
- condition: trigger
id: printer_started
sequence:
- action: light.turn_on
target:
entity_id: light.playroom_light
- action: light.turn_on
target:
entity_id: light.bedroom_lamp
- action: climate.set_temperature
target:
entity_id: climate.basement
data:
temperature: 22
hvac_mode: heat
- conditions:
- condition: trigger
id: printer_stopped
sequence:
- delay:
minutes: 10
- action: light.turn_off
target:
entity_id: light.playroom_light
mode: restart