- 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 - 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: - action: light.turn_off target: entity_id: light.playroom_light mode: single