nix/config/homeassistant/automations.yaml
2025-09-10 01:15:50 +02:00

469 lines
14 KiB
YAML

# Home Assistant Automations
# This file contains all automation definitions for the smart home
# Documentation: https://www.home-assistant.io/docs/automation/yaml/
# Bedroom Light Control Automation
# Controls bedroom lights via Zigbee switch with multiple button actions
- id: '1749663887767'
alias: Bedroom light - switch control
triggers:
- device_id: 9041a8cd641d55436de6b8645b20e3c8
domain: zha
type: remote_button_short_press
subtype: button_1
trigger: device
id: first_btn
- device_id: 9041a8cd641d55436de6b8645b20e3c8
domain: zha
type: remote_button_short_press
subtype: button_2
trigger: device
id: second_btn
- device_id: 9041a8cd641d55436de6b8645b20e3c8
domain: zha
type: remote_button_long_press
subtype: button_1
trigger: device
id: first_btn_long
- device_id: 9041a8cd641d55436de6b8645b20e3c8
domain: zha
type: remote_button_long_press
subtype: button_2
trigger: device
id: second_btn_long
conditions: []
actions:
- choose:
- conditions:
- condition: trigger
id:
- first_btn
sequence:
# Cycle ceiling light preset: off -> 1 -> 2 -> 3 -> 4 -> off
- choose:
- conditions:
- condition: state
entity_id: light.cell_light
state: 'off'
sequence:
# Turn on at preset 1
- action: input_number.set_value
data:
value: 1
target:
entity_id: input_number.bedroom_ceiling_light_preset
- action: light.turn_on
data:
color_temp_kelvin: 1800
brightness_pct: 30
target:
entity_id: light.cell_light
- conditions:
- condition: state
entity_id: light.cell_light
state: 'on'
sequence:
# Check current preset and cycle
- choose:
- conditions:
- condition: state
entity_id: input_number.bedroom_ceiling_light_preset
state: '4.0'
sequence:
# At preset 4, turn off
- action: light.turn_off
target:
entity_id: light.cell_light
- action: input_number.set_value
data:
value: 0
target:
entity_id: input_number.bedroom_ceiling_light_preset
- conditions:
- condition: state
entity_id: input_number.bedroom_ceiling_light_preset
state: '3.0'
sequence:
# Move to preset 4
- action: input_number.set_value
data:
value: 4
target:
entity_id: input_number.bedroom_ceiling_light_preset
- action: light.turn_on
data:
color_temp_kelvin: 3000
brightness_pct: 100
target:
entity_id: light.cell_light
- conditions:
- condition: state
entity_id: input_number.bedroom_ceiling_light_preset
state: '2.0'
sequence:
# Move to preset 3
- action: input_number.set_value
data:
value: 3
target:
entity_id: input_number.bedroom_ceiling_light_preset
- action: light.turn_on
data:
color_temp_kelvin: 2500
brightness_pct: 75
target:
entity_id: light.cell_light
- conditions:
- condition: state
entity_id: input_number.bedroom_ceiling_light_preset
state: '1.0'
sequence:
# Move to preset 2
- action: input_number.set_value
data:
value: 2
target:
entity_id: input_number.bedroom_ceiling_light_preset
- action: light.turn_on
data:
color_temp_kelvin: 2000
brightness_pct: 50
target:
entity_id: light.cell_light
- conditions:
- condition: trigger
id:
- second_btn
sequence:
# Cycle bed lights preset: off -> 1 -> 2 -> 3 -> 4 -> off
- choose:
- conditions:
- condition: state
entity_id: light.table_lights_bed_lights
state: 'off'
sequence:
# Turn on at preset 1
- action: input_number.set_value
data:
value: 1
target:
entity_id: input_number.bedroom_bed_light_preset
- action: light.turn_on
data:
color_temp_kelvin: 1800
brightness_pct: 30
target:
entity_id: light.table_lights_bed_lights
- conditions:
- condition: state
entity_id: light.table_lights_bed_lights
state: 'on'
sequence:
# Check current preset and cycle
- choose:
- conditions:
- condition: state
entity_id: input_number.bedroom_bed_light_preset
state: '4.0'
sequence:
# At preset 4, turn off
- action: light.turn_off
target:
entity_id: light.table_lights_bed_lights
- action: input_number.set_value
data:
value: 0
target:
entity_id: input_number.bedroom_bed_light_preset
- conditions:
- condition: state
entity_id: input_number.bedroom_bed_light_preset
state: '3.0'
sequence:
# Move to preset 4
- action: input_number.set_value
data:
value: 4
target:
entity_id: input_number.bedroom_bed_light_preset
- action: light.turn_on
data:
color_temp_kelvin: 3000
brightness_pct: 100
target:
entity_id: light.table_lights_bed_lights
- conditions:
- condition: state
entity_id: input_number.bedroom_bed_light_preset
state: '2.0'
sequence:
# Move to preset 3
- action: input_number.set_value
data:
value: 3
target:
entity_id: input_number.bedroom_bed_light_preset
- action: light.turn_on
data:
color_temp_kelvin: 2500
brightness_pct: 75
target:
entity_id: light.table_lights_bed_lights
- conditions:
- condition: state
entity_id: input_number.bedroom_bed_light_preset
state: '1.0'
sequence:
# Move to preset 2
- action: input_number.set_value
data:
value: 2
target:
entity_id: input_number.bedroom_bed_light_preset
- action: light.turn_on
data:
color_temp_kelvin: 2000
brightness_pct: 50
target:
entity_id: light.table_lights_bed_lights
- conditions:
- condition: trigger
id:
- first_btn_long
sequence:
# Long press button 1: turn off ceiling light and reset preset
- action: light.turn_off
target:
entity_id: light.cell_light
- action: input_number.set_value
data:
value: 0
target:
entity_id: input_number.bedroom_ceiling_light_preset
- conditions:
- condition: trigger
id:
- second_btn_long
sequence:
# Long press button 2: turn off bed lights and reset preset
- action: light.turn_off
target:
entity_id: light.table_lights_bed_lights
- action: input_number.set_value
data:
value: 0
target:
entity_id: input_number.bedroom_bed_light_preset
mode: single
- id: '1750278561179'
alias: Living room lights - switch control
description: ''
triggers:
- device_id: 5da7507dbe1988ee34fbdd3ade9d7645
domain: zha
type: remote_button_short_press
subtype: turn_on
trigger: device
id: 'on'
- device_id: 5da7507dbe1988ee34fbdd3ade9d7645
domain: zha
type: remote_button_short_press
subtype: turn_off
trigger: device
id: 'off'
- device_id: 5da7507dbe1988ee34fbdd3ade9d7645
domain: zha
type: remote_button_short_press
subtype: left
trigger: device
id: left
- device_id: 5da7507dbe1988ee34fbdd3ade9d7645
domain: zha
type: remote_button_short_press
subtype: right
trigger: device
id: right
- device_id: c22d300c7e66e004dfa848be57affe86
domain: zha
type: remote_button_short_press
subtype: turn_on
trigger: device
id: 'on'
- device_id: c22d300c7e66e004dfa848be57affe86
domain: zha
type: remote_button_short_press
subtype: turn_off
trigger: device
id: 'off'
- device_id: c22d300c7e66e004dfa848be57affe86
domain: zha
type: remote_button_short_press
subtype: left
trigger: device
id: left
- device_id: c22d300c7e66e004dfa848be57affe86
domain: zha
type: remote_button_short_press
subtype: right
trigger: device
id: right
conditions: []
actions:
- choose:
- conditions:
- condition: trigger
id:
- 'on'
sequence:
- action: light.turn_on
metadata: {}
data: {}
target:
area_id: living_room
- conditions:
- condition: trigger
id:
- 'off'
sequence:
- action: light.turn_off
metadata: {}
data: {}
target:
area_id: living_room
- conditions:
- condition: trigger
id:
- left
sequence:
# Decrease preset (minimum 1)
- choose:
- conditions:
- condition: numeric_state
entity_id: input_number.living_room_light_preset
above: 1
sequence:
- action: input_number.decrement
target:
entity_id: input_number.living_room_light_preset
# Apply the preset settings
- choose:
- conditions:
- condition: state
entity_id: input_number.living_room_light_preset
state: '1.0'
sequence:
- action: light.turn_on
metadata: {}
data:
color_temp_kelvin: 1800
brightness_pct: 30
target:
area_id: living_room
- conditions:
- condition: state
entity_id: input_number.living_room_light_preset
state: '2.0'
sequence:
- action: light.turn_on
metadata: {}
data:
color_temp_kelvin: 2000
brightness_pct: 50
target:
area_id: living_room
- conditions:
- condition: state
entity_id: input_number.living_room_light_preset
state: '3.0'
sequence:
- action: light.turn_on
metadata: {}
data:
color_temp_kelvin: 2500
brightness_pct: 75
target:
area_id: living_room
- conditions:
- condition: state
entity_id: input_number.living_room_light_preset
state: '4.0'
sequence:
- action: light.turn_on
metadata: {}
data:
color_temp_kelvin: 3000
brightness_pct: 100
target:
area_id: living_room
- conditions:
- condition: trigger
id:
- right
sequence:
# Increase preset (maximum 4)
- choose:
- conditions:
- condition: numeric_state
entity_id: input_number.living_room_light_preset
below: 4
sequence:
- action: input_number.increment
target:
entity_id: input_number.living_room_light_preset
# Apply the preset settings
- choose:
- conditions:
- condition: state
entity_id: input_number.living_room_light_preset
state: '1.0'
sequence:
- action: light.turn_on
metadata: {}
data:
color_temp_kelvin: 1800
brightness_pct: 30
target:
area_id: living_room
- conditions:
- condition: state
entity_id: input_number.living_room_light_preset
state: '2.0'
sequence:
- action: light.turn_on
metadata: {}
data:
color_temp_kelvin: 2000
brightness_pct: 50
target:
area_id: living_room
- conditions:
- condition: state
entity_id: input_number.living_room_light_preset
state: '3.0'
sequence:
- action: light.turn_on
metadata: {}
data:
color_temp_kelvin: 2500
brightness_pct: 75
target:
area_id: living_room
- conditions:
- condition: state
entity_id: input_number.living_room_light_preset
state: '4.0'
sequence:
- action: light.turn_on
metadata: {}
data:
color_temp_kelvin: 3000
brightness_pct: 100
target:
area_id: living_room
- action: input_boolean.turn_off
metadata: {}
data: {}
target:
entity_id: input_boolean.motion_light_automation_active
mode: single