- id: 81bee5ee-6820-4626-aebf-3deb8de69e4d alias: Turn On Audible Notifications initial_state: true trigger: platform: template value_template: '{{ states(''sensor.time'') == (state_attr(''input_datetime.audible_notification_on'', ''timestamp'') | int | timestamp_custom(''%H:%M'', False)) }}' action: - service: input_boolean.turn_on entity_id: input_boolean.audible_notifications - id: e0e9c774-6abe-42aa-bdab-32108bebb0e9 alias: Turn Off Audible Notifications initial_state: true trigger: - platform: template value_template: '{{ states(''sensor.time'') == (state_attr(''input_datetime.audible_notification_off'', ''timestamp'') | int | timestamp_custom(''%H:%M'', False)) }}' condition: - condition: state entity_id: input_boolean.audible_notifications state: 'on' action: - service: input_boolean.turn_off entity_id: input_boolean.audible_notifications - id: time_for_bed_annc alias: Time For Bed Announcement mode: single trigger: - platform: time at: '22:30:00' condition: [] action: - service: script.status_annc data: who: everywhere call_time_for_bed: 1 - id: a3739bb0-632d-4526-bf82-ee4e27b80882 alias: Set Room Presence mode: restart trigger: - platform: state entity_id: sensor.room_audio action: - service: input_text.set_value data: entity_id: input_text.room_presence value: '{{ states(''sensor.room_audio'') }}' - service: mqtt.publish data: topic: house/presence/current_room payload: '{{ states(''sensor.room_audio'') }}' retain: true - id: 8a2711f5-a034-4df0-ba67-4b8f85ceaaee alias: Notification Volume Dim initial_state: true trigger: - platform: state entity_id: input_boolean.audible_notifications to: 'off' action: - service: media_player.volume_set data: entity_id: - media_player.kitchen_echo_dot - media_player.living_room_echo - media_player.chris_s_echo_flex - media_player.chris_s_echo_show - media_player.lab_echo_dot volume_level: 0.3 - id: d5fe0a64-9012-4446-b946-cbcafb2c0728 alias: Notification Volume Normal initial_state: true trigger: - platform: state entity_id: input_boolean.audible_notifications to: 'on' action: - service: media_player.volume_set data: entity_id: - media_player.kitchen_echo_dot - media_player.living_room_echo - media_player.chris_s_echo_flex - media_player.chris_s_echo_show - media_player.lab_echo_dot volume_level: 0.5 - id: 28c0e7a6-4024-48c9-a422-8b8ffc3a86d1 alias: Set Last Alexa Called Time initial_state: true trigger: - platform: state entity_id: - media_player.kitchen_echo_dot - media_player.living_room_echo - media_player.chris_s_echo_flex - media_player.chris_s_echo_show - media_player.lab_echo_dot condition: - condition: template value_template: '{{ trigger.to_state.attributes.last_called_timestamp | float > trigger.from_state.attributes.last_called_timestamp | float }}' action: - service: input_datetime.set_datetime target: entity_id: input_datetime.last_time_alexa_called data: datetime: '{{ now().strftime(''%Y-%m-%d %H:%M:%S'') }}' - alias: Bathroom Humidity High id: 06611dfc596b4d79bc1b3cde11e93347 trigger: - platform: numeric_state entity_id: sensor.bathroom_humidity above: input_number.bathroom_humidity_high_level for: 00:00:30 action: - service: switch.turn_on entity_id: switch.bathroom_fan mode: single - alias: Bathroom Humidity Low id: 331455d398e7440d955caa48f35b6cde trigger: - below: input_number.bathroom_humidity_low_level entity_id: sensor.bathroom_humidity for: 00:10 platform: numeric_state above: '40' action: - entity_id: switch.bathroom_fan service: switch.turn_off mode: single - alias: Living Room Light Toggle by MQTT id: '1587008568649' description: '' trigger: - platform: mqtt topic: living_room/light/toggle condition: [] action: - data: {} entity_id: light.living_room_fan_light service: light.toggle - alias: Bedroom Light Toggle by MQTT description: '' trigger: - platform: mqtt topic: bedroom/fan_light/toggle condition: [] action: - data: {} entity_id: light.bedroom_fan_lights service: light.toggle id: 6c9f49dabdea44c19255d71723f3dde4 - alias: iOS Test Trigger id: '1601067953579' description: '' trigger: - platform: event event_type: ios.action_fired event_data: actionName: Test condition: [] action: - service: light.toggle data: {} entity_id: light.lab_fan_light mode: single - alias: Alexa Media Player TTS/Announce from Lovelace UI id: '1615999793826' description: '' use_blueprint: path: NachtaktiverHalbaffe/alexa-tts-announcement-from-lovelace-ui-and-without-nabu-casa-alexa-media-player.yaml input: message: input_text.alexa_message_text target: input_select.alexa_devices - alias: Bathroom Fan Toggle id: '1616084444705' description: '' trigger: - platform: device domain: tasmota device_id: 517105d1d709294e0650b8f8b53dc3f8 type: button_short_press subtype: button_1 discovery_id: 500291793CC7_button_1_SINGLE condition: [] action: - type: toggle device_id: 4e235ba7a5f7a2b3f420f7242e96d291 entity_id: switch.bathroom_fan domain: switch mode: single - id: '1616451082602' alias: Lab Fan Cycle description: '' trigger: - platform: device domain: tasmota device_id: 082f2d49dab1e06234cbc1a01d3787dc type: button_long_press subtype: button_1 discovery_id: ECFABC56F484_button_1_HOLD - platform: device domain: tasmota device_id: f51e5de9797e5949aa2cacb1b5bbfb8f type: button_long_press subtype: button_1 discovery_id: 9C9C1F47AE83_button_1_HOLD condition: [] action: - service: fan.set_percentage data: percentage: "{% if states.fan.lab_fan.state == 'off' %}\n 33\n{% elif states.fan.lab_fan.attributes.percentage\ \ == 33 %}\n 66\n{% elif states.fan.lab_fan.attributes.percentage == 66 %}\n\ \ 100\n{% elif states.fan.lab_fan.attributes.percentage == 100 %}\n 0\n\ {% endif %}\n" target: entity_id: fan.lab_fan mode: single - id: '1616454279431' alias: Bedroom Fan Cycle description: '' trigger: - platform: device domain: tasmota device_id: 7d85bf0a57468f7e8385682e13b24e1d type: button_long_press subtype: button_1 discovery_id: CC50E3E7FC32_button_1_HOLD condition: [] action: - service: fan.set_percentage data: percentage: "{% if states.fan.bedroom_fan.state == 'off' %}\n 33\n{% elif states.fan.bedroom_fan.attributes.percentage\ \ == 33 %}\n 66\n{% elif states.fan.bedroom_fan.attributes.percentage ==\ \ 66 %}\n 100\n{% elif states.fan.bedroom_fan.attributes.percentage == 100\ \ %}\n 0\n{% endif %}\n" target: entity_id: fan.bedroom_fan mode: single - alias: Bedroom Lamp Toggle id: '1616454324529' description: '' trigger: - platform: device domain: tasmota device_id: 7d85bf0a57468f7e8385682e13b24e1d type: button_double_press subtype: button_1 discovery_id: CC50E3E7FC32_button_1_DOUBLE condition: [] action: - service: light.toggle data: brightness_pct: 75 target: device_id: e8b907a90b194fdc84c90957f919749d mode: single - alias: Kitchen LEDs Toggle id: '1616476834323' description: '' trigger: - platform: device domain: tasmota device_id: 7e8b95744c7040bbbee460145db11d97 type: button_double_press subtype: button_1 discovery_id: 2CF432192D54_button_1_DOUBLE condition: [] action: - service: light.toggle data: brightness_pct: 100 target: entity_id: light.kitchen_leds mode: single - id: '1616476916110' alias: Living Roon Fan Cycle description: '' trigger: - platform: device domain: tasmota device_id: 251ad65bd1a0ec8b40cbd7a8fbf2a51d type: button_long_press subtype: button_1 discovery_id: 2CF432192E1D_button_1_HOLD condition: [] action: - service: fan.set_percentage data: percentage: "{% if states.fan.living_room_fan.state == 'off' %}\n 33\n{% elif\ \ states.fan.living_room_fan.attributes.percentage == 33 %}\n 66\n{% elif\ \ states.fan.living_room_fan.attributes.percentage == 66 %}\n 100\n{% elif\ \ states.fan.living_room_fan.attributes.percentage == 100 %}\n 0\n{% endif\ \ %}\n" target: entity_id: fan.living_room_fan mode: single - alias: Fish Tank Light Toggle id: '1616477007406' description: '' trigger: - platform: device domain: tasmota device_id: 6f7d6c6e1774cd155c791b5e55b771ee type: button_long_press subtype: button_1 discovery_id: BCDDC25346ED_button_1_HOLD - platform: device domain: tasmota device_id: cfda927b6ff502b7d88f779339e28f5d type: button_long_press subtype: button_1 discovery_id: 84F3EBE0D784_button_1_HOLD condition: [] action: - service: light.toggle target: entity_id: light.fish_tank_leds data: color_temp: 269 brightness_pct: 100 mode: single - alias: Patio Fan Toggle id: '1616477064062' description: '' trigger: - platform: device domain: tasmota device_id: 5351cc93aaae40182c0633e8de1a775e type: button_long_press subtype: button_1 discovery_id: 2CF43219288D_button_1_HOLD condition: [] action: - type: toggle device_id: 0600c5452bc3651f1dbb0e9e6913bf7e entity_id: switch.patio_fan domain: switch mode: single - alias: Patio String Lights Toggle id: '1620354646102' description: '' trigger: - platform: device domain: tasmota device_id: 5351cc93aaae40182c0633e8de1a775e type: button_double_press subtype: button_1 discovery_id: 2CF43219288D_button_1_DOUBLE condition: [] action: - service: light.toggle target: entity_id: light.patio_string_lights mode: single - alias: Turn on bathroom fan for 10 mins id: '1622521426971' description: '' trigger: - platform: device domain: tasmota device_id: 517105d1d709294e0650b8f8b53dc3f8 type: button_double_press subtype: button_1 discovery_id: 500291793CC7_button_1_DOUBLE condition: [] action: - type: turn_on device_id: 4e235ba7a5f7a2b3f420f7242e96d291 entity_id: switch.bathroom_fan domain: switch - delay: hours: 0 minutes: 10 seconds: 0 milliseconds: 0 - type: turn_off device_id: 4e235ba7a5f7a2b3f420f7242e96d291 entity_id: switch.bathroom_fan domain: switch mode: single - alias: Turn Off Bedroom Apple TV id: '1625634502512' description: '' trigger: - platform: device device_id: 6d0692c3ae0d749aa7037ca10f66291d domain: media_player entity_id: media_player.chriss_room type: turned_off condition: [] action: - service: script.turn_off_bedroom_apple_tv mode: single - alias: Wake Bedroom Apple TV id: '1625634770413' description: '' trigger: - platform: device device_id: 6d0692c3ae0d749aa7037ca10f66291d domain: media_player entity_id: media_player.chriss_room type: turned_on condition: [] action: - service: script.wake_bedroom_apple_tv mode: single - alias: Lab Light Toggle id: '1628655116939' description: '' trigger: - platform: device domain: tasmota device_id: f51e5de9797e5949aa2cacb1b5bbfb8f type: button_short_press subtype: button_1 discovery_id: 9C9C1F47AE83_button_1_SINGLE condition: [] action: - service: light.toggle target: entity_id: light.lab_fan_light mode: single - id: '1628691692223' alias: Western Electric Rectifier Controller description: '' trigger: - platform: device domain: tasmota device_id: f51e5de9797e5949aa2cacb1b5bbfb8f type: button_short_press subtype: button_2 discovery_id: 9C9C1F47AE83_button_2_SINGLE - platform: device domain: tasmota device_id: f51e5de9797e5949aa2cacb1b5bbfb8f type: button_long_press subtype: button_6 discovery_id: 9C9C1F47AE83_button_6_HOLD enabled: false - platform: device domain: tasmota device_id: a2acf2ee7393220e37087061d1b0566c type: button_short_press subtype: button_1 discovery_id: 3C71BF316A64_button_1_SINGLE condition: [] action: - service: switch.toggle target: entity_id: switch.western_electric_rectifier data: {} mode: single - alias: 3D Printer Toggle Power id: '1632278000510' description: '' trigger: - platform: device domain: tasmota device_id: f51e5de9797e5949aa2cacb1b5bbfb8f type: button_short_press subtype: button_5 discovery_id: 9C9C1F47AE83_button_5_SINGLE condition: - condition: state entity_id: binary_sensor.octoprint_printing_2 state: 'off' action: - service: switch.toggle target: entity_id: switch.3d_printer mode: single - alias: 3D Printer Update Status Light id: '1634268597502' description: '' trigger: - platform: state entity_id: switch.3d_printer - platform: state entity_id: sensor.octoprint_print_status - platform: state entity_id: sensor.octoprint_print_progress condition: [] action: - choose: - alias: If the 3D printer turns on or goes idle, turn on the light white conditions: - condition: and conditions: - condition: state entity_id: switch.3d_printer state: 'on' - condition: state entity_id: sensor.octoprint_print_status state: Operational sequence: - service: automation.turn_on target: entity_id: - automation.3d_printer_update_bed_temperature_light - automation.3d_printer_update_tool_temperature_light - service: automation.trigger target: entity_id: - automation.3d_printer_update_bed_temperature_light - automation.3d_printer_update_tool_temperature_light - service: light.turn_on target: entity_id: - light.3d_printer_status data: rgb_color: - 255 - 202 - 138 effect: Solid - alias: If the 3D printer turns off, turn off the light conditions: - condition: state entity_id: switch.3d_printer state: 'off' sequence: - service: light.turn_off target: entity_id: light.3d_printer_status - service: automation.turn_off target: entity_id: - automation.3d_printer_update_bed_temperature_light - automation.3d_printer_update_tool_temperature_light - alias: If the 3D printer starts printing, make status light breathe white conditions: - condition: and conditions: - condition: state entity_id: switch.3d_printer state: 'on' - condition: state entity_id: sensor.octoprint_print_status state: Printing - condition: numeric_state entity_id: sensor.octoprint_print_progress below: '98' sequence: - service: light.turn_on target: entity_id: light.3d_printer_status data: rgb_color: - 255 - 202 - 138 effect: Breathe - alias: If the 3D printer is at >97% complete, make status light rainbow conditions: - condition: and conditions: - condition: state entity_id: switch.3d_printer state: 'on' - condition: state entity_id: sensor.octoprint_print_status state: Printing - condition: numeric_state entity_id: sensor.octoprint_print_progress above: '97' sequence: - service: light.turn_on target: entity_id: light.3d_printer_status data: rgb_color: - 255 - 255 - 255 effect: Rainbow default: [] mode: single - alias: 3D Printer Update Tool Temperature Light id: '1634272502278' description: '' trigger: - platform: state entity_id: sensor.octoprint_tool_0_temperature - platform: state entity_id: sensor.octoprint_tool_0_target - platform: state entity_id: switch.3d_printer condition: [] action: - choose: - alias: If the tool is cold, make the light blue conditions: - condition: and conditions: - condition: state entity_id: switch.3d_printer state: 'on' - condition: numeric_state entity_id: sensor.octoprint_tool_0_temperature below: '81' - condition: state entity_id: sensor.octoprint_tool_0_target state: '32.0' sequence: - service: light.turn_on data: rgb_color: - 0 - 255 - 255 effect: Solid target: entity_id: light.3d_printer_tool_temp - alias: If the tool is warming up, make the light breathe orange conditions: - condition: and conditions: - condition: state entity_id: switch.3d_printer state: 'on' - condition: template value_template: '{{ states("sensor.octoprint_tool_0_temperature") | int < states("sensor.octoprint_tool_0_target") | int - 1 }}' - condition: numeric_state entity_id: sensor.octoprint_tool_0_target above: '33' sequence: - service: light.turn_on data: rgb_color: - 255 - 142 - 0 effect: Breathe target: entity_id: light.3d_printer_tool_temp - alias: If the tool is at target heat, make the light red conditions: - condition: and conditions: - condition: state entity_id: switch.3d_printer state: 'on' - condition: numeric_state entity_id: sensor.octoprint_tool_0_target above: '33' - condition: and conditions: - condition: template value_template: '{{ states("sensor.octoprint_tool_0_temperature") | int > states("sensor.octoprint_tool_0_target") | int - 2 }}' - condition: template value_template: '{{ states("sensor.octoprint_tool_0_temperature") | int < states("sensor.octoprint_tool_0_target") | int + 2 }}' sequence: - service: light.turn_on target: entity_id: light.3d_printer_tool_temp data: rgb_color: - 255 - 0 - 0 effect: Solid - alias: If the tool is cooling down but not turning off, make the light breathe yellowish conditions: - condition: and conditions: - condition: state entity_id: switch.3d_printer state: 'on' - condition: template value_template: '{{ states("sensor.octoprint_tool_0_temperature") | int > states("sensor.octoprint_tool_0_target") | int + 1 }}' sequence: - service: light.turn_on target: entity_id: light.3d_printer_tool_temp data: rgb_color: - 254 - 254 - 0 effect: Breathe - alias: If the 3D printer turns off, turn off the light conditions: - condition: state entity_id: switch.3d_printer state: 'off' sequence: - service: light.turn_off target: entity_id: light.3d_printer_tool_temp default: [] mode: single - alias: 3D Printer Update Bed Temperature Light id: '1634273868202' description: '' trigger: - platform: state entity_id: sensor.octoprint_bed_target - platform: state entity_id: sensor.octoprint_bed_temperature - platform: state entity_id: switch.3d_printer condition: [] action: - choose: - alias: If the bed is cold, make the light blue conditions: - condition: and conditions: - condition: state entity_id: switch.3d_printer state: 'on' - condition: numeric_state entity_id: sensor.octoprint_bed_temperature below: '116' - condition: state entity_id: sensor.octoprint_bed_target state: '32.0' sequence: - service: light.turn_on data: rgb_color: - 0 - 255 - 255 effect: Solid target: entity_id: light.3d_printer_bed_temp - alias: If the bed is warming up, make the light breathe orange conditions: - condition: and conditions: - condition: state entity_id: switch.3d_printer state: 'on' - condition: numeric_state entity_id: sensor.octoprint_bed_target above: '33' - condition: template value_template: '{{ states("sensor.octoprint_bed_temperature") | int < states("sensor.octoprint_bed_target") | int - 1 }}' sequence: - service: light.turn_on data: rgb_color: - 255 - 142 - 0 effect: Breathe target: entity_id: light.3d_printer_bed_temp - alias: If the bed is at target heat, make the light red conditions: - condition: and conditions: - condition: state entity_id: switch.3d_printer state: 'on' - condition: numeric_state entity_id: sensor.octoprint_bed_target above: '33' - condition: and conditions: - condition: template value_template: '{{ states("sensor.octoprint_bed_temperature") | int > states("sensor.octoprint_bed_target") | int - 2 }}' - condition: template value_template: '{{ states("sensor.octoprint_bed_temperature") | int < states("sensor.octoprint_bed_target") | int + 2 }}' sequence: - service: light.turn_on target: entity_id: light.3d_printer_bed_temp data: rgb_color: - 255 - 0 - 0 effect: Solid - alias: If the bed is cooling down but not turning off, make the light breathe yellowish conditions: - condition: and conditions: - condition: state entity_id: switch.3d_printer state: 'on' - condition: template value_template: '{{ states("sensor.octoprint_bed_temperature") | int > states("sensor.octoprint_bed_target") | int + 1 }}' sequence: - service: light.turn_on target: entity_id: light.3d_printer_bed_temp data: rgb_color: - 254 - 254 - 0 effect: Breathe - alias: If the 3D printer turns off, turn off the light conditions: - condition: state entity_id: switch.3d_printer state: 'off' sequence: - service: light.turn_off target: entity_id: light.3d_printer_bed_temp default: [] mode: single - alias: 3D Printer Cancel Print id: '1634606712756' description: '' trigger: - platform: device domain: tasmota device_id: f51e5de9797e5949aa2cacb1b5bbfb8f type: button_long_press subtype: button_5 discovery_id: 9C9C1F47AE83_button_5_HOLD condition: [] action: - service: switch.turn_on target: entity_id: switch.octoprint_cancel_print mode: single - alias: Living Room Light Toggle id: '1634611734007' description: '' trigger: - platform: device domain: tasmota device_id: e4ac095d46cedd58ceb8bb01bbcf6440 type: button_double_press subtype: button_2 discovery_id: BCDDC2594486_button_2_DOUBLE condition: [] action: - service: light.toggle target: entity_id: light.living_room_fan_light mode: single - id: '1637599699240' alias: Lab TV Toggle description: '' trigger: - platform: device domain: tasmota device_id: f51e5de9797e5949aa2cacb1b5bbfb8f type: button_double_press subtype: button_1 discovery_id: 9C9C1F47AE83_button_1_DOUBLE - platform: device domain: tasmota device_id: 082f2d49dab1e06234cbc1a01d3787dc type: button_double_press subtype: button_1 discovery_id: ECFABC56F484_button_1_DOUBLE condition: [] action: - service: media_player.toggle target: entity_id: media_player.lab_tv data: {} mode: single - alias: Fish Tank Filter Toggle id: '1638942926537' description: '' trigger: - platform: device domain: tasmota device_id: cfda927b6ff502b7d88f779339e28f5d type: button_triple_press subtype: button_1 discovery_id: 84F3EBE0D784_button_1_TRIPLE condition: [] action: - service: switch.toggle target: entity_id: switch.fish_tank_filter mode: single - alias: Thermostat Preset Select id: '1642469538699' description: '' trigger: - platform: state entity_id: input_select.thermostat_preset - platform: state entity_id: input_boolean.windows_open condition: [] action: - service: script.thermostat_preset_handler mode: single - alias: Thermostat Automated Select id: '1642470565005' description: '' trigger: - platform: state entity_id: person.steven condition: [] action: - choose: - conditions: - condition: state entity_id: person.steven state: home - condition: state entity_id: input_select.thermostat_preset state: Daytime - Chris sequence: - service: input_select.select_option target: entity_id: input_select.thermostat_preset data: option: Daytime - Steven - conditions: - condition: state entity_id: person.chris state: home - condition: not conditions: - condition: state entity_id: person.steven state: home - condition: state entity_id: input_select.thermostat_preset state: Daytime - Steven sequence: - service: input_select.select_option target: entity_id: input_select.thermostat_preset data: option: Daytime - Chris default: [] mode: single - alias: Mail Light Update id: '1643264447175' description: '' trigger: - platform: time at: '12:00:00' - platform: state entity_id: binary_sensor.mail_button to: 'on' condition: [] action: - choose: - conditions: - condition: state entity_id: binary_sensor.mail_button state: 'on' sequence: - service: input_boolean.turn_off target: entity_id: input_boolean.new_mail data: {} - service: light.turn_off target: entity_id: light.mail_light data: {} - conditions: - condition: or conditions: - condition: numeric_state entity_id: sensor.mail_usps_packages above: '0' - condition: numeric_state entity_id: sensor.mail_usps_mail above: '0' sequence: - service: input_boolean.turn_on target: entity_id: input_boolean.new_mail data: {} - service: light.turn_on target: entity_id: light.mail_light data: rgb_color: - 255 - 200 - 151 default: [] mode: single - alias: Trash Light Update id: '1643341212029' description: '' trigger: - platform: state entity_id: input_select.trash_state - platform: numeric_state entity_id: sensor.garbage_collection below: '2' condition: [] action: - choose: - conditions: - condition: state entity_id: input_select.trash_state state: Brought In sequence: - service: light.turn_off target: entity_id: light.trash_light - conditions: - condition: state entity_id: input_select.trash_state state: Bring Out - condition: numeric_state entity_id: sensor.garbage_collection below: '1' sequence: - service: light.turn_on target: entity_id: light.trash_light data: rgb_color: - 255 - 0 - 0 - conditions: - condition: state entity_id: input_select.trash_state state: Bring Out - condition: numeric_state entity_id: sensor.garbage_collection below: '2' sequence: - service: light.turn_on target: entity_id: light.trash_light data: rgb_color: - 255 - 208 - 159 - conditions: - condition: state entity_id: input_select.trash_state state: Bring Back In sequence: - service: light.turn_on target: entity_id: light.trash_light data: rgb_color: - 0 - 255 - 255 default: [] mode: single - alias: Trash State Handler id: '1643347287312' description: '' trigger: - platform: numeric_state entity_id: sensor.garbage_collection below: '2' - platform: state entity_id: binary_sensor.trash_button to: 'on' condition: [] action: - choose: - conditions: - condition: state entity_id: binary_sensor.trash_button state: 'on' sequence: - choose: - conditions: - condition: state entity_id: input_select.trash_state state: Bring Out sequence: - service: garbage_collection.collect_garbage target: entity_id: sensor.garbage_collection default: [] - service: input_select.select_next target: entity_id: input_select.trash_state - conditions: - condition: numeric_state entity_id: sensor.garbage_collection below: '2' sequence: - service: input_select.select_option target: entity_id: input_select.trash_state data: option: Bring Out default: [] mode: single - alias: Recycle Light Update id: '1643347730280' description: '' trigger: - platform: state entity_id: input_select.recycle_state - platform: numeric_state entity_id: sensor.recycling below: '2' condition: [] action: - choose: - conditions: - condition: state entity_id: input_select.recycle_state state: Brought In sequence: - service: light.turn_off target: entity_id: light.recycle_light - conditions: - condition: state entity_id: input_select.recycle_state state: Bring Out - condition: numeric_state entity_id: sensor.recycling below: '1' sequence: - service: light.turn_on target: entity_id: light.recycle_light data: rgb_color: - 255 - 0 - 0 - conditions: - condition: state entity_id: input_select.recycle_state state: Bring Out - condition: numeric_state entity_id: sensor.recycling below: '2' sequence: - service: light.turn_on target: entity_id: light.recycle_light data: rgb_color: - 255 - 208 - 159 - conditions: - condition: state entity_id: input_select.recycle_state state: Bring Back In sequence: - service: light.turn_on target: entity_id: light.recycle_light data: rgb_color: - 0 - 255 - 255 default: [] mode: single - alias: Recycle State Handler id: '1643348123383' description: '' trigger: - platform: numeric_state entity_id: sensor.recycling below: '2' - platform: state entity_id: binary_sensor.recycle_button to: 'on' condition: [] action: - choose: - conditions: - condition: state entity_id: binary_sensor.recycle_button state: 'on' sequence: - choose: - conditions: - condition: state entity_id: input_select.recycle_state state: Bring Out sequence: - service: garbage_collection.collect_garbage target: entity_id: sensor.recycling default: [] - service: input_select.select_next target: entity_id: input_select.recycle_state - conditions: - condition: numeric_state entity_id: sensor.recycling below: '2' sequence: - service: input_select.select_option target: entity_id: input_select.recycle_state data: option: Bring Out default: [] mode: single - alias: Turn On Lab TV with WakeOnLan id: '1644253838913' description: '' trigger: - platform: webostv.turn_on entity_id: media_player.lab_tv condition: [] action: - service: wake_on_lan.send_magic_packet data: mac: 20:17:42:D9:6D:4E mode: single - alias: Turn On Living Room TV with WakeOnLan id: '1644253912444' description: '' trigger: - platform: webostv.turn_on entity_id: media_player.living_room_tv condition: [] action: - service: wake_on_lan.send_magic_packet data: mac: 74:40:BE:88:4F:80 mode: single - id: '1650324443680' alias: Doorbell description: '' trigger: - type: occupied platform: device device_id: 9ac2e56d16554b6e839f0feab4c5a479 entity_id: binary_sensor.front_door_ring_ding domain: binary_sensor condition: [] action: - service: script.status_annc data: who: everywhere call_doorbell_chime: 1 call_snark_doorbell: 1 mode: single - id: '1650326437602' alias: Doorbell Motion Detected description: '' trigger: - type: motion platform: device device_id: 9ac2e56d16554b6e839f0feab4c5a479 entity_id: binary_sensor.front_door_ring_motion domain: binary_sensor id: motion condition: - condition: state entity_id: input_boolean.do_not_disturb state: 'off' action: - condition: state entity_id: binary_sensor.front_door_recent_activity state: 'off' - wait_for_trigger: - platform: state entity_id: - binary_sensor.front_door_recent_activity to: 'on' from: 'off' id: door_activity timeout: 00:00:05 - choose: - conditions: - condition: template value_template: '{{ wait.trigger.id is defined }}' sequence: - stop: '{{ wait.trigger.id }}' default: - service: script.status_annc data: who: everywhere call_snark_door_motion: 1 mode: single - id: '1651617197832' alias: Lab Bathroom Fan Controller description: '' trigger: - type: humidity platform: device device_id: 92463da5daafb2dda4f417ae7f643aa9 entity_id: sensor.lab_bathroom_humidity domain: sensor above: 80 id: high - type: humidity platform: device device_id: 92463da5daafb2dda4f417ae7f643aa9 entity_id: sensor.lab_bathroom_humidity domain: sensor id: low below: 60 condition: [] action: - choose: - conditions: - condition: trigger id: high sequence: - service: switch.turn_on data: {} target: entity_id: switch.lab_bathroom_fan - conditions: - condition: trigger id: low sequence: - service: switch.turn_off data: {} target: entity_id: switch.lab_bathroom_fan default: [] mode: single - id: '1651635402480' alias: Friend Arrival description: '' trigger: - platform: state entity_id: person.kaitlyn to: home - platform: state entity_id: person.ronald to: home - platform: state entity_id: person.rheena to: home - platform: state entity_id: person.danielle to: home - platform: state entity_id: person.brian to: home - platform: state entity_id: person.rathnam to: home - platform: state entity_id: person.nico to: home - platform: state entity_id: - person.mari to: home condition: [] action: - service: script.text_notify_everyone data: title: Guest Arrival message: '{{ trigger.to_state.attributes.friendly_name }} has arrived' mode: parallel max: 10 - id: '1653577962938' alias: Western Electric Cabinet Lights Controller description: '' trigger: - platform: device domain: tasmota device_id: f51e5de9797e5949aa2cacb1b5bbfb8f type: button_double_press subtype: button_2 discovery_id: 9C9C1F47AE83_button_2_DOUBLE id: button - platform: device domain: tasmota device_id: a2acf2ee7393220e37087061d1b0566c type: button_double_press subtype: button_1 discovery_id: 3C71BF316A64_button_1_DOUBLE id: button - platform: state entity_id: - switch.western_electric_rectifier from: 'off' to: 'on' id: rectifier_on condition: [] action: - choose: - conditions: - condition: trigger id: button sequence: - service: light.toggle data: color_temp: 380 effect: Wake up brightness_pct: 100 target: entity_id: light.western_electric_cabinet_lights - conditions: - condition: trigger id: rectifier_on sequence: - service: light.turn_on data: brightness_pct: 100 color_temp: 380 effect: Wake up target: entity_id: light.western_electric_cabinet_lights default: [] mode: single - id: '1656455659129' alias: Living Room Magic Cube description: '' use_blueprint: path: rvaidya/aqara_magic_cube.yaml input: remote: 3146f49fef4d10d8cf2a4be6609f44f3 active_face: input_number.living_room_magic_cube_side flip_90: true cube_flip_90: - service: light.toggle data: {} target: entity_id: light.living_room_fan_light flip_180: true cube_flip_180: [] slide_any_side: true cube_slide_any: - service: media_player.media_play_pause data: {} target: entity_id: media_player.living_room_apple_tv knock_any_side: true cube_knock_any: - service: media_player.toggle data: {} target: entity_id: - media_player.living_room_tv rotate_right: - service: media_player.volume_up data: {} target: entity_id: media_player.living_room_pioneer rotate_left: - service: media_player.volume_down data: {} target: entity_id: media_player.living_room_pioneer rotate_any_side: true cube_shake: - service: script.downstairs_chill data: {} - id: '1657676381882' alias: ZHA - Aqara Wireless Mini Switch description: '' use_blueprint: path: SeanM/zha-aqara-wireless-mini-switch.yaml input: aqara_mini_switch: dbac350dab9bcea6d7548327a20cefee button_single_press: - service: script.text_notify_chris data: message: Single button_double_press: - service: script.text_notify_chris data: message: Double button_long_press: - service: script.text_notify_chris data: message: Long - id: '1672953123172' alias: NFC Tag Testing description: '' trigger: - platform: event event_type: test_tag_scan event_data: tag_type: chore condition: [] action: - service: notify.chris data: message: 'Scanned by {{ trigger.event.data.scanned_by }} | Tag: {{ trigger.event.data.tag_name }}' - choose: - conditions: - condition: template value_template: '{{ trigger.event.data.tag_name == "cleaned_master_bath" }}' sequence: [] mode: single - id: '1674004743050' alias: Living Room TV Hyperion description: '' trigger: - platform: device device_id: 2cad1a38df4cb7030c6243f70d8af22b domain: media_player entity_id: media_player.living_room_tv type: turned_on id: 'on' - platform: device device_id: 2cad1a38df4cb7030c6243f70d8af22b domain: media_player entity_id: media_player.living_room_tv type: turned_off id: 'off' condition: [] action: - choose: - conditions: - condition: trigger id: 'on' sequence: - service: light.turn_on data: effect: USB Capture brightness_pct: 100 target: entity_id: light.living_room_tv_hyperion - conditions: - condition: trigger id: 'off' sequence: - service: light.turn_off data: {} target: entity_id: light.living_room_tv_hyperion mode: single - id: '1674014681253' alias: Water Leak Handler description: '' trigger: - type: moist platform: device device_id: cde28a301e62e5d305599aed2f12ce67 entity_id: binary_sensor.ac_water_leak_sensor domain: binary_sensor - type: moist platform: device device_id: bcae5b2003bfd3ce1b0080e08bcfe679 entity_id: binary_sensor.garage_water_leak_sensor domain: binary_sensor - type: moist platform: device device_id: cd2a7a3a6238358363f53e4a88984c4d entity_id: binary_sensor.lumi_lumi_sensor_wleak_aq1_iaszone_2 domain: binary_sensor condition: [] action: - service: script.text_urgent_alert data: who: chris title: Water Leak!! message: '{% set name = trigger.to_state.name %} I have detected a water leak {{- " in the A/C closet. " if "AC" in name -}} {{- " in the Garage. " if "Garage" in name -}} {{- " under the kitchen sink. " if "Kitchen Sink" in name -}} ' - service: script.alexa_voice data: who: presence message: '{% set name = trigger.to_state.name %} I have detected a water leak {{- " in the A/C closet. " if "AC" in name -}} {{- " in the Garage. " if "Garage" in name -}} {{- " under the kitchen sink. " if "Kitchen Sink" in name -}} ' mode: single - id: alexa_snack_for_blaze alias: Alexa Snack For Blaze initial_state: true trigger: platform: state entity_id: - input_button.alexa_snack_for_blaze action: - service: script.snack_for_blaze - alias: Clock Chime id: clock_chime mode: restart trigger: - platform: time_pattern minutes: 0 id: '0' - platform: time_pattern minutes: 15 id: '15' - platform: time_pattern minutes: 30 id: '30' - platform: time_pattern minutes: 45 id: '45' condition: - condition: time after: input_datetime.clock_chime_on_time before: input_datetime.clock_chime_off_time - condition: state entity_id: input_boolean.audible_notifications state: 'on' - condition: state entity_id: input_boolean.clock_chime state: 'on' - condition: or conditions: - condition: state entity_id: group.family state: home - condition: state entity_id: input_boolean.guest_mode state: 'on' action: - choose: - conditions: - condition: or conditions: - condition: trigger id: '15' - condition: trigger id: '45' sequence: - condition: or conditions: - condition: state entity_id: input_boolean.clock_chime_quarter_toll state: 'off' - condition: state entity_id: input_select.clock_chime_sound state: Cuckoo Clock - stop: Quarter Toll Disabled - conditions: - condition: trigger id: '30' sequence: - condition: state entity_id: input_boolean.clock_chime_half_toll state: 'off' - stop: Half Toll Disabled default: [] - wait_template: '{{ not is_state("media_player.living_room_echo", "playing") }}' continue_on_timeout: false timeout: 00:02:00 - service: script.alexa_voice data: who: living_room message: "{% if states(\"input_select.clock_chime_sound\") == \"Cuckoo Clock\"\ \ %}\n {% if trigger.id == \"30\" %}\n \n\ \ {% else %}\n \n {% endif %}\n{% elif states(\"input_select.clock_chime_sound\"\ ) == \"Grandfather Clock\" %}\n {% if trigger.id == \"15\" %}\n \n\ \ {% elif trigger.id == \"30\" %}\n \n\ \ {% elif trigger.id == \"45\" %}\n \n\ \ {% else %}\n \n {% endif %}\n{% endif %}\n" - id: set_wakeup_time alias: Set Wakeup Time trigger: - platform: time at: 01:00:00 action: - choose: - alias: Home Day conditions: - condition: state entity_id: binary_sensor.workday state: 'on' - condition: state entity_id: binary_sensor.holiday state: 'off' sequence: - service: input_datetime.set_datetime data: time: '{{ states(''input_datetime.workday_wakeup_time'') }}' target: entity_id: input_datetime.wakeup - service: input_boolean.turn_on data: {} target: entity_id: input_boolean.wakeup_alarm default: - service: input_datetime.set_datetime data: time: 09:00:00 target: entity_id: input_datetime.wakeup - service: input_boolean.turn_off data: {} target: entity_id: input_boolean.wakeup_alarm - id: morning_routine alias: Morning Routine trigger: - at: input_datetime.wakeup platform: time action: - service: input_boolean.turn_off target: entity_id: input_boolean.do_not_disturb data: {} - service: input_boolean.turn_on target: entity_id: input_boolean.audible_notifications data: {} - choose: - conditions: - condition: state entity_id: input_boolean.windows_open state: 'off' sequence: - service: fan.turn_off target: entity_id: fan.bedroom_fan data: {} default: [] - service: input_select.select_option target: entity_id: input_select.thermostat_preset data: option: "{% if is_state(\"person.steven\", \"home\") %}\n Daytime - Steven\n\ {% else %}\n Daytime - Chris\n{% endif %}\n" - service: switch.turn_off data: {} target: entity_id: - switch.chris_s_echo_show_do_not_disturb_switch - switch.lab_echo_dot_do_not_disturb_switch - switch.living_room_echo_do_not_disturb_switch - switch.kitchen_echo_dot_do_not_disturb_switch - switch.chris_s_fire_do_not_disturb_switch - choose: - conditions: - condition: state entity_id: input_boolean.wakeup_alarm state: 'on' sequence: - service: script.morning_wakeup_report data: {} default: [] mode: single - alias: Front Lights On At Dusk id: '1616533227405' description: Trigger when it gets dark trigger: - type: illuminance platform: device device_id: 2db8b8a959026a5b8339a61834dd3197 entity_id: sensor.patio_ambient_light domain: sensor below: 20 condition: - condition: state entity_id: input_boolean.front_lights_on_for_the_night state: 'off' action: - service: notify.chris data: message: Lights are turning on - service: script.front_lights_turn_on - service: input_boolean.turn_on target: entity_id: input_boolean.front_lights_on_for_the_night - condition: state entity_id: input_boolean.columns_button_enabled state: 'on' - service: light.turn_on target: entity_id: light.front_columns_button_led mode: single - alias: Front lights off at night id: '1599449030138' description: '' trigger: - at: input_datetime.front_lights_off platform: time condition: - condition: state entity_id: input_boolean.guests_over state: 'off' action: - service: scene.turn_on target: entity_id: scene.front_lights_all_off - service: input_boolean.turn_on target: entity_id: - input_boolean.front_lights_off_for_the_night - service: light.turn_off target: entity_id: - light.front_columns_button_led - light.front_columns_black_lights - light.columns_garland - light.village - light.fiber_optic_decoration - service: light.turn_off target: entity_id: - light.front_columns_button_led data: transition: 2 - service: switch.turn_off target: entity_id: - switch.path_light_power_supply - service: script.fpp_stop_now mode: single - alias: Front Lights Reset at noon id: '1617760688958' description: '' trigger: - platform: time at: '12:00:00' condition: [] action: - service: input_boolean.turn_off target: entity_id: - input_boolean.front_lights_on_for_the_night - input_boolean.front_lights_off_for_the_night mode: single - alias: Toggle Flood Lights id: '1617761350052' description: '' trigger: - platform: device domain: tasmota device_id: c05382e95d514cffc7ea5ddc936b93b9 type: button_double_press subtype: button_1 discovery_id: CC50E3E75A8F_button_1_DOUBLE condition: [] action: - service: light.toggle data: brightness_pct: 100 rgb_color: - 0 - 255 - 255 transition: 5 target: entity_id: - light.left_flood - light.right_flood mode: single - alias: FPP Volume Set id: '1632625438084' description: '' trigger: - platform: state entity_id: input_number.fpp_volume condition: [] action: - service: script.fpp_set_volume data: volume: '{{ states("input_number.fpp_volume") }}' mode: single - alias: FPP Status Sync id: '1633371419662' description: '' trigger: - platform: state entity_id: sensor.fpp_status condition: [] action: - choose: - alias: playing standby conditions: - condition: state entity_id: sensor.fpp_status state: playing - condition: template value_template: '{{ "standby" in (states("sensor.fpp_current_playlist") | lower) }}' sequence: - service: input_boolean.turn_off target: entity_id: input_boolean.front_yard_motion_lights - service: light.turn_off target: entity_id: light.porch_light - alias: playing normal conditions: - condition: state entity_id: sensor.fpp_status state: playing sequence: - service: light.turn_off target: entity_id: light.front_columns_button_led data: transition: 2 - service: input_boolean.turn_off target: entity_id: input_boolean.front_yard_motion_lights - service: light.turn_off target: entity_id: light.porch_light - alias: idle conditions: - condition: state entity_id: sensor.fpp_status state: idle sequence: - service: input_boolean.turn_on target: entity_id: input_boolean.front_yard_motion_lights - if: - condition: and conditions: - condition: state entity_id: input_boolean.front_lights_on_for_the_night state: 'on' - condition: state entity_id: input_boolean.front_lights_off_for_the_night state: 'off' then: - service: light.turn_on target: entity_id: light.front_columns_button_led data: transition: 2 - service: script.front_lights_turn_on default: [] mode: single - alias: Front Columns Button Press id: '1633124084367' description: '' trigger: - platform: device domain: tasmota device_id: 8e07dd38dc9354108f762038aec68c27 type: button_short_press subtype: button_1 discovery_id: BCFF4D1916A5_button_1_SINGLE condition: - condition: state state: 'on' entity_id: light.front_columns_button_led action: - service: script.text_notify_chris data: title: Front Lights message: Someone pressed the button - alias: Set Volume choose: - conditions: - condition: time before: '20:30:00' sequence: - service: script.fpp_set_volume data: volume: 70 - conditions: - condition: time after: '20:30:00' - condition: time before: '21:30:00' sequence: - service: script.fpp_set_volume data: volume: 50 - conditions: - condition: time after: '21:30:00' sequence: - service: script.fpp_set_volume data: volume: 38 default: [] - service: script.fpp_start_playlist_at_random_song mode: single - alias: Front Columns Force Stop id: '1633372254150' description: '' trigger: - platform: device domain: tasmota device_id: 8e07dd38dc9354108f762038aec68c27 type: button_quadruple_press subtype: button_1 discovery_id: BCFF4D1916A5_button_1_QUAD condition: - condition: state entity_id: sensor.fpp_status state: playing action: - service: script.fpp_stop_now mode: single - alias: Irrigation Timer Start id: IrrigationTimerStart trigger: - platform: state entity_id: switch.irrigation to: 'on' action: - service: timer.start entity_id: timer.irrigation - alias: Irrigation Timer Stop id: IrrigationTimerStop trigger: - platform: event event_type: timer.finished event_data: entity_id: timer.irrigation action: - service: notify.all_devices data: message: Irrigation complete - service: switch.turn_off entity_id: switch.irrigation - id: bedroom_smart_light_handler alias: Bedroom Smart Light Handler description: '' trigger: - platform: state entity_id: binary_sensor.espresense_bedroom_motion from: 'off' to: 'on' condition: - condition: state entity_id: input_boolean.do_not_disturb state: 'off' - condition: state entity_id: input_boolean.motion_lights_master state: 'on' - condition: state entity_id: input_boolean.bedroom_motion_lights state: 'on' action: - choose: - alias: Morning conditions: - condition: state entity_id: binary_sensor.morning state: 'on' - below: 200 condition: numeric_state entity_id: sensor.bedroom_ambient_light sequence: - service: light.turn_on target: entity_id: light.bathroom_light data: brightness_pct: 35 - alias: Daytime conditions: - condition: or conditions: - condition: state entity_id: binary_sensor.noon state: 'on' - condition: state entity_id: binary_sensor.afternoon state: 'on' - below: 200 condition: numeric_state entity_id: sensor.bedroom_ambient_light sequence: - service: script.master_bedroom_lights_w_level data: level: 170 - wait_for_trigger: - platform: state entity_id: binary_sensor.espresense_bedroom_motion from: 'on' to: 'off' for: minutes: '{{ states("input_number.motion_lights_delay")|int }}' - service: light.turn_off data: {} target: entity_id: - light.hue_color_lamp_1 - light.bedroom_fan_lights - alias: Evening conditions: - condition: state entity_id: binary_sensor.evening state: 'on' sequence: - choose: - conditions: - below: 200 condition: numeric_state entity_id: sensor.bedroom_ambient_light sequence: - service: light.turn_on data: brightness_pct: 75 target: entity_id: light.hue_color_lamp_1 - wait_for_trigger: - platform: state entity_id: binary_sensor.espresense_bedroom_motion from: 'on' to: 'off' for: minutes: '{{ states("input_number.motion_lights_delay")|int }}' - service: light.turn_off data: {} target: entity_id: - light.hue_color_lamp_1 - light.bedroom_fan_lights default: [] - alias: Night conditions: - condition: state entity_id: binary_sensor.night state: 'on' - condition: state entity_id: input_boolean.do_not_disturb state: 'off' sequence: - service: light.turn_on data: brightness_pct: 75 target: entity_id: light.hue_color_lamp_1 - wait_for_trigger: - platform: state entity_id: binary_sensor.espresense_bedroom_motion from: 'on' to: 'off' for: minutes: '{{ states("input_number.motion_lights_delay")|int }}' - service: light.turn_off data: {} target: entity_id: - light.hue_color_lamp_1 - light.bedroom_fan_lights default: [] mode: restart - id: lab_smart_light_handler alias: Lab Smart Light Handler description: '' trigger: - platform: state entity_id: binary_sensor.espresense_lab_motion from: 'off' to: 'on' condition: - condition: state entity_id: input_boolean.do_not_disturb state: 'off' - condition: state entity_id: input_boolean.motion_lights_master state: 'on' - condition: state entity_id: input_boolean.lab_motion_lights state: 'on' - below: 100 condition: numeric_state entity_id: sensor.lab_ambient_light action: - service: light.turn_on entity_id: light.lab_fan_light - wait_for_trigger: - platform: state entity_id: binary_sensor.espresense_bedroom_motion from: 'on' to: 'off' for: minutes: '{{ states(''input_number.motion_lights_delay'')|int }}' - service: light.turn_off data: {} target: entity_id: - light.lab_fan_light mode: restart - id: living_room_smart_light_handler alias: Living Room Smart Light Handler description: '' trigger: - platform: state entity_id: binary_sensor.espresense_living_room_motion from: 'off' to: 'on' condition: - condition: state entity_id: input_boolean.do_not_disturb state: 'off' - condition: state entity_id: input_boolean.motion_lights_master state: 'on' - condition: state entity_id: input_boolean.living_room_motion_lights state: 'on' action: - choose: - alias: Daytime conditions: - condition: or conditions: - condition: state entity_id: binary_sensor.morning state: 'on' - condition: state entity_id: binary_sensor.noon state: 'on' - condition: state entity_id: binary_sensor.afternoon state: 'on' sequence: - service: scene.turn_on data: entity_id: scene.living_room_lights_on - wait_for_trigger: - platform: state entity_id: binary_sensor.espresense_living_room_motion from: 'on' to: 'off' for: minutes: '{{ states("input_number.motion_lights_delay")|int }}' - service: scene.turn_on data: entity_id: scene.living_room_lights_off - alias: Evening conditions: - condition: state entity_id: binary_sensor.evening state: 'on' sequence: - service: scene.turn_on data: entity_id: scene.living_room_ambient - wait_for_trigger: - platform: state entity_id: binary_sensor.espresense_living_room_motion from: 'on' to: 'off' for: minutes: '{{ states("input_number.motion_lights_delay")|int }}' - service: scene.turn_on data: entity_id: scene.living_room_lights_off - alias: Night conditions: - condition: state entity_id: binary_sensor.night state: 'on' - condition: state entity_id: input_boolean.do_not_disturb state: 'off' sequence: - service: scene.turn_on data: entity_id: scene.living_room_ambient - wait_for_trigger: - platform: state entity_id: binary_sensor.espresense_living_room_motion from: 'on' to: 'off' for: minutes: '{{ states("input_number.motion_lights_delay")|int }}' - service: scene.turn_on data: entity_id: scene.living_room_lights_off default: [] mode: restart - id: dining_room_smart_light_handler alias: Dining Room Smart Light Handler description: '' trigger: - platform: state entity_id: binary_sensor.espresense_dining_room_motion from: 'off' to: 'on' for: seconds: 1 condition: - condition: state entity_id: input_boolean.do_not_disturb state: 'off' - condition: state entity_id: input_boolean.motion_lights_master state: 'on' - condition: state entity_id: input_boolean.dining_room_motion_lights state: 'on' action: - service: light.turn_on data: {} target: entity_id: light.dining_room_light - wait_for_trigger: - platform: state entity_id: binary_sensor.espresense_dining_room_motion from: 'on' to: 'off' for: minutes: '{{ states(''input_number.motion_lights_delay'')|int }}' - service: light.turn_off data: {} target: entity_id: light.dining_room_light mode: restart - id: kitchen_smart_light_handler alias: Kitchen Smart Light Handler description: '' trigger: - platform: state entity_id: binary_sensor.espresense_kitchen_motion id: motion_active from: 'off' to: 'on' for: seconds: 1 - platform: device type: turned_on device_id: 7e8b95744c7040bbbee460145db11d97 entity_id: light.kitchen_light id: light_turned_on domain: light condition: - condition: state entity_id: input_boolean.motion_lights_master state: 'on' - condition: state entity_id: input_boolean.kitchen_motion_lights state: 'on' action: - choose: - alias: Light Turned On conditions: - condition: trigger id: light_turned_on sequence: - service: light.turn_on data: brightness_pct: 100 target: entity_id: light.kitchen_leds - alias: Night conditions: - condition: state entity_id: binary_sensor.do_not_disturb state: 'on' sequence: - service: light.turn_on data: brightness_pct: 85 target: entity_id: light.kitchen_leds - wait_for_trigger: - platform: state entity_id: binary_sensor.espresense_kitchen_motion from: 'on' to: 'off' for: minutes: '{{ states(''input_number.motion_lights_delay'')|int }}' - service: light.turn_off target: entity_id: - light.kitchen_light - light.kitchen_leds - alias: Evening and Night While Awake conditions: - condition: or conditions: - condition: state entity_id: binary_sensor.evening state: 'on' - condition: state entity_id: binary_sensor.night state: 'on' sequence: - service: light.turn_on data: brightness_pct: 100 target: entity_id: light.kitchen_leds - wait_for_trigger: - platform: state entity_id: binary_sensor.espresense_kitchen_motion from: 'on' to: 'off' for: minutes: '{{ states(''input_number.motion_lights_delay'')|int }}' - service: scene.turn_on target: entity_id: scene.kitchen_dim default: - service: light.turn_on data: {} target: entity_id: light.kitchen_light - wait_for_trigger: - platform: state entity_id: binary_sensor.espresense_kitchen_motion from: 'on' to: 'off' for: minutes: '{{ states(''input_number.motion_lights_delay'')|int }}' - service: light.turn_off data: {} target: entity_id: - light.kitchen_light - light.kitchen_leds mode: restart - id: front_yard_smart_light_handler alias: Front Yard Smart Light Handler description: '' trigger: - platform: state entity_id: binary_sensor.front_yard_motion from: 'off' to: 'on' for: hours: 0 minutes: 0 seconds: 2 condition: - condition: state entity_id: input_boolean.front_yard_motion_lights state: 'on' - below: 60 condition: numeric_state entity_id: sensor.patio_ambient_light action: - type: turn_on device_id: ea967cfc7f04c23b62f5b9f437966b3e entity_id: light.porch_light domain: light - wait_for_trigger: - platform: state entity_id: binary_sensor.front_yard_motion from: 'on' to: 'off' for: minutes: '{{ states(''input_number.motion_lights_delay'')|int }}' - service: light.turn_off target: entity_id: light.porch_light data: {} mode: restart - id: patio_smart_light_handler alias: Patio Smart Light Handler description: '' trigger: - platform: state entity_id: binary_sensor.patio_ring_motion from: 'off' to: 'on' condition: - condition: state entity_id: input_boolean.motion_lights_master state: 'on' - condition: state entity_id: input_boolean.patio_motion_lights state: 'on' - below: 60 condition: numeric_state entity_id: sensor.patio_ambient_light action: - service: light.turn_on entity_id: light.patio_string_lights - wait_for_trigger: - platform: state entity_id: binary_sensor.patio_motion from: 'on' to: 'off' for: minutes: '{{ states(''input_number.motion_lights_delay'')|int }}' - service: light.turn_off data: {} target: entity_id: - light.patio_string_lights mode: restart - id: garage_smart_light_handler alias: Garage Smart Light Handler description: '' trigger: - platform: state entity_id: input_boolean.garage_motion id: motion_active from: 'off' to: 'on' - platform: state entity_id: input_boolean.garage_motion id: motion_inactive from: 'on' to: 'off' for: minutes: '{{ states(''input_number.motion_lights_delay'')|int }}' - platform: state entity_id: binary_sensor.garage_door id: door_open from: 'off' to: 'on' - platform: state entity_id: binary_sensor.garage_door id: door_closed from: 'on' to: 'off' action: - choose: - alias: Motion Active conditions: - condition: trigger id: motion_active - condition: state entity_id: binary_sensor.garage_door state: 'on' - condition: state entity_id: input_boolean.motion_lights_master state: 'on' - condition: state entity_id: input_boolean.garage_motion_lights state: 'on' sequence: - service: light.turn_on data: {} target: entity_id: light.garage_light - alias: Motion Inactive conditions: - condition: trigger id: motion_inactive - condition: state entity_id: binary_sensor.garage_door state: 'on' - condition: state entity_id: input_boolean.motion_lights_master state: 'on' - condition: state entity_id: input_boolean.garage_motion_lights state: 'on' sequence: - service: light.turn_off data: {} target: entity_id: light.garage_light - alias: Door Open conditions: - condition: trigger id: door_open sequence: - service: light.turn_on data: {} target: entity_id: light.garage_light - alias: Door Closed conditions: - condition: trigger id: door_closed sequence: - service: light.turn_off data: {} target: entity_id: light.garage_light default: [] mode: restart - id: hallway_smart_light_handler alias: Hallway Smart Light Handler description: '' trigger: - type: motion platform: device device_id: 7a7926b5a8d399f1cf7fcd1f450ada99 entity_id: binary_sensor.hallway_motion_sensor domain: binary_sensor condition: - condition: state entity_id: input_boolean.motion_lights_master state: 'on' - condition: state entity_id: input_boolean.hallway_smart_lights state: 'on' action: - if: - condition: state entity_id: input_boolean.do_not_disturb state: 'off' then: - service: light.turn_on entity_id: light.hallway_light - wait_for_trigger: - platform: state entity_id: binary_sensor.hallway_motion_sensor from: 'on' to: 'off' for: minutes: 1 - service: light.turn_off target: entity_id: - light.hallway_light mode: restart - id: front_hall_smart_light_handler alias: Front Hall Smart Light Handler description: '' trigger: - type: motion platform: device device_id: 7a7926b5a8d399f1cf7fcd1f450ada99 entity_id: binary_sensor.front_hall_motion_sensor domain: binary_sensor condition: - condition: state entity_id: input_boolean.motion_lights_master state: 'on' - condition: state entity_id: input_boolean.front_hall_smart_lights state: 'on' action: - service: light.turn_on entity_id: light.front_hall_light - wait_for_trigger: - platform: state entity_id: binary_sensor.front_hall_motion_sensor from: 'on' to: 'off' for: minutes: 1 - service: light.turn_off target: entity_id: - light.front_hall_light mode: restart - id: linen_closet_smart_light_handler alias: Linen Closet Smart Light Handler description: '' trigger: - type: opened platform: device device_id: b80845462ce1646784961b89e888c56a entity_id: binary_sensor.linen_closet domain: binary_sensor id: open - type: not_opened platform: device device_id: b80845462ce1646784961b89e888c56a entity_id: binary_sensor.linen_closet domain: binary_sensor id: closed action: - choose: - conditions: - condition: trigger id: open sequence: - service: light.turn_on data: brightness_pct: 100 target: entity_id: light.linen_closet - conditions: - condition: trigger id: closed sequence: - service: light.turn_off data: {} target: entity_id: light.linen_closet default: [] mode: restart - id: '1606452083691' alias: Alohomora description: '' trigger: - platform: state entity_id: input_boolean.alohomora from: 'off' to: 'on' condition: - condition: device device_id: 88da2f99bc5978f66263d957949cfb6d domain: device_tracker entity_id: device_tracker.iphone_5 type: is_home action: - service: lock.unlock data: {} entity_id: lock.schlage_allegion_be469zp_connect_smart_deadbolt_locked_frontdoor - service: input_boolean.turn_off data: {} entity_id: input_boolean.alohomora mode: single - id: daily_snapshot_clean_up alias: Daily snapshot clean up trigger: - platform: time at: 03:00:00 action: - service: clean_up_snapshots_service.clean_up - id: startup_automations alias: Home Assistant Startup description: '' trigger: - platform: homeassistant event: start condition: [] action: - delay: 30 - service: notify.chris data: message: Home Assistant has started title: We're back - service: script.status_annc data: who: '{{ states(''sensor.room_presence'') }}' call_inform_chime: 1 call_ha_started: 1 - service: button.press data: {} target: entity_id: button.fire_tablet_load_start_url - service: mqtt.publish data: topic: cmnd/tasmotas/state payload: '' - service: homeassistant.update_entity entity_id: sensor.chris_location - service: homeassistant.update_entity entity_id: sensor.steven_location - service: frontend.set_theme data: name: ios-dark-mode-light-blue mode: single - alias: Update USPS Mail Camera Path on Hass Restart trigger: - platform: state entity_id: sensor.mail_updated - platform: homeassistant event: start action: - service: local_file.update_file_path data: entity_id: camera.mail_usps file_path: '{{ states(''sensor.mail_image_system_path'') }}' id: f8a0798d6ebb4821845ed48dbf91cf83 - alias: Power Outage Alert id: '1600452870216' description: '' trigger: - platform: state entity_id: sensor.cyberpower_status from: Online to: On Battery Battery Discharging condition: [] action: - service: notify.all_devices data: message: Power is out at home data: push: sound: name: default critical: 1 mode: single - alias: Power Restored Alert id: '1600453304153' description: '' trigger: - platform: state entity_id: sensor.cyberpower_status from: On Battery Battery Discharging to: Online condition: [] action: - service: notify.all_devices data: message: Power at home is restored. data: push: sound: name: default critical: 1 mode: single - alias: Battery Backup Unavailable Restart id: '1617220336703' description: '' trigger: - platform: state entity_id: sensor.cyberpower_status to: unavailable from: Online condition: [] action: - service: hassio.addon_restart data: addon: a0d7b954_nut mode: single - alias: NUT Auto Restart id: '1617758977383' description: '' trigger: - platform: state entity_id: sensor.cyberpower_status attribute: state to: Unavailable condition: - condition: state entity_id: input_boolean.nut_restarted state: 'off' action: - service: hassio.addon_restart data: addon: a0d7b954_nut - service: input_boolean.turn_on target: entity_id: input_boolean.nut_restarted - wait_template: 00:05:00 - service: input_boolean.turn_off target: entity_id: input_boolean.nut_restarted mode: single - alias: Certificate Expiration Alert id: '1615916791727' description: '' use_blueprint: path: bkbilly/certificate-expiration.yaml input: time_input: '15:00:00' certificate_input: sensor.cert_expiry_timestamp_home_chrisheder_com notify_device: 8a29ce795dc898ced035043888d04070 - alias: Nightly Backup id: nightly_backup mode: single trigger: - platform: time at: 02:00:00 action: - service: hassio.backup_full data: name: Full Backup {{ now().strftime('%Y-%m-%d') }} - alias: Announce CallerID id: announce_callerid trigger: platform: state entity_id: sensor.phone_modem to: callerid action: service: script.alexa_voice data: who: presence message: "{# Set call.name to the name of the caller ID initially #} {%- set\ \ call = namespace(name=state_attr('sensor.phone_modem', 'cid_name')) -%}\n\ {# Iterate through my contacts (example sensor in hidden_example.yaml) #}\ \ {# If the caller ID's number matches a number in my contacts #} {# override\ \ call.name with the contact's name #} {%- for name, number in state_attr('sensor.contacts','contacts').items()\ \ -%}\n {%- if number == state_attr('sensor.phone_modem', 'cid_number') -%}\n\ \ {%- set call.name = name -%}\n {%- endif -%}\n{%- endfor -%}\n{# Announce\ \ the call using a random variation of the phrase #} {{ [\n \"Sir, incoming\ \ call from \" + call.name,\n \"Sir, you have a call from \" + call.name,\n\ \ \"Sir, you have an incoming call from \" + call.name,\n \"Incoming phone\ \ call sir, from \" + call.name,\n \"Sir, \" + call.name + \"is calling\"\ \n ] | random }}\n" - id: family_has_arrived alias: Family Has arrived trigger: - platform: zone entity_id: person.chris zone: zone.home event: enter id: chris - entity_id: person.steven from: not_home platform: state to: home id: steven - entity_id: group.family platform: state to: home id: family from: not_home condition: [] action: - service: script.family_is_home mode: single initial_state: true - id: family_has_left alias: Family Has Left initial_state: true trigger: - entity_id: group.family from: home platform: state to: not_home mode: single condition: - condition: state entity_id: input_boolean.guest_mode state: 'off' action: - service: script.family_is_away - id: welcome_home alias: Welcome Home mode: restart trigger: - platform: state entity_id: - person.chris - person.steven - person.kaitlyn - person.ronald - person.mari - person.rheena - person.danielle - person.daniel - person.brian - person.rathnam - person.nico from: not_home to: home action: - choose: - conditions: - condition: state entity_id: input_boolean.welcome_home state: 'on' sequence: - wait_for_trigger: - platform: state entity_id: binary_sensor.front_door from: 'off' to: 'on' - service: scene.turn_on target: entity_id: scene.arrival - delay: hours: 0 minutes: 0 seconds: 10 milliseconds: 0 - service: script.turn_on entity_id: script.welcome_briefing default: - service: group.set data: object_id: arriving add_entities: '{{ trigger.to_state.entity_id }}' - wait_for_trigger: - platform: state entity_id: binary_sensor.front_door from: 'off' to: 'on' - delay: hours: 0 minutes: 0 seconds: 10 milliseconds: 0 - service: script.status_annc data: who: '{{ states(''sensor.room_presence'') }}' call_interuption: 1 speech_message: "{% set person = expand('group.arriving')|map(attribute='name')|join('\ \ and ') %} {% set peoplecount = expand('group.arriving') | count %} {%\ \ if peoplecount == 1 %}\n {% set is_are = ' is ' %}\n {% set has_have\ \ = ' has ' %}\n{% else %}\n {% set is_are = ' are ' %}\n {% set has_have\ \ = ' have ' %}\n{% endif %} {%- macro greeting_sentence(person, is_are,\ \ has_have) -%}\n {{ [\n person ~ has_have + \" arrived.\",\n \"My sensors\ \ are picking up the presence of additional humans. \" ~ person ~ has_have\ \ + \" been identified as home.\",\n \"Guess who is in the hub?\" ~ person\ \ ~ is_are,\n \"I am sensing a disturbance in the force. \" ~ person +\"\ \ must be back\",\n person ~ is_are + \"now in the house.\",\n person\ \ ~ is_are + \" now here. Welcome Home.\",\n person ~ is_are + \" now\ \ here.\",\n \"Just a quick announcement. \" ~ person ~ has_have + \" \ \ arrived\",\n person ~ has_have + \" finally made it home.\"\n ] | random\ \ }}\n{%- endmacro -%} {{greeting_sentence(person, is_are, has_have)}}\n" - delay: 00:02:00 - service: group.set data: object_id: arriving entities: [] - id: guests_have_arrived alias: Guests have arrived trigger: - platform: state entity_id: - person.kaitlyn - person.ronald - person.mari - person.rheena - person.danielle - person.daniel - person.brian - person.rathnam - person.nico from: not_home to: home action: - service: script.family_is_home - service: script.visitors_here initial_state: true - id: guests_have_left alias: Guests have left trigger: - entity_id: group.friends from: home to: not_home platform: state action: - service: script.visitors_gone - condition: not conditions: - condition: state entity_id: group.family state: home - service: script.family_is_away data: {} initial_state: true - alias: 3D Print Check Status id: '1645589881575' description: '' trigger: - platform: state entity_id: input_button.3d_print_check_status condition: [] action: - service: script.status_annc data: who: '{{ (''sensor.room_presence'') }}' call_boop: 1 speech_message: "{%- set time_left = state_attr('sensor.octoprint_print_progress','printTimeLeftFormatted').split(':')\ \ %}\n your 3D print is {{ states('sensor.octoprint_print_progress') }} percent\ \ complete.\n Theres\n{% if int(time_left[0]) != 0 %}\n {{ int(time_left[0])\ \ }} hour{{ 's' if int(time_left[0]) != 1 }},\n{% endif %}\n {{ int(time_left[1])\ \ }} minute{{ 's' if int(time_left[1]) != 1 }},\n and {{ int(time_left[2])\ \ }} second{{ 's' if float(time_left[2]) != 1 }} left\n" mode: single - alias: 3D Print Completed id: '1627013660483' description: '' trigger: - platform: numeric_state entity_id: sensor.octoprint_print_progress above: '99.99' condition: [] action: - if: - condition: and conditions: - condition: state entity_id: input_boolean.audible_notifications state: 'off' - condition: state entity_id: group.family state: home then: - service: input_boolean.turn_on data: {} target: entity_id: input_boolean.print_completed_overnight - if: - condition: state entity_id: group.family state: away then: - service: input_boolean.turn_on data: {} target: entity_id: input_boolean.print_completed_while_away mode: single - alias: 3D Printing Notifications id: 3d_print_notifications trigger: - platform: state entity_id: binary_sensor.octoprint_printing_2 from: 'off' to: 'on' id: printing_started - platform: state entity_id: binary_sensor.octoprint_printing_2 from: 'on' to: 'off' id: printing_ended action: - choose: - conditions: - condition: trigger id: printing_started sequence: - service: script.status_annc data: who: '{{ states(''sensor.room_presence'') }}' call_interuption: 1 speech_message: The three d printer is printing. - conditions: - condition: trigger id: printing_ended sequence: - service: notify.chris data: title: 3D Printer message: Print completed! - service: script.status_annc data: who: '{{ states(''sensor.room_presence'') }}' call_inform_chime: 1 call_print_complete: 1 - id: morning_standby alias: Morning Standby initial_state: true trigger: - platform: time at: input_datetime.morning_standby condition: condition: or conditions: - condition: state entity_id: group.family state: home - condition: state entity_id: input_boolean.guest_mode state: 'on' action: - service: script.standby - id: nightly_lockdown alias: Nightly Lockdown initial_state: true trigger: - platform: time at: input_datetime.nightly_lockdown condition: - condition: state entity_id: group.family state: home - condition: state entity_id: input_boolean.guest_mode state: 'off' - condition: or conditions: - condition: state entity_id: alarm_control_panel.sentry_network state: disarmed - condition: state entity_id: alarm_control_panel.sentry_network state: armed_home action: - service: alarm_control_panel.alarm_arm_night entity_id: alarm_control_panel.sentry_network - alias: Actionable Door Unlocked Notification id: '1642655673695' description: '' trigger: - platform: state entity_id: lock.touchscreen_deadbolt_z_wave_plus_frontdoor to: unlocked for: hours: 0 minutes: 10 seconds: 0 condition: [] action: - alias: Set up variables for the actions variables: action_lock: '{{ ''LOCK_'' ~ context.id }}' - alias: Ask to lock the front door service: notify.mobile_app_chriss_iphone_12_pro data: message: The front door has been unlocked for 10 minutes. Want to lock it again? data: actions: - action: '{{ action_lock }}' title: Lock - alias: Wait for a response wait_for_trigger: - platform: event event_type: mobile_app_notification_action event_data: action: '{{ action_lock }}' - alias: Perform the action choose: - conditions: - condition: template value_template: '{{ wait.trigger.event.data.action == action_lock }}' sequence: - service: lock.lock target: entity_id: lock.touchscreen_deadbolt_z_wave_plus_frontdoor mode: single - alias: Window Notifications id: '1642916773044' description: '' trigger: - platform: state entity_id: binary_sensor.kitchen_window for: hours: 0 minutes: 0 seconds: 2 from: 'off' to: 'on' - platform: state entity_id: binary_sensor.bedroom_windows for: hours: 0 minutes: 0 seconds: 2 from: 'off' to: 'on' - platform: state entity_id: binary_sensor.lab_windows for: hours: 0 minutes: 0 seconds: 2 from: 'off' to: 'on' - platform: state entity_id: binary_sensor.kitchen_window for: hours: 0 minutes: 0 seconds: 2 from: 'on' to: 'off' - platform: state entity_id: binary_sensor.bedroom_windows for: hours: 0 minutes: 0 seconds: 2 from: 'on' to: 'off' - platform: state entity_id: binary_sensor.lab_windows for: hours: 0 minutes: 0 seconds: 2 from: 'on' to: 'off' condition: - condition: state entity_id: input_boolean.window_notifications state: 'on' action: - service: notify.tvs data: title: '{{ trigger.to_state.attributes.friendly_name }}' message: "{% set states = {\n 'on':'Open',\n 'off':'Closed',\n } %}\n{{ trigger.to_state.attributes.friendly_name\ \ }} {{ states[trigger.to_state.state] }}\n" mode: single - alias: Patio Door Notifications id: '1642919890732' description: '' trigger: - platform: state entity_id: binary_sensor.sliding_glass_door for: hours: 0 minutes: 0 seconds: 2 from: 'on' to: 'off' - platform: state entity_id: binary_sensor.sliding_glass_door for: hours: 0 minutes: 0 seconds: 2 from: 'off' to: 'on' condition: - condition: state state: 'on' entity_id: input_boolean.patio_door_notifications action: - service: notify.tvs data: title: '{{ trigger.to_state.attributes.friendly_name }}' message: "{% set states = {\n 'on':'Open',\n 'off':'Closed',\n } %}\n{{ trigger.to_state.attributes.friendly_name\ \ }} {{ states[trigger.to_state.state] }}\n" mode: single - alias: Alarm Breach Trigger id: alarm_breach_trigger trigger: - platform: state entity_id: binary_sensor.front_door to: 'on' - platform: state entity_id: binary_sensor.sliding_glass_door to: 'on' - platform: state entity_id: binary_sensor.garage_door to: 'on' - platform: state entity_id: binary_sensor.kitchen_window to: 'on' - platform: state entity_id: binary_sensor.bedroom_windows to: 'on' - platform: state entity_id: binary_sensor.lab_windows to: 'on' condition: - condition: or conditions: - condition: state entity_id: alarm_control_panel.sentry_network state: armed_away - condition: state entity_id: alarm_control_panel.sentry_network state: armed_home - condition: state entity_id: alarm_control_panel.sentry_network state: armed_night - condition: state entity_id: alarm_control_panel.sentry_network state: armed_vacation action: - choose: - conditions: - condition: template value_template: '{{ states(''alarm_control_panel.sentry_network'') in [''armed_home'', ''armed_night''] and trigger.to_state.entity_id == ''binary_sensor.front_door'' and states(''binary_sensor.exiting_front_door'') == ''on'' }}' sequence: [] - conditions: - condition: template value_template: '{{ trigger.to_state.entity_id == ''binary_sensor.front_door'' and is_state(''input_boolean.alarm_bypass_front_door'', ''on'') }}' sequence: [] - conditions: - condition: template value_template: '{{ trigger.to_state.entity_id == ''binary_sensor.sliding_glass_door'' and is_state(''input_boolean.alarm_bypass_sliding_glass_door'', ''on'') }}' sequence: [] - conditions: - condition: template value_template: '{{ trigger.to_state.entity_id == ''binary_sensor.garage_door'' and is_state(''input_boolean.alarm_bypass_garage_door'', ''on'') }}' sequence: [] - conditions: - condition: template value_template: '{{ trigger.to_state.entity_id == ''binary_sensor.kitchen_window'' and is_state(''input_boolean.alarm_bypass_kitchen_window'', ''on'') }}' sequence: [] - conditions: - condition: template value_template: '{{ trigger.to_state.entity_id == ''binary_sensor.bedroom_windows'' and is_state(''input_boolean.alarm_bypass_bedroom_windows'', ''on'') }}' sequence: [] - conditions: - condition: template value_template: '{{ trigger.to_state.entity_id == ''binary_sensor.lab_windows'' and is_state(''input_boolean.alarm_bypass_lab_window'', ''on'') }}' sequence: [] default: - service: alarm_control_panel.alarm_trigger entity_id: alarm_control_panel.sentry_network - alias: Alarm Disarm On Door Unlock id: alarm_disarm_on_door_unlock trigger: - platform: event event_type: keymaster_lock_state_changed event_data: lockname: frontdoor condition: - condition: template value_template: '{{ trigger.event.data.state == ''unlocked'' and trigger.event.data.code_slot > 0 }}' - condition: state entity_id: input_boolean.alarm_disarm_on_unlock state: 'on' - condition: or conditions: - condition: state entity_id: alarm_control_panel.sentry_network state: armed_away - condition: state entity_id: alarm_control_panel.sentry_network state: armed_home - condition: state entity_id: alarm_control_panel.sentry_network state: armed_night - condition: state entity_id: alarm_control_panel.sentry_network state: armed_vacation action: - service: alarm_control_panel.alarm_disarm data: entity_id: alarm_control_panel.sentry_network code: secret alarm_code - service: script.alarm_alert_engine data: ios: true message: Alarm disarmed by {{ trigger.event.data.code_slot_name }} - alias: Alarm Disarmed id: alarm_disarmed trigger: - platform: state entity_id: alarm_control_panel.sentry_network to: disarmed action: - service: input_boolean.turn_off entity_id: input_boolean.security_alarm - choose: - alias: Somebody is detected as being home conditions: condition: or conditions: - condition: state entity_id: group.family state: home - condition: state entity_id: input_boolean.guest_mode state: 'on' sequence: - service: script.alarm_alert_engine data: vocal: true who: presence voice_message: '{{ [ "Barn door protocol has been deactivated.", "I am no longer monitoring the access points. ", "Sentry Mode has been disabled. ", "Header House Shields are down." ] | random }} ' ios: true message: The alarm has been disarmed at {{ states('sensor.time_date') }}. default: - service: script.alarm_alert_engine data: ios: true message: Security System has been disarmed, but I could not validate presence. {{ states('sensor.time_date') }}. - alias: Alarm Arming Issue id: alarm_arming_issue trigger: - platform: state entity_id: alarm_control_panel.sentry_network to: arming action: - variables: open_entities: '{{ states(''sensor.alarm_triggers'') }}' open_count: '{{ state_attr(''sensor.alarm_triggers'', ''open_count'') }}' is_are: '{{ '' are '' if open_count | int > 1 or open_entities[-1] == ''s'' else '' is '' }}' it_them: '{{ '' them '' if open_count | int > 1 or open_entities[-1] == ''s'' else '' it '' }}' - if: - condition: state entity_id: group.alarm_exit_triggers state: 'on' then: - service: alarm_control_panel.alarm_disarm data: code: secret alarm_code entity_id: alarm_control_panel.sentry_network - service: input_boolean.turn_on entity_id: input_boolean.lockdown_issue - service: script.alarm_alert_engine data: vocal: true who: kitchen voice_message: "{{ [\n \"Wait \",\n \"Stop \",\n \"Before you go sir, \"\ ,\n \"Just a second sir, \",\n \"Sir, \"\n ] | random -}}\n{{ [\n \"\ I am unable to engage sentry mode due to the \" ~ open_entities ~ \" being\ \ open\",\n \"I cannot engage sentry mode because you have failed to close\ \ the \" ~ open_entities,\n \"I am incapable of engaging sentry mode as\ \ you have failed to close the \" ~ open_entities,\n \"The \" ~ open_entities\ \ ~ is_are ~ \"still open. Why don't you go close\" ~ it_them ~ \"first\"\ ,\n \"How do you expect me to engage sentry mode with the \" ~ open_entities\ \ ~ \" still open? Go close \" ~ it_them,\n \"You do know the \" ~ open_entities\ \ ~ is_are ~ \"still open, right? Close \" ~ it_them ~ \" first, then we'll\ \ try this again.\",\n \"I cannot engage sentry mode as the \" ~ open_entities\ \ ~ is_are ~ \"still open. I would close \" ~ it_them ~ \" myself but you\ \ still refuse to give me arms.\",\n \"You should try closing the \" ~\ \ open_entities ~ \" first. It may work better, you know, since I currently\ \ cannot engage sentry mode\",\n \"Where do you think you're going? The\ \ \" ~ open_entities ~ is_are ~ \" still open. Close \" ~ it_them ~ \" first\ \ then we'll try again.\"\n ] | random }}\n" ios: true message: Alarm couldn't be armed due to the {{ open_entities }}. Please close {{ it_them }} and try again. {{ states('sensor.time_date') }} - alias: Alarm Arm id: alarm_arm trigger: - platform: state entity_id: alarm_control_panel.sentry_network to: arming for: seconds: 1 - platform: state entity_id: alarm_control_panel.sentry_network to: armed_home - platform: state entity_id: alarm_control_panel.sentry_network to: armed_away - platform: state entity_id: alarm_control_panel.sentry_network to: armed_away for: minutes: 10 id: armed_10_mins - platform: state entity_id: alarm_control_panel.sentry_network to: armed_night - platform: state entity_id: alarm_control_panel.sentry_network to: armed_vacation action: - if: - condition: template value_template: '{{ trigger.to_state.state = ''arming'' and states(''lock.touchscreen_deadbolt_z_wave_plus_frontdoor'') == ''unlocked'' }}' then: - service: lock.lock target: entity_id: lock.touchscreen_deadbolt_z_wave_plus_frontdoor - if: - condition: template value_template: '{{ trigger.to_state.state = ''arming'' }}' then: - service: script.turn_on entity_id: script.reset_front_door_motion_count - choose: - alias: Arming conditions: - condition: template value_template: '{{ trigger.to_state.state == ''arming'' }}' sequence: - service: input_boolean.turn_off entity_id: input_boolean.lockdown_issue - service: script.alarm_alert_engine data: vocal: true who: kitchen voice_message: "{{ [\n \"Goodbye sir, see you soon. I will monitor the\ \ house while you're out.\",\n 'Farwell sir, I will guard the house\ \ until we meet again.',\n \"Have a great day sir. I'll keep the house\ \ safe while you're gone.\",\n 'I shall keep the house protected while\ \ you are gone.',\n 'Not to worry, I will not throw any parties while\ \ you are out.',\n 'I will keep the cats entertained and safe while\ \ you are gone',\n \"Very well sir, have a nice day. I'll hold the\ \ fort.\",\n 'Farewell sir, drive safe'\n ] | random }}\n" ios: true message: Alarm is arming at {{ states('sensor.time_date') }}. - alias: Armed Home or Night conditions: - condition: template value_template: '{{ trigger.to_state.state in [''armed_home'',''armed_night''] }}' sequence: - service: script.alarm_alert_engine data: vocal: true who: presence voice_message: '{{ [ "Barn door protocol has been activated.", "Header House has been secured ", "Sentry Mode is active. ", "I am now monitoring the doors and will let you know if anyone attempts to access.", "Header House Shields are up." ] | random }} ' ios: true message: The alarm has been set to {{ trigger.to_state.state | replace('_', ' ') }} mode at {{ states('sensor.time_date') }}.{{ ' Have a good night.' if trigger.to_state.state == armed_night }} - alias: Armed Vacation conditions: - condition: template value_template: '{{ trigger.to_state.state == ''armed_vacation'' }}' sequence: - service: script.alarm_alert_engine data: ios: true message: Alarm has been armed in vacation mode at {{ states('sensor.time_date') }}. Enjoy your trip - alias: Armed Away 10 Mins Check For Presence conditions: - condition: trigger id: armed_10_mins sequence: - if: - condition: state entity_id: group.people state: home then: - service: script.turn_on entity_id: script.arm_stay - service: script.alarm_alert_engine data: vocal: true who: presence voice_message: "{{ [\n \"Well I see you're not going anywhere. I'll\ \ just monitor the house in stay mode.\",\n \"Oh, you're still here?\ \ Let me just cancel that party real quick.\",\n \"Still home, I\ \ see. Shocker. Well I guess I'll just adjust the sentry mode.\",\n\ \ \"I see you got very far. I'll just set the sentry mode to stay.\"\ \n ] | random }}\n" ios: true message: The alarm has been in away mode for 10 minutes but there's still people here. I'm arming in stay mode. default: - service: script.alarm_alert_engine data: ios: true message: The alarm has been set to {{ trigger.to_state.state | replace('_', ' ') }} mode at {{ states('sensor.time_date') }}. - alias: Alarm Pending id: alarm_pending trigger: - platform: state entity_id: alarm_control_panel.sentry_network id: away from: armed_away to: pending - platform: state entity_id: alarm_control_panel.sentry_network id: vacation from: armed_vacation to: pending action: - service: script.turn_on entity_id: script.security_response - alias: Alarm Triggered id: alarm_triggered trigger: - platform: state entity_id: alarm_control_panel.sentry_network to: triggered action: - service: script.alarm_alert_engine data: ios: true critical: true message: THE ALARM HAS BEEN ACTIVATED AT {{ states('sensor.time_date') }} - service: input_boolean.turn_on entity_id: input_boolean.security_alarm - alias: Alarm Light Handler id: alarm_light_handler trigger: - platform: state entity_id: alarm_control_panel.sentry_network to: disarmed - platform: state entity_id: alarm_control_panel.sentry_network to: arming for: seconds: 2 - platform: state entity_id: alarm_control_panel.sentry_network to: armed_away - platform: state entity_id: alarm_control_panel.sentry_network to: armed_vacation - platform: state entity_id: alarm_control_panel.sentry_network to: pending - platform: state entity_id: alarm_control_panel.sentry_network to: triggered action: - choose: - conditions: - condition: template value_template: '{{ trigger.to_state.state == ''arming'' }}' sequence: - service: scene.turn_on entity_id: scene.leaving - conditions: - condition: template value_template: '{{ trigger.to_state.state in [''armed_away'',''armed_vacation''] }}' sequence: - service: scene.turn_on entity_id: scene.all_off - conditions: - condition: template value_template: '{{ trigger.to_state.state == ''pending'' }}' sequence: - service: scene.create data: scene_id: alarm_before snapshot_entities: - light.front_hall_light - light.kitchen_light - light.kitchen_leds - light.fish_tank_leds - light.couch_leds - select.couch_leds_playlist_2 - select.couch_leds_preset_2 - light.curtain_leds - light.living_room_tv_backlights - select.living_room_tv_backlights_playlist - select.living_room_tv_backlights_preset - light.fish_tank_backlights - select.fish_tank_backlights_playlist_2 - select.fish_tank_backlights_preset_2 - light.dining_room_light - light.francis_s_light - light.patio_light - light.patio_string_lights - light.hallway_light - light.bedroom_fan_lights - light.hue_color_lamp_1 - light.lab_fan_light - light.living_room_fan_light - light.western_electric_cabinet_lights - group.floods - light.patio_ring_light - service: scene.turn_on entity_id: scene.alarm_pending - conditions: - condition: template value_template: '{{ trigger.to_state.state == ''triggered'' }}' sequence: - service: scene.turn_on entity_id: scene.alarm_triggered - conditions: - condition: template value_template: '{{ trigger.to_state.state == ''disarmed'' and trigger.from_state.state in [''triggered'',''pending'',''arming''] }}' sequence: - service: scene.turn_on entity_id: scene.alarm_before - service: scene.turn_on entity_id: scene.arrival - alias: Alarm Sound id: alarm_sound trigger: - platform: state entity_id: input_boolean.security_alarm id: 'on' to: 'on' - platform: state entity_id: input_boolean.security_alarm id: 'off' to: 'off' action: - choose: - conditions: - condition: trigger id: 'on' sequence: - service: script.alexa_voice data: who: everywhere message: The siren has been activated - conditions: - condition: trigger id: 'off' sequence: - service: script.alexa_voice data: who: everywhere message: The siren has been deactivated default: [] - alias: Alarm Alert On All Activity id: alarm_alert_on_all_activity trigger: - platform: state entity_id: binary_sensor.front_door to: 'on' - platform: state entity_id: binary_sensor.sliding_glass_door to: 'on' - platform: state entity_id: binary_sensor.garage_door to: 'on' - platform: state entity_id: binary_sensor.kitchen_window to: 'on' - platform: state entity_id: binary_sensor.bedroom_windows to: 'on' - platform: state entity_id: binary_sensor.lab_windows to: 'on' - platform: state entity_id: binary_sensor.espresense_bedroom_motion to: 'on' - platform: state entity_id: binary_sensor.espresense_lab_motion to: 'on' - platform: state entity_id: binary_sensor.espresense_kitchen_motion to: 'on' - platform: state entity_id: binary_sensor.espresense_dining_room_motion to: 'on' - platform: state entity_id: binary_sensor.espresense_living_room_motion to: 'on' - platform: state entity_id: binary_sensor.hallway_motion_sensor to: 'on' - platform: state entity_id: binary_sensor.front_hall_motion_sensor to: 'on' condition: - condition: state entity_id: binary_sensor.alarm_alert_on_all_activity state: 'on' action: - service: script.alarm_alert_engine data: ios: true message: '{%- if ''motion'' in trigger.to_state.entity_id -%}{{ trigger.to_state.name }} detected motion{%- else -%}{{ trigger.to_state.name }} was opened{%- endif -%} at {{ states(''sensor.time_date'') }}' - alias: Alexa Barn Door Protocol id: alexa_barn_door_protocol trigger: - platform: state entity_id: input_button.activate_barn_door_protocol id: activate - platform: state entity_id: input_button.deactivate_barn_door_protocol id: deactivate action: - choose: - conditions: - condition: trigger id: activate sequence: - choose: - conditions: - condition: or conditions: - condition: state entity_id: alarm_control_panel.sentry_network state: armed_home - condition: state entity_id: alarm_control_panel.sentry_network state: armed_night sequence: - service: script.speech_engine data: who: presence message: include ../templates/speech/already_done.yaml default: - service: script.speech_engine data: who: presence message: include ../templates/speech/interjections.yaml - delay: seconds: 2 - service: script.turn_on entity_id: script.arm_stay - conditions: - condition: trigger id: deactivate - condition: state entity_id: input_boolean.alarm_disarm_by_alexa state: 'on' sequence: - choose: - conditions: - condition: state entity_id: alarm_control_panel.sentry_network state: disarmed sequence: - service: script.speech_engine data: who: '{{ states(''sensor.room_audio'') }}' message: include ../templates/speech/already_done.yaml default: - service: script.turn_on entity_id: script.disarm_security default: [] - id: iss_alert alias: ISS Alert trigger: - platform: state entity_id: binary_sensor.iss from: 'off' to: 'on' action: - service: script.status_annc data: who: '{{ states(''sensor.room_presence'') }}' call_interuption: 1 call_iss: 1 - alias: Weather Alert UI Notification - 1 initial_state: true trigger: - platform: state entity_id: sensor.weatheralerts_1_alert_1_last_changed - platform: homeassistant event: start condition: - condition: and conditions: - condition: template value_template: '{{ states(''sensor.weatheralerts_1_alerts_are_active'') == ''Yes'' }}' - condition: template value_template: '{{ (as_timestamp(now()) - as_timestamp(state_attr(''sensor.weatheralerts_1_alert_1'', ''alert_sent''))) < 3600 }}' - condition: template value_template: '{{ state_attr(''sensor.weatheralerts_1_alert_1'', ''alert_id'') not in states(''input_text.weatheralerts_1_triggered_ui_alert_ids'') }}' action: - service: script.weatheralerts_1_popup_on_wx_alert data: title: "{% if (states('sensor.weatheralerts_1_alert_1') == 'on') and ((as_timestamp(now())\ \ - as_timestamp(state_attr('sensor.weatheralerts_1_alert_1', 'alert_effective'))|float)\ \ <= 3600) %}\n {{ state_attr('sensor.weatheralerts_1_alert_1', 'display_title')\ \ }}\n{% else %}\n Weather Alerts\n{% endif %}\n" message: "{% if (states('sensor.weatheralerts_1_alert_1') == 'on') and ((as_timestamp(now())\ \ - as_timestamp(state_attr('sensor.weatheralerts_1_alert_1', 'alert_effective'))|float)\ \ <= 3600) %}\n {{ state_attr('sensor.weatheralerts_1_alert_1', 'display_message')\ \ }}\n{% endif %} {% if (states('sensor.weatheralerts_1_alert_1') == 'on')\ \ and ((as_timestamp(now()) - as_timestamp(state_attr('sensor.weatheralerts_1_alert_1',\ \ 'alert_effective'))|float) > 3600) %}\n