5650 lines
150 KiB
YAML
5650 lines
150 KiB
YAML
- id: c32cceb8-eeea-4000-ac80-040bc0b15ae2
|
||
alias: 3D Printer - Notify Corban when print stops
|
||
triggers:
|
||
- trigger: state
|
||
entity_id: sensor.elegoo_neptune_4_pro_current_print_state
|
||
from: printing
|
||
actions:
|
||
- alias: Notify Corban
|
||
action: notify.corban
|
||
data:
|
||
title: 3D Print Stopped
|
||
message: 'Current printer state: ''{{ states("sensor.elegoo_neptune_4_pro_current_print_state")
|
||
}}''.'
|
||
data:
|
||
tag: 3d_print_status
|
||
actions:
|
||
- action: 3D_PRINTER_OFF
|
||
title: Turn Off Printer
|
||
activationMode: background
|
||
authenticationRequired: false
|
||
destructive: true
|
||
behavior: default
|
||
- alias: 3D Printer - Notification Off Action
|
||
id: 88399f03-68e7-42ba-b95a-cce66a800776
|
||
triggers:
|
||
- trigger: event
|
||
event_type: mobile_app_notification_action
|
||
event_data:
|
||
action: 3D_PRINTER_OFF
|
||
actions:
|
||
- alias: Turn off the main 3D printer power switch
|
||
action: switch.turn_off
|
||
target:
|
||
entity_id: switch.3d_printer_power
|
||
- id: '1703638107345'
|
||
alias: Office Closet Light - Door Trigger
|
||
description: ''
|
||
use_blueprint:
|
||
path: mkosmo/closet-light-from-door-sensor.yaml
|
||
input:
|
||
door_sensor: binary_sensor.office_closet_door_sensor_contact
|
||
light_switch:
|
||
entity_id: light.office_closet_light
|
||
light_timeout: 1800
|
||
- id: '1705870296732'
|
||
alias: Hall Aux Switch - Pause Living Room TV
|
||
description: ''
|
||
triggers:
|
||
- trigger: device
|
||
domain: mqtt
|
||
device_id: f6a3f0606ae31f561f4c700f5917deed
|
||
type: action
|
||
subtype: aux_config_single
|
||
discovery_id: 0xb43a31fffe34e475 action_aux_config_single
|
||
conditions: []
|
||
actions:
|
||
- action: media_player.media_play_pause
|
||
metadata: {}
|
||
data: {}
|
||
target:
|
||
device_id: 0e47eccd7765e50037be8ffc24099a13
|
||
mode: single
|
||
- id: '1710728057701'
|
||
alias: Linen Closet Light - Door Trigger
|
||
description: ''
|
||
use_blueprint:
|
||
path: mkosmo/closet-light-from-door-sensor.yaml
|
||
input:
|
||
door_sensor: binary_sensor.linen_closet_door_sensor_contact
|
||
light_switch:
|
||
entity_id:
|
||
- light.linen_closet_light
|
||
light_timeout: 1800
|
||
- id: '1710728130096'
|
||
alias: Coat Closet Light - Door Trigger
|
||
description: ''
|
||
use_blueprint:
|
||
path: mkosmo/closet-light-from-door-sensor.yaml
|
||
input:
|
||
door_sensor: binary_sensor.coat_closet_door_sensor_contact
|
||
light_switch:
|
||
entity_id: light.coat_closet_light
|
||
light_timeout: 1800
|
||
- id: '1710814441742'
|
||
alias: Hold Kitchen Light Switches to Control Area Lights
|
||
description: ''
|
||
triggers:
|
||
- domain: mqtt
|
||
device_id: 9f61f3f1b573c3799a54ee705f98034f
|
||
type: action
|
||
subtype: up_held
|
||
id: 'on'
|
||
trigger: device
|
||
- domain: mqtt
|
||
device_id: 9f61f3f1b573c3799a54ee705f98034f
|
||
type: action
|
||
subtype: down_held
|
||
id: 'off'
|
||
trigger: device
|
||
- domain: mqtt
|
||
device_id: f6a3f0606ae31f561f4c700f5917deed
|
||
type: action
|
||
subtype: up_held
|
||
id: 'on'
|
||
trigger: device
|
||
- domain: mqtt
|
||
device_id: f6a3f0606ae31f561f4c700f5917deed
|
||
type: action
|
||
subtype: down_held
|
||
id: 'off'
|
||
trigger: device
|
||
- domain: mqtt
|
||
device_id: 9f61f3f1b573c3799a54ee705f98034f
|
||
type: action
|
||
subtype: up_double
|
||
trigger: device
|
||
id: 'on'
|
||
- domain: mqtt
|
||
device_id: 9f61f3f1b573c3799a54ee705f98034f
|
||
type: action
|
||
subtype: down_double
|
||
trigger: device
|
||
id: 'off'
|
||
- domain: mqtt
|
||
device_id: f6a3f0606ae31f561f4c700f5917deed
|
||
type: action
|
||
subtype: up_double
|
||
trigger: device
|
||
id: 'on'
|
||
- domain: mqtt
|
||
device_id: f6a3f0606ae31f561f4c700f5917deed
|
||
type: action
|
||
subtype: down_double
|
||
trigger: device
|
||
id: 'off'
|
||
conditions: []
|
||
actions:
|
||
- choose:
|
||
- conditions:
|
||
- condition: trigger
|
||
id:
|
||
- 'on'
|
||
sequence:
|
||
- metadata: {}
|
||
data: {}
|
||
target:
|
||
area_id: 4872200594374640b069eaeee79e9ec6
|
||
action: light.turn_on
|
||
- conditions:
|
||
- condition: trigger
|
||
id:
|
||
- 'off'
|
||
sequence:
|
||
- metadata: {}
|
||
data: {}
|
||
target:
|
||
area_id: 4872200594374640b069eaeee79e9ec6
|
||
action: light.turn_off
|
||
mode: single
|
||
- id: '1710989410744'
|
||
alias: Display Garage Door Status on Kitchen Bar Light LED Strip
|
||
description: ''
|
||
triggers:
|
||
- trigger: state
|
||
entity_id:
|
||
- cover.ratgdo_left_garage_door_door
|
||
- cover.ratgdo_right_garage_door_door
|
||
- binary_sensor.garage_side_person_door_contact
|
||
conditions: []
|
||
actions:
|
||
- choose:
|
||
- conditions:
|
||
- condition: or
|
||
conditions:
|
||
- condition: state
|
||
entity_id: cover.ratgdo_right_garage_door_door
|
||
state: open
|
||
- condition: state
|
||
entity_id: cover.ratgdo_left_garage_door_door
|
||
state: open
|
||
- condition: state
|
||
entity_id: binary_sensor.garage_side_person_door_contact
|
||
state: 'on'
|
||
sequence:
|
||
- action: script.inovelli_led_control
|
||
metadata: {}
|
||
data:
|
||
led: All
|
||
color: Purple
|
||
level: 62
|
||
duration: Indefinitely
|
||
target:
|
||
device_id: 9f61f3f1b573c3799a54ee705f98034f
|
||
effect: Solid
|
||
alias: Set LED strip to purple - Kitchen Bar Light
|
||
- alias: Set LED strip to purple - Utility Closet Light
|
||
action: script.inovelli_led_control
|
||
metadata: {}
|
||
data:
|
||
led: All
|
||
color: Purple
|
||
level: 62
|
||
duration: Indefinitely
|
||
effect: Solid
|
||
target:
|
||
device_id: b61d7bab7432d5e91ddb6fb6e28bf5fd
|
||
alias: If any door is open
|
||
default:
|
||
- action: script.inovelli_led_control
|
||
metadata: {}
|
||
data:
|
||
led: All
|
||
target:
|
||
device_id: 9f61f3f1b573c3799a54ee705f98034f
|
||
effect: Clear
|
||
alias: Clear LED Strip - Kitchen Bar Light
|
||
- alias: Clear LED Strip - Utility Closet Light
|
||
action: script.inovelli_led_control
|
||
metadata: {}
|
||
data:
|
||
led: All
|
||
target:
|
||
device_id:
|
||
- b61d7bab7432d5e91ddb6fb6e28bf5fd
|
||
effect: Clear
|
||
mode: single
|
||
- id: '1711145973507'
|
||
alias: Pantry Door Light
|
||
description: ''
|
||
use_blueprint:
|
||
path: mkosmo/closet-light-from-door-sensor.yaml
|
||
input:
|
||
door_sensor: binary_sensor.pantry_door_sensor_contact
|
||
light_switch:
|
||
entity_id: light.pantry_lights
|
||
light_timeout: 1200
|
||
- id: '1711159946532'
|
||
alias: Hall Light Aux Switch - Hold to Control Multiple Lights
|
||
description: ''
|
||
triggers:
|
||
- domain: mqtt
|
||
device_id: f6a3f0606ae31f561f4c700f5917deed
|
||
type: action
|
||
subtype: aux_up_held
|
||
id: 'on'
|
||
trigger: device
|
||
- domain: mqtt
|
||
device_id: f6a3f0606ae31f561f4c700f5917deed
|
||
type: action
|
||
subtype: aux_down_double
|
||
trigger: device
|
||
id: 'off'
|
||
- domain: mqtt
|
||
device_id: f6a3f0606ae31f561f4c700f5917deed
|
||
type: action
|
||
subtype: aux_down_held
|
||
trigger: device
|
||
id: 'off'
|
||
conditions: []
|
||
actions:
|
||
- choose:
|
||
- conditions:
|
||
- condition: trigger
|
||
id:
|
||
- 'on'
|
||
sequence:
|
||
- metadata: {}
|
||
data:
|
||
transition: 0
|
||
target:
|
||
entity_id:
|
||
- light.first_floor_hall_light
|
||
- light.kitchen_main_lights
|
||
- light.kitchen_bar_light
|
||
action: light.turn_on
|
||
- conditions:
|
||
- condition: trigger
|
||
id:
|
||
- 'off'
|
||
sequence:
|
||
- metadata: {}
|
||
data:
|
||
transition: 0
|
||
target:
|
||
entity_id:
|
||
- light.first_floor_hall_light
|
||
- light.kitchen_main_lights
|
||
- light.kitchen_bar_light
|
||
action: light.turn_off
|
||
mode: single
|
||
- id: '1712374070637'
|
||
alias: Mudroom Lamp Follows Kitchen Bar Light
|
||
description: ''
|
||
triggers:
|
||
- type: turned_on
|
||
device_id: 9f61f3f1b573c3799a54ee705f98034f
|
||
entity_id: bf668f7758c2b3fe2ca6adb4bf41ea23
|
||
domain: light
|
||
id: 'on'
|
||
trigger: device
|
||
- type: turned_off
|
||
device_id: 9f61f3f1b573c3799a54ee705f98034f
|
||
entity_id: bf668f7758c2b3fe2ca6adb4bf41ea23
|
||
domain: light
|
||
id: 'off'
|
||
trigger: device
|
||
conditions: []
|
||
actions:
|
||
- choose:
|
||
- conditions:
|
||
- condition: trigger
|
||
id:
|
||
- 'on'
|
||
sequence:
|
||
- metadata: {}
|
||
data:
|
||
transition: 0
|
||
brightness_pct: 100
|
||
target:
|
||
device_id: def287c341c870f1a188cf2c5e84a3a3
|
||
action: light.turn_on
|
||
- metadata: {}
|
||
data:
|
||
transition: 0
|
||
brightness_pct: 100
|
||
color_temp_kelvin: 3200
|
||
action: light.turn_on
|
||
target:
|
||
device_id: 5fde3d24df137723731bafe28dd07084
|
||
- conditions:
|
||
- condition: trigger
|
||
id:
|
||
- 'off'
|
||
sequence:
|
||
- metadata: {}
|
||
data:
|
||
transition: 0
|
||
target:
|
||
device_id:
|
||
- def287c341c870f1a188cf2c5e84a3a3
|
||
- 5fde3d24df137723731bafe28dd07084
|
||
action: light.turn_off
|
||
mode: single
|
||
- id: '1712671842634'
|
||
alias: Guest Room Remote
|
||
description: ''
|
||
triggers:
|
||
- device_id: f55558e66b8f403aed6dc6acc7450363
|
||
domain: lutron_caseta
|
||
type: press
|
||
subtype: 'on'
|
||
id: 'on'
|
||
trigger: device
|
||
- device_id: f55558e66b8f403aed6dc6acc7450363
|
||
domain: lutron_caseta
|
||
type: press
|
||
subtype: 'off'
|
||
id: 'off'
|
||
trigger: device
|
||
- device_id: f55558e66b8f403aed6dc6acc7450363
|
||
domain: lutron_caseta
|
||
type: press
|
||
subtype: stop
|
||
id: center
|
||
trigger: device
|
||
- device_id: f55558e66b8f403aed6dc6acc7450363
|
||
domain: lutron_caseta
|
||
type: press
|
||
subtype: raise
|
||
id: up
|
||
trigger: device
|
||
- device_id: f55558e66b8f403aed6dc6acc7450363
|
||
domain: lutron_caseta
|
||
type: press
|
||
subtype: lower
|
||
id: down
|
||
trigger: device
|
||
conditions: []
|
||
actions:
|
||
- choose:
|
||
- conditions:
|
||
- condition: trigger
|
||
id:
|
||
- 'on'
|
||
sequence:
|
||
- if:
|
||
- condition: state
|
||
entity_id: light.guest_bedroom_ceiling_fan_light
|
||
state: 'on'
|
||
then:
|
||
- metadata: {}
|
||
data:
|
||
brightness_pct: 100
|
||
target:
|
||
entity_id: light.guest_bedroom_ceiling_fan_light
|
||
action: light.turn_on
|
||
else:
|
||
- metadata: {}
|
||
data: {}
|
||
target:
|
||
entity_id: light.guest_bedroom_ceiling_fan_light
|
||
action: light.turn_on
|
||
alias: Main light on, or to full brightness
|
||
- conditions:
|
||
- condition: trigger
|
||
id:
|
||
- 'off'
|
||
sequence:
|
||
- action: light.turn_off
|
||
metadata: {}
|
||
data: {}
|
||
target:
|
||
entity_id: light.guest_bedroom_ceiling_fan_light
|
||
- conditions:
|
||
- condition: trigger
|
||
id:
|
||
- center
|
||
sequence:
|
||
- action: light.toggle
|
||
metadata: {}
|
||
data: {}
|
||
target:
|
||
entity_id: light.fairy_lights
|
||
- conditions:
|
||
- condition: trigger
|
||
id:
|
||
- up
|
||
sequence:
|
||
- alias: Brightness up
|
||
metadata: {}
|
||
data:
|
||
brightness_step_pct: 25
|
||
target:
|
||
entity_id: light.guest_bedroom_ceiling_fan_light
|
||
action: light.turn_on
|
||
- conditions:
|
||
- condition: trigger
|
||
id:
|
||
- down
|
||
sequence:
|
||
- metadata: {}
|
||
data:
|
||
brightness_step_pct: -25
|
||
target:
|
||
entity_id: light.guest_bedroom_ceiling_fan_light
|
||
alias: Brightness down
|
||
action: light.turn_on
|
||
mode: single
|
||
- id: '1714258867767'
|
||
alias: Kitchen Bar Light Switch - Double Tap Config for Garage Doors
|
||
description: ''
|
||
triggers:
|
||
- trigger: device
|
||
domain: mqtt
|
||
device_id: 9f61f3f1b573c3799a54ee705f98034f
|
||
type: action
|
||
subtype: config_double
|
||
conditions: []
|
||
actions:
|
||
- choose:
|
||
- conditions:
|
||
- condition: or
|
||
conditions:
|
||
- condition: device
|
||
device_id: 2bbbe29de187f6e1b1522f5f2513b258
|
||
domain: cover
|
||
entity_id: 5401d8e4327d5e9b6d71d56d09b8ec35
|
||
type: is_open
|
||
- condition: device
|
||
device_id: a918ed1d740d5527c120a872d5b36fdd
|
||
domain: cover
|
||
entity_id: fa3c1b2c28746f6e9edce10a8a74e955
|
||
type: is_open
|
||
sequence:
|
||
- action: cover.close_cover
|
||
metadata: {}
|
||
data: {}
|
||
target:
|
||
entity_id:
|
||
- cover.ratgdo_right_garage_door_door
|
||
- cover.ratgdo_left_garage_door_door
|
||
alias: 'If either garage door is open, close it. '
|
||
default:
|
||
- action: cover.open_cover
|
||
metadata: {}
|
||
data: {}
|
||
target:
|
||
entity_id: cover.ratgdo_left_garage_door_door
|
||
mode: single
|
||
- id: '1715117158694'
|
||
alias: Upstairs Hall Light Switch - Triple tap config to move Eve to dump spot
|
||
description: ''
|
||
triggers:
|
||
- trigger: device
|
||
domain: mqtt
|
||
device_id: 6239543fc9a684fbba5d4af77ccdf052
|
||
type: action
|
||
subtype: config_triple
|
||
conditions: []
|
||
actions:
|
||
- action: script.vacuum_dump_process
|
||
metadata: {}
|
||
data: {}
|
||
mode: single
|
||
- id: '1724423649065'
|
||
alias: Stairs Wall Switch - Red During Meetings
|
||
description: ''
|
||
triggers:
|
||
- trigger: state
|
||
entity_id:
|
||
- binary_sensor.corban_on_a_call
|
||
from: 'off'
|
||
to: 'on'
|
||
id: 'on'
|
||
- trigger: state
|
||
entity_id:
|
||
- binary_sensor.corban_on_a_call
|
||
from: 'on'
|
||
to: 'off'
|
||
id: 'off'
|
||
conditions: []
|
||
actions:
|
||
- choose:
|
||
- conditions:
|
||
- condition: trigger
|
||
id:
|
||
- 'on'
|
||
sequence:
|
||
- action: script.inovelli_led_control
|
||
metadata: {}
|
||
data:
|
||
led: All
|
||
color: Red
|
||
level: 100
|
||
duration: Indefinitely
|
||
target:
|
||
device_id: 6239543fc9a684fbba5d4af77ccdf052
|
||
effect: Aurora
|
||
- conditions:
|
||
- condition: trigger
|
||
id:
|
||
- 'off'
|
||
sequence:
|
||
- action: script.inovelli_led_control
|
||
metadata: {}
|
||
data:
|
||
led: All
|
||
color: Red
|
||
level: 100
|
||
duration: Indefinitely
|
||
target:
|
||
device_id: 6239543fc9a684fbba5d4af77ccdf052
|
||
effect: Clear
|
||
mode: single
|
||
- id: '1724980786427'
|
||
alias: Notify if windows are open with rain forecast overnight
|
||
description: ''
|
||
triggers:
|
||
- trigger: time
|
||
at: '22:00:00'
|
||
conditions:
|
||
- condition: state
|
||
entity_id: input_select.home_mode
|
||
state: Home
|
||
- condition: numeric_state
|
||
entity_id: sensor.open_window_count
|
||
above: 0
|
||
actions:
|
||
- action: weather.get_forecasts
|
||
metadata: {}
|
||
data:
|
||
type: hourly
|
||
target:
|
||
entity_id: weather.openweathermap
|
||
response_variable: forecasts
|
||
alias: Get Hourly Forecast
|
||
- variables:
|
||
hours_to_check: 8
|
||
precip_percent_min: 70
|
||
entity_id: weather.openweathermap
|
||
max_precipitation_chance: '{{ forecasts[entity_id].forecast[0:hours_to_check]
|
||
| map(attribute=''precipitation_probability'') | max }}'
|
||
- alias: Check if there's >70% chance of rain in the next 8 hours
|
||
condition: template
|
||
value_template: '{{ max_precipitation_chance > precip_percent_min }}'
|
||
- action: notify.corban
|
||
metadata: {}
|
||
data:
|
||
title: Rain Tonight. Close Windows?
|
||
message: 'There is a {{ max_precipitation_chance }}% chance of rain tonight
|
||
and these windows are open: {{ states(''sensor.open_windows'') }}'
|
||
mode: single
|
||
- id: '1725645532252'
|
||
alias: Notify Corban when Ben leaves with guest mode on
|
||
description: ''
|
||
triggers:
|
||
- trigger: state
|
||
entity_id:
|
||
- device_tracker.bens_iphone_se_unifi
|
||
to: not_home
|
||
from: home
|
||
for:
|
||
hours: 0
|
||
minutes: 3
|
||
seconds: 0
|
||
conditions:
|
||
- condition: state
|
||
entity_id: input_boolean.guest_mode
|
||
state: 'on'
|
||
- condition: state
|
||
entity_id: binary_sensor.corban_person_home
|
||
state: 'off'
|
||
actions:
|
||
- action: notify.corban
|
||
metadata: {}
|
||
data:
|
||
message: Ben left
|
||
title: Ben Left
|
||
mode: single
|
||
- id: '1725649471485'
|
||
alias: Toggle Living Room Cabinet Lights with Wall Switch Button
|
||
description: ''
|
||
triggers:
|
||
- trigger: device
|
||
domain: mqtt
|
||
device_id: 21e10aa0c624e6abdcbbbbb97e0373c5
|
||
type: action
|
||
subtype: config_single
|
||
- trigger: device
|
||
domain: mqtt
|
||
device_id: d9db549c961eecf0f3fc66794fe297ad
|
||
type: action
|
||
subtype: config_single
|
||
conditions: []
|
||
actions:
|
||
- action: light.toggle
|
||
metadata: {}
|
||
data:
|
||
brightness_pct: 100
|
||
target:
|
||
entity_id: light.living_room_cabinet_lights
|
||
mode: single
|
||
- id: '1725812307580'
|
||
alias: Reload the Wall Display After Home Assistant Restarts
|
||
description: ''
|
||
triggers:
|
||
- trigger: homeassistant
|
||
event: start
|
||
conditions: []
|
||
actions:
|
||
- action: script.tablet_wall_display_reload
|
||
metadata: {}
|
||
data: {}
|
||
mode: single
|
||
- id: '1735588370721'
|
||
alias: Office Closet Light - Door Trigger
|
||
description: ''
|
||
use_blueprint:
|
||
path: mkosmo/closet-light-from-door-sensor.yaml
|
||
input:
|
||
door_sensor: binary_sensor.office_closet_door_sensor_contact
|
||
light_switch:
|
||
entity_id: light.office_closet
|
||
light_timeout: 900
|
||
- id: '1735601423932'
|
||
alias: Movie Mode - Lighting and Pause
|
||
description: ''
|
||
triggers:
|
||
- trigger: state
|
||
entity_id:
|
||
- media_player.living_room_apple_tv
|
||
to: playing
|
||
for:
|
||
hours: 0
|
||
minutes: 0
|
||
seconds: 2
|
||
id: playing
|
||
- trigger: state
|
||
entity_id:
|
||
- media_player.living_room_apple_tv
|
||
to:
|
||
- paused
|
||
- standby
|
||
- 'off'
|
||
id: paused
|
||
for:
|
||
seconds: 5
|
||
- trigger: state
|
||
entity_id:
|
||
- input_boolean.movie_mode_active
|
||
to: 'on'
|
||
from: 'off'
|
||
id: movie_mode_start
|
||
- trigger: state
|
||
entity_id:
|
||
- input_boolean.movie_mode_active
|
||
to: 'off'
|
||
from: 'on'
|
||
id: movie_mode_end
|
||
- trigger: state
|
||
entity_id:
|
||
- binary_sensor.living_room_couch_presence
|
||
from: 'on'
|
||
to: 'off'
|
||
id: couch_empty
|
||
conditions:
|
||
- condition: state
|
||
entity_id: input_boolean.room_exclude_livingroom
|
||
state: 'off'
|
||
alias: Living Room automations are enabled
|
||
- condition: state
|
||
entity_id: input_select.home_mode
|
||
state: Home
|
||
actions:
|
||
- choose:
|
||
- conditions:
|
||
- condition: trigger
|
||
id:
|
||
- movie_mode_start
|
||
sequence:
|
||
- action: scene.turn_on
|
||
metadata: {}
|
||
target:
|
||
entity_id: scene.movie_mode
|
||
data:
|
||
transition: 2
|
||
- conditions:
|
||
- condition: trigger
|
||
id:
|
||
- movie_mode_end
|
||
sequence:
|
||
- alias: If Cabinet Lights are on, set to bright. Otherwise, skip.
|
||
if:
|
||
- condition: state
|
||
entity_id: light.living_room_cabinet_lights
|
||
state: 'on'
|
||
then:
|
||
- action: scene.turn_on
|
||
metadata: {}
|
||
target:
|
||
entity_id: scene.movie_mode_end
|
||
data:
|
||
transition: 2
|
||
- condition: state
|
||
entity_id: input_boolean.movie_mode_active
|
||
state: 'on'
|
||
- choose:
|
||
- conditions:
|
||
- condition: trigger
|
||
id:
|
||
- playing
|
||
sequence:
|
||
- action: scene.turn_on
|
||
metadata: {}
|
||
target:
|
||
entity_id: scene.movie_mode
|
||
data:
|
||
transition: 1
|
||
- conditions:
|
||
- condition: trigger
|
||
id:
|
||
- paused
|
||
sequence:
|
||
- action: scene.turn_on
|
||
metadata: {}
|
||
data:
|
||
transition: 1
|
||
target:
|
||
entity_id: scene.movie_mode_pause
|
||
- conditions:
|
||
- condition: trigger
|
||
id:
|
||
- couch_empty
|
||
sequence:
|
||
- action: media_player.media_pause
|
||
metadata: {}
|
||
data: {}
|
||
target:
|
||
entity_id: media_player.living_room_apple_tv
|
||
mode: single
|
||
- id: '1735606719113'
|
||
alias: Dining Room Switch - Dining Scene
|
||
description: ''
|
||
triggers:
|
||
- domain: mqtt
|
||
device_id: 8eb976a9c0f474a3f6de93a5f04bcb72
|
||
type: action
|
||
subtype: config_double
|
||
trigger: device
|
||
conditions: []
|
||
actions:
|
||
- action: scene.turn_on
|
||
metadata: {}
|
||
target:
|
||
entity_id: scene.dining
|
||
data:
|
||
transition: 3
|
||
mode: single
|
||
- id: '1735871090165'
|
||
alias: Movie Mode - Set Wall Switch LED Bar
|
||
description: ''
|
||
triggers:
|
||
- trigger: state
|
||
entity_id:
|
||
- input_boolean.movie_mode_active
|
||
from: 'off'
|
||
to: 'on'
|
||
id: 'on'
|
||
- trigger: state
|
||
entity_id:
|
||
- input_boolean.movie_mode_active
|
||
from: 'on'
|
||
to: 'off'
|
||
id: 'off'
|
||
conditions: []
|
||
actions:
|
||
- choose:
|
||
- conditions:
|
||
- condition: trigger
|
||
id:
|
||
- 'on'
|
||
sequence:
|
||
- action: script.inovelli_led_control
|
||
metadata: {}
|
||
data:
|
||
led: All
|
||
color: Orange
|
||
level: 7
|
||
effect: Solid
|
||
duration: Indefinitely
|
||
target:
|
||
device_id: d9db549c961eecf0f3fc66794fe297ad
|
||
- conditions:
|
||
- condition: trigger
|
||
id:
|
||
- 'off'
|
||
sequence:
|
||
- action: script.inovelli_led_control
|
||
metadata: {}
|
||
data:
|
||
led: All
|
||
color: Orange
|
||
level: 5
|
||
duration: Indefinitely
|
||
target:
|
||
device_id: d9db549c961eecf0f3fc66794fe297ad
|
||
effect: Clear
|
||
mode: single
|
||
- id: '1735871229135'
|
||
alias: Movie Mode - Toggle with Wall Switch buttons
|
||
description: ''
|
||
triggers:
|
||
- domain: mqtt
|
||
device_id: d9db549c961eecf0f3fc66794fe297ad
|
||
type: action
|
||
subtype: config_double
|
||
trigger: device
|
||
- domain: mqtt
|
||
device_id: 21e10aa0c624e6abdcbbbbb97e0373c5
|
||
type: action
|
||
subtype: config_double
|
||
trigger: device
|
||
conditions: []
|
||
actions:
|
||
- action: input_boolean.toggle
|
||
metadata: {}
|
||
data: {}
|
||
target:
|
||
entity_id: input_boolean.movie_mode_active
|
||
mode: single
|
||
- id: '1741665583779'
|
||
alias: Master Bathroom - Motion and Lux Nightlight
|
||
description: ''
|
||
triggers:
|
||
- trigger: state
|
||
entity_id:
|
||
- binary_sensor.motion_nightlight_occupancy
|
||
to: 'on'
|
||
id: 'on'
|
||
- trigger: state
|
||
entity_id:
|
||
- binary_sensor.motion_nightlight_occupancy
|
||
id: 'off'
|
||
to: 'off'
|
||
for:
|
||
hours: 0
|
||
minutes: 2
|
||
seconds: 0
|
||
conditions:
|
||
- condition: state
|
||
entity_id: input_boolean.room_exclude_bathrooms
|
||
state: 'off'
|
||
actions:
|
||
- choose:
|
||
- conditions:
|
||
- condition: and
|
||
conditions:
|
||
- condition: trigger
|
||
id:
|
||
- 'on'
|
||
- condition: numeric_state
|
||
entity_id: sensor.motion_nightlight_illuminance
|
||
below: 15
|
||
sequence:
|
||
- action: light.turn_on
|
||
metadata: {}
|
||
data:
|
||
rgb_color:
|
||
- 255
|
||
- 0
|
||
- 0
|
||
brightness_pct: 55
|
||
transition: 1
|
||
target:
|
||
entity_id: light.motion_nightlight
|
||
alias: On, if room brightness is low enough
|
||
- conditions:
|
||
- condition: trigger
|
||
id:
|
||
- 'off'
|
||
sequence:
|
||
- action: light.turn_off
|
||
metadata: {}
|
||
data:
|
||
transition: 2
|
||
target:
|
||
entity_id: light.motion_nightlight
|
||
mode: restart
|
||
- id: '1743484522580'
|
||
alias: Kitchen Bar Light - Config button to toggle lamp
|
||
description: ''
|
||
triggers:
|
||
- domain: mqtt
|
||
device_id: 9f61f3f1b573c3799a54ee705f98034f
|
||
type: action
|
||
subtype: config_single
|
||
trigger: device
|
||
conditions: []
|
||
actions:
|
||
- action: light.toggle
|
||
metadata: {}
|
||
data: {}
|
||
target:
|
||
entity_id: light.mudroom_triple_lamp
|
||
mode: single
|
||
- id: '1743972311093'
|
||
alias: Changing Table Remote
|
||
description: ''
|
||
triggers:
|
||
- domain: mqtt
|
||
device_id: 52b2f81b59b1104f1e7ee8114a23c2a0
|
||
type: action
|
||
subtype: toggle
|
||
trigger: device
|
||
id: center
|
||
- domain: mqtt
|
||
device_id: 52b2f81b59b1104f1e7ee8114a23c2a0
|
||
type: action
|
||
subtype: brightness_up_click
|
||
trigger: device
|
||
id: up
|
||
- domain: mqtt
|
||
device_id: 52b2f81b59b1104f1e7ee8114a23c2a0
|
||
type: action
|
||
subtype: brightness_down_click
|
||
trigger: device
|
||
id: down
|
||
- domain: mqtt
|
||
device_id: 52b2f81b59b1104f1e7ee8114a23c2a0
|
||
type: action
|
||
subtype: arrow_left_click
|
||
trigger: device
|
||
id: left
|
||
- domain: mqtt
|
||
device_id: 52b2f81b59b1104f1e7ee8114a23c2a0
|
||
type: action
|
||
subtype: arrow_right_click
|
||
trigger: device
|
||
id: right
|
||
conditions: []
|
||
actions:
|
||
- choose:
|
||
- conditions:
|
||
- condition: trigger
|
||
id:
|
||
- center
|
||
sequence:
|
||
- action: light.toggle
|
||
metadata: {}
|
||
data:
|
||
brightness_pct: 1
|
||
transition: 0
|
||
target:
|
||
entity_id:
|
||
- light.lucys_dresser_lamp
|
||
alias: Center - Toggle Light
|
||
- conditions:
|
||
- condition: trigger
|
||
id:
|
||
- left
|
||
- up
|
||
- right
|
||
sequence:
|
||
- action: scene.create
|
||
metadata: {}
|
||
data:
|
||
scene_id: lucy_nightlight_remote_pre
|
||
snapshot_entities:
|
||
- light.lucys_nightlight
|
||
- choose:
|
||
- conditions:
|
||
- condition: trigger
|
||
id:
|
||
- left
|
||
sequence:
|
||
- action: rest_command.pee_and_or_poop
|
||
metadata: {}
|
||
data:
|
||
wet_bool: 'True'
|
||
solid_bool: 'False'
|
||
response_variable: response
|
||
- variables:
|
||
action_color:
|
||
- 255
|
||
- 255
|
||
- 0
|
||
alias: Left - Pee
|
||
- conditions:
|
||
- condition: trigger
|
||
id:
|
||
- up
|
||
sequence:
|
||
- action: rest_command.pee_and_or_poop
|
||
metadata: {}
|
||
data:
|
||
wet_bool: 'True'
|
||
solid_bool: 'True'
|
||
response_variable: response
|
||
- variables:
|
||
action_color:
|
||
- 128
|
||
- 0
|
||
- 128
|
||
alias: Up - Pee and Poop
|
||
- conditions:
|
||
- condition: trigger
|
||
id:
|
||
- right
|
||
sequence:
|
||
- action: rest_command.pee_and_or_poop
|
||
metadata: {}
|
||
data:
|
||
wet_bool: 'False'
|
||
solid_bool: 'True'
|
||
response_variable: response
|
||
- variables:
|
||
action_color:
|
||
- 255
|
||
- 140
|
||
- 0
|
||
alias: Right - Poop
|
||
- alias: Check API response code and set light
|
||
if:
|
||
- alias: API Success Response
|
||
condition: template
|
||
value_template: '{{ response["status"] == 201 }}'
|
||
then:
|
||
- alias: Flash nightlight green
|
||
repeat:
|
||
count: 1
|
||
sequence:
|
||
- action: light.turn_on
|
||
metadata: {}
|
||
data:
|
||
transition: 0
|
||
rgb_color:
|
||
- 0
|
||
- 255
|
||
- 0
|
||
brightness_pct: 74
|
||
target:
|
||
entity_id: light.lucys_nightlight
|
||
- delay:
|
||
hours: 0
|
||
minutes: 0
|
||
seconds: 0
|
||
milliseconds: 500
|
||
- action: light.turn_off
|
||
metadata: {}
|
||
data:
|
||
transition: 0
|
||
target:
|
||
entity_id: light.lucys_nightlight
|
||
- delay:
|
||
hours: 0
|
||
minutes: 0
|
||
seconds: 0
|
||
milliseconds: 500
|
||
- action: light.turn_on
|
||
metadata: {}
|
||
data:
|
||
transition: 0
|
||
rgb_color: '{{ action_color }}'
|
||
brightness_pct: 74
|
||
target:
|
||
entity_id: light.lucys_nightlight
|
||
- delay:
|
||
hours: 0
|
||
minutes: 0
|
||
seconds: 0
|
||
milliseconds: 500
|
||
- action: light.turn_off
|
||
metadata: {}
|
||
data:
|
||
transition: 0
|
||
target:
|
||
entity_id: light.lucys_nightlight
|
||
- delay:
|
||
hours: 0
|
||
minutes: 0
|
||
seconds: 0
|
||
milliseconds: 500
|
||
else:
|
||
- alias: Flash nightlight red
|
||
repeat:
|
||
count: 2
|
||
sequence:
|
||
- action: light.turn_on
|
||
metadata: {}
|
||
data:
|
||
transition: 0
|
||
rgb_color:
|
||
- 255
|
||
- 0
|
||
- 0
|
||
brightness_pct: 74
|
||
target:
|
||
entity_id: light.lucys_nightlight
|
||
- delay:
|
||
hours: 0
|
||
minutes: 0
|
||
seconds: 0
|
||
milliseconds: 500
|
||
- action: light.turn_off
|
||
metadata: {}
|
||
data:
|
||
transition: 0
|
||
target:
|
||
entity_id: light.lucys_nightlight
|
||
- delay:
|
||
hours: 0
|
||
minutes: 0
|
||
seconds: 0
|
||
milliseconds: 500
|
||
- action: notify.corban
|
||
metadata: {}
|
||
data:
|
||
title: Baby Buddy - Error logging diaper
|
||
message: '{{ response }}'
|
||
- delay:
|
||
hours: 0
|
||
minutes: 0
|
||
seconds: 0
|
||
milliseconds: 500
|
||
- action: scene.turn_on
|
||
metadata: {}
|
||
data:
|
||
transition: 1
|
||
target:
|
||
entity_id: scene.lucy_nightlight_remote_pre
|
||
alias: Left, Up, Right - Diaper Logging
|
||
mode: single
|
||
- id: '1744169676303'
|
||
alias: Lucy's Nightlight - Motion and Lux
|
||
description: ''
|
||
triggers:
|
||
- trigger: state
|
||
entity_id:
|
||
- binary_sensor.lucys_nightlight_occupancy
|
||
to: 'on'
|
||
id: 'on'
|
||
- trigger: state
|
||
entity_id:
|
||
- binary_sensor.lucys_nightlight_occupancy
|
||
id: 'off'
|
||
to: 'off'
|
||
for:
|
||
hours: 0
|
||
minutes: 3
|
||
seconds: 0
|
||
conditions:
|
||
- condition: state
|
||
entity_id: input_boolean.room_exclude_lucys_room
|
||
state: 'off'
|
||
actions:
|
||
- choose:
|
||
- conditions:
|
||
- condition: and
|
||
conditions:
|
||
- condition: trigger
|
||
id:
|
||
- 'on'
|
||
- condition: numeric_state
|
||
entity_id: sensor.lucys_nightlight_illuminance
|
||
below: 15
|
||
sequence:
|
||
- action: light.turn_on
|
||
metadata: {}
|
||
data:
|
||
rgb_color:
|
||
- 255
|
||
- 175
|
||
- 91
|
||
brightness_pct: 50
|
||
transition: 1
|
||
target:
|
||
entity_id:
|
||
- light.lucys_nightlight
|
||
alias: On, if room brightness is low enough
|
||
- conditions:
|
||
- condition: trigger
|
||
id:
|
||
- 'off'
|
||
sequence:
|
||
- condition: state
|
||
entity_id: light.lucys_nightlight
|
||
state: 'on'
|
||
- action: light.turn_off
|
||
metadata: {}
|
||
data:
|
||
transition: 2
|
||
target:
|
||
entity_id:
|
||
- light.lucys_nightlight
|
||
mode: restart
|
||
- id: '1744675790269'
|
||
alias: Bedside Buttons - Toggle Headboard Lights
|
||
description: ''
|
||
triggers:
|
||
- domain: mqtt
|
||
device_id: ac01e2cb060249f980958e940eb74383
|
||
type: action
|
||
subtype: single
|
||
trigger: device
|
||
alias: Corban - Single click
|
||
- domain: mqtt
|
||
device_id: 902fe0fc069711eb8fc8e19795714a1d
|
||
type: action
|
||
subtype: arrow_right_click
|
||
trigger: device
|
||
alias: Maggie - Right Arrow
|
||
- alias: Maggie - Center Button
|
||
domain: mqtt
|
||
device_id: 902fe0fc069711eb8fc8e19795714a1d
|
||
type: action
|
||
subtype: toggle
|
||
trigger: device
|
||
- domain: mqtt
|
||
device_id: 6239543fc9a684fbba5d4af77ccdf052
|
||
type: action
|
||
subtype: config_single
|
||
trigger: device
|
||
alias: Upstairs Hall Light Switch - Config Single
|
||
conditions: []
|
||
actions:
|
||
- choose:
|
||
- conditions:
|
||
- condition: state
|
||
entity_id: input_select.home_mode
|
||
state: Sleep
|
||
enabled: false
|
||
- condition: time
|
||
after: '21:00:00'
|
||
before: 09:00:00
|
||
sequence:
|
||
- action: light.toggle
|
||
metadata: {}
|
||
data:
|
||
transition: 2
|
||
brightness_pct: 2
|
||
target:
|
||
entity_id: light.master_bedroom_headboard
|
||
default:
|
||
- action: light.toggle
|
||
metadata: {}
|
||
data:
|
||
transition: 2
|
||
brightness_pct: 75
|
||
target:
|
||
entity_id: light.master_bedroom_headboard
|
||
mode: single
|
||
- id: '1745036234044'
|
||
alias: Upstairs Light Switch - Config Single Press - Toggle Headboard
|
||
description: ''
|
||
triggers:
|
||
- domain: mqtt
|
||
device_id: 6239543fc9a684fbba5d4af77ccdf052
|
||
type: action
|
||
subtype: config_single
|
||
trigger: device
|
||
conditions: []
|
||
actions:
|
||
- data:
|
||
brightness_pct: 10
|
||
rgb_color:
|
||
- 255
|
||
- 78
|
||
- 30
|
||
action: light.toggle
|
||
target:
|
||
entity_id: light.master_bedroom_headboard
|
||
mode: single
|
||
- id: '1745258240039'
|
||
alias: Baby Timer - Show on Living Room Switch
|
||
description: ''
|
||
triggers:
|
||
- trigger: state
|
||
entity_id:
|
||
- switch.lucy_mailloux_timer
|
||
to: 'off'
|
||
from: 'on'
|
||
id: 'off'
|
||
- trigger: state
|
||
entity_id:
|
||
- switch.lucy_mailloux_timer
|
||
to: 'on'
|
||
id: 'on'
|
||
from: 'off'
|
||
conditions: []
|
||
actions:
|
||
- choose:
|
||
- conditions:
|
||
- condition: trigger
|
||
id:
|
||
- 'on'
|
||
sequence:
|
||
- action: script.inovelli_led_control
|
||
metadata: {}
|
||
data:
|
||
color: Pink
|
||
level: 100
|
||
effect: Aurora
|
||
duration: Indefinitely
|
||
target:
|
||
device_id:
|
||
- d9db549c961eecf0f3fc66794fe297ad
|
||
led: All
|
||
- conditions:
|
||
- condition: trigger
|
||
id:
|
||
- 'off'
|
||
sequence:
|
||
- action: script.inovelli_led_control
|
||
metadata: {}
|
||
data:
|
||
color: Pink
|
||
level: 100
|
||
effect: Clear
|
||
duration: Indefinitely
|
||
target:
|
||
device_id:
|
||
- d9db549c961eecf0f3fc66794fe297ad
|
||
led: All
|
||
mode: single
|
||
- id: '1745344633140'
|
||
alias: Living Room Switch - Double Down to Turn Off All Lights
|
||
description: ''
|
||
triggers:
|
||
- domain: mqtt
|
||
device_id: 21e10aa0c624e6abdcbbbbb97e0373c5
|
||
type: action
|
||
subtype: down_double
|
||
trigger: device
|
||
- domain: mqtt
|
||
device_id: d9db549c961eecf0f3fc66794fe297ad
|
||
type: action
|
||
subtype: down_double
|
||
trigger: device
|
||
conditions: []
|
||
actions:
|
||
- action: light.turn_off
|
||
metadata: {}
|
||
data:
|
||
transition: 2
|
||
target:
|
||
area_id: 6a82246dbc29484cb9558c88e6e7be5d
|
||
mode: single
|
||
- id: '1745702388569'
|
||
alias: Living Room Switch 2 - Toggle Corner Lamp
|
||
description: ''
|
||
triggers:
|
||
- domain: mqtt
|
||
device_id: 53afe29f4d972deb626552ed9a4f89f6
|
||
type: action
|
||
subtype: config_single
|
||
trigger: device
|
||
conditions: []
|
||
actions:
|
||
- action: light.toggle
|
||
metadata: {}
|
||
data: {}
|
||
target:
|
||
entity_id: light.corner_lamp
|
||
mode: single
|
||
- id: '1745702457597'
|
||
alias: Living Room Switch 3 - Toggle Reading Lamp
|
||
description: ''
|
||
triggers:
|
||
- domain: mqtt
|
||
device_id: ff32bc927588740f5739a61d42afee60
|
||
type: action
|
||
subtype: config_single
|
||
trigger: device
|
||
conditions: []
|
||
actions:
|
||
- action: light.toggle
|
||
metadata: {}
|
||
data: {}
|
||
target:
|
||
entity_id: light.reading_lamp
|
||
mode: single
|
||
- id: '1746243913739'
|
||
alias: Notify if Garage Door is Left Open When Leaving
|
||
description: ''
|
||
triggers:
|
||
- trigger: state
|
||
entity_id:
|
||
- input_select.home_mode
|
||
to: Away
|
||
for:
|
||
hours: 0
|
||
minutes: 0
|
||
seconds: 30
|
||
- trigger: state
|
||
entity_id:
|
||
- input_select.home_mode
|
||
to: Vacation
|
||
for:
|
||
hours: 0
|
||
minutes: 0
|
||
seconds: 30
|
||
conditions:
|
||
- condition: or
|
||
conditions:
|
||
- condition: state
|
||
entity_id: cover.ratgdo_left_garage_door_door
|
||
state: open
|
||
- condition: state
|
||
state: open
|
||
entity_id: cover.ratgdo_right_garage_door_door
|
||
alias: If either door is open
|
||
actions:
|
||
- action: notify.adult_phones
|
||
metadata: {}
|
||
data:
|
||
title: Garage Door Open
|
||
data:
|
||
tag: garage_door_open_reminder
|
||
actions:
|
||
- action: CLOSE_GARAGE_DOORS
|
||
title: Close Garage Doors
|
||
activationMode: background
|
||
authenticationRequired: false
|
||
destructive: false
|
||
behavior: default
|
||
message: A garage door was left open. Close it?
|
||
alias: Notify adult phones
|
||
- wait_for_trigger:
|
||
- trigger: event
|
||
event_type: mobile_app_notification_action
|
||
event_data:
|
||
action: CLOSE_GARAGE_DOORS
|
||
continue_on_timeout: false
|
||
timeout:
|
||
hours: 24
|
||
minutes: 0
|
||
seconds: 0
|
||
milliseconds: 0
|
||
alias: Wait for notification action (or timeout)
|
||
- action: cover.close_cover
|
||
metadata: {}
|
||
data: {}
|
||
target:
|
||
entity_id:
|
||
- cover.ratgdo_left_garage_door_door
|
||
- cover.ratgdo_right_garage_door_door
|
||
alias: Close the garage doors
|
||
- action: notify.adult_phones
|
||
metadata: {}
|
||
data:
|
||
message: clear_notification
|
||
data:
|
||
tag: garage_door_open_reminder
|
||
alias: Clear the notification from remaining devices
|
||
mode: restart
|
||
- id: '1747349188668'
|
||
alias: Tummy Time Reminder
|
||
description: ''
|
||
triggers:
|
||
- trigger: time
|
||
at: '16:00:00'
|
||
conditions:
|
||
- alias: No tummy time entered today
|
||
condition: template
|
||
value_template: '{{ as_timestamp(state_attr(''sensor.lucy_mailloux_last_tummy_time'',
|
||
''start'')) | timestamp_custom(''%Y-%m-%d'') != now().date().isoformat() }}'
|
||
- condition: not
|
||
conditions:
|
||
- condition: state
|
||
entity_id: input_select.home_mode
|
||
state: Vacation
|
||
alias: Not on vacation
|
||
actions:
|
||
- action: notify.adult_phones
|
||
metadata: {}
|
||
data:
|
||
message: No tummy time has been entered today.
|
||
title: Tummy Time?
|
||
mode: single
|
||
- id: '1747521825959'
|
||
alias: Notify if Lucy’s timer is running for too long
|
||
description: ''
|
||
triggers:
|
||
- trigger: state
|
||
entity_id:
|
||
- switch.lucy_mailloux_timer
|
||
to: 'on'
|
||
for:
|
||
hours: 2
|
||
minutes: 0
|
||
seconds: 0
|
||
enabled: false
|
||
- trigger: time
|
||
at:
|
||
entity_id: sensor.lucy_timer_start_time
|
||
offset: '2:00:00'
|
||
conditions:
|
||
- condition: time
|
||
after: 08:00:00
|
||
before: '20:00:00'
|
||
actions:
|
||
- action: notify.adult_phones
|
||
metadata: {}
|
||
data:
|
||
title: Napping Too Long?
|
||
message: A BabyBuddy timer has been running for more than 2 hours.
|
||
data:
|
||
group: babybuddy
|
||
tag: baby-nap-too-long
|
||
- wait_for_trigger:
|
||
- trigger: state
|
||
entity_id:
|
||
- switch.lucy_mailloux_timer
|
||
to: 'off'
|
||
continue_on_timeout: false
|
||
timeout:
|
||
hours: 3
|
||
minutes: 0
|
||
seconds: 0
|
||
milliseconds: 0
|
||
- action: notify.adult_phones
|
||
metadata: {}
|
||
data:
|
||
data:
|
||
tag: baby-nap-too-long
|
||
message: clear_notification
|
||
alias: Clear notification
|
||
mode: single
|
||
- id: '1748960622382'
|
||
alias: Wake window timer reminder
|
||
description: ''
|
||
triggers:
|
||
- trigger: time
|
||
at:
|
||
entity_id: sensor.lucy_last_sleep_end_timestamp
|
||
offset: '2:00:00'
|
||
conditions:
|
||
- condition: time
|
||
after: 08:00:00
|
||
before: '21:00:00'
|
||
- condition: state
|
||
entity_id: switch.lucy_mailloux_timer
|
||
state: 'off'
|
||
actions:
|
||
- action: notify.adult_phones
|
||
metadata: {}
|
||
data:
|
||
title: Wake Window Ending
|
||
message: It's been more than 2 hours since a sleep entry. Is it nap time?
|
||
data:
|
||
group: babybuddy
|
||
tag: baby-wake-window-ending
|
||
- wait_for_trigger:
|
||
- trigger: state
|
||
entity_id:
|
||
- switch.lucy_mailloux_timer
|
||
to: 'on'
|
||
continue_on_timeout: false
|
||
timeout:
|
||
hours: 3
|
||
minutes: 0
|
||
seconds: 0
|
||
milliseconds: 0
|
||
- alias: Clear notification
|
||
action: notify.adult_phones
|
||
metadata: {}
|
||
data:
|
||
data:
|
||
tag: baby-wake-window-ending
|
||
message: clear_notification
|
||
mode: single
|
||
- id: '1748974264156'
|
||
alias: Turn off sprinkler at end of timer
|
||
description: ''
|
||
triggers:
|
||
- trigger: event
|
||
event_type: timer.finished
|
||
event_data:
|
||
entity_id: timer.irrigation_off_timer
|
||
conditions: []
|
||
actions:
|
||
- action: switch.turn_off
|
||
metadata: {}
|
||
data: {}
|
||
target:
|
||
entity_id: switch.sprinkler_valve_1
|
||
mode: single
|
||
- id: '1750027073324'
|
||
alias: Turn on exterior lights at night when a vehicle is detected
|
||
description: ''
|
||
triggers:
|
||
- trigger: state
|
||
entity_id:
|
||
- binary_sensor.driveway_vehicle_detected
|
||
- binary_sensor.driveway_person_detected
|
||
from: 'off'
|
||
to: 'on'
|
||
conditions:
|
||
- condition: time
|
||
after: '23:00:00'
|
||
before: 05:00:00
|
||
actions:
|
||
- action: light.turn_on
|
||
metadata: {}
|
||
data: {}
|
||
target:
|
||
entity_id: light.exterior_lights
|
||
- delay:
|
||
hours: 0
|
||
minutes: 5
|
||
seconds: 0
|
||
milliseconds: 0
|
||
- action: light.turn_off
|
||
metadata: {}
|
||
data: {}
|
||
target:
|
||
entity_id: light.exterior_lights
|
||
mode: restart
|
||
- id: '1750264262233'
|
||
alias: Notify on low litter level
|
||
description: ''
|
||
triggers:
|
||
- trigger: numeric_state
|
||
entity_id:
|
||
- sensor.litter_robot_4_litter_level
|
||
below: 70
|
||
conditions: []
|
||
actions:
|
||
- action: notify.corban
|
||
metadata: {}
|
||
data:
|
||
title: Litter Low
|
||
message: Check the box.
|
||
mode: single
|
||
- id: '1750469258428'
|
||
alias: Maggie’s Alarm
|
||
description: ''
|
||
triggers:
|
||
- trigger: event
|
||
event_type: maggie_ios_alarm
|
||
conditions:
|
||
- condition: or
|
||
conditions:
|
||
- condition: state
|
||
entity_id: input_select.home_mode
|
||
state: Home
|
||
- condition: state
|
||
entity_id: input_select.home_mode
|
||
state: Sleep
|
||
alias: Home or Sleep
|
||
actions:
|
||
- action: light.turn_on
|
||
metadata: {}
|
||
data:
|
||
transition: 2
|
||
brightness_pct: 100
|
||
target:
|
||
entity_id: light.fairy_lights
|
||
mode: single
|
||
- id: '1750769716810'
|
||
alias: Triple tap config on kitchen bar switch to open right garage door
|
||
description: ''
|
||
triggers:
|
||
- domain: mqtt
|
||
device_id: 9f61f3f1b573c3799a54ee705f98034f
|
||
type: action
|
||
subtype: config_triple
|
||
trigger: device
|
||
conditions: []
|
||
actions:
|
||
- action: cover.toggle
|
||
metadata: {}
|
||
data: {}
|
||
target:
|
||
entity_id: cover.ratgdo_right_garage_door_door
|
||
mode: single
|
||
- id: '1750861927898'
|
||
alias: Notify Corban on HVAC error
|
||
description: ''
|
||
triggers:
|
||
- trigger: state
|
||
entity_id:
|
||
- sensor.mitp_heat_pump_first_floor_error_code
|
||
from: No Error Reported
|
||
not_to:
|
||
- unavailable
|
||
id: First Floor HVAC
|
||
- trigger: state
|
||
entity_id:
|
||
- sensor.mitp_heat_pump_second_floor_error_code
|
||
from: No Error Reported
|
||
not_to:
|
||
- unavailable
|
||
id: Second Floor HVAC
|
||
conditions: []
|
||
actions:
|
||
- action: notify.corban
|
||
metadata: {}
|
||
data:
|
||
title: HVAC Error
|
||
message: 'Error in {{ trigger.id }}: {{ trigger.to_state.state }}'
|
||
mode: single
|
||
- id: '1750862231781'
|
||
alias: Notify when HVAC filter needs to be replaced
|
||
description: ''
|
||
triggers:
|
||
- trigger: state
|
||
entity_id:
|
||
- binary_sensor.mitp_heat_pump_first_floor_filter_status
|
||
id: First Floor HVAC
|
||
to: 'on'
|
||
from: 'off'
|
||
- trigger: state
|
||
entity_id:
|
||
- binary_sensor.mitp_heat_pump_second_floor_filter_status
|
||
id: Second Floor HVAC
|
||
to: 'on'
|
||
from: 'off'
|
||
conditions: []
|
||
actions:
|
||
- action: notify.adult_phones
|
||
metadata: {}
|
||
data:
|
||
title: HVAC Filter Needs to be Replaced
|
||
message: The filter in the {{ trigger.id }} needs to be replaced.
|
||
mode: single
|
||
- id: '1752358411714'
|
||
alias: Living Room Switch 3 - Triple tap for curtain control
|
||
description: ''
|
||
triggers:
|
||
- domain: mqtt
|
||
device_id: ff32bc927588740f5739a61d42afee60
|
||
type: action
|
||
subtype: up_triple
|
||
trigger: device
|
||
id: Open
|
||
- domain: mqtt
|
||
device_id: ff32bc927588740f5739a61d42afee60
|
||
type: action
|
||
subtype: down_triple
|
||
trigger: device
|
||
id: Close
|
||
conditions: []
|
||
actions:
|
||
- choose:
|
||
- conditions:
|
||
- condition: trigger
|
||
id:
|
||
- Open
|
||
sequence:
|
||
- action: cover.open_cover
|
||
metadata: {}
|
||
data: {}
|
||
target:
|
||
entity_id: cover.living_room_window_1_curtains
|
||
- conditions:
|
||
- condition: trigger
|
||
id:
|
||
- Close
|
||
sequence:
|
||
- action: cover.close_cover
|
||
metadata: {}
|
||
data: {}
|
||
target:
|
||
entity_id: cover.living_room_window_1_curtains
|
||
mode: single
|
||
- id: '1754364930470'
|
||
alias: Mower - Notify if Locked/Lifted
|
||
description: ''
|
||
triggers:
|
||
- trigger: state
|
||
entity_id:
|
||
- sensor.lucas_activity_mode
|
||
to: MODE_LOCK
|
||
conditions: []
|
||
actions:
|
||
- action: notify.corban
|
||
metadata: {}
|
||
data:
|
||
message: Mower is locked or has been lifted. You need to manually reset it.
|
||
title: Mower Locked
|
||
mode: single
|
||
- id: '1754537218111'
|
||
alias: Mower Schedule
|
||
description: ''
|
||
triggers:
|
||
- trigger: time_pattern
|
||
minutes: /15
|
||
conditions:
|
||
- condition: time
|
||
weekday:
|
||
- tue
|
||
- wed
|
||
- thu
|
||
- fri
|
||
after: '11:30:00'
|
||
before: '19:00:00'
|
||
- condition: state
|
||
entity_id: input_boolean.mower_schedule_enabled
|
||
state: 'on'
|
||
- condition: state
|
||
entity_id: input_boolean.mower_do_not_mow
|
||
state: 'off'
|
||
- condition: sun
|
||
before: sunset
|
||
before_offset: '-1:00:00'
|
||
after: sunrise
|
||
alias: Between sunrise and 1 hour before sunset
|
||
actions:
|
||
- variables:
|
||
area_options:
|
||
- back_yard_main
|
||
- garage_side
|
||
- front_yard
|
||
- mailbox
|
||
chosen_area: "{% set today = now().date() %} {% for cid in area_options %}\n\
|
||
\ {% set ent_id_last_mow = 'input_datetime.mower_last_mow_' ~ cid %}\n {%\
|
||
\ set ent_id_schedule = 'input_number.mower_schedule_days_delay_' ~ cid %}\n\
|
||
\ {% set last_mow_dt = states(ent_id_last_mow) | as_datetime | as_local %}\n\
|
||
\ {% set delay = states(ent_id_schedule) | int %}\n {% if (delay > 0) and\
|
||
\ (last_mow_dt.date() <= (today - timedelta(days=delay))) and \n ( cid\
|
||
\ != \"back_yard_main\" or \n ( is_state(\"switch.sprinkler_valve_1\",\
|
||
\ \"off\")\n and (as_timestamp(now()) - as_timestamp(states.switch.sprinkler_valve_1.last_changed\
|
||
\ | default(0))) > 7200 )\n )\n %}\n {{ cid }}\n {% break %}\n \
|
||
\ {% endif %}\n{% endfor %} \n"
|
||
alias: Select the first valid yard zone
|
||
- condition: template
|
||
value_template: '{{ chosen_area != '''' }}'
|
||
alias: Test if a yard zone is configured
|
||
- action: notify.corban
|
||
metadata: {}
|
||
data:
|
||
message: Mowing {{ chosen_area }}.
|
||
title: Mower Schedule Triggered
|
||
- alias: Start Mower Script for Area
|
||
action: script.turn_on
|
||
metadata: {}
|
||
data: {}
|
||
target:
|
||
entity_id: '{{ ''script.mower_mow_'' ~ chosen_area }}'
|
||
mode: single
|
||
- id: '1754538262555'
|
||
alias: Mower Schedule - Do Not Mow Controls
|
||
description: Monitors various entities to enable and disable mowing based on conditions.
|
||
triggers:
|
||
- trigger: state
|
||
entity_id:
|
||
- sensor.lucas_activity_mode
|
||
from: null
|
||
to: null
|
||
- trigger: state
|
||
entity_id:
|
||
- sensor.lucas_battery
|
||
from: null
|
||
to: null
|
||
- trigger: state
|
||
entity_id:
|
||
- sensor.owmh_home_forecast0rain
|
||
- sensor.owmh_home_day0rain
|
||
- sensor.owmh_home_current_rain
|
||
from: null
|
||
to: null
|
||
- trigger: state
|
||
entity_id:
|
||
- input_select.home_mode
|
||
from: null
|
||
to: null
|
||
- trigger: state
|
||
entity_id:
|
||
- input_boolean.mower_schedule_enabled
|
||
from: 'off'
|
||
to: 'on'
|
||
conditions: []
|
||
actions:
|
||
- choose:
|
||
- conditions:
|
||
- condition: state
|
||
entity_id: input_select.home_mode
|
||
state: Vacation
|
||
sequence:
|
||
- action: input_boolean.turn_on
|
||
metadata: {}
|
||
data: {}
|
||
target:
|
||
entity_id: input_boolean.mower_do_not_mow
|
||
- action: input_text.set_value
|
||
metadata: {}
|
||
data:
|
||
value: Vacation Mode
|
||
target:
|
||
entity_id: input_text.mower_reason_no_mow
|
||
alias: Vacation
|
||
- conditions:
|
||
- condition: not
|
||
conditions:
|
||
- condition: state
|
||
entity_id: sensor.lucas_activity_mode
|
||
state: MODE_READY
|
||
sequence:
|
||
- action: input_boolean.turn_on
|
||
metadata: {}
|
||
data: {}
|
||
target:
|
||
entity_id: input_boolean.mower_do_not_mow
|
||
- action: input_text.set_value
|
||
metadata: {}
|
||
data:
|
||
value: Mower Not Ready
|
||
target:
|
||
entity_id: input_text.mower_reason_no_mow
|
||
alias: Mower Not Ready
|
||
- conditions:
|
||
- condition: numeric_state
|
||
entity_id: sensor.lucas_battery
|
||
below: 95
|
||
sequence:
|
||
- action: input_boolean.turn_on
|
||
metadata: {}
|
||
data: {}
|
||
target:
|
||
entity_id: input_boolean.mower_do_not_mow
|
||
- action: input_text.set_value
|
||
metadata: {}
|
||
data:
|
||
value: Mower Battery Not Charged
|
||
target:
|
||
entity_id: input_text.mower_reason_no_mow
|
||
alias: Mower Battery Not Charged
|
||
- conditions:
|
||
- condition: numeric_state
|
||
entity_id: sensor.owmh_home_day0rain
|
||
above: 0.75
|
||
sequence:
|
||
- action: input_boolean.turn_on
|
||
metadata: {}
|
||
data: {}
|
||
target:
|
||
entity_id: input_boolean.mower_do_not_mow
|
||
- action: input_text.set_value
|
||
metadata: {}
|
||
data:
|
||
value: Heavy Rain Recently
|
||
target:
|
||
entity_id: input_text.mower_reason_no_mow
|
||
alias: Heavy Rain - Historical
|
||
- conditions:
|
||
- condition: numeric_state
|
||
entity_id: sensor.owmh_home_forecast0rain
|
||
above: 0.5
|
||
sequence:
|
||
- action: input_boolean.turn_on
|
||
metadata: {}
|
||
data: {}
|
||
target:
|
||
entity_id: input_boolean.mower_do_not_mow
|
||
- action: input_text.set_value
|
||
metadata: {}
|
||
data:
|
||
value: Heavy Rain Predicted
|
||
target:
|
||
entity_id: input_text.mower_reason_no_mow
|
||
alias: Heavy Rain - Predicted
|
||
- conditions:
|
||
- condition: numeric_state
|
||
entity_id: sensor.owmh_home_current_rain
|
||
above: 0.2
|
||
sequence:
|
||
- action: input_boolean.turn_on
|
||
metadata: {}
|
||
data: {}
|
||
target:
|
||
entity_id: input_boolean.mower_do_not_mow
|
||
- action: input_text.set_value
|
||
metadata: {}
|
||
data:
|
||
value: Currently Raining
|
||
target:
|
||
entity_id: input_text.mower_reason_no_mow
|
||
alias: Rain - Current
|
||
default:
|
||
- action: input_boolean.turn_off
|
||
metadata: {}
|
||
data: {}
|
||
target:
|
||
entity_id: input_boolean.mower_do_not_mow
|
||
alias: Turn off "Do Not Mow"
|
||
- alias: Clear the No Mow Reason
|
||
action: input_text.set_value
|
||
metadata: {}
|
||
data:
|
||
value: None
|
||
target:
|
||
entity_id: input_text.mower_reason_no_mow
|
||
mode: single
|
||
- id: '1756128484018'
|
||
alias: Trigger Corban’s location update when leaving
|
||
description: ''
|
||
triggers:
|
||
- trigger: state
|
||
entity_id:
|
||
- person.corban
|
||
to: not_home
|
||
from: home
|
||
conditions: []
|
||
actions:
|
||
- action: script.request_corban_location_update
|
||
metadata: {}
|
||
data: {}
|
||
mode: single
|
||
- id: '1756138764072'
|
||
alias: Hold-to-Cycle Brightness - Office Ceiling Lights
|
||
description: ''
|
||
use_blueprint:
|
||
path: corbanmailloux/inovelli_hold_to_dim.yaml
|
||
input:
|
||
switch_device: 0d88963feb93fc454e4d3c4115034675
|
||
light_entity: light.office_ceiling
|
||
step_size: 25
|
||
- id: '1756139380632'
|
||
alias: Hold-to-Cycle Brightness - Cabinet Lights
|
||
description: ''
|
||
use_blueprint:
|
||
path: corbanmailloux/inovelli_hold_to_dim.yaml
|
||
input:
|
||
switch_device: 21e10aa0c624e6abdcbbbbb97e0373c5
|
||
light_entity: light.living_room_cabinet_lights
|
||
step_size: 25
|
||
- id: '1756139422665'
|
||
alias: Hold-to-Cycle Brightness - Living Room Corner Lamp
|
||
description: ''
|
||
use_blueprint:
|
||
path: corbanmailloux/inovelli_hold_to_dim.yaml
|
||
input:
|
||
switch_device: 53afe29f4d972deb626552ed9a4f89f6
|
||
light_entity: light.corner_lamp
|
||
- id: '1756139451249'
|
||
alias: Hold-to-Cycle Brightness - Living Room Reading Lamp
|
||
description: ''
|
||
use_blueprint:
|
||
path: corbanmailloux/inovelli_hold_to_dim.yaml
|
||
input:
|
||
switch_device: ff32bc927588740f5739a61d42afee60
|
||
light_entity: light.reading_lamp
|
||
- id: '1756155639815'
|
||
alias: Master Bedroom Proxy Button Actions
|
||
description: ''
|
||
use_blueprint:
|
||
path: corbanmailloux/esphome_ble_proxy_buttons.yaml
|
||
input:
|
||
event_entity: event.bluetooth_proxy_master_bedroom_bluetooth_proxy_master_bedroom_button_event
|
||
single_press:
|
||
- choose:
|
||
- conditions:
|
||
- condition: time
|
||
after: '21:00:00'
|
||
before: 09:00:00
|
||
sequence:
|
||
- action: light.toggle
|
||
metadata: {}
|
||
data:
|
||
transition: 2
|
||
brightness_pct: 2
|
||
target:
|
||
entity_id: light.master_bedroom_headboard
|
||
alias: Toggle Dim
|
||
default:
|
||
- action: light.toggle
|
||
metadata: {}
|
||
data:
|
||
transition: 2
|
||
brightness_pct: 75
|
||
target:
|
||
entity_id: light.master_bedroom_headboard
|
||
alias: Toggle Bright
|
||
double_press:
|
||
- action: fan.toggle
|
||
metadata: {}
|
||
data: {}
|
||
target:
|
||
entity_id: fan.master_bedroom_ceiling_fan
|
||
long_press:
|
||
- alias: Activate sleep mode. If sleep mode is on, run bedtime checkup again.
|
||
choose:
|
||
- conditions:
|
||
- condition: state
|
||
entity_id: input_select.home_mode
|
||
state: Sleep
|
||
sequence:
|
||
- action: script.bedtime_checkup
|
||
data: {}
|
||
default:
|
||
- data:
|
||
entity_id: input_select.home_mode
|
||
option: Sleep
|
||
action: input_select.select_option
|
||
- id: '1756865296776'
|
||
alias: Sprinkler Schedule
|
||
description: ''
|
||
triggers:
|
||
- trigger: time
|
||
at: 06:59:00
|
||
id: 'on'
|
||
- trigger: time
|
||
at: 07:15:00
|
||
id: 'off'
|
||
- trigger: time
|
||
at: '11:59:00'
|
||
id: 'on'
|
||
enabled: false
|
||
- trigger: time
|
||
at: '12:05:00'
|
||
id: 'off'
|
||
enabled: false
|
||
- trigger: time
|
||
at: '17:14:00'
|
||
id: 'on'
|
||
enabled: false
|
||
- trigger: time
|
||
at: '17:21:00'
|
||
id: 'off'
|
||
enabled: false
|
||
conditions: []
|
||
actions:
|
||
- choose:
|
||
- conditions:
|
||
- condition: and
|
||
conditions:
|
||
- condition: trigger
|
||
id:
|
||
- 'on'
|
||
- condition: not
|
||
conditions:
|
||
- condition: state
|
||
entity_id: sensor.lucas_work_area
|
||
state: Main Back and Side
|
||
alias: Lucas not in back yard
|
||
- alias: Insignificant rain in the last 2 days or forcast today
|
||
condition: template
|
||
value_template: "{{ \nstates(\"sensor.owmh_home_current_rain\") | float(0)\
|
||
\ < 0.25\nand states(\"sensor.owmh_home_day0rain\") | float(0) < 0.25\n\
|
||
and states(\"sensor.owmh_home_day1rain\") | float(0) < 0.5\nand ((states(\"\
|
||
sensor.owmh_home_forecast0rain\")|float(0)) * (states(\"sensor.owmh_home_forecast0pop\"\
|
||
)|float(0))) < 0.5\n}}"
|
||
sequence:
|
||
- action: switch.turn_on
|
||
metadata: {}
|
||
data: {}
|
||
target:
|
||
entity_id: switch.sprinkler_valve_1
|
||
alias: On - Mower not in back yard; insignificant rain
|
||
- conditions:
|
||
- condition: trigger
|
||
id:
|
||
- 'off'
|
||
sequence:
|
||
- action: switch.turn_off
|
||
metadata: {}
|
||
data: {}
|
||
target:
|
||
entity_id: switch.sprinkler_valve_1
|
||
mode: single
|
||
- id: '1756865878813'
|
||
alias: Turn off sprinkler value after 40 minutes
|
||
description: ''
|
||
triggers:
|
||
- trigger: state
|
||
entity_id:
|
||
- switch.sprinkler_valve_1
|
||
to: 'on'
|
||
for:
|
||
hours: 0
|
||
minutes: 40
|
||
seconds: 0
|
||
conditions: []
|
||
actions:
|
||
- action: notify.corban
|
||
metadata: {}
|
||
data:
|
||
title: Sprinkler Still On
|
||
message: The sprinkler valve has been running for more than 40 minutes. Stopping
|
||
automatically.
|
||
- action: switch.turn_off
|
||
metadata: {}
|
||
data: {}
|
||
target:
|
||
entity_id: switch.sprinkler_valve_1
|
||
mode: single
|
||
- id: '1757898273542'
|
||
alias: Water Leak Detected - Send Critical Notifications
|
||
description: ''
|
||
triggers:
|
||
- trigger: state
|
||
entity_id: binary_sensor.kitchen_sink_water_leak_sensor_water_sensor
|
||
to: 'on'
|
||
id: under the kitchen sink
|
||
- trigger: state
|
||
entity_id: binary_sensor.water_heater_water_leak_sensor_water_sensor
|
||
to: 'on'
|
||
id: near the water heater
|
||
- trigger: state
|
||
entity_id: binary_sensor.water_softener_water_leak_sensor_water_sensor
|
||
to: 'on'
|
||
id: near the water softener
|
||
- trigger: state
|
||
entity_id: binary_sensor.washing_machine_water_leak_sensor_water_sensor
|
||
to: 'on'
|
||
id: near the washing machine
|
||
- trigger: state
|
||
entity_id: binary_sensor.master_bathroom_sink_water_leak_sensor_water_sensor
|
||
to: 'on'
|
||
id: under the master bathroom sink
|
||
- trigger: state
|
||
entity_id: binary_sensor.guest_bathroom_sink_water_leak_sensor_water_sensor
|
||
to: 'on'
|
||
id: under the guest bathroom sink
|
||
- trigger: state
|
||
entity_id: binary_sensor.first_floor_bathroom_water_leak_sensor_water_sensor
|
||
to: 'on'
|
||
id: under the first floor bathroom sink
|
||
- trigger: state
|
||
entity_id:
|
||
- binary_sensor.water_leak_sensor_first_floor_vacuum_water_sensor
|
||
to: 'on'
|
||
id: near the robot vacuum base station
|
||
- trigger: state
|
||
entity_id:
|
||
- binary_sensor.water_leak_sensor_dehumidifier_water_sensor
|
||
to: 'on'
|
||
id: near the dehumidifier
|
||
conditions: []
|
||
actions:
|
||
- alias: Notify Everyone with a Critical Notification
|
||
action: notify.adult_ios_phones
|
||
data:
|
||
title: Water Leak Detected at Home
|
||
message: Water detected {{ trigger.id }}.
|
||
data:
|
||
push:
|
||
interruption-level: critical
|
||
mode: single
|
||
- id: 03bcaae7-109c-4ccd-9392-d571c09518a8
|
||
alias: Living Room Curtains - Match Window State
|
||
description: ''
|
||
triggers:
|
||
- trigger: state
|
||
entity_id:
|
||
- binary_sensor.living_room_window_1_contact
|
||
from: 'on'
|
||
to: 'off'
|
||
id: closed
|
||
for:
|
||
hours: 0
|
||
minutes: 0
|
||
seconds: 2
|
||
- trigger: state
|
||
entity_id:
|
||
- binary_sensor.living_room_window_1_contact
|
||
from: 'off'
|
||
to: 'on'
|
||
id: open
|
||
for:
|
||
hours: 0
|
||
minutes: 0
|
||
seconds: 5
|
||
conditions:
|
||
- alias: Living room automations are not disabled
|
||
condition: state
|
||
entity_id: input_boolean.room_exclude_livingroom
|
||
state: 'off'
|
||
- condition: state
|
||
entity_id: cover.living_room_curtain_left
|
||
state: closed
|
||
actions:
|
||
- choose:
|
||
- conditions:
|
||
- condition: trigger
|
||
id:
|
||
- open
|
||
- condition: state
|
||
entity_id: cover.living_room_curtain_right
|
||
state: closed
|
||
sequence:
|
||
- alias: Open the Right Curtain
|
||
action: v6_quietdrift.set_switchbot_curtain_position
|
||
data:
|
||
entity_id:
|
||
- cover.living_room_curtain_right
|
||
position: 100
|
||
speed: 2
|
||
- conditions:
|
||
- condition: trigger
|
||
id:
|
||
- closed
|
||
- condition: state
|
||
entity_id: cover.living_room_curtain_right
|
||
state: open
|
||
sequence:
|
||
- alias: Close the Right Curtain
|
||
action: v6_quietdrift.set_switchbot_curtain_position
|
||
data:
|
||
entity_id:
|
||
- cover.living_room_curtain_right
|
||
position: 0
|
||
speed: 2
|
||
mode: restart
|
||
- id: '1758213615165'
|
||
alias: Proxy / Bedside Button Light on at Night
|
||
description: ''
|
||
triggers:
|
||
- trigger: event
|
||
event_type: corban_iphone_charging
|
||
conditions:
|
||
- condition: state
|
||
entity_id: input_select.home_mode
|
||
state: Home
|
||
- condition: time
|
||
after: '21:30:00'
|
||
before: 03:00:00
|
||
enabled: true
|
||
actions:
|
||
- action: light.turn_on
|
||
metadata: {}
|
||
data:
|
||
transition: 1
|
||
brightness_pct: 100
|
||
rgb_color:
|
||
- 0
|
||
- 0
|
||
- 255
|
||
target:
|
||
entity_id: light.bluetooth_proxy_master_bedroom_light
|
||
mode: single
|
||
- alias: Log Lucy's Weight in Baby Buddy from Withings
|
||
id: b299324f-f288-455d-b941-98b0a3a2b589
|
||
triggers:
|
||
- trigger: state
|
||
entity_id: sensor.withings_lucy_weight
|
||
not_from:
|
||
- unknown
|
||
- unavailable
|
||
actions:
|
||
- action: babybuddy.add_weight
|
||
data:
|
||
weight: '{{ states("sensor.withings_lucy_weight") | round(2) }}'
|
||
tags:
|
||
- Home Assistant
|
||
target:
|
||
entity_id: sensor.baby_lucy_mailloux
|
||
- action: script.inovelli_led_control
|
||
data:
|
||
target:
|
||
device_id:
|
||
- a2726cb3f7bd7519599fdc4147272d87
|
||
led: All
|
||
color: Green
|
||
level: 100
|
||
effect: Fast Chase
|
||
duration: 3 Seconds
|
||
- id: a057b5d7-4be2-4815-ae9a-616bc0af99c0
|
||
alias: Basement - All Lights Follow Switched Lights
|
||
triggers:
|
||
- trigger: state
|
||
entity_id: light.basement_main_lights
|
||
not_from:
|
||
- unknown
|
||
- unavailable
|
||
actions:
|
||
- alias: On or Off?
|
||
choose:
|
||
- conditions: '{{ trigger.to_state.state == "on" }}'
|
||
sequence:
|
||
- alias: Turn on basement lights
|
||
action: light.turn_on
|
||
data:
|
||
color_temp_kelvin: 4000
|
||
brightness: 255
|
||
target:
|
||
entity_id: light.basement_lights
|
||
- conditions: '{{ trigger.to_state.state == "off" }}'
|
||
sequence:
|
||
- alias: Turn off basement lights
|
||
action: light.turn_off
|
||
data:
|
||
transition: 0
|
||
target:
|
||
entity_id: light.basement_lights
|
||
- id: f1227b65-0d99-4c35-9694-bc229a89f2b7
|
||
alias: Basement - Motion Lights
|
||
mode: restart
|
||
triggers:
|
||
- trigger: state
|
||
entity_id: binary_sensor.basement_assumed_motion
|
||
from: 'off'
|
||
to: 'on'
|
||
id: 'on'
|
||
- trigger: state
|
||
entity_id: binary_sensor.basement_assumed_motion
|
||
to: 'off'
|
||
for:
|
||
minutes: 5
|
||
id: 'off'
|
||
conditions:
|
||
- alias: Basement automations are not disabled
|
||
condition: state
|
||
entity_id: input_boolean.room_exclude_basement
|
||
state: 'off'
|
||
actions:
|
||
- alias: On or Off?
|
||
choose:
|
||
- conditions: '{{ trigger.id == "on" }}'
|
||
sequence:
|
||
- alias: Turn on basement lights
|
||
action: light.turn_on
|
||
data:
|
||
color_temp_kelvin: 4000
|
||
brightness: 255
|
||
target:
|
||
entity_id: light.basement_lights
|
||
- conditions: '{{ trigger.id == "off" }}'
|
||
sequence:
|
||
- alias: Turn off basement lights
|
||
action: light.turn_off
|
||
data:
|
||
transition: 20
|
||
target:
|
||
entity_id: light.basement_lights
|
||
- alias: Turn on air purifier with Sleep Mode on vacuum nights
|
||
id: 22d5a3bd-46c6-4a50-909d-5331e875c243
|
||
triggers:
|
||
- trigger: state
|
||
entity_id: input_select.home_mode
|
||
to: Sleep
|
||
conditions:
|
||
- alias: Nights where the vacuum is scheduled to run
|
||
condition: time
|
||
weekday:
|
||
- sun
|
||
- tue
|
||
- thu
|
||
- alias: Master Bedroom automations are not disabled
|
||
condition: state
|
||
entity_id: input_boolean.room_exclude_master_bedroom
|
||
state: 'off'
|
||
actions:
|
||
- delay:
|
||
seconds: 5
|
||
- alias: Turn on the air purifier
|
||
action: fan.turn_on
|
||
data:
|
||
percentage: 50
|
||
target:
|
||
entity_id: fan.office_air_purifier
|
||
- id: 2445cd27-5210-4e61-ad7a-c8323263e9a5
|
||
alias: Turn off air purifier in the morning
|
||
triggers:
|
||
- trigger: time
|
||
at: 08:15:00
|
||
conditions:
|
||
- alias: Home mode set
|
||
condition: state
|
||
entity_id: input_select.home_mode
|
||
state: Home
|
||
- alias: Air purifier is on
|
||
condition: state
|
||
entity_id: fan.office_air_purifier
|
||
state: 'on'
|
||
- alias: Master Bedroom automations are not disabled
|
||
condition: state
|
||
entity_id: input_boolean.room_exclude_master_bedroom
|
||
state: 'off'
|
||
actions:
|
||
- alias: Turn off the air purifier
|
||
action: fan.turn_off
|
||
target:
|
||
entity_id: fan.office_air_purifier
|
||
- alias: Open curtains when Corban wakes up
|
||
id: 49524a70-ea40-4ed6-b07f-e6bd950baef0
|
||
triggers:
|
||
- trigger: event
|
||
event_type: corban_iphone_sleep
|
||
event_data:
|
||
sleep: false
|
||
conditions:
|
||
- alias: Weekdays
|
||
condition: time
|
||
weekday:
|
||
- mon
|
||
- tue
|
||
- wed
|
||
- thu
|
||
- fri
|
||
- alias: Corban is home
|
||
condition: state
|
||
entity_id: person.corban
|
||
state: home
|
||
- not:
|
||
- alias: Maggie is not home, such as every other Friday
|
||
condition: state
|
||
entity_id: person.maggie
|
||
state: home
|
||
- alias: Master Bedroom automations are not disabled
|
||
condition: state
|
||
entity_id: input_boolean.room_exclude_master_bedroom
|
||
state: 'off'
|
||
- not:
|
||
- condition: state
|
||
entity_id: input_select.home_mode
|
||
state: Vacation
|
||
actions:
|
||
- action: v6_quietdrift.set_switchbot_curtain_position
|
||
data:
|
||
entity_id:
|
||
- cover.master_bedroom_curtains
|
||
position: 30
|
||
speed: 2
|
||
- alias: Close curtains around sunset
|
||
id: 3ba2dda8-25b0-4ceb-96d2-c79fe7612603
|
||
triggers:
|
||
- trigger: sun
|
||
event: sunset
|
||
conditions:
|
||
- alias: Master Bedroom automations are not disabled
|
||
condition: state
|
||
entity_id: input_boolean.room_exclude_master_bedroom
|
||
state: 'off'
|
||
- not:
|
||
- condition: state
|
||
entity_id: input_select.home_mode
|
||
state: Vacation
|
||
actions:
|
||
- if:
|
||
- condition: state
|
||
entity_id: binary_sensor.master_bedroom_window_contact
|
||
state: 'off'
|
||
then:
|
||
- action: v6_quietdrift.set_switchbot_curtain_position
|
||
data:
|
||
entity_id:
|
||
- cover.master_bedroom_curtain_left
|
||
- cover.master_bedroom_curtain_right
|
||
position: 0
|
||
speed: 2
|
||
else:
|
||
- action: v6_quietdrift.set_switchbot_curtain_position
|
||
data:
|
||
entity_id:
|
||
- cover.master_bedroom_curtain_left
|
||
position: 0
|
||
speed: 2
|
||
- wait_for_trigger:
|
||
- trigger: state
|
||
entity_id:
|
||
- binary_sensor.master_bedroom_window_contact
|
||
to: 'off'
|
||
for:
|
||
seconds: 2
|
||
continue_on_timeout: false
|
||
timeout:
|
||
hours: 8
|
||
- action: v6_quietdrift.set_switchbot_curtain_position
|
||
data:
|
||
entity_id:
|
||
- cover.master_bedroom_curtain_right
|
||
position: 0
|
||
speed: 2
|
||
- alias: Sunrise Alarm
|
||
id: cc8e52c9-a310-4b0d-8ec1-69296230588c
|
||
triggers:
|
||
- trigger: time
|
||
at: input_datetime.alarm_start_time
|
||
conditions:
|
||
- alias: Room not excluded
|
||
condition: state
|
||
entity_id: input_boolean.room_exclude_guest_bedroom
|
||
state: 'off'
|
||
- condition: state
|
||
entity_id: input_select.home_mode
|
||
state: Home
|
||
- condition: state
|
||
entity_id: binary_sensor.workday_sensor
|
||
state: 'on'
|
||
- condition: state
|
||
entity_id: light.fairy_lights
|
||
state: 'off'
|
||
actions:
|
||
- action: light.turn_on
|
||
entity_id: light.fairy_lights
|
||
data_template:
|
||
brightness: '{{ ((states.input_number.alarm_max_brightness.state | int) / 100
|
||
* 255) | int }}'
|
||
transition: '{{ states.input_datetime.alarm_target_time.attributes.timestamp
|
||
- states.input_datetime.alarm_start_time.attributes.timestamp }}'
|
||
- delay:
|
||
hours: 2
|
||
- action: light.turn_off
|
||
entity_id: light.fairy_lights
|
||
data:
|
||
transition: 20
|
||
- alias: Bed Lights - Auto-Off
|
||
id: a873b354-e261-4790-b2b8-2b1ca8b7b558
|
||
triggers:
|
||
- trigger: state
|
||
entity_id: light.bed_lighting_rgb_light
|
||
to: 'on'
|
||
for:
|
||
hours: 5
|
||
minutes: 0
|
||
seconds: 0
|
||
actions:
|
||
- action: light.turn_off
|
||
entity_id: light.bed_lighting_rgb_light
|
||
data:
|
||
transition: 5
|
||
- alias: Turn on under-bed lights at bedtime
|
||
id: 26a2133f-97ce-463e-bc39-f23c54f57f47
|
||
triggers:
|
||
- trigger: time
|
||
at: '22:45'
|
||
conditions:
|
||
- alias: Room not excluded
|
||
condition: state
|
||
entity_id: input_boolean.room_exclude_master_bedroom
|
||
state: 'off'
|
||
- condition: state
|
||
entity_id: light.bed_lighting_rgb_light
|
||
state: 'off'
|
||
- condition: state
|
||
entity_id: input_select.home_mode
|
||
state: Home
|
||
- condition: state
|
||
entity_id: person.corban
|
||
state: home
|
||
actions:
|
||
- action: light.turn_on
|
||
entity_id: light.bed_lighting_rgb_light
|
||
data:
|
||
transition: 5
|
||
brightness_pct: 75
|
||
rgb_color:
|
||
- 255
|
||
- 78
|
||
- 30
|
||
- alias: Bedside Button 1 - Toggle Bedroom Light
|
||
id: 725241e1-3311-4dbd-a9a7-2d7693bff407
|
||
triggers:
|
||
- trigger: device
|
||
device_id: 902fe0fc069711eb8fc8e19795714a1d
|
||
discovery_id: 0x680ae2fffebeb7ca action_toggle
|
||
domain: mqtt
|
||
type: action
|
||
subtype: toggle
|
||
actions:
|
||
- if:
|
||
- alias: Light On
|
||
condition: state
|
||
entity_id: light.master_bedroom_ceiling_fan_light
|
||
state: 'on'
|
||
then:
|
||
- alias: Turn off
|
||
action: light.turn_off
|
||
target:
|
||
entity_id: light.master_bedroom_ceiling_fan_light
|
||
else:
|
||
- if:
|
||
- alias: Nighttime
|
||
condition: time
|
||
after: '21:00:00'
|
||
before: 06:00:00
|
||
then:
|
||
- alias: Turn on at 50%
|
||
action: light.turn_on
|
||
target:
|
||
entity_id: light.master_bedroom_ceiling_fan_light
|
||
data_template:
|
||
brightness: 127
|
||
else:
|
||
- alias: Turn on at 100%
|
||
action: light.turn_on
|
||
target:
|
||
entity_id: light.master_bedroom_ceiling_fan_light
|
||
data_template:
|
||
brightness: 255
|
||
- alias: Bedside Button 1 - Brightness Up
|
||
id: ab376db0-75fe-4dfd-80ed-e79aa7fbe7b5
|
||
triggers:
|
||
- trigger: device
|
||
device_id: 902fe0fc069711eb8fc8e19795714a1d
|
||
discovery_id: 0x680ae2fffebeb7ca action_brightness_up_click
|
||
domain: mqtt
|
||
type: action
|
||
subtype: brightness_up_click
|
||
actions:
|
||
- action: light.turn_on
|
||
entity_id: light.master_bedroom_ceiling_fan_light
|
||
data_template:
|
||
brightness: "{%- set target = (is_state('light.master_bedroom_ceiling_fan_light',\
|
||
\ \"on\") and state_attr('light.master_bedroom_ceiling_fan_light', 'brightness'))\
|
||
\ | int + 40 -%} {%- if target > 255 -%}\n 255\n{%- else -%}\n {{ target}}\n\
|
||
{%- endif -%}\n"
|
||
- alias: Bedside Button 1 - Brightness Down
|
||
id: 40de4391-a6b7-4ed4-a679-7257f6353a82
|
||
triggers:
|
||
- trigger: device
|
||
device_id: 902fe0fc069711eb8fc8e19795714a1d
|
||
discovery_id: 0x680ae2fffebeb7ca action_brightness_down_click
|
||
domain: mqtt
|
||
type: action
|
||
subtype: brightness_down_click
|
||
conditions:
|
||
- condition: state
|
||
entity_id: light.master_bedroom_ceiling_fan_light
|
||
state: 'on'
|
||
actions:
|
||
- action: light.turn_on
|
||
entity_id: light.master_bedroom_ceiling_fan_light
|
||
data_template:
|
||
brightness: "{%- set target = state_attr('light.master_bedroom_ceiling_fan_light',\
|
||
\ 'brightness') | int - 40 -%} {%- if target < 10 -%}\n 10\n{%- else -%}\n\
|
||
\ {{ target}}\n{%- endif -%}\n"
|
||
- alias: Bedside Button 1 - Brightness Up Hold
|
||
id: 6eb4c698-0b5a-43cb-a878-7d9d0b718d3b
|
||
triggers:
|
||
- trigger: device
|
||
device_id: 902fe0fc069711eb8fc8e19795714a1d
|
||
discovery_id: 0x680ae2fffebeb7ca action_brightness_up_hold
|
||
domain: mqtt
|
||
type: action
|
||
subtype: brightness_up_hold
|
||
actions:
|
||
- action: light.turn_on
|
||
entity_id: light.master_bedroom_ceiling_fan_light
|
||
data:
|
||
brightness: 255
|
||
- alias: Bedside Button 1 - Brightness Down Hold
|
||
id: 20ce4286-315e-495b-b4ed-d88a4862a1f6
|
||
triggers:
|
||
- trigger: device
|
||
device_id: 902fe0fc069711eb8fc8e19795714a1d
|
||
discovery_id: 0x680ae2fffebeb7ca action_brightness_down_hold
|
||
domain: mqtt
|
||
type: action
|
||
subtype: brightness_down_hold
|
||
actions:
|
||
- action: light.turn_on
|
||
entity_id: light.master_bedroom_ceiling_fan_light
|
||
data:
|
||
brightness: 10
|
||
- alias: Bedside Button 1 - Right Button Click - Headboard Lighting
|
||
id: 486310de-869d-4c86-88c5-d06a28f7fd2b
|
||
triggers:
|
||
- trigger: device
|
||
device_id: 902fe0fc069711eb8fc8e19795714a1d
|
||
discovery_id: 0x680ae2fffebeb7ca action_arrow_right_click
|
||
domain: mqtt
|
||
type: action
|
||
subtype: arrow_right_click
|
||
actions:
|
||
- action: light.turn_on
|
||
entity_id: light.master_bedroom_headboard
|
||
data_template:
|
||
brightness: "{%- set percent = 100 -%} {%- if states(\"light.master_bedroom_headboard\"\
|
||
) == \"off\" -%}\n {%- set percent = 100 -%}\n{%- elif state_attr(\"light.master_bedroom_headboard\"\
|
||
, \"brightness\") == 255 -%}\n {%- set percent = 50 -%}\n{%- else -%}\n \
|
||
\ {%- set percent = 0 -%}\n{%- endif -%} {{ (percent / 100 * 255) | int}}\n"
|
||
- alias: Bedside Button 1 - Left Button Click - Fan
|
||
id: 1d146753-e4ca-4514-883d-7bb0efd99554
|
||
triggers:
|
||
- trigger: device
|
||
device_id: 902fe0fc069711eb8fc8e19795714a1d
|
||
discovery_id: 0x680ae2fffebeb7ca action_arrow_left_click
|
||
domain: mqtt
|
||
type: action
|
||
subtype: arrow_left_click
|
||
actions:
|
||
- action: homeassistant.toggle
|
||
entity_id: fan.master_bedroom_ceiling_fan
|
||
- alias: Bedside Button 2 - Click - Bed Lighting Toggle
|
||
id: df5766b0-ce91-4e2e-bb13-2f0a95969653
|
||
triggers:
|
||
- trigger: device
|
||
domain: mqtt
|
||
device_id: ac01e2cb060249f980958e940eb74383
|
||
discovery_id: 0x00158d0001e8842e action_single
|
||
type: action
|
||
subtype: single
|
||
actions:
|
||
- action: light.turn_on
|
||
entity_id: light.master_bedroom_headboard
|
||
data_template:
|
||
brightness: "{%- set percent = 100 -%} {%- if states(\"light.master_bedroom_headboard\"\
|
||
) == \"off\" -%}\n {%- set percent = 100 -%}\n{%- elif state_attr(\"light.master_bedroom_headboard\"\
|
||
, \"brightness\") == 255 -%}\n {%- set percent = 50 -%}\n{%- else -%}\n \
|
||
\ {%- set percent = 0 -%}\n{%- endif -%} {{ (percent / 100 * 255) | int}}\n"
|
||
- alias: Bedside Button 2 - Double Click - Fan
|
||
id: 4d6d4222-b744-4ca3-ad30-4aba59d88353
|
||
triggers:
|
||
- trigger: device
|
||
domain: mqtt
|
||
device_id: ac01e2cb060249f980958e940eb74383
|
||
discovery_id: 0x00158d0001e8842e action_double
|
||
type: action
|
||
subtype: double
|
||
actions:
|
||
- action: homeassistant.toggle
|
||
entity_id: fan.master_bedroom_ceiling_fan
|
||
- alias: Bedside Button 2 - Hold - Sleep Mode and Everything Off
|
||
id: 10bcb4b9-5b6f-4063-8c0c-10938cc9bcd3
|
||
triggers:
|
||
- trigger: device
|
||
domain: mqtt
|
||
device_id: ac01e2cb060249f980958e940eb74383
|
||
discovery_id: 0x00158d0001e8842e action_hold
|
||
type: action
|
||
subtype: hold
|
||
actions:
|
||
- alias: If sleep mode is on, force everything off.
|
||
choose:
|
||
- conditions:
|
||
- condition: state
|
||
entity_id: input_select.home_mode
|
||
state: Sleep
|
||
sequence:
|
||
- alias: Turn truly everything off
|
||
action: script.everything_off
|
||
data:
|
||
ignore_room_exclusions: true
|
||
include_fans: true
|
||
default:
|
||
- action: input_select.select_option
|
||
data:
|
||
entity_id: input_select.home_mode
|
||
option: Sleep
|
||
- alias: Bedtime Checkup - Notification Action
|
||
id: 3335ad34-ca40-424a-ae4e-b7d4f73ed851
|
||
triggers:
|
||
- trigger: event
|
||
event_type: mobile_app_notification_action
|
||
event_data:
|
||
action: BEDTIME_CHECKUP_TRIGGER
|
||
actions:
|
||
- alias: Run bedtime check up
|
||
action: script.bedtime_checkup
|
||
- alias: Show Cat Claw Clipping Card - Calendar Automation
|
||
id: 07d5496d-3810-43a3-b371-59d65c7bc10f
|
||
mode: queued
|
||
triggers:
|
||
- trigger: calendar
|
||
event: start
|
||
entity_id: calendar.chores
|
||
conditions:
|
||
- condition: template
|
||
value_template: '{{ ''Cat Claw Clipping'' in trigger.calendar_event.summary }}'
|
||
actions:
|
||
- action: input_boolean.turn_on
|
||
entity_id: input_boolean.cat_claw_clip_needed
|
||
- alias: Show Cat Fountain Reminder - Calendar Automation
|
||
id: 2b837114-1867-4836-9a66-91dfe7c7a25f
|
||
mode: queued
|
||
triggers:
|
||
- trigger: calendar
|
||
event: start
|
||
entity_id: calendar.chores
|
||
conditions:
|
||
- condition: template
|
||
value_template: '{{ ''Cat Fountain Cleaning'' in trigger.calendar_event.summary
|
||
}}'
|
||
actions:
|
||
- action: input_boolean.turn_on
|
||
entity_id: input_boolean.cat_fountain_clean_needed
|
||
- alias: Christmas lights on when getting home or waking up
|
||
id: 515b458d-c596-434e-a356-c824bf229171
|
||
triggers:
|
||
- trigger: state
|
||
entity_id: input_select.home_mode
|
||
to: Home
|
||
actions:
|
||
- action: light.turn_on
|
||
data:
|
||
entity_id: light.christmas_tree_lights
|
||
- id: 0c6fbbda-5e27-4659-9e73-556a4c18d805
|
||
alias: Notify on Doorbell Person Detection
|
||
triggers:
|
||
- trigger: state
|
||
entity_id: binary_sensor.main_doorbell_person
|
||
from: 'off'
|
||
to: 'on'
|
||
conditions:
|
||
- condition: state
|
||
entity_id: timer.doorbell_person_mute_time
|
||
state: idle
|
||
- alias: Privacy Mode disabled
|
||
condition: state
|
||
entity_id: input_boolean.exterior_privacy_mode
|
||
state: 'off'
|
||
actions:
|
||
- action: script.doorbell_snapshot_and_notify
|
||
- id: cb72d982-0be9-485c-a170-2f143227268c
|
||
alias: Doorbell - Notification Action - Refresh Image
|
||
triggers:
|
||
- trigger: event
|
||
event_type: mobile_app_notification_action
|
||
event_data:
|
||
action: DOORBELL_UPDATE_SNAPSHOT
|
||
actions:
|
||
- action: script.doorbell_snapshot_and_notify
|
||
- id: 4f90db44-8017-48b9-a950-f304d34b9702
|
||
alias: Doorbell - Notification Action - Mute for 4 hours
|
||
triggers:
|
||
- trigger: event
|
||
event_type: mobile_app_notification_action
|
||
event_data:
|
||
action: DOORBELL_PERSON_SILENCE_ONE_HOUR
|
||
actions:
|
||
- action: timer.start
|
||
entity_id: timer.doorbell_person_mute_time
|
||
data:
|
||
duration: 04:00:00
|
||
- id: 7bb9e3c3-514c-4a64-9556-40dde9551500
|
||
alias: Exterior Lighting - Lights On Before Sunset
|
||
triggers:
|
||
- trigger: sun
|
||
event: sunset
|
||
offset: -00:45:00
|
||
actions:
|
||
- alias: Lights On
|
||
action: homeassistant.turn_on
|
||
target:
|
||
entity_id: light.exterior_lights
|
||
- id: 4bb29781-aeaf-426e-88fa-0b4fa5d768cd
|
||
alias: Exterior Lighting - Lights Off At Night
|
||
triggers:
|
||
- trigger: time
|
||
at: '23:00:00'
|
||
actions:
|
||
- alias: Lights Off
|
||
action: homeassistant.turn_off
|
||
target:
|
||
entity_id: light.exterior_lights
|
||
- id: ed3ca607-bc60-4952-ba47-395cd6d1b8f1
|
||
alias: Exterior Lighting - Lights On in the Morning
|
||
triggers:
|
||
- trigger: time
|
||
at: 06:00:00
|
||
conditions:
|
||
- alias: Sunrise hasn't happened yet
|
||
condition: state
|
||
entity_id: sun.sun
|
||
state: below_horizon
|
||
actions:
|
||
- alias: Lights On
|
||
action: homeassistant.turn_on
|
||
target:
|
||
entity_id: light.exterior_lights
|
||
- id: 0222a662-5ec3-4d21-92b4-d208c1d4fee9
|
||
alias: Exterior Lighting - Lights Off After Sunrise
|
||
triggers:
|
||
- trigger: sun
|
||
event: sunrise
|
||
offset: 00:00:00
|
||
actions:
|
||
- alias: Lights Off
|
||
action: homeassistant.turn_off
|
||
target:
|
||
entity_id: light.exterior_lights
|
||
- alias: Wait 5 minutes and try again (race condition fix)
|
||
delay:
|
||
minutes: 5
|
||
- action: homeassistant.turn_off
|
||
target:
|
||
entity_id: light.exterior_lights
|
||
- id: b5a21457-b97b-437b-ab19-bb7d3ac2935b
|
||
alias: Exterior Privacy Mode
|
||
triggers:
|
||
- trigger: state
|
||
entity_id: input_boolean.exterior_privacy_mode
|
||
from: 'off'
|
||
to: 'on'
|
||
id: 'on'
|
||
- trigger: state
|
||
entity_id: input_boolean.exterior_privacy_mode
|
||
from: 'on'
|
||
to: 'off'
|
||
id: 'off'
|
||
actions:
|
||
- alias: On or Off?
|
||
choose:
|
||
- conditions: '{{ trigger.to_state.state == ''on'' }}'
|
||
sequence:
|
||
- alias: Exterior lights off
|
||
action: light.turn_off
|
||
target:
|
||
entity_id: light.exterior_lights
|
||
- alias: Garage lights off
|
||
action: light.turn_off
|
||
target:
|
||
entity_id: light.garage_lights
|
||
- alias: Disable recording
|
||
action: switch.turn_off
|
||
target:
|
||
entity_id:
|
||
- switch.main_doorbell_record
|
||
- switch.driveway_privacy_mode
|
||
- alias: Disable garage lighting automations
|
||
action: input_boolean.turn_on
|
||
target:
|
||
entity_id: input_boolean.room_exclude_garage
|
||
- conditions: '{{ trigger.to_state.state == ''off'' }}'
|
||
sequence:
|
||
- alias: Re-enable recording
|
||
action: switch.turn_on
|
||
target:
|
||
entity_id:
|
||
- switch.main_doorbell_record
|
||
- switch.driveway_privacy_mode
|
||
- alias: Re-enable garage lighting automations
|
||
action: input_boolean.turn_off
|
||
target:
|
||
entity_id: input_boolean.room_exclude_garage
|
||
- id: 59bfa9b6-a76e-4acd-bf9e-1050328c1981
|
||
alias: Exterior Privacy Mode - Notify if left on in the morning
|
||
triggers:
|
||
- trigger: state
|
||
entity_id: input_select.home_mode
|
||
to: Home
|
||
conditions:
|
||
- alias: Exterior Privacy Mode enabled
|
||
condition: state
|
||
entity_id: input_boolean.exterior_privacy_mode
|
||
state: 'on'
|
||
actions:
|
||
- alias: Notify Corban
|
||
action: notify.corban
|
||
data:
|
||
title: Exterior Privacy Mode Enabled
|
||
message: Privacy mode is still enabled.
|
||
data:
|
||
tag: privacy_mode
|
||
actions:
|
||
- action: PRIVACY_MODE_OFF
|
||
title: Turn Off Privacy Mode
|
||
activationMode: background
|
||
authenticationRequired: false
|
||
- alias: Exterior Privacy Mode - Notification Action - Disable
|
||
id: 720b4f63-4fb6-46a2-9ce3-d519e13fb73b
|
||
triggers:
|
||
- trigger: event
|
||
event_type: mobile_app_notification_action
|
||
event_data:
|
||
action: PRIVACY_MODE_OFF
|
||
actions:
|
||
- alias: Turn off Privacy Mode
|
||
action: input_boolean.turn_off
|
||
target:
|
||
entity_id: input_boolean.exterior_privacy_mode
|
||
- id: 01c0a256-d577-4934-b97f-208357c58cb8
|
||
alias: Garage - All Lights Follow Switched Lights
|
||
triggers:
|
||
- trigger: state
|
||
entity_id: light.garage_main_lights
|
||
not_from:
|
||
- unknown
|
||
- unavailable
|
||
actions:
|
||
- alias: On or Off?
|
||
choose:
|
||
- conditions: '{{ trigger.to_state.state == "on" }}'
|
||
sequence:
|
||
- alias: Turn on lights
|
||
action: light.turn_on
|
||
target:
|
||
entity_id: light.garage_lights
|
||
data:
|
||
color_temp_kelvin: 5000
|
||
brightness_pct: 100
|
||
transition: 0
|
||
- conditions: '{{ trigger.to_state.state == "off" }}'
|
||
sequence:
|
||
- alias: Turn off lights
|
||
action: light.turn_off
|
||
target:
|
||
entity_id: light.garage_lights
|
||
- id: 6bfc0d18-4b00-4728-ba56-5c6eccb3bee2
|
||
alias: Garage - New Motion Lights
|
||
mode: restart
|
||
max_exceeded: silent
|
||
triggers:
|
||
- trigger: state
|
||
entity_id: binary_sensor.garage_assumed_motion
|
||
from: 'off'
|
||
to: 'on'
|
||
conditions:
|
||
- alias: Garage automations are not disabled
|
||
condition: state
|
||
entity_id: input_boolean.room_exclude_garage
|
||
state: 'off'
|
||
actions:
|
||
- action: light.turn_on
|
||
target:
|
||
entity_id: light.garage_main_lights
|
||
data:
|
||
color_temp_kelvin: 5000
|
||
brightness_pct: 100
|
||
transition: 0
|
||
- wait_for_trigger:
|
||
trigger: state
|
||
entity_id: binary_sensor.garage_assumed_motion
|
||
from: 'on'
|
||
to: 'off'
|
||
- delay:
|
||
minutes: "{% if states(\"device_tracker.bens_iphone_se_unifi\") == \"home\"\
|
||
\ %}\n 60\n{% else %}\n 10\n{% endif %}"
|
||
- action: light.turn_off
|
||
target:
|
||
entity_id: light.garage_main_lights
|
||
data:
|
||
transition: 0
|
||
- id: 6f80226a-15d7-4285-83c5-e643c16f1b7f
|
||
alias: Garage - Motion Lights
|
||
mode: restart
|
||
triggers:
|
||
- trigger: state
|
||
entity_id: binary_sensor.garage_assumed_motion
|
||
from: 'off'
|
||
to: 'on'
|
||
id: 'on'
|
||
- trigger: state
|
||
entity_id: binary_sensor.garage_assumed_motion
|
||
to: 'off'
|
||
for:
|
||
minutes: 10
|
||
id: 'off'
|
||
conditions:
|
||
- alias: Garage automations are not disabled
|
||
condition: state
|
||
entity_id: input_boolean.room_exclude_garage
|
||
state: 'off'
|
||
actions:
|
||
- alias: On or Off?
|
||
choose:
|
||
- conditions: '{{ trigger.id == "on" }}'
|
||
sequence:
|
||
- alias: Turn on lights
|
||
action: light.turn_on
|
||
target:
|
||
entity_id: light.garage_main_lights
|
||
data:
|
||
color_temp_kelvin: 5000
|
||
- conditions: '{{ trigger.id == "off" }}'
|
||
sequence:
|
||
- alias: Turn off lights
|
||
action: light.turn_off
|
||
target:
|
||
entity_id: light.garage_main_lights
|
||
- id: 170ab84a-5bab-4192-ba0e-21e72c395bb4
|
||
alias: Garage - Keep the garage door opener lights on when the main lights are on
|
||
triggers:
|
||
- trigger: state
|
||
entity_id:
|
||
- light.ratgdo_left_garage_door_light
|
||
- light.ratgdo_right_garage_door_light
|
||
from: 'on'
|
||
to: 'off'
|
||
conditions:
|
||
- alias: Main lights on
|
||
condition: state
|
||
entity_id: light.garage_main_lights
|
||
state: 'on'
|
||
actions:
|
||
- alias: Turn the lights back on
|
||
action: light.turn_on
|
||
target:
|
||
entity_id: light.garage_lights
|
||
data:
|
||
color_temp_kelvin: 5000
|
||
brightness_pct: 100
|
||
transition: 0
|
||
- alias: Guest Mode - Enable and Disable Guest WiFi
|
||
id: f8188dc5-e5f0-4821-ae9b-88bf14229932
|
||
triggers:
|
||
- trigger: state
|
||
entity_id: input_boolean.guest_mode
|
||
actions:
|
||
- choose:
|
||
- conditions: '{{ trigger.to_state.state == ''on'' }}'
|
||
sequence:
|
||
- action: switch.turn_on
|
||
target:
|
||
entity_id: switch.whatfi_guest
|
||
- conditions: '{{ trigger.to_state.state == ''off'' }}'
|
||
sequence:
|
||
- action: switch.turn_off
|
||
target:
|
||
entity_id: switch.whatfi_guest
|
||
- alias: Guest Mode - Add Guest Room Exclusion When Enabling
|
||
id: 846ee07b-3953-48f7-9255-31b4a5d0cde7
|
||
triggers:
|
||
- trigger: state
|
||
entity_id: input_boolean.guest_mode
|
||
from: 'off'
|
||
to: 'on'
|
||
actions:
|
||
- alias: Set guest room exclusions
|
||
action: input_boolean.turn_on
|
||
target:
|
||
entity_id: input_boolean.room_exclude_guest_bedroom
|
||
- alias: Guest Mode - Disable Room Exclusions when Unset
|
||
id: 1567def0-c8f1-4297-a2bd-628fb03db93e
|
||
triggers:
|
||
- trigger: state
|
||
entity_id: input_boolean.guest_mode
|
||
from: 'on'
|
||
to: 'off'
|
||
actions:
|
||
- alias: Reset room exclusions
|
||
action: script.reset_room_exclusions
|
||
- alias: Fairy Lights - Auto-Off
|
||
id: 4c3b7cbe-c585-4f4f-987c-db16fd814cdd
|
||
triggers:
|
||
- trigger: state
|
||
entity_id: light.fairy_lights
|
||
to: 'on'
|
||
for:
|
||
hours: 5
|
||
minutes: 0
|
||
seconds: 0
|
||
actions:
|
||
- action: light.turn_off
|
||
entity_id: light.fairy_lights
|
||
data:
|
||
transition: 5
|
||
- alias: Sleep Mode - Enabled - Turn Everything Off
|
||
id: a0fb5a75-9d4f-4bf4-a6fb-81b6bf3f8682
|
||
triggers:
|
||
- trigger: state
|
||
entity_id: input_select.home_mode
|
||
to: Sleep
|
||
actions:
|
||
- alias: Run bedtime check up
|
||
action: script.bedtime_checkup
|
||
- alias: Sleep Mode - Disable in Morning
|
||
id: 60dc7343-2499-4137-bfc9-7fa7bbc50540
|
||
triggers:
|
||
- trigger: time
|
||
at: 06:00:00
|
||
conditions:
|
||
- condition: state
|
||
entity_id: input_select.home_mode
|
||
state: Sleep
|
||
actions:
|
||
- action: input_select.select_option
|
||
data:
|
||
entity_id: input_select.home_mode
|
||
option: Home
|
||
- alias: Mark home occupied when the door opens
|
||
id: 9abcaf04-6f2a-41dc-b392-9c29d4d2b2e8
|
||
triggers:
|
||
- trigger: state
|
||
entity_id: binary_sensor.front_door
|
||
to: 'on'
|
||
conditions:
|
||
- condition: state
|
||
entity_id: input_select.home_mode
|
||
state: Away
|
||
for:
|
||
minutes: 1
|
||
actions:
|
||
- action: input_select.select_option
|
||
data:
|
||
entity_id: input_select.home_mode
|
||
option: Home
|
||
- alias: Mark home occupied when someone is home for a few minutes
|
||
id: fb337c2f-3474-43db-9269-21c4658c8d27
|
||
triggers:
|
||
- trigger: state
|
||
entity_id: group.adults
|
||
to: home
|
||
for:
|
||
minutes: 1
|
||
conditions:
|
||
- condition: state
|
||
entity_id: input_select.home_mode
|
||
state: Away
|
||
actions:
|
||
- action: input_select.select_option
|
||
data:
|
||
entity_id: input_select.home_mode
|
||
option: Home
|
||
- alias: Automatically mark the home as unoccupied if no one is home
|
||
id: f024de99-f4dd-4d30-9aeb-cb3f0252a676
|
||
triggers:
|
||
- trigger: state
|
||
entity_id: group.adults
|
||
to: not_home
|
||
for:
|
||
minutes: 3
|
||
conditions:
|
||
- condition: state
|
||
entity_id: input_select.home_mode
|
||
state: Home
|
||
actions:
|
||
- if:
|
||
- condition: or
|
||
conditions:
|
||
- alias: If guest mode is active
|
||
condition: state
|
||
entity_id: input_boolean.guest_mode
|
||
state: 'on'
|
||
- condition: state
|
||
entity_id: binary_sensor.corban_on_a_call
|
||
state: 'on'
|
||
then:
|
||
- alias: Notify Corban to manually set away mode
|
||
action: notify.corban
|
||
data:
|
||
title: Did everyone leave?
|
||
message: Tracked people left, but guest mode is on. There are {{ states("sensor.whatfi_guest")
|
||
}} guest device(s) connected.
|
||
data:
|
||
tag: guest_mode_away_reminder
|
||
actions:
|
||
- action: MARK_HOME_AWAY
|
||
title: Set Away Mode
|
||
activationMode: background
|
||
authenticationRequired: false
|
||
destructive: false
|
||
behavior: default
|
||
- action: DISABLE_GUEST_AND_MARK_HOME_AWAY
|
||
title: Disable Guest Mode (and set away)
|
||
activationMode: background
|
||
authenticationRequired: false
|
||
destructive: false
|
||
behavior: default
|
||
else:
|
||
- alias: Mark home as away
|
||
action: input_select.select_option
|
||
data:
|
||
entity_id: input_select.home_mode
|
||
option: Away
|
||
- alias: Guest Mode Away Reminder - Notification Action
|
||
id: f8d01735-cf06-4e03-b5cd-0cf6a00cd121
|
||
triggers:
|
||
- trigger: event
|
||
event_type: mobile_app_notification_action
|
||
event_data:
|
||
action: MARK_HOME_AWAY
|
||
- trigger: event
|
||
event_type: mobile_app_notification_action
|
||
event_data:
|
||
action: DISABLE_GUEST_AND_MARK_HOME_AWAY
|
||
id: disable_guest
|
||
actions:
|
||
- if:
|
||
- condition: trigger
|
||
id: disable_guest
|
||
then:
|
||
- alias: Disable guest mode
|
||
action: input_boolean.turn_off
|
||
target:
|
||
entity_id: input_boolean.guest_mode
|
||
- alias: Mark home as away
|
||
action: input_select.select_option
|
||
data:
|
||
entity_id: input_select.home_mode
|
||
option: Away
|
||
- alias: Home Occupied - Wall Display on
|
||
id: e2855b3b-04a7-4e28-b4d9-97091b1975fd
|
||
triggers:
|
||
- trigger: state
|
||
entity_id: input_select.home_mode
|
||
to: Home
|
||
actions:
|
||
- action: light.turn_on
|
||
data:
|
||
entity_id: light.tablet_wall_display_screen
|
||
- alias: Home Occupied from Away - Kitchen Light On
|
||
id: f88f1445-2171-493a-be4c-d0b32e855871
|
||
triggers:
|
||
- trigger: state
|
||
entity_id: input_select.home_mode
|
||
to: Home
|
||
from:
|
||
- Away
|
||
- Vacation
|
||
conditions:
|
||
- alias: Kitchen automations are not disabled
|
||
condition: state
|
||
entity_id: input_boolean.room_exclude_kitchen
|
||
state: 'off'
|
||
- alias: Sun below horizon
|
||
condition: state
|
||
entity_id: sun.sun
|
||
state: below_horizon
|
||
actions:
|
||
- action: light.turn_on
|
||
data:
|
||
entity_id: light.kitchen_main_lights
|
||
- alias: Home Unoccupied - Turn everything off
|
||
id: 230957ce-f646-4c5d-8819-9b6b069d3628
|
||
triggers:
|
||
- trigger: state
|
||
entity_id: input_select.home_mode
|
||
to:
|
||
- Away
|
||
- Vacation
|
||
actions:
|
||
- alias: Turn truly everything off
|
||
action: script.everything_off
|
||
data:
|
||
ignore_room_exclusions: true
|
||
include_fans: true
|
||
- alias: Lock side door
|
||
action: lock.lock
|
||
target:
|
||
entity_id: lock.side_door
|
||
- alias: Turn and keep a light on for the cats when leaving after sunset
|
||
id: 2d03492c-8f7c-40da-8b54-0d6fa94d3093
|
||
triggers:
|
||
- trigger: state
|
||
entity_id: input_select.home_mode
|
||
to: Away
|
||
- trigger: sun
|
||
event: sunset
|
||
conditions:
|
||
- alias: Living room automations are not disabled
|
||
condition: state
|
||
entity_id: input_boolean.room_exclude_livingroom
|
||
state: 'off'
|
||
- alias: Away mode
|
||
condition: state
|
||
entity_id: input_select.home_mode
|
||
state: Away
|
||
- alias: Sun below horizon
|
||
condition: state
|
||
entity_id: sun.sun
|
||
state: below_horizon
|
||
- alias: Cats are home
|
||
condition: state
|
||
entity_id: input_boolean.cats_are_home
|
||
state: 'on'
|
||
actions:
|
||
- alias: Delay to allow leaving automation to run
|
||
delay:
|
||
seconds: 15
|
||
- alias: Turn on a light
|
||
action: light.turn_on
|
||
target:
|
||
entity_id: light.christmas_tree_lights
|
||
- alias: HVAC - Notify if the internal temperature drops below 55
|
||
id: f36d39b0-74ac-46a1-b2a0-e9b54ab17ecc
|
||
triggers:
|
||
- trigger: template
|
||
value_template: "{{\n [\n states(\"sensor.bedroom_temperature\") | int(100),\n\
|
||
\ states(\"sensor.living_room_temperature\") | int(100),\n states(\"sensor.office_temperature\"\
|
||
) | int(100),\n ] | min < 55\n}}"
|
||
actions:
|
||
- alias: Notify
|
||
action: notify.adult_phones
|
||
data:
|
||
title: House is Too Cold
|
||
message: The internal temperature at home has dropped below 55°. Is the heat
|
||
working?
|
||
- alias: HVAC - Notify when the heat strips activate
|
||
id: 42810f98-39f3-4f23-b3f5-c00810e9430f
|
||
triggers:
|
||
- trigger: numeric_state
|
||
entity_id:
|
||
- sensor.home_energy_monitor_power_fl1_heat_strips
|
||
- sensor.home_energy_monitor_power_fl2_heat_strips
|
||
above: 10
|
||
for:
|
||
minutes: 1
|
||
actions:
|
||
- alias: Notify
|
||
action: notify.corban
|
||
data:
|
||
title: Heat Strips Active
|
||
message: One or more of the heat strips are active.
|
||
- id: 3d45c62b-c99a-43cb-a1b7-7e5ab2974a1b
|
||
alias: Dryer Reminder - Notify when dryer finishes
|
||
triggers:
|
||
- trigger: state
|
||
entity_id: binary_sensor.dryer_running
|
||
from: 'on'
|
||
to: 'off'
|
||
actions:
|
||
- alias: Turn on notify switch
|
||
action: input_boolean.turn_on
|
||
target:
|
||
entity_id: input_boolean.dryer_reminder_notifying
|
||
- id: b7826c90-2dc8-40fb-9abb-a21e5678a23d
|
||
alias: Dryer Reminder - Send notifications based on boolean
|
||
triggers:
|
||
- trigger: state
|
||
entity_id: input_boolean.dryer_reminder_notifying
|
||
from: 'off'
|
||
to: 'on'
|
||
actions:
|
||
- if:
|
||
- alias: Is Corban home?
|
||
condition: state
|
||
entity_id: person.corban
|
||
state: home
|
||
then:
|
||
- alias: Notify Corban
|
||
action: script.dryer_reminder_send_notification_to_variable
|
||
data:
|
||
notify_device: corban
|
||
dismiss_notification: false
|
||
- if:
|
||
- alias: Is Maggie home?
|
||
condition: state
|
||
entity_id: person.maggie
|
||
state: home
|
||
then:
|
||
- alias: Notify Maggie
|
||
action: script.dryer_reminder_send_notification_to_variable
|
||
data:
|
||
notify_device: maggie
|
||
dismiss_notification: false
|
||
- id: 081bf63f-8413-4dea-be82-d537dd2e1a20
|
||
alias: Dryer Reminder - Dismiss notifications based on boolean
|
||
triggers:
|
||
- trigger: state
|
||
entity_id: input_boolean.dryer_reminder_notifying
|
||
from: 'on'
|
||
to: 'off'
|
||
actions:
|
||
- alias: Clear notifications
|
||
action: script.dryer_reminder_send_notification_to_variable
|
||
data:
|
||
notify_device: adult_phones
|
||
dismiss_notification: true
|
||
- id: 3b991b80-fc3f-4d67-9900-5cf5f6510c96
|
||
alias: Dryer Reminder - Acknowledge alert when motion is detected in the basement
|
||
triggers:
|
||
- trigger: state
|
||
entity_id: binary_sensor.laundry_motion_sensor_occupancy
|
||
from: 'off'
|
||
to: 'on'
|
||
conditions:
|
||
- alias: Notification active
|
||
condition: state
|
||
entity_id: input_boolean.dryer_reminder_notifying
|
||
state: 'on'
|
||
actions:
|
||
- alias: Turn off boolean
|
||
action: input_boolean.turn_off
|
||
target:
|
||
entity_id: input_boolean.dryer_reminder_notifying
|
||
- id: 551dc831-c06e-4af2-843f-6654fb049661
|
||
alias: Dryer Reminder - Acknowledge alert from notification
|
||
triggers:
|
||
- trigger: event
|
||
event_type: mobile_app_notification_action
|
||
event_data:
|
||
action: DRYER_REMINDER_ACK
|
||
conditions:
|
||
- alias: Notification active
|
||
condition: state
|
||
entity_id: input_boolean.dryer_reminder_notifying
|
||
state: 'on'
|
||
actions:
|
||
- alias: Turn off boolean
|
||
action: input_boolean.turn_off
|
||
target:
|
||
entity_id: input_boolean.dryer_reminder_notifying
|
||
- id: b8d28099-0cb5-4290-82ef-90dbeb9717a9
|
||
alias: Dryer Reminder - Send delayed notification if someone gets home
|
||
mode: parallel
|
||
triggers:
|
||
- trigger: state
|
||
entity_id: person.corban
|
||
to: home
|
||
id: corban
|
||
- trigger: state
|
||
entity_id: person.maggie
|
||
to: home
|
||
id: maggie
|
||
conditions:
|
||
- alias: Notification active
|
||
condition: state
|
||
entity_id: input_boolean.dryer_reminder_notifying
|
||
state: 'on'
|
||
actions:
|
||
- alias: Notify the right person
|
||
action: script.dryer_reminder_send_notification_to_variable
|
||
data:
|
||
notify_device: '{{ trigger.id }}'
|
||
dismiss_notification: false
|
||
- id: 3f6458fd-c731-47ff-a825-fec4f7591fd1
|
||
alias: Dryer Reminder - Dismiss notification if someone leaves home
|
||
mode: parallel
|
||
triggers:
|
||
- trigger: state
|
||
entity_id: person.corban
|
||
from: home
|
||
id: corban
|
||
- trigger: state
|
||
entity_id: person.maggie
|
||
from: home
|
||
id: maggie
|
||
conditions:
|
||
- alias: Notification active
|
||
condition: state
|
||
entity_id: input_boolean.dryer_reminder_notifying
|
||
state: 'on'
|
||
actions:
|
||
- alias: Notify the right person
|
||
action: script.dryer_reminder_send_notification_to_variable
|
||
data:
|
||
notify_device: '{{ trigger.id }}'
|
||
dismiss_notification: true
|
||
- id: e3edfa1f-a705-4394-bedb-945151332a3c
|
||
alias: Washer Reminder - Notify when washing machine finishes
|
||
triggers:
|
||
- trigger: state
|
||
entity_id: binary_sensor.washing_machine_running
|
||
from: 'on'
|
||
to: 'off'
|
||
actions:
|
||
- alias: Turn on notify switch
|
||
action: input_boolean.turn_on
|
||
target:
|
||
entity_id: input_boolean.washer_reminder_notifying
|
||
- id: 1ede28c4-0132-418b-b526-373b02b53798
|
||
alias: Washer Reminder - Send notifications based on boolean
|
||
triggers:
|
||
- trigger: state
|
||
entity_id: input_boolean.washer_reminder_notifying
|
||
from: 'off'
|
||
to: 'on'
|
||
actions:
|
||
- if:
|
||
- alias: Is Corban home?
|
||
condition: state
|
||
entity_id: person.corban
|
||
state: home
|
||
then:
|
||
- alias: Notify Corban
|
||
action: script.washer_reminder_send_notification_to_variable
|
||
data:
|
||
notify_device: corban
|
||
dismiss_notification: false
|
||
- if:
|
||
- alias: Is Maggie home?
|
||
condition: state
|
||
entity_id: person.maggie
|
||
state: home
|
||
then:
|
||
- alias: Notify Maggie
|
||
action: script.washer_reminder_send_notification_to_variable
|
||
data:
|
||
notify_device: maggie
|
||
dismiss_notification: false
|
||
- id: 93b3840e-76d3-4cbe-a1ed-179aac220154
|
||
alias: Washer Reminder - Dismiss notifications based on boolean
|
||
triggers:
|
||
- trigger: state
|
||
entity_id: input_boolean.washer_reminder_notifying
|
||
from: 'on'
|
||
to: 'off'
|
||
actions:
|
||
- alias: Clear notifications
|
||
action: script.washer_reminder_send_notification_to_variable
|
||
data:
|
||
notify_device: adult_phones
|
||
dismiss_notification: true
|
||
- id: beba8d5b-7898-4d1e-b796-e63b19c2bdba
|
||
alias: Washer Reminder - Acknowledge alert when motion is detected in the basement
|
||
triggers:
|
||
- trigger: state
|
||
entity_id: binary_sensor.laundry_motion_sensor_occupancy
|
||
from: 'off'
|
||
to: 'on'
|
||
conditions:
|
||
- alias: Notification active
|
||
condition: state
|
||
entity_id: input_boolean.washer_reminder_notifying
|
||
state: 'on'
|
||
actions:
|
||
- alias: Turn off boolean
|
||
action: input_boolean.turn_off
|
||
target:
|
||
entity_id: input_boolean.washer_reminder_notifying
|
||
- id: 19098e11-621e-4f4c-a0f4-aee3c5d8e8cf
|
||
alias: Washer Reminder - Acknowledge alert from notification
|
||
triggers:
|
||
- trigger: event
|
||
event_type: mobile_app_notification_action
|
||
event_data:
|
||
action: WASHER_REMINDER_ACK
|
||
conditions:
|
||
- alias: Notification active
|
||
condition: state
|
||
entity_id: input_boolean.washer_reminder_notifying
|
||
state: 'on'
|
||
actions:
|
||
- alias: Turn off boolean
|
||
action: input_boolean.turn_off
|
||
target:
|
||
entity_id: input_boolean.washer_reminder_notifying
|
||
- id: 7201114f-3317-4c7b-8488-8930f2722faf
|
||
alias: Washer Reminder - Send delayed notification if someone gets home
|
||
mode: parallel
|
||
triggers:
|
||
- trigger: state
|
||
entity_id: person.corban
|
||
to: home
|
||
id: corban
|
||
- trigger: state
|
||
entity_id: person.maggie
|
||
to: home
|
||
id: maggie
|
||
conditions:
|
||
- alias: Notification active
|
||
condition: state
|
||
entity_id: input_boolean.washer_reminder_notifying
|
||
state: 'on'
|
||
actions:
|
||
- alias: Notify the right person
|
||
action: script.washer_reminder_send_notification_to_variable
|
||
data:
|
||
notify_device: '{{ trigger.id }}'
|
||
dismiss_notification: false
|
||
- id: 9d4ec00e-140f-458e-a2ab-84ec7e45069b
|
||
alias: Washer Reminder - Dismiss notification if someone leaves home
|
||
mode: parallel
|
||
triggers:
|
||
- trigger: state
|
||
entity_id: person.corban
|
||
from: home
|
||
id: corban
|
||
- trigger: state
|
||
entity_id: person.maggie
|
||
from: home
|
||
id: maggie
|
||
conditions:
|
||
- alias: Notification active
|
||
condition: state
|
||
entity_id: input_boolean.washer_reminder_notifying
|
||
state: 'on'
|
||
actions:
|
||
- alias: Notify the right person
|
||
action: script.washer_reminder_send_notification_to_variable
|
||
data:
|
||
notify_device: '{{ trigger.id }}'
|
||
dismiss_notification: true
|
||
- id: 34a158cc-aa49-4aeb-9426-705f3a98bd85
|
||
alias: Upstairs Light Switch - Config Single Press - Toggle Under Bed Lighting
|
||
triggers:
|
||
- trigger: device
|
||
domain: mqtt
|
||
device_id: 6239543fc9a684fbba5d4af77ccdf052
|
||
type: action
|
||
subtype: config_single
|
||
actions:
|
||
- action: light.toggle
|
||
data:
|
||
brightness_pct: 100
|
||
rgb_color:
|
||
- 255
|
||
- 78
|
||
- 30
|
||
target:
|
||
entity_id: light.bed_lighting_rgb_light
|
||
- id: f65fe143-e99c-4bb8-b131-295e121d2240
|
||
alias: Upstairs Light Switch - Config Double Press - Toggle Fairy Lights
|
||
triggers:
|
||
- trigger: device
|
||
domain: mqtt
|
||
device_id: 6239543fc9a684fbba5d4af77ccdf052
|
||
type: action
|
||
subtype: config_double
|
||
actions:
|
||
- action: light.toggle
|
||
target:
|
||
entity_id: light.fairy_lights
|
||
data:
|
||
brightness_pct: 100
|
||
- id: a8f98277-f3cf-4a9d-a2a2-9cdfbd2196ff
|
||
alias: Litter Box Status - Set Input Select
|
||
mode: restart
|
||
triggers:
|
||
- trigger: state
|
||
entity_id: vacuum.litter_robot_4_litter_box
|
||
- trigger: state
|
||
entity_id: sensor.litter_robot_4_litter_level
|
||
- trigger: state
|
||
entity_id: sensor.litter_robot_4_waste_drawer
|
||
- trigger: state
|
||
entity_id: sensor.litter_robot_4_status_code
|
||
actions:
|
||
- choose:
|
||
- conditions:
|
||
- alias: Litter Drawer Full
|
||
condition: numeric_state
|
||
entity_id: sensor.litter_robot_4_waste_drawer
|
||
above: 89
|
||
- alias: Litter Drawer Full - Status Code
|
||
condition: state
|
||
entity_id: sensor.litter_robot_4_status_code
|
||
state: dfs
|
||
sequence:
|
||
- action: input_select.select_option
|
||
target:
|
||
entity_id: input_select.upstairs_hall_light_switch_led_mode
|
||
data:
|
||
option: 'Off'
|
||
- delay:
|
||
seconds: 1
|
||
- action: input_select.select_option
|
||
target:
|
||
entity_id: input_select.upstairs_hall_light_switch_led_mode
|
||
data:
|
||
option: Litter Drawer Full
|
||
- conditions:
|
||
- alias: Litter Drawer Almost Full
|
||
condition: numeric_state
|
||
entity_id: sensor.litter_robot_4_waste_drawer
|
||
above: 80
|
||
- alias: Litter Drawer Almost Full - Status Code 2
|
||
condition: state
|
||
entity_id: sensor.litter_robot_4_status_code
|
||
state: df2
|
||
- alias: Litter Drawer Almost Full - Status Code 1
|
||
condition: state
|
||
entity_id: sensor.litter_robot_4_status_code
|
||
state: df1
|
||
sequence:
|
||
- action: input_select.select_option
|
||
target:
|
||
entity_id: input_select.upstairs_hall_light_switch_led_mode
|
||
data:
|
||
option: 'Off'
|
||
- delay:
|
||
seconds: 1
|
||
- action: input_select.select_option
|
||
target:
|
||
entity_id: input_select.upstairs_hall_light_switch_led_mode
|
||
data:
|
||
option: Litter Drawer Almost Full
|
||
- conditions:
|
||
- alias: Litter Level Low
|
||
condition: numeric_state
|
||
entity_id: sensor.litter_robot_4_litter_level
|
||
below: 40
|
||
sequence:
|
||
- action: input_select.select_option
|
||
target:
|
||
entity_id: input_select.upstairs_hall_light_switch_led_mode
|
||
data:
|
||
option: 'Off'
|
||
- delay:
|
||
seconds: 1
|
||
- action: input_select.select_option
|
||
target:
|
||
entity_id: input_select.upstairs_hall_light_switch_led_mode
|
||
data:
|
||
option: Litter Level Low
|
||
default:
|
||
- action: input_select.select_option
|
||
target:
|
||
entity_id: input_select.upstairs_hall_light_switch_led_mode
|
||
data:
|
||
option: 'Off'
|
||
- id: 8efcc481-cdef-4943-b443-93860546c935
|
||
alias: Upstairs Hall Light Switch - Set LEDs Based on Input Select
|
||
mode: queued
|
||
triggers:
|
||
- trigger: state
|
||
entity_id: input_select.upstairs_hall_light_switch_led_mode
|
||
actions:
|
||
- choose:
|
||
- conditions: '{{ trigger.to_state.state == "Off" }}'
|
||
sequence:
|
||
- action: script.inovelli_led_control
|
||
metadata: {}
|
||
data:
|
||
led: All
|
||
color: Cyan
|
||
level: 43
|
||
effect: Clear
|
||
duration: Indefinitely
|
||
target:
|
||
device_id: 6239543fc9a684fbba5d4af77ccdf052
|
||
- action: script.inovelli_led_control
|
||
metadata: {}
|
||
data:
|
||
led: Led 1
|
||
color: Cyan
|
||
level: 43
|
||
effect: Clear
|
||
duration: Indefinitely
|
||
target:
|
||
device_id: 6239543fc9a684fbba5d4af77ccdf052
|
||
- action: script.inovelli_led_control
|
||
metadata: {}
|
||
data:
|
||
led: Led 2
|
||
color: Cyan
|
||
level: 43
|
||
effect: Clear
|
||
duration: Indefinitely
|
||
target:
|
||
device_id: 6239543fc9a684fbba5d4af77ccdf052
|
||
- action: script.inovelli_led_control
|
||
metadata: {}
|
||
data:
|
||
led: Led 3
|
||
color: Cyan
|
||
level: 43
|
||
effect: Clear
|
||
duration: Indefinitely
|
||
target:
|
||
device_id: 6239543fc9a684fbba5d4af77ccdf052
|
||
- action: script.inovelli_led_control
|
||
metadata: {}
|
||
data:
|
||
led: Led 4
|
||
color: Cyan
|
||
level: 43
|
||
effect: Clear
|
||
duration: Indefinitely
|
||
target:
|
||
device_id: 6239543fc9a684fbba5d4af77ccdf052
|
||
- action: script.inovelli_led_control
|
||
metadata: {}
|
||
data:
|
||
led: Led 5
|
||
color: Cyan
|
||
level: 43
|
||
effect: Clear
|
||
duration: Indefinitely
|
||
target:
|
||
device_id: 6239543fc9a684fbba5d4af77ccdf052
|
||
- action: script.inovelli_led_control
|
||
metadata: {}
|
||
data:
|
||
led: Led 6
|
||
color: Cyan
|
||
level: 43
|
||
effect: Clear
|
||
duration: Indefinitely
|
||
target:
|
||
device_id: 6239543fc9a684fbba5d4af77ccdf052
|
||
- action: script.inovelli_led_control
|
||
metadata: {}
|
||
data:
|
||
led: Led 7
|
||
color: Cyan
|
||
level: 43
|
||
effect: Clear
|
||
duration: Indefinitely
|
||
target:
|
||
device_id: 6239543fc9a684fbba5d4af77ccdf052
|
||
- conditions: '{{ trigger.to_state.state == "Litter Level Low" }}'
|
||
sequence:
|
||
- action: script.inovelli_led_control
|
||
metadata: {}
|
||
data:
|
||
led: Led 1
|
||
color: Cyan
|
||
level: 30
|
||
effect: Solid
|
||
duration: Indefinitely
|
||
target:
|
||
device_id: 6239543fc9a684fbba5d4af77ccdf052
|
||
- action: script.inovelli_led_control
|
||
metadata: {}
|
||
data:
|
||
led: Led 2
|
||
color: Cyan
|
||
level: 30
|
||
effect: Solid
|
||
duration: Indefinitely
|
||
target:
|
||
device_id: 6239543fc9a684fbba5d4af77ccdf052
|
||
- conditions: '{{ trigger.to_state.state == "Litter Drawer Almost Full" }}'
|
||
sequence:
|
||
- action: script.inovelli_led_control
|
||
metadata: {}
|
||
data:
|
||
led: Led 1
|
||
color: Orange
|
||
level: 30
|
||
effect: Solid
|
||
duration: Indefinitely
|
||
target:
|
||
device_id: 6239543fc9a684fbba5d4af77ccdf052
|
||
- action: script.inovelli_led_control
|
||
metadata: {}
|
||
data:
|
||
led: Led 2
|
||
color: Orange
|
||
level: 30
|
||
effect: Solid
|
||
duration: Indefinitely
|
||
target:
|
||
device_id: 6239543fc9a684fbba5d4af77ccdf052
|
||
- action: script.inovelli_led_control
|
||
metadata: {}
|
||
data:
|
||
led: Led 3
|
||
color: Orange
|
||
level: 30
|
||
effect: Solid
|
||
duration: Indefinitely
|
||
target:
|
||
device_id: 6239543fc9a684fbba5d4af77ccdf052
|
||
- action: script.inovelli_led_control
|
||
metadata: {}
|
||
data:
|
||
led: Led 4
|
||
color: Orange
|
||
level: 30
|
||
effect: Solid
|
||
duration: Indefinitely
|
||
target:
|
||
device_id: 6239543fc9a684fbba5d4af77ccdf052
|
||
- action: script.inovelli_led_control
|
||
metadata: {}
|
||
data:
|
||
led: Led 5
|
||
color: Orange
|
||
level: 30
|
||
effect: Solid
|
||
duration: Indefinitely
|
||
target:
|
||
device_id: 6239543fc9a684fbba5d4af77ccdf052
|
||
- conditions: '{{ trigger.to_state.state == "Litter Drawer Full" }}'
|
||
sequence:
|
||
- action: script.inovelli_led_control
|
||
metadata: {}
|
||
data:
|
||
led: All
|
||
color: Red
|
||
level: 40
|
||
effect: Solid
|
||
duration: Indefinitely
|
||
target:
|
||
device_id: 6239543fc9a684fbba5d4af77ccdf052
|
||
- conditions: '{{ trigger.to_state.state == "Litter Box Cycling" }}'
|
||
sequence:
|
||
- action: script.inovelli_led_control
|
||
data:
|
||
target:
|
||
device_id:
|
||
- 6239543fc9a684fbba5d4af77ccdf052
|
||
led: All
|
||
color: White
|
||
level: 15
|
||
duration: Indefinitely
|
||
effect: Fast Rising
|
||
- alias: Open living room curtains in the morning
|
||
id: ca39ee01-15c7-48b0-a34c-2500d2f91a64
|
||
triggers:
|
||
- trigger: state
|
||
entity_id: input_select.home_mode
|
||
from: Sleep
|
||
to: Home
|
||
conditions:
|
||
- alias: Living room automations are not disabled
|
||
condition: state
|
||
entity_id: input_boolean.room_exclude_livingroom
|
||
state: 'off'
|
||
actions:
|
||
- action: v6_quietdrift.set_switchbot_curtain_position
|
||
data:
|
||
entity_id:
|
||
- cover.living_room_curtain_left
|
||
- cover.living_room_curtain_right
|
||
position: 100
|
||
speed: 2
|
||
- alias: Close living room curtains around sunset
|
||
id: 7b1fcd09-ff2a-4257-a733-06e7840ee49c
|
||
mode: restart
|
||
triggers:
|
||
- trigger: sun
|
||
event: sunset
|
||
conditions:
|
||
- alias: Living room automations are not disabled
|
||
condition: state
|
||
entity_id: input_boolean.room_exclude_livingroom
|
||
state: 'off'
|
||
- not:
|
||
- condition: state
|
||
entity_id: input_select.home_mode
|
||
state: Vacation
|
||
actions:
|
||
- if:
|
||
- condition: state
|
||
entity_id: binary_sensor.living_room_window_1_contact
|
||
state: 'off'
|
||
then:
|
||
- action: v6_quietdrift.set_switchbot_curtain_position
|
||
data:
|
||
entity_id:
|
||
- cover.living_room_curtain_left
|
||
- cover.living_room_curtain_right
|
||
position: 0
|
||
speed: 2
|
||
else:
|
||
- action: v6_quietdrift.set_switchbot_curtain_position
|
||
data:
|
||
entity_id:
|
||
- cover.living_room_curtain_left
|
||
position: 0
|
||
speed: 2
|
||
- alias: Living Room Curtains - Match Window State
|
||
id: 3600672a-34d4-40ef-9154-4d95b8798151
|
||
mode: restart
|
||
triggers:
|
||
- trigger: state
|
||
entity_id:
|
||
- binary_sensor.living_room_window_1_contact
|
||
from: 'on'
|
||
to: 'off'
|
||
id: closed
|
||
for:
|
||
hours: 0
|
||
minutes: 0
|
||
seconds: 2
|
||
- trigger: state
|
||
entity_id:
|
||
- binary_sensor.living_room_window_1_contact
|
||
from: 'off'
|
||
to: 'on'
|
||
id: open
|
||
for:
|
||
hours: 0
|
||
minutes: 0
|
||
seconds: 5
|
||
conditions:
|
||
- alias: Living room automations are not disabled
|
||
condition: state
|
||
entity_id: input_boolean.room_exclude_livingroom
|
||
state: 'off'
|
||
- condition: state
|
||
entity_id: cover.living_room_curtain_left
|
||
state: closed
|
||
actions:
|
||
- choose:
|
||
- conditions:
|
||
- condition: trigger
|
||
id:
|
||
- open
|
||
- condition: state
|
||
entity_id: cover.living_room_curtain_right
|
||
state: closed
|
||
sequence:
|
||
- alias: Open the Right Curtain
|
||
action: v6_quietdrift.set_switchbot_curtain_position
|
||
data:
|
||
entity_id:
|
||
- cover.living_room_curtain_right
|
||
position: 100
|
||
speed: 2
|
||
- conditions:
|
||
- condition: trigger
|
||
id:
|
||
- closed
|
||
- condition: state
|
||
entity_id: cover.living_room_curtain_right
|
||
state: open
|
||
sequence:
|
||
- alias: Close the Right Curtain
|
||
action: v6_quietdrift.set_switchbot_curtain_position
|
||
data:
|
||
entity_id:
|
||
- cover.living_room_curtain_right
|
||
position: 0
|
||
speed: 2
|
||
- alias: Living Room Motion Lights
|
||
id: 42109bf8-895c-4fca-88f4-2e2d17975d27
|
||
mode: restart
|
||
triggers:
|
||
- trigger: state
|
||
entity_id: binary_sensor.living_room_assumed_presence
|
||
to: 'on'
|
||
- trigger: state
|
||
entity_id: binary_sensor.living_room_assumed_presence
|
||
to: 'off'
|
||
for:
|
||
minutes: 5
|
||
conditions:
|
||
- alias: Home Mode
|
||
condition: state
|
||
entity_id: input_select.home_mode
|
||
state: Home
|
||
- alias: Living room is not marked as excluded
|
||
condition: state
|
||
entity_id: input_boolean.room_exclude_livingroom
|
||
state: 'off'
|
||
actions:
|
||
- choose:
|
||
- conditions: '{{ trigger.to_state.state == ''on'' }}'
|
||
sequence:
|
||
- action: light.turn_on
|
||
target:
|
||
entity_id: light.corner_lamp
|
||
- conditions: '{{ trigger.to_state.state == ''off'' }}'
|
||
sequence:
|
||
- if:
|
||
- alias: Training Mode On
|
||
condition: state
|
||
entity_id: input_boolean.training_mode
|
||
state: 'on'
|
||
then:
|
||
- alias: Wait until Training Mode is off
|
||
wait_for_trigger:
|
||
- trigger: state
|
||
entity_id: input_boolean.training_mode
|
||
to: 'off'
|
||
- action: light.turn_off
|
||
target:
|
||
entity_id: light.corner_lamp
|
||
- alias: Turn On Living Room LG TV with WakeOnLan
|
||
triggers:
|
||
- trigger: webostv.turn_on
|
||
entity_id: media_player.living_room_lg_tv
|
||
actions:
|
||
- action: media_player.turn_on
|
||
target:
|
||
entity_id: media_player.living_room_apple_tv
|
||
- id: 2cb23cab-a4a4-4e67-8af0-7bbe9ef1709d
|
||
alias: Mail Reminder - Notify Maggie if there's mail
|
||
triggers:
|
||
- trigger: state
|
||
entity_id: person.maggie
|
||
from: L3Harris
|
||
to: not_home
|
||
conditions:
|
||
- alias: After 2 pm, to avoid alerting over lunch.
|
||
condition: time
|
||
after: '14:00:00'
|
||
- condition: or
|
||
conditions:
|
||
- alias: There is mail
|
||
condition: numeric_state
|
||
entity_id: sensor.mail_usps_mail
|
||
above: 0
|
||
- alias: There are packages
|
||
condition: numeric_state
|
||
entity_id: sensor.mail_usps_delivered
|
||
above: 0
|
||
actions:
|
||
- alias: Notify Maggie
|
||
action: notify.maggie
|
||
data:
|
||
title: Check the Mail
|
||
message: "Expecting {{states(\"sensor.mail_usps_mail\")|int(0)}} {{ \"\" }}\
|
||
\ {%- if states(\"sensor.mail_usps_mail\")|int(0) == 1 -%}\n piece of mail\n\
|
||
{%- else -%}\n pieces of mail\n{%- endif -%} {%- if states(\"sensor.mail_usps_delivered\"\
|
||
)|int(0) > 0 -%} {{ \"\" }} and {{states(\"sensor.mail_usps_delivered\")|int(0)}}\
|
||
\ {{ \"\" }} {%- if states(\"sensor.mail_usps_mail\")|int(0) == 1 -%}\n USPS\
|
||
\ package\n{%- else -%}\n USPS packages\n{%- endif -%} {%- endif -%} ."
|
||
- id: 8ccee857-49d3-4652-b5e2-8501aa847da3
|
||
alias: Mower - Update Last Lawn Mowed Name
|
||
mode: single
|
||
triggers:
|
||
- trigger: state
|
||
entity_id:
|
||
- input_datetime.mower_last_mow_back_yard_main
|
||
- input_datetime.mower_last_mow_garage_side
|
||
- input_datetime.mower_last_mow_front_yard
|
||
- input_datetime.mower_last_mow_mailbox
|
||
actions:
|
||
- variables:
|
||
lawns:
|
||
input_datetime.mower_last_mow_back_yard_main: Back Yard Main
|
||
input_datetime.mower_last_mow_garage_side: Garage Side
|
||
input_datetime.mower_last_mow_front_yard: Front Yard
|
||
input_datetime.mower_last_mow_mailbox: Mailbox
|
||
- variables:
|
||
last_mow: "{% set last = namespace(entity='', timestamp=0) %} {% for entity_id,\
|
||
\ name in lawns.items() %}\n {% set ts = state_attr(entity_id, 'timestamp')\
|
||
\ %}\n {% if ts is number and ts > last.timestamp %}\n {% set last.entity\
|
||
\ = name %}\n {% set last.timestamp = ts %}\n {% endif %}\n{% endfor%}\
|
||
\ {{ last.entity }}"
|
||
- action: input_text.set_value
|
||
target:
|
||
entity_id: input_text.mower_last_area_mowed
|
||
data:
|
||
value: '{{ last_mow }}'
|
||
- alias: Slow down downloading when someone arrives home
|
||
id: f3a700e3-6a72-405e-b0c3-9297c2e59863
|
||
triggers:
|
||
- trigger: state
|
||
entity_id: input_select.home_mode
|
||
from:
|
||
- Away
|
||
- Vacation
|
||
to: Home
|
||
conditions:
|
||
- condition: state
|
||
entity_id: input_boolean.download_mode_change_lock
|
||
state: 'off'
|
||
actions:
|
||
- action: input_select.select_option
|
||
data:
|
||
entity_id: input_select.download_speed
|
||
option: Slow Speed
|
||
- alias: Run downloads at full speed when no one is home
|
||
id: 9a369e71-6b1a-4ea3-ac23-3dfac244a9dc
|
||
triggers:
|
||
- trigger: state
|
||
entity_id: input_select.home_mode
|
||
to:
|
||
- Away
|
||
- Vacation
|
||
conditions:
|
||
- condition: state
|
||
entity_id: input_boolean.download_mode_change_lock
|
||
state: 'off'
|
||
actions:
|
||
- action: input_select.select_option
|
||
data:
|
||
entity_id: input_select.download_speed
|
||
option: Full Speed
|
||
- alias: Run downloads at full speed when in sleep mode
|
||
id: 0ba2ae8b-097e-48b0-aa3c-051e4a1c3ae2
|
||
triggers:
|
||
- trigger: state
|
||
entity_id: input_select.home_mode
|
||
to: Sleep
|
||
conditions:
|
||
- condition: state
|
||
entity_id: input_boolean.download_mode_change_lock
|
||
state: 'off'
|
||
actions:
|
||
- action: input_select.select_option
|
||
data:
|
||
entity_id: input_select.download_speed
|
||
option: Full Speed
|
||
- alias: Run downloads at slow speed in the morning if someone is home
|
||
id: 1e79b053-788e-4d87-9a06-e90453d2ed38
|
||
triggers:
|
||
- trigger: state
|
||
entity_id: input_select.home_mode
|
||
from: Sleep
|
||
to: Home
|
||
conditions:
|
||
- condition: state
|
||
entity_id: input_boolean.download_mode_change_lock
|
||
state: 'off'
|
||
actions:
|
||
- action: input_select.select_option
|
||
data:
|
||
entity_id: input_select.download_speed
|
||
option: Slow Speed
|
||
- alias: Run downloads at medium speed after business hours
|
||
id: 59856c82-9e5a-492a-af7d-8cddca438fb3
|
||
triggers:
|
||
- trigger: time
|
||
at: '18:00:00'
|
||
conditions:
|
||
- condition: state
|
||
entity_id: input_boolean.download_mode_change_lock
|
||
state: 'off'
|
||
actions:
|
||
- action: input_select.select_option
|
||
data:
|
||
entity_id: input_select.download_speed
|
||
option: Medium Speed
|
||
- alias: Set download speed based on input_select
|
||
id: 9a27930f-dd38-4a66-a7f1-85f7c600a89c
|
||
triggers:
|
||
- trigger: state
|
||
entity_id: input_select.download_speed
|
||
actions:
|
||
- choose:
|
||
- conditions: '{{ trigger.to_state.state == "Full Speed" }}
|
||
|
||
'
|
||
sequence:
|
||
- action: nzbget.resume
|
||
- action: nzbget.set_speed
|
||
data:
|
||
speed: 0
|
||
- conditions: '{{ trigger.to_state.state == "Medium Speed" }}
|
||
|
||
'
|
||
sequence:
|
||
- action: nzbget.resume
|
||
- action: nzbget.set_speed
|
||
data:
|
||
speed: 7000
|
||
- conditions: '{{ trigger.to_state.state == "Slow Speed" }}
|
||
|
||
'
|
||
sequence:
|
||
- action: nzbget.resume
|
||
- action: nzbget.set_speed
|
||
data:
|
||
speed: 1000
|
||
- conditions: '{{ trigger.to_state.state == "Paused" }}
|
||
|
||
'
|
||
sequence:
|
||
- action: nzbget.pause
|
||
- alias: UPS Power Outage Notification
|
||
id: 249c1373-c037-4b3c-80b8-8460daa3c79f
|
||
mode: single
|
||
triggers:
|
||
- trigger: state
|
||
entity_id: binary_sensor.ups_power_normal
|
||
from: 'on'
|
||
to: 'off'
|
||
variables:
|
||
outage_start_time: '{{ now().timestamp() }}'
|
||
actions:
|
||
- alias: Mark that an outage has started
|
||
action: input_boolean.turn_on
|
||
target:
|
||
entity_id: input_boolean.power_outage
|
||
- action: input_datetime.set_datetime
|
||
alias: Store the start time
|
||
target:
|
||
entity_id: input_datetime.power_outage_start_time
|
||
data:
|
||
timestamp: '{{ outage_start_time }}'
|
||
- action: notify.corban
|
||
data:
|
||
title: Power Outage at Home
|
||
message: The power went out at {{ outage_start_time | float | timestamp_custom("%-I:%M
|
||
%p") }}.
|
||
data:
|
||
tag: power_outage
|
||
actions:
|
||
- action: POWER_OUTAGE_SHUTDOWN_NAS
|
||
title: Shutdown NAS
|
||
activationMode: background
|
||
authenticationRequired: true
|
||
destructive: true
|
||
behavior: default
|
||
- alias: UPS Power Outage Notification Action - Shutdown NAS
|
||
id: 4f983a53-9c85-4f66-8a7a-9239c00d37c4
|
||
triggers:
|
||
- trigger: event
|
||
event_type: mobile_app_notification_action
|
||
event_data:
|
||
action: POWER_OUTAGE_SHUTDOWN_NAS
|
||
actions:
|
||
- action: button.press
|
||
target:
|
||
entity_id: button.tubby_shutdown
|
||
- alias: UPS Power Outage - Back On Notification
|
||
id: b0c8df7d-160e-4ae8-b2a2-6372a9736aec
|
||
mode: single
|
||
triggers:
|
||
- trigger: state
|
||
entity_id: binary_sensor.ups_power_normal
|
||
from: 'off'
|
||
to: 'on'
|
||
variables:
|
||
outage_stop_time: '{{ now().timestamp() }}'
|
||
outage_start_time: '{{ states("input_datetime.power_outage_start_time") | as_timestamp
|
||
}}'
|
||
- trigger: homeassistant
|
||
event: start
|
||
conditions:
|
||
- condition: state
|
||
entity_id: input_boolean.power_outage
|
||
state: 'on'
|
||
actions:
|
||
- alias: Mark that the outage has ended
|
||
action: input_boolean.turn_off
|
||
target:
|
||
entity_id: input_boolean.power_outage
|
||
- action: notify.corban
|
||
data:
|
||
title: Power Outage at Home - Recovered
|
||
message: 'The power went out at {{ outage_start_time | float | timestamp_custom("%-I:%M
|
||
%p") }} and returned at {{ outage_stop_time | float | timestamp_custom("%-I:%M
|
||
%p") }}. (Outage time: {{ timedelta(seconds=((outage_stop_time | int) - (outage_start_time
|
||
| int))) }})'
|
||
data:
|
||
tag: power_outage
|
||
- alias: Office Key Light - Reconnect when Unavailable
|
||
id: b687c68a-7ea3-41ed-bc6b-d5350415770f
|
||
triggers:
|
||
- trigger: state
|
||
entity_id: light.key_light_air_1
|
||
to: unavailable
|
||
for:
|
||
minutes: 1
|
||
actions:
|
||
- alias: Reconnect the Key Light
|
||
action: unifi.reconnect_client
|
||
data:
|
||
device_id: 91d1b0c08edf642406c61ae9e191942a
|
||
- alias: Office Motion Light - Override with triple tap
|
||
id: a7273b48-a15c-4fd1-8402-312a8980ec42
|
||
triggers:
|
||
- trigger: device
|
||
domain: mqtt
|
||
device_id: 0d88963feb93fc454e4d3c4115034675
|
||
type: action
|
||
subtype: up_triple
|
||
id: toggle
|
||
- trigger: device
|
||
domain: mqtt
|
||
device_id: 0d88963feb93fc454e4d3c4115034675
|
||
type: action
|
||
subtype: down_triple
|
||
id: toggle
|
||
- trigger: device
|
||
domain: mqtt
|
||
device_id: 0d88963feb93fc454e4d3c4115034675
|
||
type: action
|
||
subtype: config_single
|
||
id: toggle
|
||
actions:
|
||
- choose:
|
||
- conditions:
|
||
- condition: trigger
|
||
id:
|
||
- toggle
|
||
sequence:
|
||
- action: input_boolean.toggle
|
||
target:
|
||
entity_id: input_boolean.office_motion_lights_override
|
||
- conditions:
|
||
- condition: trigger
|
||
id:
|
||
- disable
|
||
sequence:
|
||
- action: input_boolean.turn_off
|
||
target:
|
||
entity_id: input_boolean.office_motion_lights_override
|
||
- alias: Office Motion Light Override - Set LEDs
|
||
id: 32ed809a-9c4e-49d0-ab9b-fdd5cd4dac45
|
||
triggers:
|
||
- trigger: state
|
||
entity_id:
|
||
- input_boolean.office_motion_lights_override
|
||
from: 'off'
|
||
to: 'on'
|
||
id: 'on'
|
||
- trigger: state
|
||
entity_id:
|
||
- input_boolean.office_motion_lights_override
|
||
from: 'on'
|
||
to: 'off'
|
||
id: 'off'
|
||
conditions: []
|
||
actions:
|
||
- choose:
|
||
- conditions:
|
||
- condition: trigger
|
||
id:
|
||
- 'on'
|
||
sequence:
|
||
- action: script.inovelli_led_control
|
||
metadata: {}
|
||
data:
|
||
led: All
|
||
color: Green
|
||
level: 20
|
||
effect: Solid
|
||
duration: Indefinitely
|
||
target:
|
||
device_id: 0d88963feb93fc454e4d3c4115034675
|
||
alias: Set Switch LEDs Green
|
||
- conditions:
|
||
- condition: trigger
|
||
id:
|
||
- 'off'
|
||
sequence:
|
||
- action: script.inovelli_led_control
|
||
metadata: {}
|
||
data:
|
||
led: All
|
||
color: Green
|
||
level: 100
|
||
effect: Clear
|
||
duration: Indefinitely
|
||
target:
|
||
device_id: 0d88963feb93fc454e4d3c4115034675
|
||
alias: Clear Switch LEDs
|
||
- alias: Office Motion Lights
|
||
id: 3c42906d-db94-454e-8dc9-bc980e94223f
|
||
mode: restart
|
||
triggers:
|
||
- trigger: state
|
||
entity_id: binary_sensor.office_mini_motion_presence
|
||
to: 'on'
|
||
- trigger: state
|
||
entity_id: binary_sensor.office_mini_motion_presence
|
||
to: 'off'
|
||
for:
|
||
minutes: 2
|
||
conditions:
|
||
- alias: Home Mode
|
||
condition: state
|
||
entity_id: input_select.home_mode
|
||
state: Home
|
||
- alias: Office is not marked as excluded
|
||
condition: state
|
||
entity_id: input_boolean.room_exclude_office
|
||
state: 'off'
|
||
- alias: Office Motion Lighting isn't overridden
|
||
condition: state
|
||
entity_id: input_boolean.office_motion_lights_override
|
||
state: 'off'
|
||
actions:
|
||
- choose:
|
||
- conditions: '{{ trigger.to_state.state == ''on'' }}'
|
||
sequence:
|
||
- action: light.turn_on
|
||
target:
|
||
entity_id:
|
||
- light.main_office_lights
|
||
- light.office_desk_screen_display_backlight
|
||
- conditions: '{{ trigger.to_state.state == ''off'' }}'
|
||
sequence:
|
||
- if:
|
||
- alias: Training Mode On
|
||
condition: state
|
||
entity_id: input_boolean.training_mode
|
||
state: 'on'
|
||
then:
|
||
- alias: Wait until Training Mode is off
|
||
wait_for_trigger:
|
||
- trigger: state
|
||
entity_id: input_boolean.training_mode
|
||
to: 'off'
|
||
- delay:
|
||
seconds: 10
|
||
- action: light.turn_off
|
||
target:
|
||
entity_id:
|
||
- light.main_office_lights
|
||
- light.office_desk_screen_display_backlight
|
||
data:
|
||
transition: 10
|
||
- alias: Office Remote - Toggle - Toggle Video Call Scene
|
||
id: e8cfeb3b-e051-4b20-9d80-fd19a96a16dd
|
||
triggers:
|
||
- trigger: device
|
||
device_id: 66f76df28bdd462e84227f8f164ee7c3
|
||
discovery_id: 0x90fd9ffffe886c5f action_toggle
|
||
domain: mqtt
|
||
type: action
|
||
subtype: toggle
|
||
actions:
|
||
- if:
|
||
- condition: state
|
||
entity_id: light.key_light_air_1
|
||
state: 'on'
|
||
then:
|
||
- action: light.turn_off
|
||
target:
|
||
entity_id:
|
||
- light.key_light_air_1
|
||
- action: adaptive_lighting.set_manual_control
|
||
data:
|
||
manual_control: false
|
||
entity_id: switch.adaptive_lighting_adapt_brightness_office
|
||
else:
|
||
- action: scene.turn_on
|
||
target:
|
||
entity_id: scene.office_meeting
|
||
- alias: Office Remote - Brightness Up
|
||
id: 917b79fd-9825-4100-bca6-d44847d8ef10
|
||
triggers:
|
||
- trigger: device
|
||
device_id: 66f76df28bdd462e84227f8f164ee7c3
|
||
discovery_id: 0x90fd9ffffe886c5f action_brightness_up_click
|
||
domain: mqtt
|
||
type: action
|
||
subtype: brightness_up_click
|
||
actions:
|
||
- choose:
|
||
- conditions:
|
||
- condition: state
|
||
entity_id: light.key_light_air_1
|
||
state: 'on'
|
||
sequence:
|
||
- action: light.turn_on
|
||
entity_id: light.key_light_air_1
|
||
data_template:
|
||
brightness: "{%- set target = state_attr('light.key_light_air_1', 'brightness')\
|
||
\ | int + 8 -%} {%- if target > 255 -%}\n 255\n{%- else -%}\n {{ target}}\n\
|
||
{%- endif -%}\n"
|
||
- conditions:
|
||
- condition: state
|
||
entity_id: light.key_light_air_1
|
||
state: 'off'
|
||
sequence:
|
||
- action: light.turn_on
|
||
entity_id: light.office_ceiling
|
||
data_template:
|
||
brightness: "{%- set target = (is_state('light.office_ceiling', \"on\")\
|
||
\ and state_attr('light.office_ceiling', 'brightness')) | int + 51 -%}\
|
||
\ {%- if target > 255 -%}\n 255\n{%- else -%}\n {{ target}}\n{%- endif\
|
||
\ -%}\n"
|
||
- alias: Office Remote - Brightness Down
|
||
id: 664afecb-08e5-4d33-bdca-c11ebe09bf12
|
||
triggers:
|
||
- trigger: device
|
||
device_id: 66f76df28bdd462e84227f8f164ee7c3
|
||
discovery_id: 0x90fd9ffffe886c5f action_brightness_down_click
|
||
domain: mqtt
|
||
type: action
|
||
subtype: brightness_down_click
|
||
actions:
|
||
- choose:
|
||
- conditions:
|
||
- condition: state
|
||
entity_id: light.key_light_air_1
|
||
state: 'on'
|
||
sequence:
|
||
- action: light.turn_on
|
||
entity_id: light.key_light_air_1
|
||
data_template:
|
||
brightness: "{%- set target = state_attr('light.key_light_air_1', 'brightness')\
|
||
\ | int - 8 -%} {%- if target < 1 -%}\n 1\n{%- else -%}\n {{ target}}\n\
|
||
{%- endif -%}\n"
|
||
- conditions:
|
||
- condition: state
|
||
entity_id: light.key_light_air_1
|
||
state: 'off'
|
||
sequence:
|
||
- action: light.turn_on
|
||
entity_id: light.office_ceiling
|
||
data_template:
|
||
brightness: "{%- set target = state_attr('light.office_ceiling', 'brightness')\
|
||
\ | int - 51 -%} {%- if target < 10 -%}\n 10\n{%- else -%}\n {{ target}}\n\
|
||
{%- endif -%}\n"
|
||
- alias: Office Remote - Brightness Up Hold
|
||
id: 0a1f28ae-c8f2-40d6-b664-43b7969de628
|
||
triggers:
|
||
- trigger: device
|
||
device_id: 66f76df28bdd462e84227f8f164ee7c3
|
||
discovery_id: 0x90fd9ffffe886c5f action_brightness_up_hold
|
||
domain: mqtt
|
||
type: action
|
||
subtype: brightness_up_hold
|
||
actions:
|
||
- alias: Ceiling full brighness
|
||
action: light.turn_on
|
||
entity_id:
|
||
- light.office_ceiling
|
||
data:
|
||
brightness: 255
|
||
- alias: Office Remote - Brightness Down Hold
|
||
id: 47437150-269c-46d4-b9d7-da8c4efa1695
|
||
triggers:
|
||
- trigger: device
|
||
device_id: 66f76df28bdd462e84227f8f164ee7c3
|
||
discovery_id: 0x90fd9ffffe886c5f action_brightness_down_hold
|
||
domain: mqtt
|
||
type: action
|
||
subtype: brightness_down_hold
|
||
actions:
|
||
- alias: Lights off
|
||
action: light.turn_off
|
||
entity_id:
|
||
- light.office_ceiling
|
||
- alias: Office Remote - Left Button Click
|
||
id: 466c98e8-bc17-4edc-b29d-a527e66a27af
|
||
triggers:
|
||
- trigger: device
|
||
device_id: 66f76df28bdd462e84227f8f164ee7c3
|
||
discovery_id: 0x90fd9ffffe886c5f action_arrow_left_click
|
||
domain: mqtt
|
||
type: action
|
||
subtype: arrow_left_click
|
||
actions:
|
||
- action: fan.toggle
|
||
entity_id: fan.office_fan
|
||
- id: e5c316e1-78f0-4f4b-8dac-a0140926aaf1
|
||
alias: Garage Parking Sign - Door Triggers
|
||
mode: restart
|
||
triggers:
|
||
- trigger: state
|
||
entity_id: cover.ratgdo_left_garage_door_door
|
||
to: opening
|
||
id: switch.garage_parking_sign_poll_range_sensor_left
|
||
- trigger: state
|
||
entity_id: cover.ratgdo_right_garage_door_door
|
||
to: opening
|
||
id: switch.garage_parking_sign_poll_range_sensor_right
|
||
conditions:
|
||
- alias: Garage automations are not disabled
|
||
condition: state
|
||
entity_id: input_boolean.room_exclude_garage
|
||
state: 'off'
|
||
actions:
|
||
- alias: Start with both sensors off
|
||
action: switch.turn_off
|
||
target:
|
||
entity_id:
|
||
- switch.garage_parking_sign_poll_range_sensor_left
|
||
- switch.garage_parking_sign_poll_range_sensor_right
|
||
- alias: Start polling the sensor
|
||
action: switch.turn_on
|
||
target:
|
||
entity_id: '{{ trigger.id }}'
|
||
- alias: Wait for the door to be closing OR 2 minutes.
|
||
wait_for_trigger:
|
||
- trigger: state
|
||
entity_id:
|
||
- cover.ratgdo_left_garage_door_door
|
||
- cover.ratgdo_right_garage_door_door
|
||
to:
|
||
- closing
|
||
- closed
|
||
timeout:
|
||
minutes: 2
|
||
- alias: Stop polling
|
||
action: switch.turn_off
|
||
target:
|
||
entity_id: '{{ trigger.id }}'
|
||
- alias: Door opened - Trigger phone location updates
|
||
id: 85f0013d-587a-444c-a7c9-9b427a99d335
|
||
triggers:
|
||
- trigger: state
|
||
entity_id: binary_sensor.front_door
|
||
to: 'on'
|
||
- trigger: state
|
||
entity_id:
|
||
- cover.ratgdo_left_garage_door_door
|
||
- cover.ratgdo_right_garage_door_door
|
||
to: opening
|
||
actions:
|
||
- choose:
|
||
- alias: If Maggie isn't home, trigger an update.
|
||
conditions:
|
||
- condition: state
|
||
entity_id: binary_sensor.maggie_person_home
|
||
state: 'off'
|
||
sequence:
|
||
- action: script.request_maggie_location_update
|
||
- choose:
|
||
- alias: If Corban isn't home, trigger an update.
|
||
conditions:
|
||
- condition: state
|
||
entity_id: binary_sensor.corban_person_home
|
||
state: 'off'
|
||
sequence:
|
||
- action: script.request_corban_location_update
|
||
- id: 547a0b9b-1878-4e4a-b020-5d660a77d3f3
|
||
alias: Sunporch Switch - On - String Lights
|
||
triggers:
|
||
- trigger: device
|
||
domain: mqtt
|
||
device_id: c267d3d48bf04135851855dc4be36cbb
|
||
type: action
|
||
subtype: 'on'
|
||
discovery_id: 0x000d6ffffea6b202 action_on
|
||
actions:
|
||
- action: light.turn_on
|
||
target:
|
||
entity_id: light.sunporch_string_lights
|
||
- id: e9209406-f904-49a7-a49a-4f14501bdf68
|
||
alias: Sunporch Switch - Off - String Lights
|
||
triggers:
|
||
- trigger: device
|
||
domain: mqtt
|
||
device_id: c267d3d48bf04135851855dc4be36cbb
|
||
type: action
|
||
subtype: 'off'
|
||
discovery_id: 0x000d6ffffea6b202 action_off
|
||
actions:
|
||
- action: light.turn_off
|
||
target:
|
||
entity_id: light.sunporch_string_lights
|
||
- id: 79a605a4-6f3f-4668-b5a5-ee52bda22304
|
||
alias: Sunporch Switch - Hold On - Turn on all sunporch lights
|
||
triggers:
|
||
- trigger: device
|
||
domain: mqtt
|
||
device_id: c267d3d48bf04135851855dc4be36cbb
|
||
type: action
|
||
subtype: brightness_move_up
|
||
discovery_id: 0x000d6ffffea6b202 action_brightness_move_up
|
||
actions:
|
||
- action: light.turn_on
|
||
target:
|
||
entity_id:
|
||
- light.sunporch_sconces
|
||
- light.sunporch_string_lights
|
||
data:
|
||
brightness: 255
|
||
- id: 8ca6b5bb-fa21-4f04-8535-b374bf0314da
|
||
alias: Sunporch Switch - Hold Off - Turn off all sunporch lights.
|
||
triggers:
|
||
- trigger: device
|
||
domain: mqtt
|
||
device_id: c267d3d48bf04135851855dc4be36cbb
|
||
type: action
|
||
subtype: brightness_move_down
|
||
discovery_id: 0x000d6ffffea6b202 action_brightness_move_down
|
||
actions:
|
||
- action: light.turn_off
|
||
target:
|
||
entity_id:
|
||
- light.sunporch_sconces
|
||
- light.sunporch_string_lights
|
||
- alias: Training Mode Start
|
||
id: 0306466a-8dab-4d80-b814-d0b5a7d97f31
|
||
triggers:
|
||
- trigger: state
|
||
entity_id: input_boolean.training_mode
|
||
to: 'on'
|
||
actions:
|
||
- action: script.training_mode_start
|
||
- alias: Training Mode Stop
|
||
id: 6c0d187b-c08f-4e96-a602-1dd87e972df6
|
||
triggers:
|
||
- trigger: state
|
||
entity_id: input_boolean.training_mode
|
||
to: 'off'
|
||
actions:
|
||
- alias: Re-enable adaptive lighting
|
||
action: switch.turn_on
|
||
target:
|
||
entity_id:
|
||
- switch.adaptive_lighting_adapt_brightness_main_adaptive_lighting
|
||
- switch.adaptive_lighting_adapt_brightness_office
|
||
- delay:
|
||
milliseconds: 250
|
||
- action: scene.turn_on
|
||
target:
|
||
entity_id: scene.state_before_training
|
||
- alias: Clear notification
|
||
action: notify.corban
|
||
data:
|
||
message: clear_notification
|
||
data:
|
||
tag: training_mode_left_on
|
||
- alias: Training Mode Left On Notification
|
||
id: 1a38b478-549d-4d84-9a00-8c1ce37bddea
|
||
triggers:
|
||
- trigger: state
|
||
entity_id: input_boolean.training_mode
|
||
to: 'on'
|
||
for:
|
||
minutes: 15
|
||
actions:
|
||
- alias: Notify Corban
|
||
action: notify.corban
|
||
data:
|
||
title: Training Mode Reminder
|
||
message: Training mode is still on. Turn off?
|
||
data:
|
||
tag: training_mode_left_on
|
||
actions:
|
||
- action: TRAINING_TURN_OFF
|
||
title: Turn off.
|
||
activationMode: background
|
||
authenticationRequired: false
|
||
destructive: false
|
||
behavior: default
|
||
- alias: Training Mode Left On - Notification Action
|
||
id: 40261cea-1c15-4dfc-b795-ce11a932e394
|
||
triggers:
|
||
- trigger: event
|
||
event_type: mobile_app_notification_action
|
||
event_data:
|
||
action: TRAINING_TURN_OFF
|
||
actions:
|
||
- action: input_boolean.turn_off
|
||
data:
|
||
entity_id: input_boolean.training_mode
|
||
- alias: Hall Light Config - 2x - Training Mode Toggle
|
||
id: 1586cf0a-cf0f-4b81-bc77-05090c64f186
|
||
mode: single
|
||
triggers:
|
||
- trigger: device
|
||
domain: mqtt
|
||
device_id: f6a3f0606ae31f561f4c700f5917deed
|
||
type: action
|
||
subtype: config_double
|
||
discovery_id: 0xb43a31fffe34e475 action_config_double
|
||
actions:
|
||
- action: input_boolean.toggle
|
||
target:
|
||
entity_id: input_boolean.training_mode
|
||
- delay:
|
||
seconds: 1
|
||
- alias: Trash Reminder - Trash - Calendar Trigger
|
||
id: 18940551-1ea2-4d4d-8730-5a4ad75fd196
|
||
mode: queued
|
||
triggers:
|
||
- trigger: calendar
|
||
event: start
|
||
entity_id: calendar.chores
|
||
conditions:
|
||
- not:
|
||
- condition: state
|
||
entity_id: input_select.home_mode
|
||
state: Vacation
|
||
- condition: template
|
||
value_template: '{{ ''Trash to Curb'' in trigger.calendar_event.summary }}'
|
||
- alias: Bins are still at the house
|
||
condition: state
|
||
entity_id: binary_sensor.trash_can_at_home
|
||
state: 'on'
|
||
actions:
|
||
- action: input_text.set_value
|
||
entity_id: input_text.trash_reminder_message
|
||
data:
|
||
value: Trash to the curb
|
||
- action: input_boolean.turn_on
|
||
entity_id: input_boolean.trash_reminder_reminding
|
||
- alias: Trash Reminder - Trash and Recycling - Calendar Trigger
|
||
id: dfd61176-c897-4564-a756-88fac31e61c6
|
||
mode: queued
|
||
triggers:
|
||
- trigger: calendar
|
||
event: start
|
||
entity_id: calendar.chores
|
||
conditions:
|
||
- not:
|
||
- condition: state
|
||
entity_id: input_select.home_mode
|
||
state: Vacation
|
||
- condition: template
|
||
value_template: '{{ ''Trash and Recycling to Curb'' in trigger.calendar_event.summary
|
||
}}'
|
||
- alias: Bins are still at the house
|
||
condition: state
|
||
entity_id: binary_sensor.trash_can_at_home
|
||
state: 'on'
|
||
actions:
|
||
- action: input_text.set_value
|
||
entity_id: input_text.trash_reminder_message
|
||
data:
|
||
value: Trash and recycling to the curb
|
||
- action: input_boolean.turn_on
|
||
entity_id: input_boolean.trash_reminder_reminding
|
||
- id: 0b2ef4c7-2ac7-478c-a6ea-211b6e840f7b
|
||
alias: Trash Reminder - Clear reminder when the bins are moved
|
||
triggers:
|
||
- trigger: state
|
||
entity_id: binary_sensor.trash_can_at_home
|
||
from: 'on'
|
||
to: 'off'
|
||
actions:
|
||
- action: input_boolean.turn_off
|
||
entity_id: input_boolean.trash_reminder_reminding
|
||
- id: 1b3dc26d-04f1-41af-864c-d122460db85e
|
||
alias: Trash Reminder - Send notifications based on boolean
|
||
triggers:
|
||
- trigger: state
|
||
entity_id: input_boolean.trash_reminder_reminding
|
||
from: 'off'
|
||
to: 'on'
|
||
actions:
|
||
- if:
|
||
- alias: Is Corban home?
|
||
condition: state
|
||
entity_id: person.corban
|
||
state: home
|
||
then:
|
||
- alias: Notify Corban
|
||
action: script.trash_reminder_send_notification_to_variable
|
||
data:
|
||
notify_device: corban
|
||
dismiss_notification: false
|
||
- if:
|
||
- alias: Is Maggie home?
|
||
condition: state
|
||
entity_id: person.maggie
|
||
state: home
|
||
then:
|
||
- alias: Notify Maggie
|
||
action: script.trash_reminder_send_notification_to_variable
|
||
data:
|
||
notify_device: maggie
|
||
dismiss_notification: false
|
||
- id: d43927da-35b6-4a59-9f6f-357f43346eb8
|
||
alias: Trash Reminder - Dismiss notifications based on boolean
|
||
triggers:
|
||
- trigger: state
|
||
entity_id: input_boolean.trash_reminder_reminding
|
||
from: 'on'
|
||
to: 'off'
|
||
actions:
|
||
- alias: Clear notifications
|
||
action: script.trash_reminder_send_notification_to_variable
|
||
data:
|
||
notify_device: adult_phones
|
||
dismiss_notification: true
|
||
- id: 6d16fbf8-ccb9-4e80-ac9b-99065bd6766c
|
||
alias: Trash Reminder - Acknowledge alert from notification
|
||
triggers:
|
||
- trigger: event
|
||
event_type: mobile_app_notification_action
|
||
event_data:
|
||
action: TRASH_REMINDER_ACK
|
||
conditions:
|
||
- alias: Notification active
|
||
condition: state
|
||
entity_id: input_boolean.trash_reminder_reminding
|
||
state: 'on'
|
||
actions:
|
||
- alias: Turn off boolean
|
||
action: input_boolean.turn_off
|
||
target:
|
||
entity_id: input_boolean.trash_reminder_reminding
|
||
- id: 44585217-8bfd-4dda-94c3-72f187bd8ff1
|
||
alias: Trash Reminder - Send delayed notification if someone gets home
|
||
mode: parallel
|
||
triggers:
|
||
- trigger: state
|
||
entity_id: person.corban
|
||
to: home
|
||
id: corban
|
||
- trigger: state
|
||
entity_id: person.maggie
|
||
to: home
|
||
id: maggie
|
||
conditions:
|
||
- alias: Notification active
|
||
condition: state
|
||
entity_id: input_boolean.trash_reminder_reminding
|
||
state: 'on'
|
||
actions:
|
||
- alias: Notify the right person
|
||
action: script.trash_reminder_send_notification_to_variable
|
||
data:
|
||
notify_device: '{{ trigger.id }}'
|
||
dismiss_notification: false
|
||
- id: 951e9a90-2135-4c17-a791-0403a19dbcb8
|
||
alias: Trash Reminder - Dismiss notification if someone leaves home
|
||
mode: parallel
|
||
triggers:
|
||
- trigger: state
|
||
entity_id: person.corban
|
||
from: home
|
||
id: corban
|
||
- trigger: state
|
||
entity_id: person.maggie
|
||
from: home
|
||
id: maggie
|
||
conditions:
|
||
- alias: Notification active
|
||
condition: state
|
||
entity_id: input_boolean.trash_reminder_reminding
|
||
state: 'on'
|
||
actions:
|
||
- alias: Notify the right person
|
||
action: script.trash_reminder_send_notification_to_variable
|
||
data:
|
||
notify_device: '{{ trigger.id }}'
|
||
dismiss_notification: true
|
||
- alias: Notify Corban when Maggie is almost home
|
||
id: 5277f05f-3f90-4eb7-8ba2-973a54482623
|
||
triggers:
|
||
- trigger: numeric_state
|
||
entity_id: sensor.maggie_to_home_travel_time
|
||
below: 11
|
||
conditions:
|
||
- condition: state
|
||
entity_id: person.corban
|
||
state: home
|
||
- condition: state
|
||
entity_id: person.maggie
|
||
state: not_home
|
||
- condition: state
|
||
entity_id: timer.maggie_home_notification_cooldown
|
||
state: idle
|
||
- condition: time
|
||
after: 07:00:00
|
||
before: '21:00:00'
|
||
- condition: state
|
||
entity_id: input_select.home_mode
|
||
state: Home
|
||
actions:
|
||
- alias: Notify Corban
|
||
action: script.maggie_travel_time_send
|
||
data:
|
||
dismiss_notification: false
|
||
- action: timer.start
|
||
entity_id: timer.maggie_home_notification_cooldown
|
||
data:
|
||
duration: 00:10:00
|
||
- id: 380345d6-b3ab-4cc1-908d-741051bb8ccf
|
||
alias: Dismiss the notification after Maggie arrives
|
||
triggers:
|
||
- trigger: state
|
||
entity_id: person.maggie
|
||
to: home
|
||
for:
|
||
minutes: 1
|
||
actions:
|
||
- alias: Dismiss notification
|
||
action: script.maggie_travel_time_send
|
||
data:
|
||
dismiss_notification: true
|
||
- alias: Cat Sitter - Door Opened
|
||
id: 94d03ec3-81b3-4402-903d-3cd85ea8cf93
|
||
triggers:
|
||
- trigger: state
|
||
entity_id: binary_sensor.front_door
|
||
to: 'on'
|
||
conditions:
|
||
- condition: state
|
||
entity_id: input_select.home_mode
|
||
state: Vacation
|
||
- condition: state
|
||
entity_id: input_boolean.cat_sitter_mode
|
||
state: 'on'
|
||
actions:
|
||
- action: notify.corban
|
||
data:
|
||
title: Cat Sitter's Here
|
||
message: Front door opened. Take action?
|
||
data:
|
||
tag: vacation_cat_sitter
|
||
actions:
|
||
- action: VACATION_SITTER_HOME_UNOCCUPIED
|
||
title: Re-enable vacation mode.
|
||
activationMode: background
|
||
authenticationRequired: false
|
||
destructive: false
|
||
behavior: default
|
||
- action: VACATION_SITTER_HOME_CLEAR
|
||
title: We're home. Reset.
|
||
activationMode: background
|
||
authenticationRequired: false
|
||
destructive: false
|
||
behavior: default
|
||
- alias: Cat Sitter - Unoccupied Notification Clicked
|
||
id: 80c08868-f03b-4fb8-bff2-e169f3c6bbb5
|
||
triggers:
|
||
- trigger: event
|
||
event_type: mobile_app_notification_action
|
||
event_data:
|
||
action: VACATION_SITTER_HOME_UNOCCUPIED
|
||
actions:
|
||
- action: input_select.select_option
|
||
data:
|
||
entity_id: input_select.home_mode
|
||
option: Vacation
|
||
- alias: Cat Sitter - Reset Notification Clicked
|
||
id: ac5ed0e3-798e-4682-ba51-9fc54eb309f6
|
||
triggers:
|
||
- trigger: event
|
||
event_type: mobile_app_notification_action
|
||
event_data:
|
||
action: VACATION_SITTER_HOME_CLEAR
|
||
actions:
|
||
- action: input_select.select_option
|
||
data:
|
||
entity_id: input_select.home_mode
|
||
option: Home
|
||
- action: input_boolean.turn_off
|
||
entity_id: input_boolean.cat_sitter_mode
|
||
- alias: Schedule - Enable/Disable Automations
|
||
id: f09c1102-a64e-469c-bc7b-1ef5e0a9ef90
|
||
triggers:
|
||
- trigger: state
|
||
entity_id: input_boolean.vacation_mode_light_schedule
|
||
actions:
|
||
- choose:
|
||
- conditions: '{{ trigger.to_state.state == ''on'' }}'
|
||
sequence:
|
||
- action: homeassistant.turn_on
|
||
entity_id: group.vacation_schedule_automations
|
||
- conditions: '{{ trigger.to_state.state == ''off'' }}'
|
||
sequence:
|
||
- action: homeassistant.turn_off
|
||
entity_id: group.vacation_schedule_automations
|
||
- alias: Schedule - Disable When Vacation Mode is Disabled
|
||
id: 8adc1a54-a9de-43f6-bc08-9037b230e574
|
||
triggers:
|
||
- trigger: state
|
||
entity_id: input_select.home_mode
|
||
from: Vacation
|
||
actions:
|
||
- action: input_boolean.turn_off
|
||
entity_id: input_boolean.vacation_mode_light_schedule
|
||
- alias: Schedule - 1 - Some Lights On
|
||
id: 15766a62-8506-4300-b76a-7beac8dbe97f
|
||
triggers:
|
||
- trigger: time
|
||
at: '17:33:00'
|
||
conditions:
|
||
- condition: state
|
||
entity_id: input_boolean.vacation_mode_light_schedule
|
||
state: 'on'
|
||
actions:
|
||
- action: light.turn_on
|
||
data:
|
||
entity_id: light.corner_lamp
|
||
brightness_pct: 80
|
||
- alias: Schedule - 2 - Dim for movie
|
||
id: 629411da-48de-4ffe-9e17-7d32370f2b8d
|
||
triggers:
|
||
- trigger: time
|
||
at: '19:26:00'
|
||
conditions:
|
||
- condition: state
|
||
entity_id: input_boolean.vacation_mode_light_schedule
|
||
state: 'on'
|
||
actions:
|
||
- action: light.turn_on
|
||
data:
|
||
entity_id: light.corner_lamp
|
||
brightness_pct: 40
|
||
- alias: Schedule - 3 - Maggs to bed
|
||
id: 7b57bfde-dbbc-43d4-86f5-6b15ec94d44e
|
||
triggers:
|
||
- trigger: time
|
||
at: '21:49:00'
|
||
conditions:
|
||
- condition: state
|
||
entity_id: input_boolean.vacation_mode_light_schedule
|
||
state: 'on'
|
||
actions:
|
||
- action: light.turn_on
|
||
data:
|
||
entity_id: light.front_entry_lights
|
||
- alias: Schedule - 4 - Maggs sleep
|
||
id: a5428791-727a-4e3d-a137-5eae0db3a9f8
|
||
triggers:
|
||
- trigger: time
|
||
at: '22:15:00'
|
||
conditions:
|
||
- condition: state
|
||
entity_id: input_boolean.vacation_mode_light_schedule
|
||
state: 'on'
|
||
actions:
|
||
- action: light.turn_off
|
||
data:
|
||
entity_id: light.front_entry_lights
|
||
- alias: Schedule - 5 - Everything off
|
||
id: 29494677-5ec8-407d-a5a9-adda62a9eb39
|
||
triggers:
|
||
- trigger: time
|
||
at: '22:32:00'
|
||
conditions:
|
||
- condition: state
|
||
entity_id: input_boolean.vacation_mode_light_schedule
|
||
state: 'on'
|
||
actions:
|
||
- action: light.turn_off
|
||
data:
|
||
entity_id: light.corner_lamp
|
||
- alias: Remind to enable vacation mode
|
||
id: fecb932d-1057-4dcd-86ef-02aa781ad1cb
|
||
triggers:
|
||
- trigger: state
|
||
entity_id: group.adults
|
||
to: not_home
|
||
for: '24:00:00'
|
||
conditions:
|
||
- condition: state
|
||
entity_id: input_select.home_mode
|
||
state:
|
||
- Home
|
||
- Away
|
||
actions:
|
||
- action: notify.corban
|
||
data:
|
||
title: Are you on vacation?
|
||
message: Would you like to turn on vacation mode?
|
||
data:
|
||
tag: vacation_mode_enable
|
||
actions:
|
||
- action: VACATION_MODE_ENABLE
|
||
title: Yes, turn on.
|
||
activationMode: background
|
||
authenticationRequired: false
|
||
destructive: false
|
||
behavior: default
|
||
- alias: Turn on vacation mode notification clicked
|
||
id: 4d882b21-3b3e-4623-a56a-a0613e116f2d
|
||
triggers:
|
||
- trigger: event
|
||
event_type: mobile_app_notification_action
|
||
event_data:
|
||
action: VACATION_MODE_ENABLE
|
||
actions:
|
||
- action: input_select.select_option
|
||
data:
|
||
entity_id: input_select.home_mode
|
||
option: Vacation
|
||
- alias: Remind us to turn off vacation mode when we get home
|
||
id: 6ef4ff8e-8071-40b8-a733-dc82174b4cdc
|
||
triggers:
|
||
- trigger: state
|
||
entity_id: group.adults
|
||
to: home
|
||
conditions:
|
||
- condition: state
|
||
entity_id: input_select.home_mode
|
||
state: Vacation
|
||
actions:
|
||
- action: notify.adult_ios_phones
|
||
data:
|
||
title: Welcome back!
|
||
message: Turn off vacation mode?
|
||
data:
|
||
tag: vacation_mode_disable
|
||
actions:
|
||
- action: VACATION_MODE_DISABLE
|
||
title: Yes, turn off.
|
||
activationMode: background
|
||
authenticationRequired: false
|
||
destructive: false
|
||
behavior: default
|
||
- alias: Turn off vacation mode notification clicked
|
||
id: 89fa50e0-26af-422b-b527-fae14c20da8b
|
||
triggers:
|
||
- trigger: event
|
||
event_type: mobile_app_notification_action
|
||
event_data:
|
||
action: VACATION_MODE_DISABLE
|
||
actions:
|
||
- action: input_select.select_option
|
||
data:
|
||
entity_id: input_select.home_mode
|
||
option: Home
|
||
- action: notify.adult_ios_phones
|
||
data:
|
||
message: clear_notification
|
||
data:
|
||
tag: vacation_mode_disable
|
||
- alias: Notify when door opened while on vacation
|
||
id: e7e99aed-348c-4fb8-b607-df0b902f1387
|
||
triggers:
|
||
- trigger: state
|
||
entity_id: group.exterior_doors
|
||
to: 'on'
|
||
conditions:
|
||
- condition: state
|
||
entity_id: input_select.home_mode
|
||
state: Vacation
|
||
- condition: state
|
||
entity_id: input_boolean.cat_sitter_mode
|
||
state: 'off'
|
||
actions:
|
||
- action: notify.corban
|
||
data:
|
||
title: 'Warning: Door Opened'
|
||
message: 'Exterior door(s) open: {{ expand("group.exterior_doors") | selectattr(''state'',''eq'',''on'')
|
||
| map(attribute=''name'') | list | join(", ") }}'
|
||
data:
|
||
tag: vacation_alarm
|
||
actions:
|
||
- action: VACATION_ALARM
|
||
title: Trigger Alarm
|
||
activationMode: background
|
||
authenticationRequired: false
|
||
destructive: true
|
||
behavior: default
|
||
- action: VACATION_MODE_DISABLE
|
||
title: Disable Vacation Mode
|
||
activationMode: background
|
||
authenticationRequired: false
|
||
destructive: false
|
||
behavior: default
|
||
- alias: Vacation Alarm Notification Action
|
||
id: fb1b06e3-4897-4d16-98bf-a66cef5f414d
|
||
triggers:
|
||
- trigger: event
|
||
event_type: mobile_app_notification_action
|
||
event_data:
|
||
action: VACATION_ALARM
|
||
actions:
|
||
- action: tts.cloud_say
|
||
entity_id: media_player.kitchen_homepod
|
||
data_template:
|
||
message: Intruder. The owner has been notified.
|
||
- delay:
|
||
seconds: 15
|
||
- action: tts.cloud_say
|
||
entity_id: media_player.kitchen_homepod
|
||
data_template:
|
||
message: Intruder. The owner has been notified.
|
||
- alias: Remind Corban to run the vacuum upstairs
|
||
id: e3cb3255-914c-458c-83e6-d400d5ec50b8
|
||
triggers:
|
||
- trigger: time
|
||
at: '12:00:00'
|
||
conditions:
|
||
- condition: time
|
||
weekday:
|
||
- mon
|
||
- wed
|
||
- fri
|
||
- alias: Home Occupied
|
||
condition: state
|
||
entity_id: input_select.home_mode
|
||
state: Home
|
||
actions:
|
||
- action: notify.corban
|
||
data:
|
||
title: Vacuum Upstairs
|
||
message: Hold for options.
|
||
data:
|
||
group: run_vacuum
|
||
actions:
|
||
- action: VACUUM_FULL_CLEAN
|
||
title: Clean Upstairs
|
||
activationMode: background
|
||
authenticationRequired: false
|
||
destructive: false
|
||
behavior: default
|
||
- action: VACUUM_SKIP
|
||
title: Skip This Cycle
|
||
activationMode: background
|
||
authenticationRequired: false
|
||
destructive: false
|
||
behavior: default
|
||
- alias: Run vacuum full clean from notification
|
||
id: 9df6c398-3721-4f52-9ace-b7082489c551
|
||
triggers:
|
||
- trigger: event
|
||
event_type: mobile_app_notification_action
|
||
event_data:
|
||
action: VACUUM_FULL_CLEAN
|
||
actions:
|
||
- action: vacuum.start
|
||
target:
|
||
entity_id: vacuum.valetudo_eve
|
||
- alias: Wait for the vacuum to get off the dock
|
||
delay:
|
||
minutes: 1
|
||
- alias: Wait for clean to complete
|
||
wait_template: '{{ is_state(''vacuum.valetudo_eve'', ''docked'') }}'
|
||
timeout:
|
||
minutes: 90
|
||
- choose:
|
||
- conditions: '{{ not wait.completed }}'
|
||
sequence:
|
||
- action: script.vacuum_alert_timeout
|
||
default:
|
||
- action: notify.corban
|
||
data:
|
||
title: Empty Eve's Bin
|
||
message: Are you ready to empty the vacuum's bin?
|
||
data:
|
||
group: run_vacuum
|
||
actions:
|
||
- action: VACUUM_GOTO_DUMP_SPOT
|
||
title: Go to Pickup Spot
|
||
activationMode: background
|
||
authenticationRequired: false
|
||
destructive: false
|
||
behavior: default
|
||
- alias: Vacuum Reminder - Go To Dump Spot from Notification
|
||
id: f2fb73d1-444a-440d-b1f4-4b226657c94f
|
||
triggers:
|
||
- trigger: event
|
||
event_type: mobile_app_notification_action
|
||
event_data:
|
||
action: VACUUM_GOTO_DUMP_SPOT
|
||
actions:
|
||
- action: script.vacuum_dump_process
|
||
- script: null
|
||
- alias: Show map when Maggie's away from home
|
||
id: 229ee037-4e8d-43bc-a5ab-acd4f19bb2a0
|
||
triggers:
|
||
- trigger: state
|
||
entity_id: person.maggie
|
||
to: not_home
|
||
for: 00:01:00
|
||
actions:
|
||
- action: input_boolean.turn_on
|
||
data:
|
||
entity_id: input_boolean.wall_display_show_map
|
||
- alias: Hide map when Maggie gets home or to work
|
||
id: df202fb6-6230-4c51-bcc5-18572973fbba
|
||
triggers:
|
||
- trigger: state
|
||
entity_id: person.maggie
|
||
to:
|
||
- home
|
||
- L3Harris
|
||
- Clay Studio
|
||
for: 00:01:00
|
||
actions:
|
||
- action: input_boolean.turn_off
|
||
data:
|
||
entity_id: input_boolean.wall_display_show_map
|
||
- alias: Turn on the wall display in the morning
|
||
id: ec56904d-4cc0-4966-9b98-8c790bf6e76d
|
||
triggers:
|
||
- trigger: time
|
||
at: 06:01:00
|
||
conditions:
|
||
- condition: state
|
||
entity_id: input_select.home_mode
|
||
state: Home
|
||
actions:
|
||
- action: light.turn_on
|
||
data:
|
||
entity_id: light.tablet_wall_display_screen
|
||
- alias: Notify if the wall display comes unplugged
|
||
id: 6885c896-0a99-4cbe-bbf5-16fc703f1c32
|
||
triggers:
|
||
- trigger: state
|
||
entity_id: sensor.tablet_wall_display_device_info
|
||
attribute: plugged
|
||
from: true
|
||
to: false
|
||
for: 00:00:30
|
||
actions:
|
||
- action: notify.corban
|
||
data:
|
||
title: Wall Display Unplugged
|
||
message: The wall display has been unplugged for at least 30 seconds.
|