AutomationDataset/cturra/cturra_automations.yaml

2432 lines
68 KiB
YAML

- id: '1611982176739'
alias: 'System: SSL Certificate Renewal'
description: renew ssl certificate from letsencrypt.
trigger:
- at: 00:02
platform: time
condition: []
action:
- data:
addon: core_letsencrypt
action: hassio.addon_restart
mode: single
- id: '1612291452533'
alias: 'Shed: Plant Light Controls'
description: used when Rosemary plant is brought indoors during the winter.
trigger:
- platform: sun
event: sunrise
id: shed_plant_light_on
- platform: event
event_type: timer.finished
event_data:
entity_id: timer.shed_indoor_plant_light_on
id: shed_plant_light_off
condition:
- condition: state
entity_id: input_boolean.shed_indoor_plant_light
state: 'on'
action:
- choose:
- conditions:
- condition: trigger
id:
- shed_plant_light_on
sequence:
- action: timer.start
data: {}
target:
entity_id: timer.shed_indoor_plant_light_on
- action: switch.turn_on
target:
entity_id: switch.plg_shed_utility
data: {}
- conditions:
- condition: trigger
id:
- shed_plant_light_off
sequence:
- action: switch.turn_off
target:
entity_id: switch.plg_shed_utility
data: {}
mode: single
- id: '1612292614712'
alias: 'Kitchen Speakers: ON when music starts playing'
description: ''
trigger:
- platform: state
entity_id: media_player.kitchen_speaker
to: playing
for: 00:00:01
condition:
- condition: state
state: 'off'
entity_id: switch.plg_kitchen_speaker
action:
- action: switch.turn_on
data: {}
target:
entity_id: switch.plg_kitchen_speaker
mode: single
- id: '1612292752882'
alias: 'Kitchen Speakers: Off when music no longer playing'
description: ''
trigger:
- platform: state
entity_id: media_player.kitchen_speaker
from: playing
to: idle
for: 00:00:30
- platform: state
entity_id: media_player.kitchen_speaker
to: 'off'
condition:
- condition: state
state: 'on'
entity_id: switch.plg_kitchen_speaker
action:
- action: switch.turn_off
data: {}
target:
entity_id: switch.plg_kitchen_speaker
mode: single
- id: '1612292819059'
alias: 'House: Indoor Lights on at sunset'
description: ''
triggers:
- event: sunset
trigger: sun
conditions: []
actions:
- action: light.turn_on
target:
entity_id:
- light.blb_kidsbedroom_lamp
- light.blb_main_bedroom_floor_lamp
data:
transition: 6
brightness_pct: 50
rgb_color:
- 129
- 173
- 255
- action: switch.turn_on
data: {}
target:
entity_id:
- switch.fan_family_room_airpurifier_night_mode
- switch.fan_main_bedroom_airpurifier_night_mode
- switch.plg_familyroom_cabinetlight
- switch.sw_kitchen_sinklight
- switch.family_room_garland_light
- if:
- condition: state
entity_id: input_boolean.christmas_lights_indoors
state: 'on'
then:
- action: switch.turn_on
data: {}
target:
entity_id:
- switch.sw_familyroom_christmastree
- switch.sw_familyroom_cornerlight
mode: single
- id: '1612292887886'
alias: 'House: Indoor Devices off for the night check'
description: turn off any devices that might have been left on over night.
triggers:
- at: 01:01:00
trigger: time
conditions: []
actions:
- action: switch.turn_off
data: {}
target:
entity_id:
- switch.plg_familyroom_cabinetlight
- switch.sw_kitchen_sinklight
- switch.family_room_garland_light
- action: switch.turn_on
data: {}
target:
entity_id:
- switch.garage_house_door_lock
- switch.house_front_door_lock
mode: single
- id: '1612295061627'
alias: 'Outside: Lights Off at sunrise'
description: turn off outdoor lights shortly before sunrise.
trigger:
- platform: sun
event: sunrise
offset: -00:15:00
condition: []
action:
- action: light.turn_off
target:
entity_id: light.group_driveway_lights
data:
transition: 2
- action: light.turn_off
data: {}
target:
entity_id: light.front_door_ring_light
mode: single
- id: '1612298561421'
alias: 'Main Bedroom: Climate controls'
description: ''
trigger:
- platform: time_pattern
minutes: /10
condition:
- condition: state
entity_id: input_boolean.main_bedroom_heater
state: 'on'
action:
- choose:
- conditions:
- condition: and
conditions:
- condition: numeric_state
below: '21.1'
entity_id: sensor.main_bedroom_mean_temperature_calculation
- condition: state
entity_id: binary_sensor.main_bedroom_presence_sensor_timeout
state: 'on'
- condition: time
after: '22:00:00'
before: 05:29:00
- condition: state
entity_id: switch.sw_main_bedroom_heater
state: 'off'
sequence:
- action: switch.turn_on
data: {}
target:
entity_id: switch.sw_main_bedroom_heater
- conditions:
- condition: and
conditions:
- condition: time
after: 05:30:00
before: '21:59:00'
- condition: state
entity_id: switch.sw_main_bedroom_heater
state: 'on'
sequence:
- action: switch.turn_off
data: {}
target:
entity_id: switch.sw_main_bedroom_heater
default: []
mode: single
- id: '1612306243899'
alias: 'Garage Inside: Lights on when person doors opened'
description: turn on garage lights when house or side door is opened after sunset.
trigger:
- platform: state
to: 'on'
entity_id: binary_sensor.snr_garage_housedoorcontact_contact
- platform: state
entity_id: binary_sensor.snr_garage_sidedoorcontact_contact
from: 'off'
to: 'on'
condition:
- condition: and
conditions:
- condition: state
entity_id: sun.sun
state: below_horizon
- condition: state
entity_id: switch.sw_garage_ceilingmainlights
state: 'off'
for: 00:00:10
action:
- action: switch.turn_on
data: {}
target:
entity_id: switch.sw_garage_ceilingmainlights
mode: single
- id: '1612309818757'
alias: 'Garage Outside: Side light On at night with motion'
description: turn light at garage side door on when motion is detected at side of
house.
trigger:
- platform: state
entity_id: binary_sensor.snr_outside_garagesidemotion_occupancy
from: 'off'
to: 'on'
id: outside_garage_motion_on
- platform: event
event_type: timer.finished
event_data:
entity_id: timer.outside_garage_side_door_light_on
id: outside_garage_motion_off
condition: []
action:
- choose:
- conditions:
- condition: trigger
id:
- outside_garage_motion_on
- condition: state
entity_id: sun.sun
state: below_horizon
sequence:
- action: timer.start
target:
entity_id: timer.outside_garage_side_door_light_on
data: {}
- action: switch.turn_on
target:
entity_id: switch.sw_outside_garagesidedoorlight
data: {}
- conditions:
- condition: trigger
id:
- outside_garage_motion_off
sequence:
- action: switch.turn_off
target:
entity_id: switch.sw_outside_garagesidedoorlight
data: {}
mode: restart
- id: '1612462343806'
alias: 'Garage Inside: Dehumidifier off when vehicle door opened'
description: turn off dehumidifier when garage vehicle door is opened.
trigger:
- platform: state
entity_id: switch.sw_garage_vehicledoorcontact
from: 'off'
to: 'on'
for: 00:00:20
condition:
- condition: state
entity_id: switch.plg_garage_dehumidifier
state: 'on'
action:
- action: switch.turn_off
data: {}
target:
entity_id: switch.plg_garage_dehumidifier
mode: single
- id: '1612462859674'
alias: 'Garage Inside: Dehumidifier check when vehicle door closes'
description: ''
trigger:
- platform: state
entity_id: switch.sw_garage_vehicledoorcontact
from: 'on'
to: 'off'
for: 00:00:20
condition:
- condition: and
conditions:
- condition: numeric_state
above: '65.0'
entity_id: sensor.garage_mean_humidity_calculation
- condition: state
entity_id: switch.plg_garage_dehumidifier
state: 'off'
action:
- action: switch.turn_on
data: {}
target:
entity_id: switch.plg_garage_dehumidifier
mode: single
- id: '1612463000537'
alias: 'Garage Inside: Dehumidifier on with high humidity'
description: check garage humidity every 10 minutes and turn on dehumidifier if
humidity has risen above 65% RH
trigger:
- platform: time_pattern
minutes: /10
condition:
- condition: numeric_state
above: '65.0'
entity_id: sensor.garage_mean_humidity_calculation
- condition: and
conditions:
- condition: state
entity_id: switch.plg_garage_dehumidifier
state: 'off'
- condition: state
entity_id: switch.sw_garage_vehicledoorcontact
state: 'off'
action:
- action: switch.turn_on
data: {}
target:
entity_id: switch.plg_garage_dehumidifier
mode: single
- id: '1612463100433'
alias: 'Garage Inside: Dehumidifier off with low humidity'
description: check garage humidity every 15 minutes and turn off dehumidifier if
humidity has dropped below 61% RH
trigger:
- platform: time_pattern
minutes: /15
condition:
- condition: and
conditions:
- condition: numeric_state
entity_id: sensor.garage_mean_humidity_calculation
below: '61.0'
- condition: state
entity_id: switch.plg_garage_dehumidifier
state: 'on'
for:
hours: 1
minutes: 0
seconds: 0
action:
- action: switch.turn_off
data: {}
target:
entity_id: switch.plg_garage_dehumidifier
mode: single
- id: '1613012241426'
alias: 'Office: Air Purifier on with occupancy'
description: ''
triggers:
- trigger: device
domain: mqtt
device_id: ac1685c3f906b6d35a73dd2e5a7ce265
type: action
subtype: tilt
id: tilt
conditions:
- condition: and
conditions:
- condition: state
entity_id: binary_sensor.office_presence_sensor_timeout
state: 'on'
- condition: state
entity_id: switch.plg_office_airpurifier
state: 'off'
actions:
- action: switch.turn_on
data: {}
target:
entity_id: switch.plg_office_airpurifier
mode: restart
- id: '1613012339822'
alias: 'Office: Air Purifier off when room is empty'
description: ''
trigger:
- platform: state
entity_id:
- binary_sensor.office_presence_sensor_presence
to: 'off'
for:
hours: 0
minutes: 10
seconds: 0
condition:
- condition: and
conditions:
- condition: state
entity_id: switch.plg_office_airpurifier
state: 'on'
- condition: numeric_state
entity_id: sensor.snr_outside_airquality_aqi
below: 100
- condition: numeric_state
entity_id: sensor.indoor_mean_air_quality_calculation
below: 10
action:
- action: switch.turn_off
data: {}
target:
entity_id: switch.plg_office_airpurifier
mode: single
- id: '1613958937211'
alias: 'House: Nofity if water leak detected'
description: send notification to everyone, including the TV, if water leak is detected.
triggers:
- entity_id: binary_sensor.group_leak_sensors
to: 'on'
trigger: state
conditions: []
actions:
- action: notify.grp_anne_chris_phones
data:
title: ❗💧 Water Detected
message: Water detected at {{ triggered_leak_sensor }} sensor.
data:
push:
sound:
name: default
critical: 1
volume: 1
- action: mqtt.publish
data:
topic: awtrix/CLC_Kitchen/notify
payload: "{\n \"text\": \"Water at {{ triggered_leak_sensor }}\",\n \"icon\"\
: \"555\",\n \"pushIcon\": \"2\",\n \"repeat\": 2,\n \"scrollSpeed\": 50,\n\
\ \"rtttl\": \"siren:d=4,o=5,b=100:d,e\",\n \"loopSound\": true\n}"
- action: notify.grp_all_tvs
data:
message: ALERT! Water detected at {{ triggered_leak_sensor }} sensor.
variables:
triggered_leak_sensor: "{% for entity in trigger.to_state.attributes.entity_id\
\ %}\n {% if is_state(entity, 'on') %}\n {{ state_attr(entity, 'friendly_name')\
\ }}\n {% endif %}\n{% endfor %}\n"
mode: single
- id: '1616274628046'
alias: 'Kitchen: Espresso Machine On in the morning'
description: turn on the espresso machine in the morning (between 05:00 - 10:00)
when chris' iphone is removed from the charger for 1 minute.
trigger:
- platform: state
entity_id:
- sensor.turraphone_battery_state
to: Not Charging
for:
hours: 0
minutes: 1
seconds: 0
- platform: state
entity_id:
- sensor.toothbrush_chris_toothbrush_state
to: running
for:
hours: 0
minutes: 0
seconds: 10
condition:
- condition: and
conditions:
- condition: state
state: home
entity_id: device_tracker.turraphone
- condition: time
before: '10:00:00'
after: 05:00:00
- condition: state
state: 'off'
entity_id: switch.plg_kitchen_espressomachine
action:
- action: switch.turn_on
target:
entity_id: switch.plg_kitchen_espressomachine
data: {}
mode: single
- id: '1616875296550'
alias: 'Crawlspace: Notify when locker door opened'
description: when locker door is opened notify chris' iphone.
trigger:
- platform: state
to: 'on'
for: 00:00:02
entity_id: binary_sensor.snr_crawlspace_lockerdoorcontact_contact
condition: []
action:
- action: notify.mobile_app_turraphone
data:
title: ❗🚪 Locker Door Open
message: Locker Door has been opened
data:
push:
sound:
name: default
critical: 1
volume: 1
mode: single
- id: '1617333806988'
alias: 'Shed: Flood Light on at night with motion'
description: turn on shed flood light 15 minutes after sun is below the horizon
and keep on for 5 minutes after motion is no longer detected.
trigger:
- platform: state
to: 'on'
entity_id: binary_sensor.snr_outside_shedmotion_occupancy
id: outside_shed_floodlight_on
- platform: event
event_type: timer.finished
event_data:
entity_id: timer.outside_shed_flood_light_on
id: outside_shed_floodlight_off
condition:
- condition: state
entity_id: sun.sun
state: below_horizon
for: 00:15:00
action:
- choose:
- conditions:
- condition: trigger
id:
- outside_shed_floodlight_on
sequence:
- action: timer.start
target:
entity_id: timer.outside_shed_flood_light_on
data: {}
- action: switch.turn_on
target:
entity_id: switch.sw_shed_floodlight
data: {}
- conditions:
- condition: trigger
id:
- outside_shed_floodlight_off
sequence:
- action: switch.turn_off
target:
entity_id: switch.sw_shed_floodlight
data: {}
mode: restart
- id: '1619640982634'
alias: 'Shed: Notify when door left open at night'
description: notify chris' phone if either shed door is left open for 5 minutes
when the time is after 22:30.
trigger:
- platform: time_pattern
minutes: /10
condition:
- condition: and
conditions:
- condition: state
entity_id: binary_sensor.group_shed_doors
state: 'on'
for:
hours: 0
minutes: 5
seconds: 0
- condition: time
after: '22:30:00'
action:
- action: notify.mobile_app_turraphone
data:
message: '{{ triggered_door_sensor }} has been left open'
title: ❗🚪 Shed Door Open
data:
push:
sound:
name: default
critical: 1
volume: 1
variables:
triggered_door_sensor: "{% for entity in states.binary_sensor.group_shed_doors.attributes.entity_id\
\ %}\n {% if is_state(entity,'on') %}\n {{ state_attr(entity, 'friendly_name')\
\ }}\n {% endif %}\n{% endfor %}\n"
mode: single
- id: '1619814582936'
alias: 'Shed: Fan on when door is opened'
description: turn on shed exhaust fan for 10 minutes when the door is opened.
trigger:
- platform: state
entity_id: binary_sensor.snr_shed_doorcontact_contact
from: 'off'
to: 'on'
condition:
- condition: and
conditions:
- condition: state
entity_id: switch.sw_shed_fan
state: 'off'
- condition: numeric_state
entity_id: sensor.snr_outside_temperature
above: 0
action:
- action: switch.turn_on
data: {}
target:
entity_id: switch.sw_shed_fan
- delay:
hours: 0
minutes: 10
seconds: 0
milliseconds: 0
- action: switch.turn_off
data: {}
target:
entity_id: switch.sw_shed_fan
mode: single
- id: '1623889405239'
alias: 'Garage Inside: Offer to open vehicle door on return home'
description: notify chris' phone when it returns home from away and offer to open
the garage door.
trigger:
- platform: state
entity_id: device_tracker.turraphone
from: not_home
to: home
condition:
- condition: state
entity_id: switch.sw_garage_vehicledoorcontact
state: 'off'
action:
- action: notify.mobile_app_turraphone
data:
title: Welcome Home!
message: Would you like to open the Garage Door?
data:
actions:
- action: OPEN_DOOR
title: Yes Please
- action: NO_ACTION
title: No Thanks
- wait_for_trigger:
- platform: event
event_type: mobile_app_notification_action
event_data:
action: OPEN_DOOR
timeout: 00:02:00
continue_on_timeout: false
- action: cover.open_cover
target:
entity_id: cover.garage_vehicledoor
mode: single
- id: '1624131994582'
alias: 'Garage Inside: notify when vehicle door opened'
description: send a notifications when the garage door has been opened.
triggers:
- entity_id: switch.sw_garage_vehicledoorcontact
from: 'off'
to: 'on'
for: 00:00:10
trigger: state
conditions: []
actions:
- action: notify.mobile_app_turraphone
data:
title: 🚪 Garage Door
message: The Garage Door has been opened.
data:
entity_id: camera.cam_garage
- action: mqtt.publish
data:
topic: awtrix/CLC_Kitchen/notify
payload: "{\n \"text\": \"Garage Door opened\",\n \"icon\": \"555\",\n \"\
pushIcon\": \"2\",\n \"repeat\": 2,\n \"scrollSpeed\": 50\n}"
mode: single
- id: '1630907999593'
alias: 'Garage Inside: HVAC update outside temperature'
description: publish outdoor temperature and time to thermostat mqtt topic
triggers:
- minutes: /10
trigger: time_pattern
conditions: []
actions:
- data:
topic: zigbee2mqtt-pi/HVAC_Garage_Thermostat/set/thermostat_outdoor_temperature
payload: '{{ states("sensor.snr_outside_temperature") }}'
action: mqtt.publish
- data:
topic: zigbee2mqtt-pi/HVAC_Garage_Thermostat/set/thermostat_time
payload: ''
action: mqtt.publish
mode: restart
- id: '1631040582872'
alias: 'Garage Inside: HVAC off when vehicle door opened'
description: turn heating mode off on thermostat every time door is opened if outside
temp is lower than 11c to ensure heater doesn't turn on while vehicle door is
open.
triggers:
- entity_id: switch.sw_garage_vehicledoorcontact
from: 'off'
to: 'on'
for:
hours: 0
minutes: 0
seconds: 2
trigger: state
conditions:
- condition: numeric_state
entity_id: sensor.snr_outside_temperature
below: '11'
actions:
- action: climate.set_hvac_mode
data:
hvac_mode: 'off'
target:
entity_id: climate.hvac_garage_thermostat
mode: single
- id: '1631040781299'
alias: 'Garage Inside: HVAC on when vehicle door closed'
description: wait a couple mins after vehicle door closes to ensure temp normalizes,
if current is below target temp, before returning the thermostat to heating mode.
triggers:
- entity_id: switch.sw_garage_vehicledoorcontact
from: 'on'
to: 'off'
for:
hours: 0
minutes: 0
seconds: 2
trigger: state
conditions:
- condition: state
entity_id: climate.hvac_garage_thermostat
state: 'off'
actions:
- delay:
hours: 0
minutes: "{% set current_temp = state_attr('climate.hvac_garage_thermostat','current_temperature')\
\ %} {% set target_temp = state_attr('climate.hvac_garage_thermostat','temperature')\
\ %} {% if is_number(current_temp) and is_number(target_temp) %}\n {% set\
\ temp_diff = current_temp | float - target_temp | float %}\n {# delay if\
\ temp diff is lower to give room time for normalization #}\n {% if (temp_diff\
\ >= 3.0) %}\n 0\n {% elif (temp_diff < 3.0) and (temp_diff > 0.0) %}\n\
\ 3\n {% else %}\n 6\n {% endif %}\n{% else %}\n {# non-numeric number\
\ returned. set a longer delay to be safe #}\n 6\n{% endif %}\n"
seconds: 0
milliseconds: 0
- action: climate.set_hvac_mode
data:
hvac_mode: heat
target:
entity_id: climate.hvac_garage_thermostat
mode: restart
- id: '1631739108301'
alias: 'Garage Inside: Notify when vehicle door left open at night'
description: notify chris' phone if the vehicle door is left open for 5 minutes
when the time is after 22:30.
triggers:
- minutes: /10
trigger: time_pattern
conditions:
- condition: and
conditions:
- condition: state
entity_id: switch.sw_garage_vehicledoorcontact
state: 'on'
for: 00:05:00
- condition: time
after: '22:30:00'
actions:
- action: notify.mobile_app_turraphone
data:
message: Garage Vehicle Door has been left open
title: ❗🚪 Garage Vehicle Door Open
data:
push:
sound:
name: default
critical: 1
volume: 1
mode: single
- id: '1634070537275'
alias: 'Crawlspace: Locker climate controls'
description: ''
trigger:
- platform: time_pattern
hours: /1
condition: []
action:
- choose:
- conditions:
- condition: and
conditions:
- condition: state
entity_id: switch.plg_crawlspace_zbrtr
state: 'on'
- condition: numeric_state
entity_id: sensor.snr_crawlspace_locker_climatedisplay_humidity
below: '49.0'
sequence:
- action: switch.turn_off
data: {}
target:
entity_id: switch.plg_crawlspace_zbrtr
- conditions:
- condition: and
conditions:
- condition: state
entity_id: switch.plg_crawlspace_zbrtr
state: 'off'
- condition: numeric_state
entity_id: sensor.snr_crawlspace_locker_climatedisplay_humidity
above: '52.0'
sequence:
- action: switch.turn_on
data: {}
target:
entity_id: switch.plg_crawlspace_zbrtr
default: []
mode: single
- id: '1634077407692'
alias: 'House: Announce if water leak detected'
description: Announce on Sonos speakers if water leak is detected.
trigger:
- platform: state
entity_id: binary_sensor.group_leak_sensors
to: 'on'
condition: []
action:
- repeat:
count: '3'
sequence:
- action: script.text_to_speech_on_sonos
data:
entity_id: media_player.main_bedroom_speaker, media_player.family_room_speaker
volume_level: 0.8
min_wait: 1
message: ALERT. Water detected at {{ triggered_leak_sensor }} sensor.
- delay:
hours: 0
minutes: 0
seconds: 3
milliseconds: 0
variables:
triggered_leak_sensor: "{% for entity in trigger.to_state.attributes.entity_id\
\ %}\n {% if is_state(entity, 'on') %}\n {{ state_attr(entity, 'friendly_name')\
\ }}\n {% endif %}\n{% endfor %}\n"
mode: single
- id: '1634327400385'
alias: 'Porch: Lights Off at midnight'
description: turn porch lights off at midnight.
trigger:
- platform: time
at: '23:59:00'
condition: []
action:
- action: light.turn_off
data:
transition: 2
target:
entity_id: light.group_porch_lights
mode: single
- id: '1635620369445'
alias: 'Crawlspace: Entrance light ON when door opened'
description: turn on crawlspace entrance lights when door is opened.
trigger:
- platform: state
from: 'off'
to: 'on'
entity_id: binary_sensor.snr_crawlspace_entrancedoorcontact_contact
condition:
- condition: state
entity_id: switch.sw_crawlspace_entrancelight
state: 'off'
for:
hours: 0
minutes: 0
seconds: 10
action:
- action: switch.turn_on
target:
entity_id: switch.sw_crawlspace_entrancelight
mode: single
- id: '1638686806697'
alias: 'Garage Inside: Lights on when vehicle doors opened after sunset'
description: turn on garage lights when vehicle door is opened after sunset (returning
home only).
trigger:
- platform: state
entity_id: switch.sw_garage_vehicledoorcontact
to: 'on'
condition:
- condition: and
conditions:
- condition: state
entity_id: sun.sun
state: below_horizon
- condition: state
entity_id: binary_sensor.snr_garage_housedoorcontact_contact
state: 'off'
for:
hours: 0
minutes: 10
seconds: 0
- condition: state
entity_id: switch.sw_garage_ceilingmainlights
state: 'off'
action:
- action: switch.turn_on
data: {}
target:
entity_id: switch.sw_garage_ceilingmainlights
mode: single
- id: '1642795421437'
alias: 'House: Nofity if any always on plug turned Off'
description: send notification to everyone, including the TV, if an always on plug
has been off for 1 minute
trigger:
- platform: state
entity_id: switch.group_always_on_plugs
to: 'off'
for:
hours: 0
minutes: 5
seconds: 0
condition: []
action:
- action: notify.mobile_app_turraphone
data:
title: ❗🔌 Plug Power OFF
message: Power OFF detected at {{ triggered_plug }}.
data:
push:
sound:
name: default
critical: 1
volume: 1
- action: notify.grp_all_tvs
data:
message: ALERT! Power OFF at {{ triggered_plug }}.
mode: single
variables:
triggered_plug: "{% for entity in trigger.to_state.attributes.entity_id %}\n \
\ {# state could be: off, unavailable and none #}\n {% if not is_state(entity,\
\ 'on') %}\n {{ state_attr(entity, 'friendly_name') }}\n {% endif %}\n{%\
\ endfor %}\n"
- id: '1642826717353'
alias: 'Laundry: Washing Machine Off if water leak detected'
description: turn off power to washing machine if water leak sensor is triggered
in laundry room
trigger:
- platform: state
entity_id: binary_sensor.snr_laundry_washingmachineleak_water_leak
to: 'on'
condition: null
action:
- action: switch.turn_off
target:
entity_id: switch.plg_laundry_washingmachine
mode: single
- id: '1643213265225'
alias: 'Crawlspace: Lab light toggle when Button is pressed'
description: ''
triggers:
- trigger: device
domain: mqtt
device_id: 99cf4a4d4355f3dd5b3ad658939ae608
type: action
subtype: single
id: single
conditions: []
actions:
- action: light.toggle
target:
entity_id: light.blb_crawlspace_lab
data:
kelvin: 4500
brightness: 255
mode: single
- id: '1645572649812'
alias: 'Shed: Ventilation controls'
description: ''
trigger:
- platform: time_pattern
minutes: /15
condition: []
action:
- choose:
- conditions:
- condition: and
conditions:
- condition: state
entity_id: switch.sw_shed_fan
state: 'off'
- condition: state
entity_id: sun.sun
state: above_horizon
for:
hours: 0
minutes: 0
seconds: 0
- condition: template
value_template: "{{\n (states('sensor.snr_shed_humidity')|int(default=50)\
\ > (states('sensor.snr_outside_humidity')|int(default=50)+10))\n}}"
- condition: numeric_state
entity_id: sensor.snr_outside_temperature
above: '0'
- condition: not
conditions:
- condition: template
value_template: "{{\n 'rainy' in states('weather.pitt_meadows')\n}}"
sequence:
- action: switch.turn_on
data: {}
target:
entity_id: switch.sw_shed_fan
- conditions:
- condition: and
conditions:
- condition: state
entity_id: switch.sw_shed_fan
state: 'on'
- condition: or
conditions:
- condition: state
entity_id: sun.sun
state: below_horizon
- condition: template
value_template: "{{\n 'rainy' in states('weather.pitt_meadows')\n}}"
sequence:
- action: switch.turn_off
data: {}
target:
entity_id: switch.sw_shed_fan
- conditions:
- condition: and
conditions:
- condition: state
entity_id: switch.sw_shed_fan
state: 'off'
- condition: template
value_template: "{{\n (states('sensor.snr_shed_temperature')|int(default=10)\
\ > (states('sensor.snr_outside_temperature')|int(default=10)+10)) and\n\
\ (states('sensor.snr_shed_temperature')|int(default=10) > 20)\n}}"
sequence:
- action: switch.turn_on
data: {}
target:
entity_id: switch.sw_shed_fan
- conditions:
- condition: and
conditions:
- condition: state
entity_id: switch.sw_shed_fan
state: 'off'
- condition: state
entity_id: binary_sensor.snr_shed_doorcontact_contact
state: 'on'
sequence:
- action: switch.turn_on
data: {}
target:
entity_id: switch.sw_shed_fan
- delay:
hours: 0
minutes: 10
seconds: 0
milliseconds: 0
- action: switch.turn_off
data: {}
target:
entity_id: switch.sw_shed_fan
- conditions:
- condition: and
conditions:
- condition: state
entity_id: input_boolean.dry_garlic
state: 'on'
- condition: state
entity_id: switch.sw_shed_fan
state: 'off'
- condition: template
value_template: '{{ now().strftime("%M")|int(default=0) < 15 }}'
sequence:
- action: switch.turn_on
data: {}
target:
entity_id: switch.sw_shed_fan
- delay:
hours: 0
minutes: 10
seconds: 0
milliseconds: 0
- action: switch.turn_off
data: {}
target:
entity_id: switch.sw_shed_fan
default: []
mode: single
- id: '1645861752199'
alias: 'Outside: Front lights transition to security mode check'
description: transition lights from colours to white for security lighting
trigger:
- platform: time
at: '22:30:00'
condition:
- condition: or
conditions:
- condition: state
entity_id: input_boolean.adhoc_outside_light_colours
state: 'on'
- condition: state
entity_id: input_boolean.christmas_lights_outdoors
state: 'on'
- condition: state
entity_id: input_boolean.halloween_string_lights_outlet
state: 'on'
action:
- choose:
- conditions:
- condition: state
entity_id: input_boolean.adhoc_outside_light_colours
state: 'on'
sequence:
- action: scene.turn_on
data:
transition: 2
target:
entity_id:
- scene.driveway_bulbs_normal_colour
- scene.porch_bulbs_normal_colour_dimmed
- conditions:
- condition: or
conditions:
- condition: state
entity_id: input_boolean.christmas_lights_outdoors
state: 'on'
- condition: state
entity_id: input_boolean.halloween_string_lights_outlet
state: 'on'
sequence:
- action: switch.turn_off
data: {}
target:
entity_id: switch.rcl_outside_porchsoffit
- action: scene.turn_on
data:
transition: 2
target:
entity_id:
- scene.driveway_bulbs_normal_colour
- scene.porch_bulbs_normal_colour_dimmed
default: []
mode: single
- id: '1645862394431'
alias: 'Outside: Lights On at sunset'
description: turn on outdoor lights shortly after sunset
trigger:
- platform: sun
event: sunset
offset: 00:15:00
condition: []
action:
- choose:
- conditions:
- condition: state
entity_id: input_boolean.adhoc_outside_light_colours
state: 'on'
sequence:
- action: scene.turn_on
data:
transition: 2
target:
entity_id:
- scene.driveway_bulbs_adhoc_colours
- scene.porch_bulbs_adhoc_colours
- conditions:
- condition: state
entity_id: input_boolean.christmas_lights_outdoors
state: 'on'
sequence:
- action: scene.turn_on
data:
transition: 2
target:
entity_id:
- scene.driveway_bulbs_christmas_colours
- scene.porch_bulbs_christmas_colours
- action: switch.turn_on
data: {}
target:
entity_id: switch.rcl_outside_porchsoffit
- conditions:
- condition: state
entity_id: input_boolean.halloween_string_lights_outlet
state: 'on'
sequence:
- action: scene.turn_on
data:
transition: 2
target:
entity_id:
- scene.driveway_bulbs_halloween_colours
- scene.porch_bulbs_halloween_colours
- action: switch.turn_on
data: {}
target:
entity_id: switch.rcl_outside_porchsoffit
default:
- action: scene.turn_on
data:
transition: 2
target:
entity_id:
- scene.driveway_bulbs_normal_colour
- scene.porch_bulbs_normal_colour_dimmed
- action: light.turn_on
data: {}
target:
entity_id: light.front_door_ring_light
mode: single
- id: '1664468912980'
alias: Downstairs Bathroom Adjust Motion Light timer
description: Picks up the input helper changes and applies them back to the TASMOTA
switch via MQTT script
trigger:
- platform: state
entity_id:
- input_number.downstairs_bathroom_switch_blindtime
id: blindtime-adjusted
- platform: state
entity_id:
- input_number.downstairs_bathroom_switch_lighttime
id: lighttime-adjusted
condition: []
action:
- choose:
- conditions:
- condition: trigger
id: blindtime-adjusted
sequence:
- action: script.adjust_motion_light_timer_setting
data:
timer: blindtime
topic: SW_DownstairsBathroom_CeilingLight
duration: '{{ states(''input_number.downstairs_bathroom_switch_blindtime'')
| int }}'
- conditions:
- condition: trigger
id: lighttime-adjusted
sequence:
- action: script.adjust_motion_light_timer_setting
data:
timer: lighttime
topic: SW_DownstairsBathroom_CeilingLight
duration: '{{ states(''input_number.downstairs_bathroom_switch_lighttime'')
| int * 60 }}'
default: []
mode: single
- id: '1668805084012'
alias: 'Downstairs Bathroom: Light on with Motion'
description: ''
trigger:
- platform: state
entity_id:
- binary_sensor.snr_bathroomdown_motion_occupancy
to: 'on'
condition:
- condition: state
entity_id: switch.sw_downstairsbathroom_ceilinglight
state: 'off'
for:
hours: 0
minutes: 0
seconds: 5
action:
- action: switch.turn_on
data: {}
target:
entity_id: switch.sw_downstairsbathroom_ceilinglight
mode: single
- id: '1673384404017'
alias: 'House: Notify on high radon levels'
description: when radon level 1 day average is above 99 Bq/m³
trigger:
- platform: numeric_state
entity_id: sensor.snr_crawlspace_airquality_radon_1_day_average
above: 99
condition: []
action:
- action: notify.mobile_app_turraphone
data:
title: ❗☣️ High Radon Levels
message: High radon levels detected
data:
push:
sound:
name: default
critical: 1
volume: 1
mode: single
- id: '1675732388359'
alias: 'Ensuite: Toothbrush charge notify'
description: notify chris before toothbrush runs out of battery.
trigger:
- platform: numeric_state
entity_id: sensor.toothbrush_chris_battery_persistent
below: 15
condition: []
action:
- action: notify.mobile_app_turraphone
data:
title: 🪥🪫 Toothbrush Battery Low
message: Time to charge your toothbrush.
mode: single
- id: '1678299719527'
alias: 'House: Reset maintenance reminders'
description: ''
trigger:
- platform: state
entity_id:
- input_boolean.crawlspace_locker_dehumidifier_reset
- input_boolean.kitchen_dishwasher_cleaning_reset
- input_boolean.kitchen_espresso_machine_cleaning_reset
- input_boolean.laundry_washing_machine_cleaning_reset
- input_boolean.hvac_filter_change_reset
to: 'on'
condition: []
action:
- choose:
- conditions:
- condition: state
entity_id: input_boolean.crawlspace_locker_dehumidifier_reset
state: 'on'
sequence:
- action: input_datetime.set_datetime
target:
entity_id: input_datetime.crawlspace_locker_dehumidifier_last_dried
data:
timestamp: '{{ now().timestamp() }}'
- action: input_boolean.turn_off
data: {}
target:
entity_id: input_boolean.crawlspace_locker_dehumidifier_reset
- conditions:
- condition: state
entity_id: input_boolean.kitchen_dishwasher_cleaning_reset
state: 'on'
sequence:
- action: input_datetime.set_datetime
target:
entity_id: input_datetime.kitchen_dishwasher_last_cleaned
data:
timestamp: '{{ now().timestamp() }}'
- action: input_boolean.turn_off
data: {}
target:
entity_id: input_boolean.kitchen_dishwasher_cleaning_reset
- conditions:
- condition: state
entity_id: input_boolean.kitchen_espresso_machine_cleaning_reset
state: 'on'
sequence:
- action: input_datetime.set_datetime
target:
entity_id: input_datetime.kitchen_espresso_machine_last_cleaned
data:
timestamp: '{{ now().timestamp() }}'
- action: input_boolean.turn_off
data: {}
target:
entity_id: input_boolean.kitchen_espresso_machine_cleaning_reset
- conditions:
- condition: state
entity_id: input_boolean.laundry_washing_machine_cleaning_reset
state: 'on'
sequence:
- action: input_datetime.set_datetime
target:
entity_id: input_datetime.laundry_washing_machine_last_cleaned
data:
timestamp: '{{ now().timestamp() }}'
- action: input_boolean.turn_off
data: {}
target:
entity_id: input_boolean.laundry_washing_machine_cleaning_reset
- conditions:
- condition: state
entity_id: input_boolean.hvac_filter_change_reset
state: 'on'
sequence:
- action: input_datetime.set_datetime
target:
entity_id: input_datetime.hvac_filter_last_changed
data:
timestamp: '{{ now().timestamp() }}'
- action: input_boolean.turn_off
data: {}
target:
entity_id: input_boolean.hvac_filter_change_reset
mode: single
- id: '1678563729726'
alias: 'Porch: Notify front doorbell ring'
description: ''
trigger:
- platform: state
entity_id:
- binary_sensor.front_door_button_pressed
to: 'on'
condition: []
action:
- action: notify.mobile_app_turraphone
data:
message: Someone is at the door
title: 🔔 Front Doorbell
data:
entity_id: camera.front_door_sub
mode: single
- id: '1682884121773'
alias: 'Living Room: Remote controls'
description: control devices in living room from ikea/symfonisk remote
triggers:
- trigger: device
domain: mqtt
device_id: 31357218e6ee5e796b62f45d08027950
type: action
subtype: play_pause
id: play_pause
- trigger: device
domain: mqtt
device_id: 31357218e6ee5e796b62f45d08027950
type: action
subtype: toggle
id: toggle
- trigger: device
domain: mqtt
device_id: 31357218e6ee5e796b62f45d08027950
type: action
subtype: volume_up
id: volume_up
- trigger: device
domain: mqtt
device_id: 31357218e6ee5e796b62f45d08027950
type: action
subtype: volume_up_hold
id: volume_up_hold
- trigger: device
domain: mqtt
device_id: 31357218e6ee5e796b62f45d08027950
type: action
subtype: volume_down
id: volume_down
- trigger: device
domain: mqtt
device_id: 31357218e6ee5e796b62f45d08027950
type: action
subtype: volume_down_hold
id: volume_down_hold
- trigger: device
domain: mqtt
device_id: 31357218e6ee5e796b62f45d08027950
type: action
subtype: dots_1_initial_press
id: dots_1_initial_press
- trigger: device
domain: mqtt
device_id: 31357218e6ee5e796b62f45d08027950
type: action
subtype: dots_2_initial_press
id: dots_2_initial_press
- trigger: device
domain: mqtt
device_id: 31357218e6ee5e796b62f45d08027950
type: action
subtype: track_next
id: track_next
- trigger: device
domain: mqtt
device_id: 31357218e6ee5e796b62f45d08027950
type: action
subtype: track_previous
id: track_previous
conditions: []
actions:
- choose:
- conditions:
- condition: template
value_template: "{{\n trigger.id == 'play_pause' or\n trigger.id == 'toggle'\n\
}}"
sequence:
- if:
- condition: state
entity_id: media_player.living_room_tv
state: 'on'
- condition: state
entity_id: media_player.living_room_receiver_main_zone
state: 'on'
- condition: not
conditions:
- condition: template
value_template: "{# receiver is not set to nintendo input #}\n{{\nstate_attr('media_player.living_room_receiver_main_zone',\n\
'source') == 'AV2' \n}}"
then:
- action: media_player.select_source
metadata: {}
data:
source: AV2
target:
entity_id: media_player.living_room_receiver_main_zone
else:
- action: switch.toggle
metadata: {}
data: {}
target:
entity_id: switch.living_room_entertainment_htpc
- conditions:
- condition: template
value_template: "{{\n trigger.id == 'volume_up' or\n trigger.id == 'volume_up_hold'\
\ \n}}"
sequence:
- action: media_player.volume_set
data:
volume_level: '{% set volume = state_attr(''media_player.living_room_receiver_main_zone'',
"volume_level") + 0.005 %} {{ 1.0 if volume > 1.0 else volume }}'
entity_id: media_player.living_room_receiver_main_zone
- conditions:
- condition: template
value_template: "{{\n trigger.id == 'volume_down' or\n trigger.id == 'volume_down_hold'\n\
}}"
sequence:
- action: media_player.volume_set
data:
volume_level: '{% set volume = state_attr(''media_player.living_room_receiver_main_zone'',
"volume_level") - 0.005 %} {{ 0.0 if volume < 0.0 else volume }}'
entity_id: media_player.living_room_receiver_main_zone
- conditions:
- condition: template
value_template: "{{\n trigger.id == 'dots_1_initial_press' \n}}"
sequence:
- action: light.toggle
target:
entity_id: light.sw_livingroom_ceilinglight
data: {}
- conditions:
- condition: template
value_template: "{{\n trigger.id == 'dots_2_initial_press'\n}}"
sequence:
- if:
- condition: state
entity_id: media_player.living_room_tv
state: 'on'
- condition: state
entity_id: media_player.living_room_receiver_main_zone
state: 'on'
- condition: not
conditions:
- condition: template
value_template: "{# receiver is not set to htcp input #}\n{{\nstate_attr('media_player.living_room_receiver_main_zone',\n\
'source') == 'AV3' \n}}"
then:
- action: media_player.select_source
metadata: {}
data:
source: AV3
target:
entity_id: media_player.living_room_receiver_main_zone
else:
- action: switch.toggle
metadata: {}
data: {}
target:
entity_id: switch.living_room_entertainment_nintendo
- conditions:
- condition: template
value_template: "{% if is_state('light.sw_livingroom_ceilinglight','on') %}\n\
\ {{ trigger.id == 'track_next' }}\n{% endif %}"
sequence:
- action: light.turn_on
data:
brightness_step_pct: 10
target:
entity_id: light.sw_livingroom_ceilinglight
- conditions:
- condition: template
value_template: "{% if is_state('light.sw_livingroom_ceilinglight','on') %}\n\
\ {{ trigger.id == 'track_previous' }}\n{% endif %}"
sequence:
- action: light.turn_on
data:
brightness_step_pct: -10
target:
entity_id: light.sw_livingroom_ceilinglight
mode: single
- id: '1683261355629'
alias: 'Main Bedroom: Remote controls'
description: control devices in main bedroom from ikea/symfonisk remote
triggers:
- trigger: device
domain: mqtt
device_id: 04f696559090555013a87476d2cee5b9
type: action
subtype: play_pause
id: play_pause
- trigger: device
domain: mqtt
device_id: 04f696559090555013a87476d2cee5b9
type: action
subtype: toggle
id: toggle
- trigger: device
domain: mqtt
device_id: 04f696559090555013a87476d2cee5b9
type: action
subtype: volume_up
id: volume_up
- trigger: device
domain: mqtt
device_id: 04f696559090555013a87476d2cee5b9
type: action
subtype: volume_up_hold
id: volume_up_hold
- trigger: device
domain: mqtt
device_id: 04f696559090555013a87476d2cee5b9
type: action
subtype: volume_down
id: volume_down
- trigger: device
domain: mqtt
device_id: 04f696559090555013a87476d2cee5b9
type: action
subtype: volume_down_hold
id: volume_down_hold
- trigger: device
domain: mqtt
device_id: 04f696559090555013a87476d2cee5b9
type: action
subtype: dots_1_initial_press
id: dots_1_initial_press
- trigger: device
domain: mqtt
device_id: 04f696559090555013a87476d2cee5b9
type: action
subtype: dots_2_initial_press
id: dots_2_initial_press
- trigger: device
domain: mqtt
device_id: 04f696559090555013a87476d2cee5b9
type: action
subtype: track_next
id: track_next
- trigger: device
domain: mqtt
device_id: 04f696559090555013a87476d2cee5b9
type: action
subtype: track_previous
id: track_previous
conditions: []
actions:
- choose:
- conditions:
- condition: template
value_template: "{{\n trigger.id == 'play_pause' or\n trigger.id == 'toggle'\n\
}}"
sequence:
- action: switch.toggle
data: {}
target:
entity_id: switch.sw_main_bedroom_entertainment
- conditions:
- condition: template
value_template: "{{\n trigger.id == 'volume_up' or\n trigger.id == 'volume_up_hold'\
\ \n}}"
sequence:
- action: media_player.volume_up
data: {}
target:
entity_id: media_player.main_bedroom_speaker
- conditions:
- condition: template
value_template: "{{\n trigger.id == 'volume_down' or\n trigger.id == 'volume_down_hold'\n\
}}"
sequence:
- action: media_player.volume_down
data: {}
target:
entity_id: media_player.main_bedroom_speaker
- conditions:
- condition: template
value_template: '{{ trigger.id == ''dots_1_initial_press'' }}'
sequence:
- action: light.toggle
data: {}
target:
entity_id: light.sw_mainbedroom_ceilinglight
- conditions:
- condition: template
value_template: '{{ trigger.id == ''dots_2_initial_press'' }}'
sequence:
- action: light.toggle
data: {}
target:
entity_id: light.blb_main_bedroom_floor_lamp
- conditions:
- condition: template
value_template: "{% if is_state('light.sw_mainbedroom_ceilinglight','on')\
\ %}\n {{ trigger.id == 'track_next' }}\n{% endif %}"
sequence:
- action: light.turn_on
data:
brightness_step_pct: 10
target:
entity_id: light.sw_mainbedroom_ceilinglight
- conditions:
- condition: template
value_template: "{% if is_state('light.sw_mainbedroom_ceilinglight','on')\
\ %}\n {{ trigger.id == 'track_previous' }}\n{% endif %}"
sequence:
- action: light.turn_on
data:
brightness_step_pct: -10
target:
entity_id: light.sw_mainbedroom_ceilinglight
mode: single
- id: '1683396475246'
alias: 'Kids Bedroom: Morning Wake Up Light'
description: transition lamp light to yellow when it's time to wake up
trigger:
- platform: time
at: 07:00:00
condition:
- condition: state
entity_id: light.blb_kidsbedroom_lamp
state: 'on'
action:
- action: light.turn_on
data:
transition: 10
rgb_color:
- 254
- 251
- 0
brightness_pct: 30
target:
entity_id: light.blb_kidsbedroom_lamp
mode: single
- id: '1683494235541'
alias: 'Garage Inside: House door lock controls'
description: (un)lock door
trigger:
- platform: tag
tag_id: 0248e71d-2da6-44a5-97ee-636c87cd4469
- platform: state
entity_id:
- input_boolean.garage_house_door_lock_toggled
to: 'on'
condition: []
action:
- choose:
- conditions:
- condition: state
entity_id: lock.lck_garage_house_door
state: unlocked
sequence:
- action: lock.lock
data: {}
target:
entity_id: lock.lck_garage_house_door
- conditions:
- condition: state
entity_id: lock.lck_garage_house_door
state: locked
sequence:
- action: lock.unlock
data: {}
target:
entity_id: lock.lck_garage_house_door
- if:
- condition: state
entity_id: input_boolean.garage_house_door_lock_toggled
state: 'on'
then:
- action: input_boolean.turn_off
data: {}
target:
entity_id: input_boolean.garage_house_door_lock_toggled
mode: single
- id: '1684011953306'
alias: 'Deck: Remote Controls'
description: control multi-media from ikea/symfonisk remote
triggers:
- trigger: device
domain: mqtt
device_id: 8932c926faee51a637b3ff7707958a3c
type: action
subtype: play_pause
id: play_pause
- trigger: device
domain: mqtt
device_id: 8932c926faee51a637b3ff7707958a3c
type: action
subtype: toggle
id: toggle
- trigger: device
domain: mqtt
device_id: 8932c926faee51a637b3ff7707958a3c
type: action
subtype: volume_up
id: volume_up
- trigger: device
domain: mqtt
device_id: 8932c926faee51a637b3ff7707958a3c
type: action
subtype: volume_down
id: volume_down
- trigger: device
domain: mqtt
device_id: 8932c926faee51a637b3ff7707958a3c
type: action
subtype: dots_1_initial_press
id: dots_1_initial_press
- trigger: device
domain: mqtt
device_id: 8932c926faee51a637b3ff7707958a3c
type: action
subtype: track_next
id: track_next
- trigger: device
domain: mqtt
device_id: 8932c926faee51a637b3ff7707958a3c
type: action
subtype: track_previous
id: track_previous
conditions: []
actions:
- choose:
- conditions:
- condition: template
value_template: "{{\n trigger.id == 'play_pause' or\n trigger.id == 'toggle'\n\
}}"
sequence:
- action: mqtt.publish
data:
topic: cmnd/IRB_Shed/IRSend
payload: '{"Protocol":"PANASONIC","Bits":48,"Data":"0x40040538BC81","DataLSB":"0x220A01C3D81","Repeat":0}
'
- conditions:
- condition: template
value_template: '{{ trigger.id == ''volume_up'' }}'
sequence:
- action: mqtt.publish
data:
topic: cmnd/IRB_Shed/IRSend
payload: '{"Protocol":"PANASONIC","Bits":48,"Data":"0x400405000401","DataLSB":"0x220A0002080","Repeat":0}
'
- conditions:
- condition: template
value_template: '{{ trigger.id == ''volume_down'' }}'
sequence:
- action: mqtt.publish
data:
topic: cmnd/IRB_Shed/IRSend
payload: '{"Protocol":"PANASONIC","Bits":48,"Data":"0x400405008481","DataLSB":"0x220A0002181","Repeat":0}
'
- conditions:
- condition: template
value_template: '{{ trigger.id == ''dots_1_initial_press'' }}'
sequence:
- action: light.toggle
data: {}
target:
entity_id: light.sw_deck_ceilinglight
- conditions:
- condition: template
value_template: "{% if is_state('light.sw_deck_ceilinglight','on') %}\n {{\
\ trigger.id == 'track_next' }}\n{% endif %}"
sequence:
- action: light.turn_on
data:
brightness_step_pct: 10
target:
entity_id: light.sw_deck_ceilinglight
- conditions:
- condition: template
value_template: "{% if is_state('light.sw_deck_ceilinglight','on') %}\n {{\
\ trigger.id == 'track_previous' }}\n{% endif %}"
sequence:
- action: light.turn_on
data:
brightness_step_pct: -10
target:
entity_id: light.sw_deck_ceilinglight
- id: '1684823367096'
alias: 'Kids Bedroom: Remote controls'
description: control Ikea bulb in kids room from 5 button remote
triggers:
- trigger: device
domain: mqtt
device_id: 92244798f2ec5e133489ba9a39978d1b
type: action
subtype: toggle
id: toggle
- trigger: device
domain: mqtt
device_id: 92244798f2ec5e133489ba9a39978d1b
type: action
subtype: brightness_up_click
id: brightness_up_click
- trigger: device
domain: mqtt
device_id: 92244798f2ec5e133489ba9a39978d1b
type: action
subtype: brightness_down_click
id: brightness_down_click
- trigger: device
domain: mqtt
device_id: 92244798f2ec5e133489ba9a39978d1b
type: action
subtype: arrow_right_click
id: arrow_right_click
- trigger: device
domain: mqtt
device_id: 92244798f2ec5e133489ba9a39978d1b
type: action
subtype: arrow_left_click
id: arrow_left_click
- trigger: device
domain: mqtt
device_id: 92244798f2ec5e133489ba9a39978d1b
type: action
subtype: arrow_right_hold
id: arrow_right_hold
conditions: []
actions:
- choose:
- conditions:
- condition: template
value_template: '{{ trigger.id == ''toggle'' }}'
sequence:
- action: light.toggle
target:
entity_id: light.blb_kidsbedroom_lamp
data: {}
- conditions:
- condition: template
value_template: '{{ trigger.id == ''brightness_up_click'' }}'
sequence:
- action: light.turn_on
data:
transition: 1
brightness_step_pct: 10
target:
entity_id: light.blb_kidsbedroom_lamp
- conditions:
- condition: template
value_template: '{{ trigger.id == ''brightness_down_click'' }}'
sequence:
- action: light.turn_on
data:
transition: 1
brightness_step_pct: -10
target:
entity_id: light.blb_kidsbedroom_lamp
- conditions:
- condition: template
value_template: '{{ trigger.id == ''arrow_right_click'' }}'
sequence:
- action: light.turn_on
data:
hs_color:
- '{{ range(360) | random }}'
- '{{ range(80,101) | random }}'
transition: 1
target:
entity_id: light.blb_kidsbedroom_lamp
- conditions:
- condition: template
value_template: '{{ trigger.id == ''arrow_left_click'' }}'
sequence:
- action: light.turn_on
data:
transition: 1
effect: colorloop
target:
entity_id: light.blb_kidsbedroom_lamp
- conditions:
- condition: template
value_template: '{{ trigger.id == ''arrow_right_hold'' }}'
sequence:
- action: light.turn_on
data:
transition: 1
kelvin: 3300
target:
entity_id: light.blb_kidsbedroom_lamp
mode: single
- id: '1684988902593'
alias: 'Sparebedroom: Remote controls'
description: control spare bedroom lights from ikea/5-button remote
triggers:
- trigger: device
domain: mqtt
device_id: 7eb966d6f904921b2ab6a5131ccefa4d
type: action
subtype: toggle
id: toggle
- trigger: device
domain: mqtt
device_id: 7eb966d6f904921b2ab6a5131ccefa4d
type: action
subtype: brightness_up_click
id: brightness_up_click
- trigger: device
domain: mqtt
device_id: 7eb966d6f904921b2ab6a5131ccefa4d
type: action
subtype: brightness_down_click
id: brightness_down_click
- trigger: device
domain: mqtt
device_id: 7eb966d6f904921b2ab6a5131ccefa4d
type: action
subtype: arrow_right_click
id: arrow_right_click
conditions: []
actions:
- choose:
- conditions:
- condition: template
value_template: '{{ trigger.id == ''toggle'' }}'
sequence:
- action: light.toggle
target:
entity_id: light.sw_sparebedroom_ceilinglight
data: {}
- conditions:
- condition: template
value_template: '{{ trigger.id == ''brightness_up_click'' }}'
sequence:
- action: light.turn_on
data:
transition: 1
brightness_step_pct: 10
target:
entity_id: light.sw_sparebedroom_ceilinglight
- conditions:
- condition: template
value_template: '{{ trigger.id == ''brightness_down_click'' }}'
sequence:
- action: light.turn_on
data:
transition: 1
brightness_step_pct: -10
target:
entity_id: light.sw_sparebedroom_ceilinglight
- conditions:
- condition: template
value_template: '{{ trigger.id == ''arrow_right_click'' }}'
sequence:
- action: switch.toggle
data: {}
target:
entity_id: switch.plg_sparebedroom_lamp
mode: single
- id: '1694408321293'
alias: 'House: Indoor Lights off at sunrise'
description: turn off indoor lights just after sunrise.
trigger:
- platform: sun
event: sunrise
offset: 00:15:00
condition: []
action:
- action: switch.turn_off
data: {}
target:
entity_id:
- switch.fan_family_room_airpurifier_night_mode
- switch.fan_main_bedroom_airpurifier_night_mode
- action: light.turn_off
metadata: {}
data: {}
target:
entity_id: light.blb_main_bedroom_floor_lamp
mode: single
- id: '1700159738395'
alias: 'Porch: Nofity front door motion'
description: notify when person detected at front door.
triggers:
- entity_id:
- binary_sensor.front_door_motion_alarm
to: 'on'
trigger: state
conditions: []
actions:
- choose:
- conditions:
- condition: state
entity_id: device_tracker.turraphone
state: not_home
- condition: not
conditions:
- condition: state
entity_id: timer.outside_porch_motion_snooze
state: active
sequence:
- action: notify.mobile_app_turraphone
data:
message: Someone was detected at the front door.
title: 🏃🏻Person Detected
data:
entity_id: camera.front_door_sub
actions:
- action: SNOOZE
title: Snooze
- action: DISMISS
title: Dismiss
- wait_for_trigger:
- event_type: mobile_app_notification_action
event_data:
action: SNOOZE
trigger: event
timeout: 00:00:30
continue_on_timeout: false
- action: timer.start
target:
entity_id: timer.outside_porch_motion_snooze
data: {}
- action: notify.grp_all_tvs
data:
message: Person Detected at front door
- action: mqtt.publish
data:
topic: awtrix/CLC_Kitchen/notify
payload: "{\n \"text\": \"Person at front door\",\n \"icon\": \"555\",\n \
\ \"pushIcon\": \"2\",\n \"scrollSpeed\": 50,\n \"repeat\": 2\n \n}"
mode: single
- id: '1700170811227'
alias: 'House: Indoor bedtime check'
description: turn off devices around bedtime.
trigger:
- platform: time
at: '22:30:00'
condition: []
action:
- if:
- condition: state
entity_id: input_boolean.christmas_lights_indoors
state: 'on'
then:
- action: switch.turn_off
data: {}
target:
entity_id:
- switch.sw_familyroom_christmastree
- switch.sw_familyroom_cornerlight
- swtich.family_room_garland_light
mode: single
- id: '1701748470522'
alias: 'House: Front Door lock controls'
description: (un)lock front door
trigger:
- platform: tag
tag_id: b1075945-02ae-44ae-ba3f-b44aa1f71824
- platform: state
entity_id:
- input_boolean.house_front_door_lock_toggled
to: 'on'
condition: []
action:
- choose:
- conditions:
- condition: state
entity_id: lock.lck_house_front_door
state: unlocked
sequence:
- action: lock.lock
data: {}
target:
entity_id: lock.lck_house_front_door
- conditions:
- condition: state
entity_id: lock.lck_house_front_door
state: locked
sequence:
- action: lock.unlock
data: {}
target:
entity_id: lock.lck_house_front_door
- if:
- condition: state
entity_id: input_boolean.house_front_door_lock_toggled
state: 'on'
then:
- action: input_boolean.turn_off
data: {}
target:
entity_id: input_boolean.house_front_door_lock_toggled
mode: single
- id: '1706247071335'
alias: 'Porch: Lights ON with motion'
description: turn on porch lights when motion is detected after sunset and return
to desired state
trigger:
- platform: state
entity_id:
- binary_sensor.snr_outside_frontporchmotion_occupancy
to: 'on'
id: outside_porch_lights_on
- platform: event
event_type: timer.finished
event_data:
entity_id: timer.outside_porch_lights_on
id: outside_porch_lights_off
condition: []
action:
- choose:
- conditions:
- condition: trigger
id:
- outside_porch_lights_on
sequence:
- choose:
- conditions:
- condition: state
entity_id: sun.sun
state: below_horizon
- condition: time
after: '16:30:00'
before: '23:59:00'
sequence:
- action: timer.start
target:
entity_id: timer.outside_porch_lights_on
data: {}
- action: scene.turn_on
target:
entity_id: scene.porch_bulbs_normal_colour_bright
data:
transition: 2
- conditions:
- condition: state
entity_id: sun.sun
state: below_horizon
- condition: time
after: 00:00:00
before: 06:00:00
sequence:
- action: timer.start
metadata: {}
data: {}
target:
entity_id: timer.outside_porch_lights_on
- action: scene.turn_on
target:
entity_id: scene.porch_bulbs_normal_colour_bright
data:
transition: 2
- conditions:
- condition: trigger
id:
- outside_porch_lights_off
sequence:
- choose:
- conditions:
- condition: state
entity_id: input_boolean.adhoc_outside_light_colours
state: 'on'
- condition: time
after: '16:30:00'
before: '22:29:00'
sequence:
- action: scene.turn_on
target:
entity_id: scene.porch_bulbs_adhoc_colours
data:
transition: 2
- conditions:
- condition: state
entity_id: input_boolean.christmas_lights_outdoors
state: 'on'
- condition: time
after: '16:30:00'
before: '22:29:00'
sequence:
- action: scene.turn_on
target:
entity_id: scene.porch_bulbs_christmas_colours
data:
transition: 2
- conditions:
- condition: state
entity_id: input_boolean.halloween_string_lights_outlet
state: 'on'
- condition: time
after: '16:30:00'
before: '22:29:00'
sequence:
- action: scene.turn_on
target:
entity_id: scene.porch_bulbs_halloween_colours
data:
transition: 2
- conditions:
- condition: state
entity_id:
- input_boolean.adhoc_outside_light_colours
- input_boolean.christmas_lights_indoors
- input_boolean.halloween_string_lights_outlet
state: 'off'
- condition: time
after: '16:30:00'
before: '22:29:00'
sequence:
- action: scene.turn_on
target:
entity_id: scene.porch_bulbs_normal_colour_dimmed
data:
transition: 2
- conditions:
- condition: time
after: 00:00:00
before: 06:00:00
sequence:
- action: light.turn_off
target:
entity_id: light.group_porch_lights
data:
transition: 2
default:
- action: scene.turn_on
target:
entity_id: scene.porch_bulbs_normal_colour_dimmed
data:
transition: 2
default: []
mode: restart
- id: '1736622179881'
alias: 'Garage Inside: Plant Light Controls'
description: used when Windmill Palm is brought indoors during the winter.
triggers:
- event: sunrise
id: garage_plant_light_on
trigger: sun
- event_type: timer.finished
event_data:
entity_id: timer.garage_indoor_plant_light_on
id: garage_plant_light_off
trigger: event
conditions:
- condition: state
entity_id: input_boolean.garage_indoor_plant_light
state: 'on'
actions:
- choose:
- conditions:
- condition: trigger
id:
- garage_plant_light_on
sequence:
- action: timer.start
data: {}
target:
entity_id: timer.garage_indoor_plant_light_on
- action: switch.turn_on
target:
entity_id: switch.sw_garage_plant_relay_1
data: {}
- conditions:
- condition: trigger
id:
- garage_plant_light_off
sequence:
- action: switch.turn_off
target:
entity_id: switch.sw_garage_plant_relay_1
data: {}
mode: single
- id: '1739058052369'
alias: 'Kitchen: Updates to pixel clock'
description: publish custom apps to awtrix pixel clock
triggers:
- minutes: /5
trigger: time_pattern
conditions: []
actions:
- data:
topic: awtrix/CLC_Kitchen/custom/weather
payload: "{% set weather = states('weather.pitt_meadows') %}\n{% if 'sun' in\
\ weather.lower() %}\n {% set icon = 52156 %}\n{% elif 'rain' in weather.lower()\
\ %}\n {% set icon = 72 %}\n{% elif 'snow' in weather.lower() %}\n {% set\
\ icon = 7123 %}\n{% elif 'cloud' in weather.lower() %}\n {% set icon = 91\
\ %}\n{% elif weather.lower() == 'clear-night' %}\n {% set icon = 52163 %}\n\
{% else %}\n {# any other weather state use the cloudy icon #}\n {% set\
\ icon = 91 %}\n{% endif %}\n{\n \"text\": \"{{ states('sensor.snr_outside_temperature')\
\ }}°\",\n \"icon\": \"{{ icon }}\"\n}"
action: mqtt.publish
mode: restart