1008 lines
29 KiB
YAML
1008 lines
29 KiB
YAML
radio_keuken_slamfm:
|
||
alias: Radio keuken - SlamFM
|
||
sequence:
|
||
- choose:
|
||
- conditions:
|
||
- condition: state
|
||
entity_id: input_select.speakers
|
||
state: keuken
|
||
sequence:
|
||
- service: media_player.play_media
|
||
target:
|
||
entity_id: media_player.keuken
|
||
data:
|
||
media_content_id: media-source://radio_browser/962e7e22-0601-11e8-ae97-52543be04c81
|
||
media_content_type: audio/mpeg
|
||
metadata:
|
||
title: SLAM!
|
||
thumbnail: https://www.slam.nl/images/favicons/slam.png
|
||
media_class: music
|
||
children_media_class:
|
||
navigateIds:
|
||
- {}
|
||
- media_content_type: app
|
||
media_content_id: media-source://radio_browser
|
||
- media_content_type: music
|
||
media_content_id: media-source://radio_browser/language
|
||
- media_content_type: music
|
||
media_content_id: media-source://radio_browser/language/nl
|
||
- conditions:
|
||
- condition: state
|
||
entity_id: input_select.speakers
|
||
state: Woonkamer
|
||
sequence:
|
||
- service: media_player.play_media
|
||
target:
|
||
entity_id: media_player.bose_woonkamer
|
||
data:
|
||
media_content_id: media-source://radio_browser/962e7e22-0601-11e8-ae97-52543be04c81
|
||
media_content_type: audio/mpeg
|
||
metadata:
|
||
title: SLAM!
|
||
thumbnail: https://www.slam.nl/images/favicons/slam.png
|
||
media_class: music
|
||
children_media_class:
|
||
navigateIds:
|
||
- {}
|
||
- media_content_type: app
|
||
media_content_id: media-source://radio_browser
|
||
- media_content_type: music
|
||
media_content_id: media-source://radio_browser/language
|
||
- media_content_type: music
|
||
media_content_id: media-source://radio_browser/language/nl
|
||
mode: single
|
||
icon: mdi:radio
|
||
esphome_update_all:
|
||
alias: 'esphome: update all'
|
||
sequence:
|
||
- repeat:
|
||
for_each: '{{ states.update | selectattr(''state'', ''eq'', ''on'') | map(attribute=''entity_id'')
|
||
| select(''in'', integration_entities(''esphome'')) | list }}'
|
||
sequence:
|
||
oven_preheat:
|
||
alias: Oven preheat
|
||
sequence:
|
||
- action: home_connect_alt.start_program
|
||
data:
|
||
options:
|
||
- key: Cooking.Oven.Option.FastPreHeat
|
||
value: true
|
||
- key: Cooking.Oven.Option.SetpointTemperature
|
||
value: 180
|
||
program_key: Cooking.Oven.Program.HeatingMode.HotAir
|
||
device_id: aa87a4451bf9784598ccae0c92c88af9
|
||
description: ''
|
||
icon: mdi:stove
|
||
keuken_vaatwasser_start:
|
||
alias: Keuken - vaatwasser start
|
||
sequence:
|
||
- action: home_connect_alt.start_program
|
||
data:
|
||
validate: true
|
||
device_id: a720e5e66228fe59f8d8737ba89ff424
|
||
program_key: Dishcare.Dishwasher.Program.Auto2
|
||
options:
|
||
- key: Dishcare.Dishwasher.Option.VarioSpeedPlus
|
||
value: true
|
||
description: ''
|
||
icon: mdi:dishwasher
|
||
generate_watchman_report:
|
||
alias: generate_watchman_report
|
||
sequence:
|
||
- action: watchman.report
|
||
data:
|
||
create_file: false
|
||
send_notification: true
|
||
parse_config: true
|
||
description: ''
|
||
icon: mdi:alert
|
||
roborockrevo_alles:
|
||
alias: Beneden stofzuigen
|
||
sequence:
|
||
- action: vacuum.send_command
|
||
data:
|
||
command: app_segment_clean
|
||
params:
|
||
- segments:
|
||
- 16
|
||
- 17
|
||
- 18
|
||
repeat: 1
|
||
target:
|
||
device_id: 1578219cf752dbc603226d5d56848eb6
|
||
description: ''
|
||
icon: mdi:robot-vacuum
|
||
roborockrevo_woonkamer:
|
||
alias: Woonkamer stofzuigen
|
||
sequence:
|
||
- action: vacuum.send_command
|
||
data:
|
||
command: app_segment_clean
|
||
params:
|
||
- segments:
|
||
- 17
|
||
repeat: 1
|
||
target:
|
||
device_id: 1578219cf752dbc603226d5d56848eb6
|
||
description: ''
|
||
icon: mdi:robot-vacuum
|
||
kiosk_zolder_bl_off:
|
||
sequence:
|
||
- action: ssh_command.exec_command
|
||
data:
|
||
host: 192.168.2.118
|
||
command: echo 0 | sudo tee /sys/class/backlight/*/brightness
|
||
user: homeassistant
|
||
pass: hass
|
||
alias: kiosk-zolder BL-off
|
||
description: ''
|
||
icon: mdi:projector-screen-off-outline
|
||
fields: {}
|
||
kiosk_zolder_bl_on:
|
||
sequence:
|
||
- action: ssh_command.exec_command
|
||
data:
|
||
host: 192.168.2.118
|
||
command: echo 100 | sudo tee /sys/class/backlight/*/brightness
|
||
user: homeassistant
|
||
pass: hass
|
||
alias: kiosk-zolder BL-on
|
||
description: ''
|
||
icon: mdi:projector-screen-off-outline
|
||
fields: {}
|
||
vacuum_clean_room:
|
||
alias: vacuum_clean_room
|
||
sequence:
|
||
- alias: Get room id using input select
|
||
variables:
|
||
target_rooms: "{% set rooms = [] %} {% if states('input_boolean.floorplan_hal_vacuum')
|
||
== 'on' %}\n {% set rooms = rooms + [17] %}\n{% endif %} {% if states('input_boolean.floorplan_keuken_vacuum')
|
||
== 'on' %}\n {% set rooms = rooms + [16] %}\n{% endif %} {% if states('input_boolean.floorplan_woonkamer_vacuum')
|
||
== 'on' %}\n {% set rooms = rooms + [18] %}\n{% endif %} {{rooms}}"
|
||
- condition: template
|
||
value_template: '{{ target_rooms | length > 0 }}'
|
||
- action: vacuum.send_command
|
||
data:
|
||
command: app_segment_clean
|
||
params:
|
||
- segments: '{{ target_rooms }}'
|
||
repeat: 1
|
||
target:
|
||
entity_id: vacuum.roborock_qrevo_s
|
||
- if:
|
||
- condition: state
|
||
entity_id: input_boolean.dweilen_vacuum
|
||
state: 'on'
|
||
then:
|
||
- action: select.select_option
|
||
metadata: {}
|
||
data:
|
||
option: standard
|
||
target:
|
||
entity_id: select.roborock_qrevo_s_dweilmodus
|
||
else:
|
||
- action: select.select_option
|
||
metadata: {}
|
||
data:
|
||
option: 'off'
|
||
target:
|
||
entity_id: select.roborock_qrevo_s_intensiteit_van_dweilen
|
||
description: ''
|
||
new_script:
|
||
sequence:
|
||
- action: script.woonkamer_alles_uit
|
||
metadata: {}
|
||
data: {}
|
||
- action: script.kerst_uit
|
||
metadata: {}
|
||
data: {}
|
||
enabled: false
|
||
- alias: check of de deur op slot moet
|
||
if:
|
||
- condition: time
|
||
after: '22:00:00'
|
||
then:
|
||
- action: lock.lock
|
||
metadata: {}
|
||
data: {}
|
||
target:
|
||
device_id: ead52fdd2817e1e0d5c981e717e3bf63
|
||
else:
|
||
- action: script.keuken_alles_uit
|
||
metadata: {}
|
||
data: {}
|
||
- action: script.alles_uit_boven
|
||
metadata: {}
|
||
data: {}
|
||
alias: Vertrekken
|
||
description: ''
|
||
icon: mdi:exit-run
|
||
fan_vertical_angle_calibrate:
|
||
sequence:
|
||
- action: number.set_value
|
||
metadata: {}
|
||
data:
|
||
value: '-30'
|
||
target:
|
||
entity_id: number.air_circulator_vertical_angle
|
||
- delay:
|
||
hours: 0
|
||
minutes: 0
|
||
seconds: 20
|
||
milliseconds: 0
|
||
- action: number.set_value
|
||
metadata: {}
|
||
data:
|
||
value: '90'
|
||
target:
|
||
entity_id: number.air_circulator_vertical_angle
|
||
- delay:
|
||
hours: 0
|
||
minutes: 0
|
||
seconds: 20
|
||
milliseconds: 0
|
||
- action: number.set_value
|
||
metadata: {}
|
||
data:
|
||
value: '0'
|
||
target:
|
||
entity_id: number.air_circulator_vertical_angle
|
||
alias: Fan vertical angle calibrate
|
||
description: ''
|
||
fan_move_vertical_up:
|
||
sequence:
|
||
- action: number.set_value
|
||
metadata: {}
|
||
data:
|
||
value: '{% set newangle = states(''number.air_circulator_vertical_angle'') |
|
||
float +5 %} {{ newangle }}'
|
||
target:
|
||
entity_id: number.air_circulator_vertical_angle
|
||
alias: fan move vertical up
|
||
description: ''
|
||
fan_move_vertical_up_duplicate:
|
||
sequence:
|
||
- action: number.set_value
|
||
metadata: {}
|
||
data:
|
||
value: '{% set newangle = states(''number.air_circulator_vertical_angle'') |
|
||
float -5 %} {{ newangle }}'
|
||
target:
|
||
entity_id: number.air_circulator_vertical_angle
|
||
alias: fan move vertical down
|
||
description: ''
|
||
ai_weerbericht:
|
||
use_blueprint:
|
||
path: TheFes/3_voice_weather_forecast_full_llm.yaml
|
||
input:
|
||
weather_entity: weather.forecast_home
|
||
alias: 'AI weerbericht '
|
||
description: Fetches the weather forecast for either a part of a day, or one or
|
||
more full days. In case the weather for the weekend is requested, this means Saturday
|
||
and Sunday
|
||
toggle_boiler:
|
||
sequence:
|
||
- choose:
|
||
- conditions:
|
||
- condition: state
|
||
entity_id: water_heater.smart_boiler_77cb
|
||
attribute: operation_mode
|
||
state: 'off'
|
||
sequence:
|
||
- action: water_heater.set_operation_mode
|
||
metadata: {}
|
||
data:
|
||
operation_mode: electric
|
||
target:
|
||
device_id: 0db7dd89cc13b1dee2490abad9450ca3
|
||
- conditions:
|
||
- condition: state
|
||
entity_id: water_heater.smart_boiler_77cb
|
||
attribute: operation_mode
|
||
state:
|
||
- electric
|
||
sequence:
|
||
- action: water_heater.set_operation_mode
|
||
metadata: {}
|
||
data:
|
||
operation_mode: eco
|
||
target:
|
||
device_id: 0db7dd89cc13b1dee2490abad9450ca3
|
||
- conditions:
|
||
- condition: state
|
||
entity_id: water_heater.smart_boiler_77cb
|
||
attribute: operation_mode
|
||
state:
|
||
- eco
|
||
sequence:
|
||
- action: water_heater.set_operation_mode
|
||
metadata: {}
|
||
data:
|
||
operation_mode: high_demand
|
||
target:
|
||
device_id: 0db7dd89cc13b1dee2490abad9450ca3
|
||
- conditions:
|
||
- condition: state
|
||
entity_id: water_heater.smart_boiler_77cb
|
||
attribute: operation_mode
|
||
state:
|
||
- high_demand
|
||
sequence:
|
||
- action: water_heater.set_operation_mode
|
||
metadata: {}
|
||
data:
|
||
operation_mode: 'off'
|
||
target:
|
||
device_id: 0db7dd89cc13b1dee2490abad9450ca3
|
||
alias: Toggle Boiler
|
||
description: ''
|
||
icon: mdi:water-boiler-auto
|
||
voicebal_standby:
|
||
sequence:
|
||
- action: light.turn_off
|
||
metadata: {}
|
||
data: {}
|
||
target:
|
||
entity_id:
|
||
- light.esphome_web_0bac48
|
||
- light.esphome_web_0bac48_screen
|
||
- action: switch.turn_off
|
||
metadata: {}
|
||
data: {}
|
||
target:
|
||
entity_id: switch.esphome_web_0bac48_speaker_enable
|
||
alias: VoiceBal Standby
|
||
description: ''
|
||
icon: mdi:account-tie-voice-off
|
||
speakers_woonkamer_standby:
|
||
sequence:
|
||
- action: switch.turn_off
|
||
metadata: {}
|
||
data: {}
|
||
target:
|
||
entity_id: switch.unnamed_room_statuslampje
|
||
- action: media_player.media_stop
|
||
metadata: {}
|
||
data: {}
|
||
target:
|
||
device_id: 14f616b27d81af0d45c8847732876ec6
|
||
alias: Speakers Woonkamer standby
|
||
description: ''
|
||
icon: mdi:exit-run
|
||
container_increment:
|
||
sequence:
|
||
- action: counter.increment
|
||
metadata: {}
|
||
data: {}
|
||
target:
|
||
entity_id: counter.container_lichting
|
||
- condition: numeric_state
|
||
entity_id: counter.container_lichting
|
||
above: 16
|
||
- action: notify.mobile_app_iphone_van_willem
|
||
metadata: {}
|
||
data:
|
||
title: Container
|
||
message: max container lichtingen deze maand
|
||
alias: Container increment
|
||
description: ''
|
||
voicebal_idle:
|
||
sequence:
|
||
- action: light.turn_on
|
||
metadata: {}
|
||
data: {}
|
||
target:
|
||
entity_id:
|
||
- light.esphome_web_0bac48
|
||
- light.esphome_web_0bac48_screen
|
||
- action: switch.turn_on
|
||
metadata: {}
|
||
data: {}
|
||
target:
|
||
entity_id: switch.esphome_web_0bac48_speaker_enable
|
||
alias: VoiceBal Idle
|
||
description: ''
|
||
icon: mdi:account-tie-voice-outline
|
||
speakers_woonkamer_idle:
|
||
sequence:
|
||
- action: switch.turn_on
|
||
metadata: {}
|
||
data: {}
|
||
target:
|
||
entity_id: switch.unnamed_room_statuslampje
|
||
alias: Speakers Woonkamer Idle
|
||
description: ''
|
||
icon: mdi:open-in-app
|
||
verwarming_eco_2:
|
||
sequence:
|
||
- action: climate.set_temperature
|
||
metadata: {}
|
||
data:
|
||
temperature: '{{ states(''input_number.verwarming_eco'') | float }}'
|
||
hvac_mode: heat
|
||
target:
|
||
entity_id:
|
||
- climate.thermostaat_keuken
|
||
- climate.verwarming_woonkamer_blu
|
||
- climate.thermostaat_hal
|
||
- climate.thermostaat_kantoor
|
||
- climate.thermostaat_slaapkamer
|
||
enabled: true
|
||
alias: Verwarming Eco
|
||
description: ''
|
||
boiler_uit:
|
||
sequence:
|
||
- action: water_heater.set_operation_mode
|
||
metadata: {}
|
||
data:
|
||
operation_mode: 'off'
|
||
target:
|
||
device_id: 0db7dd89cc13b1dee2490abad9450ca3
|
||
alias: Boiler uit
|
||
description: ''
|
||
boiler_eco:
|
||
sequence:
|
||
- action: water_heater.set_operation_mode
|
||
metadata: {}
|
||
data:
|
||
operation_mode: eco
|
||
target:
|
||
device_id: 0db7dd89cc13b1dee2490abad9450ca3
|
||
alias: Boiler Eco
|
||
description: ''
|
||
boiler_on:
|
||
sequence:
|
||
- action: water_heater.set_operation_mode
|
||
metadata: {}
|
||
data:
|
||
operation_mode: electric
|
||
target:
|
||
device_id: 0db7dd89cc13b1dee2490abad9450ca3
|
||
alias: Boiler On
|
||
description: ''
|
||
display_off:
|
||
sequence:
|
||
- action: rest_command.shelly_kiosk_off
|
||
alias: Shelly display woonkamer display off
|
||
description: ''
|
||
shelly_display_woonkamer_display_on:
|
||
sequence:
|
||
- action: rest_command.shelly_kiosk_on
|
||
data: {}
|
||
alias: Shelly display woonkamer display on
|
||
description: ''
|
||
icon: mdi:television
|
||
kerst_uit:
|
||
sequence:
|
||
- action: light.turn_off
|
||
metadata: {}
|
||
target:
|
||
device_id: 037801154855b910afeed88815f4e594
|
||
data: {}
|
||
alias: Kerst uit
|
||
description: ''
|
||
icon: mdi:pine-tree
|
||
kerst_aan:
|
||
sequence:
|
||
- action: select.select_option
|
||
metadata: {}
|
||
target:
|
||
entity_id: select.kerstboom_voorinstelling
|
||
data:
|
||
option: Candle Multi
|
||
alias: Kerst aan
|
||
description: ''
|
||
icon: mdi:pine-tree
|
||
kerst_toggle:
|
||
sequence:
|
||
- if:
|
||
- condition: light.is_on
|
||
target:
|
||
entity_id: light.kerstboom
|
||
options:
|
||
behavior: any
|
||
then:
|
||
- action: script.kerst_uit
|
||
metadata: {}
|
||
data: {}
|
||
else:
|
||
- action: script.kerst_aan
|
||
metadata: {}
|
||
data: {}
|
||
alias: kerst toggle
|
||
description: ''
|
||
icon: mdi:pine-tree-box
|
||
verwerk_iphone_wekkers:
|
||
fields:
|
||
wekkers:
|
||
description: Lijst met wekkers van iPhone
|
||
alias: verwerk iphone wekkers
|
||
description: ''
|
||
sequence:
|
||
- variables:
|
||
vandaag_nl: '{% set dagen = [''maandag'', ''dinsdag'', ''woensdag'', ''donderdag'',
|
||
''vrijdag'', ''zaterdag'', ''zondag''] %} {{ dagen[now().weekday()] }}
|
||
|
||
'
|
||
morgen_nl: '{% set dagen = [''maandag'', ''dinsdag'', ''woensdag'', ''donderdag'',
|
||
''vrijdag'', ''zaterdag'', ''zondag''] %} {% set m_idx = now().weekday() +
|
||
1 %} {{ dagen[0 if m_idx == 7 else m_idx] }}
|
||
|
||
'
|
||
datum_vandaag: '{{ now().strftime(''%Y-%m-%d'') }}'
|
||
datum_morgen: '{{ (now() + timedelta(days=1)).strftime(''%Y-%m-%d'') }}'
|
||
- variables:
|
||
gekozen_wekker: "{% set lijst = namespace(items=[]) %} {% set wekker_data =
|
||
wekkers if wekkers is iterable and wekkers is not string else [wekkers] %}
|
||
{% for w in wekker_data %}\n {% set dagen = w.dagen | lower %}\n {% if dagen
|
||
== \"\" or vandaag_nl in dagen or morgen_nl in dagen %}\n {% set t = w.tijd
|
||
if w.tijd.count(':') == 2 else w.tijd + ':00' %}\n {% set lijst.items =
|
||
lijst.items + [t] %}\n {% endif %}\n{% endfor %} {{ lijst.items | sort |
|
||
first | default(none) }}\n"
|
||
- target:
|
||
entity_id: input_datetime.iphone_next_alarm
|
||
data:
|
||
datetime: "{% if gekozen_wekker is not none %}\n {% if today_at(gekozen_wekker)
|
||
< now() %}\n {{ datum_morgen }} {{ gekozen_wekker }}\n {% else %}\n {{
|
||
datum_vandaag }} {{ gekozen_wekker }}\n {% endif %}\n{% else %}\n {{ datum_vandaag
|
||
}} 00:00:00\n{% endif %}\n"
|
||
action: input_datetime.set_datetime
|
||
- data:
|
||
level: info
|
||
logger: custom_iphone_alarm
|
||
message: 'Debug: Vandaag={{ vandaag_nl }}, Morgen={{ morgen_nl }}, Gekozen={{
|
||
gekozen_wekker | default(''Geen'') }}'
|
||
action: system_log.write
|
||
thermostaat_woonkamer_toggle:
|
||
alias: Thermostaat woonkamer toggle
|
||
mode: single
|
||
sequence:
|
||
- target:
|
||
entity_id: climate.verwarming_woonkamer_blu
|
||
data:
|
||
temperature: "{% set t = state_attr('climate.verwarming_woonkamer_blu', 'temperature')
|
||
| float(17) %} {% if t <= 15 %}\n 17\n{% elif t <= 18 %}\n 19\n{% else %}\n
|
||
\ 15\n{% endif %}\n"
|
||
action: climate.set_temperature
|
||
description: ''
|
||
script_woonkamer_verwarming:
|
||
alias: Thermostaat woonkamer toggle
|
||
mode: single
|
||
sequence:
|
||
- target:
|
||
entity_id: climate.verwarming_woonkamer_blu
|
||
data:
|
||
temperature: "{% set t = state_attr('climate.verwarming_woonkamer_blu', 'temperature')
|
||
| float(18) %} {% if t <= 15 %}\n 18\n{% elif t <= 18 %}\n 20\n{% else %}\n
|
||
\ 15\n{% endif %}\n"
|
||
action: climate.set_temperature
|
||
description: ''
|
||
oven_power_toggle:
|
||
alias: Oven – Power toggle
|
||
description: Toggle oven powerstate via BSH select
|
||
mode: single
|
||
sequence:
|
||
- choose:
|
||
- conditions:
|
||
- condition: state
|
||
entity_id: select.385040390125001454_001_bsh_common_setting_powerstate
|
||
state: BSH.Common.EnumType.PowerState.Standby
|
||
sequence:
|
||
- target:
|
||
entity_id: select.385040390125001454_001_bsh_common_setting_powerstate
|
||
data:
|
||
option: BSH.Common.EnumType.PowerState.On
|
||
action: select.select_option
|
||
default:
|
||
- target:
|
||
entity_id: select.385040390125001454_001_bsh_common_setting_powerstate
|
||
data:
|
||
option: BSH.Common.EnumType.PowerState.Standby
|
||
action: select.select_option
|
||
keuken_climate_toggle_preset:
|
||
alias: Keuken Climate – Toggle preset
|
||
description: Toggle climate preset between away, eco and comfort
|
||
mode: single
|
||
sequence:
|
||
- choose:
|
||
- conditions:
|
||
- condition: template
|
||
value_template: '{{ current == ''away'' }}'
|
||
sequence:
|
||
- data:
|
||
preset_mode: eco
|
||
action: climate.set_preset_mode
|
||
target:
|
||
entity_id: climate.thermostaat_keuken
|
||
- conditions:
|
||
- condition: template
|
||
value_template: '{{ current == ''eco'' }}'
|
||
sequence:
|
||
- target:
|
||
entity_id: climate.thermostaat_keuken
|
||
data:
|
||
preset_mode: comfort
|
||
action: climate.set_preset_mode
|
||
default:
|
||
- data:
|
||
preset_mode: away
|
||
action: climate.set_preset_mode
|
||
target:
|
||
entity_id: climate.thermostaat_keuken
|
||
keuken_alles_uit:
|
||
sequence:
|
||
- action: switch.turn_off
|
||
metadata: {}
|
||
target:
|
||
entity_id: switch.boiler_2
|
||
data: {}
|
||
alias: Boiler uit
|
||
- action: climate.set_temperature
|
||
metadata: {}
|
||
target:
|
||
entity_id: climate.thermostaat_keuken
|
||
data:
|
||
temperature: '{{ states(''input_number.verwarming_eco'') | float }}'
|
||
hvac_mode: heat
|
||
- action: light.turn_off
|
||
metadata: {}
|
||
target:
|
||
entity_id:
|
||
- light.lamp_keuken_kleur
|
||
- light.lamp_keuken_main
|
||
- light.lamp_toilet
|
||
data: {}
|
||
- action: switch.turn_off
|
||
metadata: {}
|
||
target:
|
||
entity_id: switch.display_keuken_scherm
|
||
data: {}
|
||
alias: Alles uit - Keuken
|
||
description: ''
|
||
icon: mdi:countertop-outline
|
||
slaapkamer_alles_uit:
|
||
sequence:
|
||
- action: light.turn_off
|
||
metadata: {}
|
||
target:
|
||
entity_id:
|
||
- light.lamp_slaapkamer_2
|
||
- light.lamp_bed_links_dim
|
||
- light.lanp_bed_rechts_dim
|
||
data: {}
|
||
- action: climate.set_temperature
|
||
metadata: {}
|
||
target:
|
||
entity_id: climate.thermostaat_slaapkamer
|
||
data:
|
||
temperature: '{{ states(''input_number.verwarming_eco'') | float }}'
|
||
hvac_mode: heat
|
||
alias: Alles uit - Slaapkamer
|
||
description: ''
|
||
icon: mdi:bed-double-outline
|
||
woonkamer_alles_uit:
|
||
sequence:
|
||
- alias: Lampen Woonkamer uit
|
||
action: light.turn_off
|
||
metadata: {}
|
||
data: {}
|
||
target:
|
||
entity_id:
|
||
- light.lamp_kast
|
||
- light.ikea_of_sweden_tradfri_bulb_e27_ww_clear_250lm
|
||
- light.ikea_of_sweden_stoftmoln_ceiling_wall_lamp_ww37
|
||
- light.lamp_tafel
|
||
- light.lamp_tafel_sfeer
|
||
- light.zout_lamp
|
||
- action: light.turn_off
|
||
metadata: {}
|
||
target:
|
||
entity_id: light.ledstok
|
||
data: {}
|
||
- action: climate.set_temperature
|
||
metadata: {}
|
||
target:
|
||
entity_id: climate.verwarming_woonkamer_blu
|
||
data:
|
||
temperature: '{{ states(''input_number.verwarming_eco'') | float }}'
|
||
hvac_mode: heat
|
||
- action: fan.turn_off
|
||
metadata: {}
|
||
data: {}
|
||
target:
|
||
device_id: 65efdd1635426f4f499786410bc83b34
|
||
- action: media_player.media_stop
|
||
metadata: {}
|
||
target:
|
||
area_id: woonkamer
|
||
data: {}
|
||
- action: script.voicebal_standby
|
||
metadata: {}
|
||
data: {}
|
||
enabled: false
|
||
- action: script.speakers_woonkamer_standby
|
||
metadata: {}
|
||
data: {}
|
||
- delay:
|
||
hours: 0
|
||
minutes: 0
|
||
seconds: 30
|
||
milliseconds: 0
|
||
- action: script.display_off
|
||
metadata: {}
|
||
data: {}
|
||
- action: switch.turn_off
|
||
metadata: {}
|
||
target:
|
||
entity_id:
|
||
- switch.stopcontact_woonkamer_output_2_tv
|
||
- switch.stopcontact_woonkamer_output_0
|
||
data: {}
|
||
alias: Alles uit - Woonkamer
|
||
description: ''
|
||
icon: mdi:sofa-outline
|
||
alles_uit_kantoor:
|
||
sequence:
|
||
- action: light.turn_off
|
||
metadata: {}
|
||
target:
|
||
entity_id: light.lamp_kantoor_2
|
||
data: {}
|
||
- action: climate.set_temperature
|
||
metadata: {}
|
||
target:
|
||
entity_id:
|
||
- climate.thermostaat_kantoor
|
||
data:
|
||
temperature: '{{ states(''input_number.verwarming_eco'') | float }}'
|
||
hvac_mode: heat
|
||
alias: Alles uit - Kantoor
|
||
description: ''
|
||
alles_uit_boven:
|
||
sequence:
|
||
- action: light.turn_off
|
||
metadata: {}
|
||
target:
|
||
entity_id:
|
||
- light.lamp_badkamer
|
||
- light.overloop_switch_0
|
||
data: {}
|
||
- action: script.alles_uit_kantoor
|
||
metadata: {}
|
||
data: {}
|
||
- action: script.slaapkamer_alles_uit
|
||
metadata: {}
|
||
data: {}
|
||
- action: script.alles_uit_slaapkamer_kids
|
||
metadata: {}
|
||
data: {}
|
||
- action: script.boiler_uit
|
||
metadata: {}
|
||
data: {}
|
||
alias: Alles uit - Boven
|
||
description: ''
|
||
alles_uit_beneden:
|
||
sequence:
|
||
- action: script.keuken_alles_uit
|
||
metadata: {}
|
||
data: {}
|
||
- action: script.woonkamer_alles_uit
|
||
metadata: {}
|
||
data: {}
|
||
alias: Alles uit - Beneden
|
||
description: ''
|
||
alles_uit:
|
||
sequence:
|
||
- action: script.alles_uit_beneden
|
||
metadata: {}
|
||
data: {}
|
||
- action: script.alles_uit_boven
|
||
metadata: {}
|
||
data: {}
|
||
alias: Alles uit
|
||
description: ''
|
||
meshcore_snr:
|
||
alias: Meshcore - SNR
|
||
description: Create SNR of each (last) contact
|
||
fields:
|
||
contact:
|
||
selector:
|
||
text:
|
||
name: contact
|
||
required: true
|
||
sequence:
|
||
- action: mqtt.publish
|
||
data:
|
||
topic: homeassistant/sensor/mc-{{contact}}/snr/config
|
||
retain: true
|
||
payload: "{\n \"name\": \"Meshcore SNR {{ contact }}\",\n \"unique_id\": \"meshcore_snr_{{
|
||
contact }}\",\n \"state_topic\": \"meshcore/snr/{{ contact }}\",\n \"state_class\":
|
||
\"measurement\",\n \"unit_of_measurement\": \"dB\",\n \"value_template\":
|
||
{% raw %}\"{{ value_json.snr }}\"{% endraw %},\n \"icon\": \"mdi:signal\",\n
|
||
\ \"json_attributes_topic\" : \"meshcore/snr/{{ contact }}\"\n}"
|
||
qos: '0'
|
||
mode: single
|
||
meshcore_contact_management:
|
||
alias: Meshcore - Contact Management
|
||
description: Mostly used for BULK removal of contacts
|
||
sequence:
|
||
- choose:
|
||
- conditions:
|
||
- condition: template
|
||
value_template: '{{ option == ''favorite'' }}'
|
||
sequence:
|
||
- variables:
|
||
pubkey_prefix: '{{- state_attr(''select.meshcore_added_contact'',''pubkey_prefix'')
|
||
-}}'
|
||
- repeat:
|
||
for_each: '{{ states.binary_sensor | selectattr(''attributes.lastmod'',
|
||
''defined'') | selectattr(''attributes.pubkey_prefix'', ''contains'',
|
||
pubkey_prefix) | map(attribute=''object_id'') | list }}'
|
||
sequence:
|
||
- variables:
|
||
entity_id: binary_sensor.{{ repeat.item }}
|
||
favorite: '{{ state_attr(entity_id,''flags'')}}'
|
||
toggle: "{% if favorite == 0 %}\n 1\n{% else %}\n 0\n{% endif %}"
|
||
- action: meshcore.execute_command
|
||
data:
|
||
command: change_contact_flags {{ pubkey_prefix }} {{ toggle }}
|
||
- conditions:
|
||
- condition: template
|
||
value_template: '{{ option == ''old_node_contacts'' }}'
|
||
sequence:
|
||
- variables:
|
||
days_old: "{% if days < 7 %}\n 7\n{% else %}\n {{ days }}\n{% endif %}"
|
||
- repeat:
|
||
for_each: "{%- set time = now() | as_timestamp | int -%} \n{%- set time
|
||
= time - days_old*24*60*60 -%} \n{{- states.binary_sensor \n| selectattr('attributes.lastmod',
|
||
'defined') \n| selectattr('state', 'eq', 'stale') \n| selectattr('attributes.lastmod',
|
||
'lt', time ) \n| map(attribute='object_id') | list }}"
|
||
sequence:
|
||
- variables:
|
||
public_key: '{{ repeat.item[-20:-8] }}'
|
||
- action: meshcore.execute_command
|
||
data:
|
||
command: remove_contact {{ public_key }}
|
||
enabled: false
|
||
- conditions:
|
||
- condition: template
|
||
value_template: '{{ option == ''companions'' }}'
|
||
sequence:
|
||
- variables:
|
||
days_old: "{% if days < 7 %}\n 7\n{% else %}\n {{ days }}\n{% endif %}"
|
||
- repeat:
|
||
for_each: "{%- set time = now() | as_timestamp | int -%} \n{%- set time
|
||
= time - days_old*24*60*60 -%} \n{{- states.binary_sensor | \nselectattr('attributes.lastmod',
|
||
'defined') | \nselectattr('state', 'eq', 'discovered') |\nselectattr('attributes.lastmod',
|
||
'lt', time ) |\nselectattr('attributes.type', 'eq', 1 ) |\nmap(attribute='object_id')
|
||
| list -}}"
|
||
sequence:
|
||
- variables:
|
||
public_key: '{{ repeat.item[-20:-8] }}'
|
||
- action: meshcore.remove_discovered_contact
|
||
data:
|
||
pubkey_prefix: '{{ public_key }}'
|
||
enabled: false
|
||
- conditions:
|
||
- condition: template
|
||
value_template: '{{ option == ''repeaters'' }}'
|
||
sequence:
|
||
- variables:
|
||
days_old: "{% if days < 3 %}\n 3\n{% else %}\n {{ days }}\n{% endif %}"
|
||
- repeat:
|
||
for_each: "{%- set time = now() | as_timestamp | int -%}\n{%- set time =
|
||
time - days_old*24*60*60 -%}\n{{- states.binary_sensor \n| selectattr('attributes.lastmod',
|
||
'defined') \n| selectattr('state', 'eq', 'discovered') \n| selectattr('attributes.type',
|
||
'ne', 1 )\n| selectattr('attributes.lastmod', 'lt', time ) \n| map(attribute='object_id')
|
||
| list }}"
|
||
sequence:
|
||
- variables:
|
||
public_key: '{{ repeat.item[-20:-8] }}'
|
||
- action: meshcore.remove_discovered_contact
|
||
data:
|
||
pubkey_prefix: '{{ public_key }}'
|
||
enabled: false
|
||
- conditions:
|
||
- condition: template
|
||
value_template: '{{ option == ''added'' }}'
|
||
sequence:
|
||
- repeat:
|
||
for_each: "{{- states.binary_sensor \n| selectattr('attributes.lastmod','defined')
|
||
\n| selectattr('state', 'ne', 'discovered') \n| selectattr('attributes.added_to_node',
|
||
'eq', true ) \n| map(attribute='object_id') | list -}}"
|
||
sequence:
|
||
- variables:
|
||
public_key: '{{ repeat.item[-20:-8] }}'
|
||
- action: meshcore.remove_discovered_contact
|
||
data:
|
||
pubkey_prefix: '{{ public_key }}'
|
||
- action: script.meshcore_contact_management
|
||
metadata: {}
|
||
data:
|
||
option: reload
|
||
enabled: false
|
||
default:
|
||
- stop: Created by WJ4IoT v1.02 Reduced bulk action to core actions.
|
||
enabled: false
|
||
fields:
|
||
option:
|
||
selector:
|
||
text:
|
||
name: option
|
||
description: input files which defines the sequence
|
||
required: true
|
||
days:
|
||
selector:
|
||
number:
|
||
min: 0.5
|
||
max: 100
|
||
name: days
|
||
description: Number of days the contact must be old
|
||
required: false
|
||
film_kijken:
|
||
sequence:
|
||
- action: cover.close_cover
|
||
metadata: {}
|
||
target:
|
||
entity_id: cover.shelly_projector_scherm
|
||
data: {}
|
||
- action: button.press
|
||
metadata: {}
|
||
data: {}
|
||
target:
|
||
entity_id: button.ir_blaster_woonkamer_power
|
||
- action: light.turn_on
|
||
metadata: {}
|
||
target:
|
||
entity_id: light.lamp_bed_links_dim
|
||
data:
|
||
brightness_pct: 34
|
||
- action: light.turn_off
|
||
metadata: {}
|
||
data: {}
|
||
target:
|
||
device_id: a421097cef9b325efb84ae7009ff87be
|
||
alias: Film kijken
|
||
description: ''
|
||
slapen_slaapkamer_willem:
|
||
sequence:
|
||
- if:
|
||
- condition: device
|
||
device_id: ed986b7daa26aca29c5636403fecec82
|
||
domain: cover
|
||
entity_id: cf5f60186168615423f7c8c4ca976ecd
|
||
type: is_closed
|
||
then:
|
||
- action: cover.open_cover
|
||
metadata: {}
|
||
target:
|
||
entity_id: cover.shelly_projector_scherm
|
||
data: {}
|
||
- action: light.turn_off
|
||
metadata: {}
|
||
target:
|
||
area_id: slaapkamer_ilse_en_willem
|
||
data:
|
||
transition: 8
|
||
alias: 'Slapen - slaapkamer willem '
|
||
description: ''
|
||
alles_uit_slaapkamer_kids:
|
||
sequence:
|
||
- action: light.turn_off
|
||
metadata: {}
|
||
data: {}
|
||
target:
|
||
entity_id:
|
||
- light.lamp_kantoor
|
||
- light.slaaptrainer_luuk_slaaptrainer_luuk_leds
|
||
- action: climate.set_temperature
|
||
metadata: {}
|
||
data:
|
||
temperature: '{{ states(''input_number.verwarming_eco'') | float }}'
|
||
hvac_mode: heat
|
||
target:
|
||
entity_id: climate.smart_radiator_thermostat_x
|
||
alias: Alles uit - Slaapkamer kids
|
||
description: ''
|
||
icon: mdi:bed-outline
|