- id: '1674709536293' alias: aaaaattesttT1-Pro-(CTP-R01) description: testing trace: stored_traces: 10 use_blueprint: path: SirGoodenough/Zigbee2MQTT-Aqara-Magic-Cube-T1-Pro-CTP-R01-Xiaomi-Lumi.yaml input: topic: zigbee2mqtt/testcagl02 scene_throw: - action: script.say_a_thing data: message: Scene Throw entities: media_player.jennys_room_display action_throw: - action: script.say_a_thing data: message: Action Throw entities: media_player.jennys_room_display action_rotate_ccw_face_6: - action: script.cube_long_short_control_bp data: angle: '{{ trigger.payload_json.action_angle | default(0.1) | float(0.2) }}' short_entity: light.kitchen_down_lights long_entity: light.kitchensink scene_rotate_cw_face_3: - action: script.volume4cube data: angle: '{{ trigger.payload_json.action_angle | default(0.1) | float(0.2) }}' mp: media_player.jennys_room_display scene_rotate_ccw_face_3: - action: script.volume4cube data: angle: '{{ trigger.payload_json.action_angle | default(0.1) | float(0.2) }}' mp: media_player.jennys_room_display scene_rotate_cw_face_4: - action: input_boolean.turn_on data: {} target: entity_id: input_boolean.test_color scene_rotate_ccw_face_4: - action: input_boolean.turn_off data: {} target: entity_id: input_boolean.test_color action_flip_from_any_to_face_2: [] - id: '1733339152395' alias: test of dryer current sense description: '' triggers: - trigger: numeric_state entity_id: - sensor.dryer_power_produced_energy attribute: current below: 0.05 conditions: [] actions: - action: script.tts_dryer_done data: live_speaker: - media_player.kitchen_speaker mode: single - id: '1733964041898' alias: Party is over rodent description: Turns on the sonic screwdriver when Mom's light is off triggers: - trigger: state entity_id: - light.mom_light to: 'off' for: hours: 0 minutes: 2 seconds: 0 id: Wax on - trigger: state entity_id: - light.mom_light to: 'on' for: hours: 0 minutes: 2 seconds: 0 id: wax off conditions: [] actions: - choose: - conditions: - condition: trigger id: - Wax on sequence: - action: switch.turn_on data: {} target: label_id: sonic_screwdriver default: - action: switch.turn_off data: {} target: label_id: sonic_screwdriver mode: single - id: '1749576797273' alias: Suspend_Morning_AC description: Pause the AC in the morning if getting up early triggers: - trigger: state entity_id: - input_boolean.suspend to: 'on' not_from: - unknown - unavailable id: Suspend - trigger: time at: 09:00:00 id: Release conditions: [] actions: - choose: - conditions: - alias: If the button was pushed and cooling is enabled & before alarm time condition: and conditions: - condition: trigger id: - Suspend - condition: state entity_id: input_boolean.bedroom_auto_fan state: 'on' - condition: time before: 08:58:18 sequence: - action: input_boolean.turn_off target: entity_id: input_boolean.bedroom_auto_fan data: {} - conditions: - alias: If it's cooling season & after alarm time & suspend is on condition: and conditions: - condition: numeric_state entity_id: sensor.gw2000b_v2_2_4_feels_like_temperature above: 42 - condition: trigger id: - Release - condition: state entity_id: input_boolean.suspend state: 'on' sequence: - action: input_boolean.turn_on target: entity_id: - input_boolean.bedroom_auto_fan data: {} - action: input_boolean.turn_off target: entity_id: input_boolean.suspend data: {} - conditions: - condition: time after: 08:58:21 sequence: - action: input_boolean.turn_on target: entity_id: - input_boolean.bedroom_auto_fan data: {} - action: input_boolean.turn_off target: entity_id: input_boolean.suspend data: {} mode: single - id: 33b1583b-dde3-4228-9c88-a0d457ddac6a mode: single max_exceeded: silent alias: Dust Collector button turn on or off via button initial_state: true triggers: - trigger: state entity_id: binary_sensor.dust_collector_button1 from: 'off' to: 'on' actions: - action: switch.toggle entity_id: switch.dust_collector - delay: 00:00:03 - id: ead11d4f-da6c-4bc2-93a3-6500be201114 mode: restart alias: Dust Collector Turn On Watchdog initial_state: true triggers: - trigger: state entity_id: switch.dust_collector to: 'on' actions: - alias: Dust Collector Watchdog delay: minutes: 45 - action: switch.turn_off entity_id: switch.dust_collector - id: 92312f77-02af-4a49-a728-978ff6b08229 alias: Dryer Status initial_state: true triggers: - trigger: state entity_id: binary_sensor.dryer_2 from: 'on' to: 'off' for: seconds: 30 actions: - action: script.tts_dryer_done mode: single max_exceeded: silent - id: 924088c3-c0e6-4d59-bebf-6442c522381b alias: Washer Status description: Announce when washer is done triggers: - trigger: state entity_id: - binary_sensor.washer_running from: 'on' to: 'off' for: seconds: 20 conditions: null actions: - action: script.tts_wash_machine_done mode: single max_exceeded: silent - id: adb7ce4b-324f-4c17-a519-758e42f2166e alias: Wash Machine Dryer Daily Reboot initial_state: true triggers: trigger: time at: 04:49:12 actions: - action: mqtt.publish data: topic: wash_machine/cmnd/restart payload: '1' - action: mqtt.publish data: topic: Dryer3/cmnd/restart payload: '1' mode: single max_exceeded: silent - id: '1674983375635' alias: Humidifier Proportional Control description: Modulate the water flow to the Furnace Humidifer. trace: stored_traces: 10 use_blueprint: path: SirGoodenough/HumidifierWaterThrottleControl.yaml input: mqtt_topic: humidifier/cmnd/var2 humidifier: humidifier.house_humidity humidity: sensor.house_humidity_group power_1: switch.humidifier_enable scalar: 2.8 - id: d0cbe0e5-10cb-407f-a535-6aaa3146f91a alias: Bathroom Heat Failsafe initial_state: true triggers: - trigger: state entity_id: switch.bathroom_heater to: 'on' - trigger: state entity_id: input_boolean.bathroom_heater_auto_on to: 'on' actions: - action: script.upstairs_bath_heater_watchdog - action: script.tts_bathroom_heat_on mode: single - id: 2d1ec212-0443-44c6-883b-85757c900e92 alias: Bathroom is Overheated initial_state: true triggers: trigger: numeric_state entity_id: sensor.bt3_bathroom2_temperature above: 85 conditions: - '{% from ''logic_chekr.jinja'' import true_all %} {{- true_all( [''switch.bathroom_heater''] ) | bool -}} ' actions: - action: script.upstairs_bath_heater_off - action: script.media_player_bathroom - delay: 00:00:06 - action: script.tts_for_bathroom_overheat - id: bd61ef61-ae56-47ae-9902-6166657aceac alias: Bathroom Door is Open initial_state: true triggers: trigger: state entity_id: switch.bathroom_heater to: 'on' for: minutes: 2 conditions: - '{% from ''logic_chekr.jinja'' import true_all %} {{- true_all( [''binary_sensor.bathroom'',''switch.bathroom_heater''] ) | bool -}} ' actions: - action: script.upstairs_bath_heater_off - action: script.media_player_bathroom - delay: 00:00:06 - action: script.tts_bathroom_door_is_open - id: bb9d85a8-8e6c-4a16-99b4-ce543cfd72fe alias: Pretty Lights initial_state: true triggers: trigger: state entity_id: input_boolean.christmas actions: action: script.turn_on data: entity_id: "{% from 'logic_chekr.jinja' import true_all %} {%- if true_all(\ \ ['input_boolean.christmas'] ) | bool -%} {# if is_state('input_boolean.christmas',\ \ 'on') %} #}\n script.inside_christmas\n{% else %}\n script.heavenly_peace\n\ {% endif %}\n" - id: 7c9e8953-c34a-43d8-a7e9-f33fb0cb75e3 alias: Turn on Inside Christmas initial_state: true triggers: - trigger: state entity_id: binary_sensor.blue_remote_c from: 'off' to: 'on' conditions: - '{% from ''logic_chekr.jinja'' import true_all %} {{- true_all( [''sensor.xmas_season_enable''] ) | bool -}} ' actions: - action: script.turn_on entity_id: script.inside_christmas - id: 20d2c819-3b00-4a02-be91-6aa69bb4524a alias: Turn off Inside Christmas initial_state: true triggers: - trigger: state entity_id: binary_sensor.blue_remote_d from: 'off' to: 'on' conditions: - '{% from ''logic_chekr.jinja'' import true_all %} {{- true_all( [''sensor.xmas_season_enable''] ) | bool -}} ' actions: - action: script.turn_on entity_id: script.heavenly_peace - id: 94098658-ce1b-41a4-8ef4-263e7f2cc1d0 alias: Turn on Christmas lights at dark initial_state: true triggers: - trigger: state entity_id: binary_sensor.dark_outside from: 'off' to: 'on' - trigger: state entity_id: binary_sensor.blue_remote_a from: 'off' to: 'on' conditions: - '{% from ''logic_chekr.jinja'' import true_all %} {{- true_all( [''sensor.xmas_season_enable''] ) | bool -}} ' actions: - action: switch.turn_on entity_id: switch.outside_christmas - delay: 00:00:30 - action: switch.turn_on entity_id: switch.outside_christmas - delay: 00:00:30 - action: switch.turn_on entity_id: switch.outside_christmas - delay: 00:00:30 - action: switch.turn_on entity_id: switch.outside_christmas - delay: 00:00:30 - action: switch.turn_on entity_id: switch.outside_christmas - id: e457e864-1b80-42e1-991b-902f62109afe alias: Turn off Christmas lights at dawn initial_state: true triggers: - trigger: state entity_id: binary_sensor.dark_outside from: 'on' to: 'off' - trigger: state entity_id: binary_sensor.blue_remote_b from: 'off' to: 'on' actions: - action: switch.turn_off entity_id: switch.outside_christmas - delay: 00:00:30 - action: switch.turn_off entity_id: switch.outside_christmas - delay: 00:00:30 - action: switch.turn_off entity_id: switch.outside_christmas - delay: 00:00:30 - action: switch.turn_off entity_id: switch.outside_christmas - delay: 00:00:30 - action: switch.turn_off entity_id: switch.outside_christmas - id: 6fb0180a-e42e-45fc-a550-fa95a2726148 alias: Power state on HA start-up outside christmas dark initial_state: true triggers: trigger: homeassistant event: start conditions: - "{% from 'logic_chekr.jinja' import true_all %} {{- true_all( ['sensor.xmas_season_enable',\n\ \ 'binary_sensor.dark_outside'] ) | bool -}}\n" actions: - action: switch.turn_on entity_id: switch.outside_christmas - delay: 00:00:30 - action: switch.turn_on entity_id: switch.outside_christmas - delay: 00:00:30 - action: switch.turn_on entity_id: switch.outside_christmas - delay: 00:00:30 - action: switch.turn_on entity_id: switch.outside_christmas - delay: 00:00:30 - action: switch.turn_on entity_id: switch.outside_christmas - id: 221db31c-ea90-4db1-9dd4-4ad3f3cd3452 alias: Power state on HA start-up outside christmas day initial_state: true triggers: trigger: homeassistant event: start conditions: - '{% from ''logic_chekr.jinja'' import false_all %} {{- false_all( [''binary_sensor.dark_outside''] ) | bool -}} ' actions: - action: switch.turn_off entity_id: switch.outside_christmas - delay: 00:00:30 - action: switch.turn_off entity_id: switch.outside_christmas - delay: 00:00:30 - action: switch.turn_off entity_id: switch.outside_christmas - delay: 00:00:30 - action: switch.turn_off entity_id: switch.outside_christmas - delay: 00:00:30 - action: switch.turn_off entity_id: switch.outside_christmas - id: fd8a0028-7b23-47dd-a0fd-be1d5acf69a1 alias: Christmas Enable initial_state: true triggers: - trigger: homeassistant event: start - trigger: state entity_id: sensor.xmas_season_enable actions: - action: "{% from 'logic_chekr.jinja' import true_all %} {%- if true_all( ['sensor.xmas_season_enable']\ \ ) | bool -%} {# if is_state('sensor.xmas_season_enable', 'True') %} #}\n \ \ automation.turn_on\n{% else %}\n automation.turn_off\n{% endif %}\n" entity_id: group.christmas_enable - id: 34423786-8a35-4a83-8282-ffa5afe39345 alias: Front Doorbell Ding initial_state: true triggers: - trigger: state entity_id: binary_sensor.front_door_ding from: 'off' to: 'on' actions: - delay: 00:00:22 - action: script.media_player_front_doorbell_ding - delay: 00:00:05 - action: script.tts_front_doorbell - id: 6e98f4dc-b148-459a-b93f-06b39ffc23f7 alias: Front Doorbell Motion initial_state: true triggers: - trigger: state entity_id: binary_sensor.front_door_motion from: 'off' to: 'on' actions: - action: script.front_motion_joke - id: 427a318d-346a-4ca5-8850-d6905440d80f alias: Back Doorbell Ding initial_state: true triggers: - trigger: state entity_id: binary_sensor.back_door_ding from: 'off' to: 'on' actions: - delay: 00:00:15 - action: script.media_player_back_doorbell_ding - delay: 00:00:05 - action: script.tts_back_doorbell - id: 0d60fba9-431d-4022-864e-7381d6a7d8fc alias: Back Doorbell Motion initial_state: true triggers: - trigger: state entity_id: binary_sensor.back_door_motion from: 'off' to: 'on' actions: - action: script.media_player_back_doorbell_motion - id: e1269f8d-f87b-4990-bfdc-f7f418962985 alias: Side Doorbell Ding initial_state: true triggers: - trigger: state entity_id: binary_sensor.side_doorbell to: 'on' for: seconds: 1 actions: - action: script.media_player_side_doorbell - delay: 00:00:06 - action: script.tts_side_doorbell - id: c0193815-32b4-4f26-b2a0-a6cafa05de2f alias: Garage Inside Auto Light initial_state: true triggers: - entity_id: binary_sensor.garage_side_door_open trigger: state - entity_id: binary_sensor.garage_door_open trigger: state from: 'off' to: 'on' actions: - action: script.turn_on entity_id: script.garage_inside_lights_on mode: single max_exceeded: silent - id: f49b5fb5-9ec1-453d-92dc-f121b8529e9d alias: Goodnight Alarm description: Play the QOTD at betdime triggers: - trigger: time at: 02:00:21 actions: - action: script.qotd mode: single - id: 590fd173-6e05-4457-b9b5-e24736b757a6 alias: Take Your Pills description: Reminder to take your pills triggers: - trigger: time at: 01:11:11 - trigger: time at: '10:10:10' conditions: null actions: - action: script.mp3_take_your_meds data: {} - id: 188ccb1a-9ab3-453e-8910-7d6f7a7ca9ea alias: Jens Neb Announcement initial_state: true triggers: - trigger: state entity_id: binary_sensor.aromatherapy_water from: 'off' to: 'on' - trigger: state entity_id: input_boolean.mist_button from: 'off' to: 'on' actions: - alias: Out of water in Mister action: input_boolean.turn_off entity_id: input_boolean.mist_button - action: script.tts_mister_message - delay: 00:00:07 - action: script.media_player_jens_neb - id: 6d3dd9af-eeaa-4e29-8706-8beeb1c5a375 alias: Kitchenlight on Mist on description: Turn on the Mister with the Kitchensink light. triggers: - trigger: state entity_id: - light.kitchensink to: 'on' conditions: null actions: - action: fan.turn_on metadata: {} data: percentage: 47 target: entity_id: fan.jens_mist mode: single - id: ea532a3c-1174-4a85-8722-a7865db8d77a alias: Kids flip the lights 3 description: Fun with light colors for the kiddos triggers: - alias: single button push domain: mqtt device_id: 958de5a2c34439317065b05c3ac8421e type: action subtype: single trigger: device id: single - alias: double button push domain: mqtt device_id: 958de5a2c34439317065b05c3ac8421e type: action subtype: double trigger: device id: double - alias: hold button push domain: mqtt device_id: 958de5a2c34439317065b05c3ac8421e type: action subtype: hold trigger: device id: hold conditions: null actions: - choose: - conditions: - condition: trigger id: - single sequence: - action: script.random_color data: light: light.grp_kitch - conditions: - condition: trigger id: - double sequence: - action: light.turn_off target: entity_id: light.grp_kitch data: {} - conditions: - condition: trigger id: - hold sequence: - action: light.turn_on target: entity_id: light.grp_kitch data: kelvin: 1700 brightness: 96.9 mode: queued initial_state: true - id: 4ae86eca-d558-4d9b-b1cb-7ea5e506aaf1 alias: Kitch Light on default initial_state: true mode: parallel max: 100 triggers: - trigger: state entity_id: light.grp_kitch from: 'off' to: 'on' actions: - action: light.turn_on data: kelvin: 1700 brightness: 96.9 entity_id: '{{ trigger.entity_id }}' - id: 0ea5ee7e-402f-4410-86d6-6952bae151c4 alias: Food Center Lights Button description: SP3T Switch Kitchen with all 3 actions populated triggers: - trigger: device domain: mqtt device_id: 59fcce12b8d523e26152c406c5b13ae4 type: action subtype: single discovery_id: 0x00124b00251d6068 action_single id: single - trigger: device domain: mqtt device_id: 59fcce12b8d523e26152c406c5b13ae4 type: action subtype: double discovery_id: 0x00124b00251d6068 action_double id: double - trigger: device domain: mqtt device_id: 59fcce12b8d523e26152c406c5b13ae4 type: action subtype: long discovery_id: 0x00124b00251d6068 action_long id: long conditions: null actions: - choose: - conditions: - condition: trigger id: single sequence: - action: light.toggle target: entity_id: light.grp_kitch data: {} - conditions: - condition: trigger id: double sequence: - action: light.toggle target: entity_id: light.grp_dad_lights data: {} - conditions: - condition: trigger id: long sequence: - action: light.turn_on target: entity_id: light.grp_kitch data: color_temp: 153 brightness: 255 default: - action: light.turn_off target: entity_id: - light.grp_kitch - light.grp_dad_lights data: transition: 4 mode: queued - id: 124d0949-2fcf-4fa4-8d70-836dcc9c37e3 alias: Office Light on default initial_state: true mode: parallel max: 100 triggers: - trigger: state entity_id: light.3a_smart_home_de_lxt56_ls27lx1_7_light,light.feibit_inc_co_fb56_zcw11hg1_4_light from: 'off' to: 'on' actions: - action: light.turn_on data: transition: 4 rgb_color: - 150 - 147 - 90 brightness_pct: 55 entity_id: '{{ trigger.entity_id }}' - id: f1afcd0d-fd1e-4fc0-a1ec-e0a659061b00 alias: Toggle Stair UP Light initial_state: true triggers: - trigger: state entity_id: binary_sensor.stairs_down to: 'on' actions: - action: light.toggle entity_id: light.stairway_light - id: d8bd66aa-690f-47f2-9763-4a7131de93ae alias: Moms Call Button mode: queued initial_state: true triggers: - trigger: state entity_id: binary_sensor.moms_call_button to: 'on' actions: - action: script.tts_grandma_in_need - id: 4e6e270a-24bc-497e-ae34-a6b6bee86eda alias: Toggle Moms Bed Routine Button A initial_state: true triggers: - trigger: state entity_id: binary_sensor.moms_button1 to: 'on' actions: - action: script.bedtime_button_mom - id: b3a7f7fe-0a9f-4e69-9762-2d067fecb225 alias: Toggle Moms Livingroom Lights Button B initial_state: true triggers: - trigger: state entity_id: binary_sensor.moms_button2 to: 'on' actions: - action: "{% if is_state('light.livingroomlight', 'on') %}\n homeassistant.turn_off\n\ {% elif is_state('light.mom_light', 'on') %}\n homeassistant.turn_off\n{% elif\ \ is_state('input_boolean.christmas', 'on') %}\n homeassistant.turn_off\n{%\ \ else %}\n homeassistant.turn_on\n{% endif %}" entity_id: - light.livingroomlight - light.mom_light - input_boolean.christmas - id: caa154ed-f3e4-4c88-9ddb-6fb1d9448623 alias: Toggle Moms Work Light Button D initial_state: true triggers: - trigger: state entity_id: binary_sensor.moms_button3 to: 'on' actions: - action: light.toggle entity_id: light.mom_light - trigger: - trigger: event event_type: set_variable - trigger: event event_type: remove_variable sensor: - unique_id: 0b49cfff-7f57-47cc-935a-e208ece50de7 name: Variables state: Variables attributes: variables: "{% set current = this.attributes.get('variables', {}) %} {% if trigger.event.event_type\ \ == 'set_variable' %}\n {% set new = {trigger.event.data.key: trigger.event.data.value}\ \ %}\n {{ dict(current, **new) }}\n{% elif trigger.event.event_type == 'remove_variable'\ \ %}\n {{ dict(current.items() | rejectattr('0', 'eq', trigger.event.data.key))\ \ }}\n{% endif %}\n" - id: 87aed16a-da9b-420e-83af-369c40a06bda alias: 3-Way and Yard Light PIR ON initial_state: true triggers: - entity_id: binary_sensor.yard_light_pir trigger: state from: 'off' to: 'on' - entity_id: binary_sensor.back_door_motion trigger: state from: 'off' to: 'on' - entity_id: binary_sensor.garage_side_door_open trigger: state from: 'off' to: 'on' conditions: - '{% from ''logic_chekr.jinja'' import true_all %} {{- true_all( [''binary_sensor.dark_outside''] ) | bool -}} ' actions: - action: script.turn_on entity_id: script.garage_outside_lights_on mode: single max_exceeded: silent - id: 9ba99be0-57e0-4232-b746-936bc339e64f alias: You've Got Mail initial_state: true triggers: - trigger: state entity_id: binary_sensor.mailbox from: 'off' to: 'on' for: seconds: 15 - trigger: state entity_id: binary_sensor.mailbox from: 'on' to: 'off' for: seconds: 15 actions: - action: script.media_player_mail - id: 7cd36a72-c114-4141-b167-0641cdb1a43f alias: Is it raining? initial_state: true description: check the rain sensor to see if it's raining mode: single triggers: - trigger: time_pattern minutes: /5 id: Check every 5 minutes conditions: null actions: - if: - alias: Rain detected condition: numeric_state entity_id: sensor.gw2000b_v2_2_4_hourly_rain_rate_piezo above: 0 then: - alias: Toggle to on action: input_boolean.turn_on data: entity_id: input_boolean.rain else: - alias: Toggle to off action: input_boolean.turn_off data: entity_id: input_boolean.rain - id: 01cf2959-f88c-4d21-bd7c-ad0b7a364482 alias: Announce when rain starts and if raining in the morning initial_state: true triggers: - trigger: state entity_id: input_boolean.rain from: 'off' to: 'on' id: event_announce - trigger: time at: '6:52:11' id: morning_announce_julie - trigger: time at: '9:27:38' id: morning_announce_sg conditions: and: - alias: Send the message if the Boss is not sleeping condition: time after: '6:51:42' before: '22:08:17' - alias: Cancel the morning announce if not raining condition: state entity_id: input_boolean.rain state: 'on' actions: action: script.tts_its_raining - id: 931215c8-a0ad-44ae-8c14-e6a7eb457e50 alias: Lightning Detected description: Lightning Detector shows lightning closeby mode: single max_exceeded: silent triggers: - trigger: numeric_state entity_id: sensor.gw2000b_v2_2_4_lightning_strike_distance below: 9 above: 0 actions: - alias: Announce the alert action: script.tts_say_lightning - alias: Hold so that we don't have repeated notifications delay: 00:27:49 - id: '1716577118814' alias: Set Sprinkler Runtime description: Get the compensation value from the data to set the runtime triggers: - trigger: time at: '23:59:59' conditions: null actions: - action: input_number.set_value metadata: {} data: value: '{{ comp_sensor }}' target: entity_id: input_number.sprinkler_time variables: comp_sensor: '{{ states.sensor.rolling_sprinkler.state | float(5.105) }}' mode: single - id: '1716578941208' alias: Water Garden Sprinkler description: Turn on the sprinkler for set time triggers: - trigger: sun event: sunrise offset: '-3600' id: Start watering 1 hour before sunrise conditions: - alias: Watering while raining is worthless condition: state entity_id: input_boolean.rain state: 'off' - alias: Watering less than 5 minutes is worthless condition: template value_template: '{{ run_mins > 5 }}' - alias: Watering when it rained this week too much already is worthless condition: template value_template: '{{ weekly_rain <= 1.50 }}' actions: - type: turn_on device_id: 620ac53c3380e0099889a87bdbce7421 entity_id: e713049e62ed5f30c705556bbc32ec9c domain: switch - alias: Hold for the calculated time delay: minutes: '{{ run_mins }}' - type: turn_off device_id: 620ac53c3380e0099889a87bdbce7421 entity_id: e713049e62ed5f30c705556bbc32ec9c domain: switch variables: run_mins: '{{ states.input_number.sprinkler_time.state | float(0) }}' weekly_rain: '{{ states.sensor.gw2000b_v2_2_4_weekly_rain_rate_piezo.state | float(2.222) }}' mode: single - id: '1731375142487' alias: Window Grow Lights description: Sync the window lights with the tasmota scheduled light triggers: - trigger: state entity_id: - light.growlight2 to: 'on' for: hours: 0 minutes: 0 seconds: 30 id: Grow Time - trigger: state entity_id: - light.growlight2 to: 'off' for: hours: 0 minutes: 0 seconds: 30 id: Sleep Time conditions: [] actions: - choose: - conditions: - condition: trigger id: - Grow Time sequence: - action: light.turn_on target: entity_id: light.grow_window_light data: {} - conditions: - condition: trigger id: - Sleep Time sequence: - action: light.turn_off target: entity_id: light.grow_window_light data: {} default: - action: light.turn_off target: entity_id: light.grow_window_light data: {} mode: restart - id: e037105b-eb19-4f36-b789-4cb18af321f7 alias: Person @ Cottage description: Webhook from Cottage that it detects a person triggers: - trigger: webhook webhook_id: person-cottage-07AWg1-wLwAO0LLg8qR4Qmu_ allowed_methods: - POST - PUT local_only: false actions: - alias: Notify phone(s) action: notify.message_dad data: message: '{{ trigger.json.message }}' - action: script.tts_say_person_cottage data: live_message: ' {{ trigger.json.message }}, with my little eye, at the cottage' mode: single - id: f091f054-39aa-4cc3-83c7-8c99a2d5dbb0 alias: Presence Julie Alert Honitor description: Alert when we go places trace: stored_traces: 20 use_blueprint: path: SirGoodenough/Person_Alert_Blueprint.yaml input: people2monitor: - person.julie zone2monitor: '{{ states.zone | map(attribute="entity_id") | list }}' enter_action: - parallel: - action: script.personalert_notify data: person: '{{ trigger.to_state.attributes.friendly_name }}' place_to: '{{ trigger.to_state.state }}' place_from: '{{ trigger.from_state.state }}' notify_id: '{{ trigger.to_state.context.id }}' phase: enter - action: script.personalert_audio data: entities: media_player.home_group mess: "{{ trigger.to_state.attributes.friendly_name + ' has arrived at\ \ '\n + trigger.to_state.state\n}}" lang: en-GB voice: "{{ (\n \"LibbyNeural\",\n \"AbbiNeural\",\n \"AlfieNeural\"\ ,\n \"BellaNeural\",\n \"ElliotNeural\",\n \"EthanNeural\",\n \"\ HollieNeural\",\n \"MaisieNeural\",\n \"NoahNeural\",\n \"OliverNeural\"\ ,\n \"OliviaNeural\",\n \"RyanNeural\",\n \"SoniaNeural\",\n \"\ ThomasNeural\"\n) | random }}" leave_action: - parallel: - action: script.personalert_notify data: person: '{{ trigger.from_state.attributes.friendly_name }}' place_to: '{{ trigger.to_state.state }}' place_from: '{{ trigger.from_state.state }}' notify_id: '{{ trigger.from_state.context.id }}' phase: leave - action: script.personalert_audio data: entities: media_player.home_group mess: "{{ trigger.from_state.attributes.friendly_name + ' has left '\n\ \ + trigger.from_state.state\n}}" lang: en-GB voice: "{{ (\n \"LibbyNeural\",\n \"AbbiNeural\",\n \"AlfieNeural\"\ ,\n \"BellaNeural\",\n \"ElliotNeural\",\n \"EthanNeural\",\n \"\ HollieNeural\",\n \"MaisieNeural\",\n \"NoahNeural\",\n \"OliverNeural\"\ ,\n \"OliviaNeural\",\n \"RyanNeural\",\n \"SoniaNeural\",\n \"\ ThomasNeural\"\n) | random }}" jump_action: - parallel: - action: script.personalert_notify data: person: '{{ trigger.to_state.attributes.friendly_name }}' place_to: '{{ trigger.to_state.state }}' place_from: '{{ trigger.from_state.state }}' notify_id: '{{ trigger.to_state.context.id }}' phase: jump - action: script.personalert_audio data: entities: media_player.home_group mess: "{{ trigger.to_state.attributes.friendly_name + ' has left '\n \ \ + trigger.from_state.state + ' and is located at: '\n + trigger.to_state.state\n\ }}" lang: en-GB voice: "{{ (\n \"LibbyNeural\",\n \"AbbiNeural\",\n \"AlfieNeural\"\ ,\n \"BellaNeural\",\n \"ElliotNeural\",\n \"EthanNeural\",\n \"\ HollieNeural\",\n \"MaisieNeural\",\n \"NoahNeural\",\n \"OliverNeural\"\ ,\n \"OliviaNeural\",\n \"RyanNeural\",\n \"SoniaNeural\",\n \"\ ThomasNeural\"\n) | random }}" enable_time: 05:30:18 disable_time: '20:27:36' hold_period: hours: 0 minutes: 2 seconds: 0 mode: queued max: 10 - id: 8dc284dc-7cef-4ee5-8045-da04bbf495f2 alias: Presence Jim Alert Honitor description: Alert when Jim Goes places trace: stored_traces: 20 use_blueprint: path: SirGoodenough/Person_Alert_Blueprint.yaml input: people2monitor: - person.jim zone2monitor: '{{ states.zone | map(attribute="entity_id") | list }}' enter_action: - alias: Delay for when traveling together. delay: 00:00:30 - parallel: - action: script.personalert_notify data: person: '{{ trigger.to_state.attributes.friendly_name }}' place_to: '{{ trigger.to_state.state }}' place_from: '{{ trigger.from_state.state }}' notify_id: '{{ trigger.to_state.context.id }}' phase: enter - action: script.personalert_audio data: entities: media_player.home_group mess: '{{ trigger.to_state.attributes.friendly_name + '' has arrived at '' + trigger.to_state.state }}' lang: en-CA gend: male leave_action: - alias: Delay for when traveling together. delay: 00:00:30 - parallel: - action: script.personalert_notify data: person: '{{ trigger.from_state.attributes.friendly_name }}' place_to: '{{ trigger.to_state.state }}' place_from: '{{ trigger.from_state.state }}' notify_id: '{{ trigger.from_state.context.id }}' phase: leave - action: script.personalert_audio data: entities: media_player.home_group mess: '{{ trigger.from_state.attributes.friendly_name + '' has left '' + trigger.from_state.state }}' lang: en-CA gend: male jump_action: - alias: Delay for when traveling together. delay: 00:00:30 - parallel: - action: script.personalert_notify data: person: '{{ trigger.to_state.attributes.friendly_name }}' place_to: '{{ trigger.to_state.state }}' place_from: '{{ trigger.from_state.state }}' notify_id: '{{ trigger.to_state.context.id }}' phase: jump - action: script.personalert_audio data: entities: media_player.home_group mess: '{{ trigger.to_state.attributes.friendly_name + '' has left '' + trigger.from_state.state + '' and is located at: '' + trigger.to_state.state }}' lang: en-CA gend: male enable_time: 05:29:13 disable_time: '20:27:36' hold_period: minutes: 3 mode: queued max: 10 - id: 39718152-fe48-443f-8581-26ba8cd77a94 alias: Back Door Open description: Let us know the back door is open. use_blueprint: path: SirGoodenough/door_open_tts_cloud_say_and_Piper_announcer_Piper_OR_nabu_casa_required.yaml input: door_entity: - binary_sensor.back_door_open_433 speaker_target: - media_player.jennys_room_display cooldown: 120 speaker_voice: '{{ ("JennyNeural", "AIGenerate1Neural", "AIGenerate2Neural", "AmberNeural", "AnaNeural", "AriaNeural", "AshleyNeural", "BrandonNeural", "ChristopherNeural", "CoraNeural", "DavisNeural", "ElizabethNeural", "EricNeural", "GuyNeural", "JacobNeural", "JaneNeural", "JasonNeural", "JennyMultilingualNeural", "MichelleNeural", "MonicaNeural", "NancyNeural", "RogerNeural", "SaraNeural", "SteffanNeural", "TonyNeural") | random }}' final_message: Thank you for closing the {{ door }}. announcement_message: Your {{ door }} has been left open. reminded: input_boolean.reminded tts_action: nabu piper_voice: '{{ ("en_US-lessac-medium","en_US-amy-low","en_US-amy-medium", "en_US-arctic-medium","en_US-danny-low","en_US-joe-medium","en_US-kathleen-low", "en_US-kusal-medium","en_US-l2arctic-medium","en_US-lessac-high","en_US-lessac-low", "en_US-lessac-medium","en_US-libritts-high","en_US-libritts_r-medium", "en_US-ryan-high","en_US-ryan-low","en_US-ryan-medium") | random }}' - id: d0a74092-eee1-4043-ba47-642f01084acb alias: Cold Storage Door Monitor description: Warn if the Kitchen Fridge/Freezer or the Porch Freezer has been left open. use_blueprint: path: SirGoodenough/door_open_tts_cloud_say_and_Piper_announcer_Piper_OR_nabu_casa_required.yaml input: door_entity: - binary_sensor.kitchen_fridge_open_433 - binary_sensor.kitchen_freezer_open_433 - binary_sensor.porch_freezer_open_433 reminded: input_boolean.cold_reminded speaker_target: - media_player.jennys_room_display - media_player.garage_speaker - media_player.living_room_speaker - media_player.workroom_speaker - media_player.kitchen_speaker - media_player.basement_speaker piper_voice: '{{("en_US-lessac-medium","en_US-amy-low","en_US-amy-medium", "en_US-arctic-medium","en_US-danny-low","en_US-joe-medium","en_US-kathleen-low", "en_US-kusal-medium","en_US-l2arctic-medium","en_US-lessac-high","en_US-lessac-low", "en_US-lessac-medium","en_US-libritts-high","en_US-libritts_r-medium", "en_US-ryan-high","en_US-ryan-low","en_US-ryan-medium")|random}}' tts_service: piper announcement_message: Your {{ door }} has been left open. cooldown: 63 final_message: Thank you for closing the {{ door }}. speaker_voice: '{{ ("JennyNeural", "AIGenerate1Neural", "AIGenerate2Neural", "AmberNeural", "AnaNeural", "AriaNeural", "AshleyNeural", "BrandonNeural", "ChristopherNeural", "CoraNeural", "DavisNeural", "ElizabethNeural", "EricNeural", "GuyNeural", "JacobNeural", "JaneNeural", "JasonNeural", "JennyMultilingualNeural", "MichelleNeural", "MonicaNeural", "NancyNeural", "RogerNeural", "SaraNeural", "SteffanNeural", "TonyNeural") | random }}' - id: fb27c45c-c4fb-4c5e-962c-99c19c55ff26 alias: Smoke initial_state: true triggers: - trigger: state entity_id: binary_sensor.basement_smoke_alarm to: 'on' id: basement - trigger: device type: smoke device_id: e6cb7bd304816dc875959768023d2c1b entity_id: binary_sensor.stairway_smoke_smoke domain: binary_sensor id: upstairs variables: scene_id: color_flip_{{ this.context.id | lower }} actions: - alias: make some noise on the speakers action: script.media_player_fire_alert - delay: 00:00:03 - action: scene.create data: scene_id: '{{ scene_id }}' snapshot_entities: - light.grp_kitch - light.grp_jens_color - repeat: count: 2 sequence: - repeat: count: 3 sequence: - action: script.color_flip data: color: - 255 - 255 - 255 bright_pct: 80 entities: light.grp_kitch,light.grp_jens_color - delay: 00:00:01 - action: script.color_flip data: color: - 255 - 0 - 0 bright_pct: 100 entities: light.grp_kitch,light.grp_jens_color - delay: 00:00:03 - alias: Voice alert to say where the problem is action: script.turn_on target: entity_id: "{% if trigger.id == 'basement' %}\n script.tts_smoke_detected_in_the_basement\n\ {% else %}\n script.tts_smoke_detected_upstairs\n{% endif %}\n" - action: scene.turn_on target: entity_id: scene.{{ scene_id }} data: transition: 2.5 - id: 9df05f35-a3e7-4d06-b53a-89fc9bcbdc46 alias: CO2 Warning Level description: TTS to tell CO2 is high <1000 for 10 minutes triggers: - trigger: numeric_state entity_id: - sensor.ethernettest_kitchen_co2 above: 1000 for: hours: 0 minutes: 10 seconds: 0 conditions: null actions: - action: tts.speak data: cache: true media_player_entity_id: media_player.intercom_group message: CO2 values are at an uncomfortable level. Please investigate. CO2 values are at an uncomfortable level. Please investigate. mode: single - id: 86ccf18f-cbce-40e0-858f-91df79b99f62 alias: CO2 levels hazardous level description: Level is above 2000 ppm. triggers: - trigger: numeric_state entity_id: - sensor.ethernettest_kitchen_co2 above: 2000 conditions: null actions: - action: tts.speak data: cache: true media_player_entity_id: media_player.home_group message: Take immediate action. Open doors. CO2 level is in the unsafe range. Take immediate action. Open doors. CO2 level is in the unsafe range. mode: single - id: 666506a1-81d8-4db3-b735-c8e6cb888c33 alias: KitchenDown Toggle button_dnremote1 initial_state: true triggers: - trigger: state entity_id: binary_sensor.dnremote1 to: 'on' actions: - action: light.toggle entity_id: light.stairway_light - id: d82bf999-0a81-4761-8192-c1d4fe6a7b1c alias: KitchenDown Toggle button_dnremote2 initial_state: true triggers: - trigger: state entity_id: binary_sensor.dnremote2 to: 'on' actions: - action: light.toggle entity_id: light.kitchen_down_lights - id: fd42e2d0-4ecd-4c90-808e-8a064dc79ed2 alias: KitchenSink Toggle button_dnremote5 initial_state: true triggers: - trigger: state entity_id: binary_sensor.dnremote5 to: 'on' actions: - action: light.toggle entity_id: light.kitchensink - id: 11941451-10b7-4021-846a-613b8f920238 alias: Outside button_dnremote4 initial_state: true triggers: - trigger: state entity_id: binary_sensor.dnremote4 to: 'on' actions: - action: light.toggle entity_id: light.garagetop_light_switch - id: 58e44e55-e295-46e7-95bb-7e37208fa5ec alias: Garage button_dnremote9 initial_state: true triggers: - trigger: state entity_id: binary_sensor.dnremote9 to: 'on' actions: - action: light.toggle entity_id: light.garagefront_light - id: b013a8fc-eacf-4249-96cf-bf0cfb8b8e87 alias: Cabinet_light initial_state: true triggers: - trigger: state entity_id: binary_sensor.dnremote8 to: 'on' actions: - action: light.toggle entity_id: light.cabinetlight - id: a45bfcbc-2afc-403b-b359-0b9ea4a2908c alias: jims_computer_light_dnremoteC initial_state: true triggers: - trigger: state entity_id: binary_sensor.dnremotec to: 'on' actions: - action: light.toggle entity_id: light.jims_computer_light - id: 47ee67be-946b-4b8a-964a-622884e06f11 alias: Kitchen down lights long press initial_state: true triggers: trigger: mqtt topic: KitchenSink/LongToggle actions: - action: light.toggle entity_id: light.kitchen_down_lights - id: 36d673e0-6732-4c89-9c05-e99ec815b58d alias: Toggle Office Light 1 initial_state: true triggers: - trigger: state entity_id: binary_sensor.office_light_1 to: 'on' actions: - action: light.toggle entity_id: light.grp_mom_office - id: f00ef2fa-fec8-41ee-99a1-6548227b0e69 alias: Toggle Office Light 2 initial_state: true triggers: - trigger: state entity_id: binary_sensor.office_light_2 to: 'on' actions: - action: light.toggle entity_id: - light.office_track_jim_bulb - id: d84904da-2592-42d8-abdd-e453ea1640ab alias: Trigger Front Porch Light initial_state: true triggers: - trigger: state entity_id: binary_sensor.front_door_open_433 to: 'on' actions: - action: light.turn_on entity_id: light.fp_socket - id: 2635151e-3fbb-4fe5-b00c-55b9a0393753 alias: Trigger Back Porch Light initial_state: true triggers: - trigger: state entity_id: binary_sensor.back_door_open_433 to: 'on' actions: - action: light.turn_on entity_id: light.b_porch_socket - id: 341558ae-4f1f-4796-8a89-1667571593d9 alias: Trigger Basement Hall Light initial_state: true triggers: - trigger: state entity_id: binary_sensor.side_door_open_433 to: 'on' actions: - action: light.turn_on entity_id: - light.bmt_hall_socketu - light.bmt_hall_socketd - id: edaafacf-6c34-47d2-9dda-bcea8d4232a4 alias: Broadcom Brick Reset description: Reset the dam RM3 that is mose always offline. POS! triggers: - trigger: state entity_id: - input_button.broadlink_rm3_reset conditions: null actions: - type: turn_off device_id: 26a0f288f760db5d58d9723a73dc9f7d entity_id: switch.sonoff_1000dbf4a6_1 domain: switch - action: script.media_player_boink data: {} - delay: hours: 0 minutes: 0 seconds: 2 milliseconds: 0 - type: turn_on device_id: 26a0f288f760db5d58d9723a73dc9f7d entity_id: switch.sonoff_1000dbf4a6_1 domain: switch mode: single - id: 86bfbd7c-8276-4ff0-88c2-f8a3bc1b3703 alias: Thermostat Force hold temp initial_state: true triggers: - trigger: time at: 00:00:01 conditions: - alias: Make sure pellet stove is on condition: numeric_state entity_id: sensor.furnace_pellet_firebox_temperature above: 199.9 actions: - alias: Force to hold temp. Don't let the Thermostat learn point take over action: climate.set_temperature target: entity_id: climate.living_room_2 data: temperature: 60 - id: 7a3e7fc7-3454-497d-9b66-32b24655f754 alias: Thermostat Ramp description: Creep the thermostat up to prevent use of oil furnace. use_blueprint: path: SirGoodenough/Stage_1_Temperature_Control.yaml input: climate_e: climate.living_room_2 maxTemp: 70.2 ramp_start_time: 04:52:15 ramp_end_time: 07:14:54 rampRate: 1.2 interval: hours: 0 minutes: 9 seconds: 19 additional_conditions: - condition: numeric_state entity_id: sensor.furnace_pellet_firebox_temperature above: 199.9