diff --git a/OLD_config/blueprint_V1.yaml b/OLD_config/blueprint_V1.yaml new file mode 100644 index 0000000..c22c96f --- /dev/null +++ b/OLD_config/blueprint_V1.yaml @@ -0,0 +1,3341 @@ +blueprint: + name: NSPanel Configuration + description: Synchronize NSpanel Button with HA Entities and Back! And many other things! + domain: automation + input: + last_click: + name: NSPanel "last click" + description: 'Select NSPanel **"last click"** where the commands should be monitored' + selector: + entity: {} + last_click_coversettings: + name: NSPanel "last click coversettings" + description: 'Select NSPanel **"last click coversettings"** where the commands for Page Coversettings should be monitored (same NSPanel as **"last click"**)' + selector: + entity: {} + last_click_lightsettings: + name: NSPanel "last click lightsettings" + description: 'Select NSPanel **"last click lightsettings"** where the commands for Page Lightsettings should be monitored (same NSPanel as **"last click"**)' + selector: + entity: {} + nextion_inited: + name: NSPanel "Nextion Switch - nextion_inited" + description: 'nextion_inited is set up via esphome and shows the state of the Nspanel - NSPanel ready after Reboot (same NSPanel as **"last click"**) Example *"switch.nspanel_buro_nextion_inited"*' + selector: + entity: {} + command_printf: + name: Light Settings Page JUMP + description: 'Service for jump to the light settings (same NSPanel as **"last click"**) Example *"esphome.nspanel_buero_send_command_printf"*' + default: esphome.nspanel_buero_send_command_printf + selector: + text: {} + command_value: + name: Sync Button Funktion + description: 'Service to synchronize HA Entity State (ON/OFF) to NSPanel Button Page(same NSPanel as **"last click"**) Example *"esphome.nspanel_buero_send_command_value"*' + default: esphome.nspanel_buero_send_command_value + selector: + text: {} + command_text_printf: + name: Sync Light Status + description: 'Service to synchronize Eintity States to NSPanel Lightsettings (same NSPanel as **"last click"**) Example *"esphome.nspanel_buero_send_command_text_printf"*' + default: esphome.nspanel_buero_send_command_text_printf + selector: + text: {} + tft_path: + name: Path for Nextion TFT File + description: 'TFT Path where the Nextion TFT File is stored (same NSPanel as **"last click"**) Example *"/config/www/nspanel/buero/nspanel_buero.tft"*' + default: /config/www/nspanel/buero/nspanel_buero.tft + selector: + text: {} + entity01: + name: Button 01 (Optional) + description: Nextion Editor - *buttonpage01.button01* **(ONLY light | switch | cover | input_boolean)** + default: [] + selector: + entity: + domain: + - light + - switch + - cover + - input_boolean + entity02: + name: Button 02 (Optional) + description: Nextion Editor - *buttonpage01.button02* **(ONLY light | switch | cover | input_boolean)** + default: [] + selector: + entity: + domain: + - light + - switch + - cover + - input_boolean + entity03: + name: Button 03 (Optional) + description: Nextion Editor - *buttonpage01.button03* **(ONLY light | switch | cover | input_boolean)** + default: [] + selector: + entity: + domain: + - light + - switch + - cover + - input_boolean + entity04: + name: Button 04 (Optional) + description: Nextion Editor - *buttonpage01.button04* **(ONLY light | switch | cover | input_boolean)** + default: [] + selector: + entity: + domain: + - light + - switch + - cover + - input_boolean + entity05: + name: Button 05 (Optional) + description: Nextion Editor - *buttonpage01.button05* **(ONLY light | switch | cover | input_boolean)** + default: [] + selector: + entity: + domain: + - light + - switch + - cover + - input_boolean + entity06: + name: Button 06 (Optional) + description: Nextion Editor - *buttonpage01.button06* **(ONLY light | switch | cover | input_boolean)** + default: [] + selector: + entity: + domain: + - light + - switch + - cover + - input_boolean + entity07: + name: Button 07 (Optional) + description: Nextion Editor - *buttonpage01.button07* **(ONLY light | switch | cover | input_boolean)** + default: [] + selector: + entity: + domain: + - light + - switch + - cover + - input_boolean + entity08: + name: Button 08 (Optional) + description: Nextion Editor - *buttonpage01.button08* **(ONLY light | switch | cover | input_boolean)** + default: [] + selector: + entity: + domain: + - light + - switch + - cover + - input_boolean + entity09: + name: Button 09 (Optional) + description: Nextion Editor - *buttonpage02.button01* **(ONLY light | switch | cover | input_boolean)** + default: [] + selector: + entity: + domain: + - light + - switch + - cover + - input_boolean + entity10: + name: Button 10 (Optional) + description: Nextion Editor - *buttonpage02.button02* **(ONLY light | switch | cover | input_boolean)** + default: [] + selector: + entity: + domain: + - light + - switch + - cover + - input_boolean + entity11: + name: Button 11 (Optional) + description: Nextion Editor - *buttonpage02.button03* **(ONLY light | switch | cover | input_boolean)** + default: [] + selector: + entity: + domain: + - light + - switch + - cover + - input_boolean + entity12: + name: Button 12 (Optional) + description: Nextion Editor - *buttonpage02.button04* **(ONLY light | switch | cover | input_boolean)** + default: [] + selector: + entity: + domain: + - light + - switch + - cover + - input_boolean + entity13: + name: Button 13 (Optional) + description: Nextion Editor - *buttonpage01.button05* **(ONLY light | switch | cover | input_boolean)** + default: [] + selector: + entity: + domain: + - light + - switch + - cover + - input_boolean + entity14: + name: Button 14 (Optional) + description: Nextion Editor - *buttonpage02.button06* **(ONLY light | switch | cover | input_boolean)** + default: [] + selector: + entity: + domain: + - light + - switch + - cover + - input_boolean + entity15: + name: Button 15 (Optional) + description: Nextion Editor - *buttonpage02.button07* **(ONLY light | switch | cover | input_boolean)** + default: [] + selector: + entity: + domain: + - light + - switch + - cover + - input_boolean + entity16: + name: Button 16 (Optional) + description: Nextion Editor - *buttonpage02.button08* **(ONLY light | switch | cover | input_boolean)** + default: [] + selector: + entity: + domain: + - light + - switch + - cover + - input_boolean + entity17: + name: Button 17 (Optional) + description: Nextion Editor - *buttonpage03.button01* **(ONLY light | switch | cover | input_boolean)** + default: [] + selector: + entity: + domain: + - light + - switch + - cover + - input_boolean + entity18: + name: Button 18 (Optional) + description: Nextion Editor - *buttonpage03.button02* **(ONLY light | switch | cover | input_boolean)** + default: [] + selector: + entity: + domain: + - light + - switch + - cover + - input_boolean + entity19: + name: Button 19 (Optional) + description: Nextion Editor - *buttonpage03.button03* **(ONLY light | switch | cover | input_boolean)** + default: [] + selector: + entity: + domain: + - light + - switch + - cover + - input_boolean + entity20: + name: Button 20 (Optional) + description: Nextion Editor - *buttonpage03.button04* **(ONLY light | switch | cover | input_boolean)** + default: [] + selector: + entity: + domain: + - light + - switch + - cover + - input_boolean + entity21: + name: Button 21 (Optional) + description: Nextion Editor - *buttonpage03.button05* **(ONLY light | switch | cover | input_boolean)** + default: [] + selector: + entity: + domain: + - light + - switch + - cover + - input_boolean + entity22: + name: Button 22 (Optional) + description: Nextion Editor - *buttonpage03.button06* **(ONLY light | switch | cover | input_boolean)** + default: [] + selector: + entity: + domain: + - light + - switch + - cover + - input_boolean + entity23: + name: Button 23 (Optional) + description: Nextion Editor - *buttonpage03.button07* **(ONLY light | switch | cover | input_boolean)** + default: [] + selector: + entity: + domain: + - light + - switch + - cover + - input_boolean + entity24: + name: Button 24 (Optional) + description: Nextion Editor - *buttonpage03.button08* **(ONLY light | switch | cover | input_boolean)** + default: [] + selector: + entity: + domain: + - light + - switch + - cover + - input_boolean + entity25: + name: Button 25 (Optional) + description: Nextion Editor - *buttonpage04.button01* **(ONLY light | switch | cover | input_boolean)** + default: [] + selector: + entity: + domain: + - light + - switch + - cover + - input_boolean + entity26: + name: Button 26 (Optional) + description: Nextion Editor - *buttonpage04.button02* **(ONLY light | switch | cover | input_boolean)** + default: [] + selector: + entity: + domain: + - light + - switch + - cover + - input_boolean + entity27: + name: Button 27 (Optional) + description: Nextion Editor - *buttonpage04.button03* **(ONLY light | switch | cover | input_boolean)** + default: [] + selector: + entity: + domain: + - light + - switch + - cover + - input_boolean + entity28: + name: Button 28 (Optional) + description: Nextion Editor - *buttonpage04.button04* **(ONLY light | switch | cover | input_boolean)** + default: [] + selector: + entity: + domain: + - light + - switch + - cover + - input_boolean + entity29: + name: Button 29 (Optional) + description: Nextion Editor - *buttonpage04.button05* **(ONLY light | switch | cover | input_boolean)** + default: [] + selector: + entity: + domain: + - light + - switch + - cover + - input_boolean + entity30: + name: Button 30 (Optional) + description: Nextion Editor - *buttonpage04.button06* **(ONLY light | switch | cover | input_boolean)** + default: [] + selector: + entity: + domain: + - light + - switch + - cover + - input_boolean + entity31: + name: Button 31 (Optional) + description: Nextion Editor - *buttonpage04.button07* **(ONLY light | switch | cover | input_boolean)** + default: [] + selector: + entity: + domain: + - light + - switch + - cover + - input_boolean + entity32: + name: Button 32 (Optional) + description: Nextion Editor - *buttonpage04.button08* **(ONLY light | switch | cover | input_boolean)** + default: [] + selector: + entity: + domain: + - light + - switch + - cover + - input_boolean + entity33: + name: Button 33 (Optional) + description: Nextion Editor - *buttonpage05.button01* **(ONLY light | switch | cover | input_boolean)** + default: [] + selector: + entity: + domain: + - light + - switch + - cover + - input_boolean + entity34: + name: Button 34 (Optional) + description: Nextion Editor - *buttonpage05.button02* **(ONLY light | switch | cover | input_boolean)** + default: [] + selector: + entity: + domain: + - light + - switch + - cover + - input_boolean + entity35: + name: Button 35 (Optional) + description: Nextion Editor - *buttonpage05.button03* **(ONLY light | switch | cover | input_boolean)** + default: [] + selector: + entity: + domain: + - light + - switch + - cover + - input_boolean + entity36: + name: Button 36 (Optional) + description: Nextion Editor - *buttonpage05.button04* **(ONLY light | switch | cover | input_boolean)** + default: [] + selector: + entity: + domain: + - light + - switch + - cover + - input_boolean + entity37: + name: Button 37 (Optional) + description: Nextion Editor - *buttonpage05.button05* **(ONLY light | switch | cover | input_boolean)** + default: [] + selector: + entity: + domain: + - light + - switch + - cover + - input_boolean + entity38: + name: Button 38 (Optional) + description: Nextion Editor - *buttonpage05.button06* **(ONLY light | switch | cover | input_boolean)** + default: [] + selector: + entity: + domain: + - light + - switch + - cover + - input_boolean + entity39: + name: Button 39 (Optional) + description: Nextion Editor - *buttonpage05.button07* **(ONLY light | switch | cover | input_boolean)** + default: [] + selector: + entity: + domain: + - light + - switch + - cover + - input_boolean + entity40: + name: Button 40 (Optional) + description: Nextion Editor - *buttonpage05.button08* **(ONLY light | switch | cover | input_boolean)** + default: [] + selector: + entity: + domain: + - light + - switch + - cover + - input_boolean + +mode: parallel +max: 500 + +######################################### +# +# +############################################################# +##### CLOSE - INPUT ##### +############################################################# +# +## +### +############################################################################################################################################################################################# +### +## +# +############################################################# +##### START - Variables ##### +############################################################# +# +# +######################################### +trigger_variables: + last_click: !input 'last_click' + last_click_lightsettings: !input 'last_click_lightsettings' + last_click_coversettings: !input 'last_click_coversettings' + +variables: + command_value: !input 'command_value' + command_text_printf: !input 'command_text_printf' + command_printf: !input 'command_printf' + tft_path: !input 'tft_path' + nextion_inited: !input 'nextion_inited' + +##### Buttons ##### + entity01: !input 'entity01' + entity02: !input 'entity02' + entity03: !input 'entity03' + entity04: !input 'entity04' + entity05: !input 'entity05' + entity06: !input 'entity06' + entity07: !input 'entity07' + entity08: !input 'entity08' + entity09: !input 'entity09' + entity10: !input 'entity10' + entity11: !input 'entity11' + entity12: !input 'entity12' + entity13: !input 'entity13' + entity14: !input 'entity14' + entity15: !input 'entity15' + entity16: !input 'entity16' + entity17: !input 'entity17' + entity18: !input 'entity18' + entity19: !input 'entity19' + entity20: !input 'entity20' + entity21: !input 'entity21' + entity22: !input 'entity22' + entity23: !input 'entity23' + entity24: !input 'entity24' + entity25: !input 'entity25' + entity26: !input 'entity26' + entity27: !input 'entity27' + entity28: !input 'entity28' + entity29: !input 'entity29' + entity30: !input 'entity30' + entity31: !input 'entity31' + entity32: !input 'entity32' + entity33: !input 'entity33' + entity34: !input 'entity34' + entity35: !input 'entity35' + entity36: !input 'entity36' + entity37: !input 'entity37' + entity38: !input 'entity38' + entity39: !input 'entity39' + entity40: !input 'entity40' + +######################################### +# +# +############################################################# +##### CLOSE - Variables ##### +############################################################# +# +## +### +############################################################################################################################################################################################# +### +## +# +############################################################# +##### START - Trigger ##### +############################################################# +# +# +######################################### + +trigger: +##### Page Button - Trigger ##### + - platform: event + event_type: state_changed + event_data: + entity_id: !input 'last_click' + id: short_press + +##### Button LONG Press for jump to Lightsetting or Coversetting Page - Trigger ##### + - platform: template + value_template: '{{ states(last_click) is match "press" }}' + for: + seconds: 2 + id: long_press + +##### Page Lightsettings - Trigger ##### + - platform: event + event_type: state_changed + event_data: + entity_id: !input 'last_click_lightsettings' + id: light_settings + +##### Page Coversettings - Trigger ##### + - platform: event + event_type: state_changed + event_data: + entity_id: !input 'last_click_coversettings' + id: cover_settings + +#### Weather - Trigger #### + - platform: time_pattern + minutes: '10' + id: weather + - platform: state + entity_id: !input 'nextion_inited' + to: 'on' + id: weather + +##### TFT Upload ##### + - platform: event + event_type: folder_watcher + event_data: + event_type: modified + path: !input 'tft_path' + id: tft_upload + +##### Button01 Sync - Trigger ##### + - platform: state + entity_id: !input 'entity01' + for: + seconds: 1 + id: current_state_entity01 + +##### Button02 Sync - Trigger ##### + - platform: state + entity_id: !input 'entity02' + for: + seconds: 1 + id: current_state_entity02 + +##### Button03 Sync - Trigger ##### + - platform: state + entity_id: !input 'entity03' + for: + seconds: 1 + id: current_state_entity03 + +##### Button04 Sync - Trigger ##### + - platform: state + entity_id: !input 'entity04' + for: + seconds: 1 + id: current_state_entity04 + +##### Button05 Sync - Trigger ##### + - platform: state + entity_id: !input 'entity05' + for: + seconds: 1 + id: current_state_entity05 + +##### Button06 Sync - Trigger ##### + - platform: state + entity_id: !input 'entity06' + for: + seconds: 1 + id: current_state_entity06 + +##### Button07 Sync - Trigger ##### + - platform: state + entity_id: !input 'entity07' + for: + seconds: 1 + id: current_state_entity07 + +##### Button08 Sync - Trigger ##### + - platform: state + entity_id: !input 'entity08' + for: + seconds: 1 + id: current_state_entity08 + +##### Button09 Sync - Trigger ##### + - platform: state + entity_id: !input 'entity09' + for: + seconds: 1 + id: current_state_entity09 + +##### Button10 Sync - Trigger ##### + - platform: state + entity_id: !input 'entity10' + for: + seconds: 1 + id: current_state_entity10 + +##### Button11 Sync - Trigger ##### + - platform: state + entity_id: !input 'entity11' + for: + seconds: 1 + id: current_state_entity11 + +##### Button12 Sync - Trigger ##### + - platform: state + entity_id: !input 'entity12' + for: + seconds: 1 + id: current_state_entity12 + +##### Button13 Sync - Trigger ##### + - platform: state + entity_id: !input 'entity13' + for: + seconds: 1 + id: current_state_entity13 + +##### Button14 Sync - Trigger ##### + - platform: state + entity_id: !input 'entity14' + for: + seconds: 1 + id: current_state_entity14 + +##### Button15 Sync - Trigger ##### + - platform: state + entity_id: !input 'entity15' + for: + seconds: 1 + id: current_state_entity15 + +##### Button16 Sync - Trigger ##### + - platform: state + entity_id: !input 'entity16' + for: + seconds: 1 + id: current_state_entity16 + +##### Button17 Sync - Trigger ##### + - platform: state + entity_id: !input 'entity17' + for: + seconds: 1 + id: current_state_entity17 + +##### Button18 Sync - Trigger ##### + - platform: state + entity_id: !input 'entity18' + for: + seconds: 1 + id: current_state_entity18 + +##### Button19 Sync - Trigger ##### + - platform: state + entity_id: !input 'entity19' + for: + seconds: 1 + id: current_state_entity19 + +##### Button20 Sync - Trigger ##### + - platform: state + entity_id: !input 'entity20' + for: + seconds: 1 + id: current_state_entity20 + +##### Button21 Sync - Trigger ##### + - platform: state + entity_id: !input 'entity21' + for: + seconds: 1 + id: current_state_entity21 + +##### Button22 Sync - Trigger ##### + - platform: state + entity_id: !input 'entity22' + for: + seconds: 1 + id: current_state_entity22 + +##### Button23 Sync - Trigger ##### + - platform: state + entity_id: !input 'entity23' + for: + seconds: 1 + id: current_state_entity23 + +##### Button24 Sync - Trigger ##### + - platform: state + entity_id: !input 'entity24' + for: + seconds: 1 + id: current_state_entity24 + +##### Button25 Sync - Trigger ##### + - platform: state + entity_id: !input 'entity25' + for: + seconds: 1 + id: current_state_entity25 + +##### Button26 Sync - Trigger ##### + - platform: state + entity_id: !input 'entity26' + for: + seconds: 1 + id: current_state_entity26 + +##### Button27 Sync - Trigger ##### + - platform: state + entity_id: !input 'entity27' + for: + seconds: 1 + id: current_state_entity27 + +##### Button28 Sync - Trigger ##### + - platform: state + entity_id: !input 'entity28' + for: + seconds: 1 + id: current_state_entity28 + +##### Button29 Sync - Trigger ##### + - platform: state + entity_id: !input 'entity29' + for: + seconds: 1 + id: current_state_entity29 + +##### Button30 Sync - Trigger ##### + - platform: state + entity_id: !input 'entity30' + for: + seconds: 1 + id: current_state_entity30 + +##### Button31 Sync - Trigger ##### + - platform: state + entity_id: !input 'entity31' + for: + seconds: 1 + id: current_state_entity31 + +##### Button32 Sync - Trigger ##### + - platform: state + entity_id: !input 'entity32' + for: + seconds: 1 + id: current_state_entity32 + +##### Button33 Sync - Trigger ##### + - platform: state + entity_id: !input 'entity33' + for: + seconds: 1 + id: current_state_entity33 + +##### Button34 Sync - Trigger ##### + - platform: state + entity_id: !input 'entity34' + for: + seconds: 1 + id: current_state_entity34 + +##### Button35 Sync - Trigger ##### + - platform: state + entity_id: !input 'entity35' + for: + seconds: 1 + id: current_state_entity35 + +##### Button36 Sync - Trigger ##### + - platform: state + entity_id: !input 'entity36' + for: + seconds: 1 + id: current_state_entity36 + +##### Button37 Sync - Trigger ##### + - platform: state + entity_id: !input 'entity37' + for: + seconds: 1 + id: current_state_entity37 + +##### Button38 Sync - Trigger ##### + - platform: state + entity_id: !input 'entity38' + for: + seconds: 1 + id: current_state_entity38 + +##### Button39 Sync - Trigger ##### + - platform: state + entity_id: !input 'entity39' + for: + seconds: 1 + id: current_state_entity39 + +##### Button40 Sync - Trigger ##### + - platform: state + entity_id: !input 'entity40' + for: + seconds: 1 + id: current_state_entity40 + +######################################### +# +# +############################################################# +##### CLOSE - Trigger ##### +############################################################# +# +## +### +############################################################################################################################################################################################# +### +## +# +############################################################# +##### START - Action ##### +############################################################# +# +# +######################################### +action: + - variables: +##### Entity - Page Button - Toggle Entity ##### + entity_short: >- + {%- if states(last_click) == "releasebuttonpage01button01" -%} {{ entity01 }} + {%- elif states(last_click) == "releasebuttonpage01button02" -%} {{ entity02 }} + {%- elif states(last_click) == "releasebuttonpage01button03" -%} {{ entity03 }} + {%- elif states(last_click) == "releasebuttonpage01button04" -%} {{ entity04 }} + {%- elif states(last_click) == "releasebuttonpage01button05" -%} {{ entity05 }} + {%- elif states(last_click) == "releasebuttonpage01button06" -%} {{ entity06 }} + {%- elif states(last_click) == "releasebuttonpage01button07" -%} {{ entity07 }} + {%- elif states(last_click) == "releasebuttonpage01button08" -%} {{ entity08 }} + {%- elif states(last_click) == "releasebuttonpage02button01" -%} {{ entity09 }} + {%- elif states(last_click) == "releasebuttonpage02button02" -%} {{ entity10 }} + {%- elif states(last_click) == "releasebuttonpage02button03" -%} {{ entity11 }} + {%- elif states(last_click) == "releasebuttonpage02button04" -%} {{ entity12 }} + {%- elif states(last_click) == "releasebuttonpage02button05" -%} {{ entity13 }} + {%- elif states(last_click) == "releasebuttonpage02button06" -%} {{ entity14 }} + {%- elif states(last_click) == "releasebuttonpage02button07" -%} {{ entity15 }} + {%- elif states(last_click) == "releasebuttonpage02button08" -%} {{ entity16 }} + {%- elif states(last_click) == "releasebuttonpage03button01" -%} {{ entity17 }} + {%- elif states(last_click) == "releasebuttonpage03button02" -%} {{ entity18 }} + {%- elif states(last_click) == "releasebuttonpage03button03" -%} {{ entity19 }} + {%- elif states(last_click) == "releasebuttonpage03button04" -%} {{ entity20 }} + {%- elif states(last_click) == "releasebuttonpage03button05" -%} {{ entity21 }} + {%- elif states(last_click) == "releasebuttonpage03button06" -%} {{ entity22 }} + {%- elif states(last_click) == "releasebuttonpage03button07" -%} {{ entity23 }} + {%- elif states(last_click) == "releasebuttonpage03button08" -%} {{ entity24 }} + {%- elif states(last_click) == "releasebuttonpage04button01" -%} {{ entity25 }} + {%- elif states(last_click) == "releasebuttonpage04button02" -%} {{ entity26 }} + {%- elif states(last_click) == "releasebuttonpage04button03" -%} {{ entity27 }} + {%- elif states(last_click) == "releasebuttonpage04button04" -%} {{ entity28 }} + {%- elif states(last_click) == "releasebuttonpage04button05" -%} {{ entity29 }} + {%- elif states(last_click) == "releasebuttonpage04button06" -%} {{ entity30 }} + {%- elif states(last_click) == "releasebuttonpage04button07" -%} {{ entity31 }} + {%- elif states(last_click) == "releasebuttonpage04button08" -%} {{ entity32 }} + {%- elif states(last_click) == "releasebuttonpage05button01" -%} {{ entity33 }} + {%- elif states(last_click) == "releasebuttonpage05button02" -%} {{ entity34 }} + {%- elif states(last_click) == "releasebuttonpage05button03" -%} {{ entity35 }} + {%- elif states(last_click) == "releasebuttonpage05button04" -%} {{ entity36 }} + {%- elif states(last_click) == "releasebuttonpage05button05" -%} {{ entity37 }} + {%- elif states(last_click) == "releasebuttonpage05button06" -%} {{ entity38 }} + {%- elif states(last_click) == "releasebuttonpage05button07" -%} {{ entity39 }} + {%- elif states(last_click) == "releasebuttonpage05button08" -%} {{ entity40 }} + {%- endif -%} + +##### Entity - Page Lightsettings ##### + entity_long: >- + {%- if states(last_click) == "pressbuttonpage01button01" -%} {{ entity01 }} + {%- elif states(last_click) == "pressbuttonpage01button02" -%} {{ entity02 }} + {%- elif states(last_click) == "pressbuttonpage01button03" -%} {{ entity03 }} + {%- elif states(last_click) == "pressbuttonpage01button04" -%} {{ entity04 }} + {%- elif states(last_click) == "pressbuttonpage01button05" -%} {{ entity05 }} + {%- elif states(last_click) == "pressbuttonpage01button06" -%} {{ entity06 }} + {%- elif states(last_click) == "pressbuttonpage01button07" -%} {{ entity07 }} + {%- elif states(last_click) == "pressbuttonpage01button08" -%} {{ entity08 }} + {%- elif states(last_click) == "pressbuttonpage02button01" -%} {{ entity09 }} + {%- elif states(last_click) == "pressbuttonpage02button02" -%} {{ entity10 }} + {%- elif states(last_click) == "pressbuttonpage02button03" -%} {{ entity11 }} + {%- elif states(last_click) == "pressbuttonpage02button04" -%} {{ entity12 }} + {%- elif states(last_click) == "pressbuttonpage02button05" -%} {{ entity13 }} + {%- elif states(last_click) == "pressbuttonpage02button06" -%} {{ entity14 }} + {%- elif states(last_click) == "pressbuttonpage02button07" -%} {{ entity15 }} + {%- elif states(last_click) == "pressbuttonpage02button08" -%} {{ entity16 }} + {%- elif states(last_click) == "pressbuttonpage03button01" -%} {{ entity17 }} + {%- elif states(last_click) == "pressbuttonpage03button02" -%} {{ entity18 }} + {%- elif states(last_click) == "pressbuttonpage03button03" -%} {{ entity19 }} + {%- elif states(last_click) == "pressbuttonpage03button04" -%} {{ entity20 }} + {%- elif states(last_click) == "pressbuttonpage03button05" -%} {{ entity21 }} + {%- elif states(last_click) == "pressbuttonpage03button06" -%} {{ entity22 }} + {%- elif states(last_click) == "pressbuttonpage03button07" -%} {{ entity23 }} + {%- elif states(last_click) == "pressbuttonpage03button08" -%} {{ entity24 }} + {%- elif states(last_click) == "pressbuttonpage04button01" -%} {{ entity25 }} + {%- elif states(last_click) == "pressbuttonpage04button02" -%} {{ entity26 }} + {%- elif states(last_click) == "pressbuttonpage04button03" -%} {{ entity27 }} + {%- elif states(last_click) == "pressbuttonpage04button04" -%} {{ entity28 }} + {%- elif states(last_click) == "pressbuttonpage04button05" -%} {{ entity29 }} + {%- elif states(last_click) == "pressbuttonpage04button06" -%} {{ entity30 }} + {%- elif states(last_click) == "pressbuttonpage04button07" -%} {{ entity31 }} + {%- elif states(last_click) == "pressbuttonpage04button08" -%} {{ entity32 }} + {%- elif states(last_click) == "pressbuttonpage05button01" -%} {{ entity33 }} + {%- elif states(last_click) == "pressbuttonpage05button02" -%} {{ entity34 }} + {%- elif states(last_click) == "pressbuttonpage05button03" -%} {{ entity35 }} + {%- elif states(last_click) == "pressbuttonpage05button04" -%} {{ entity36 }} + {%- elif states(last_click) == "pressbuttonpage05button05" -%} {{ entity37 }} + {%- elif states(last_click) == "pressbuttonpage05button06" -%} {{ entity38 }} + {%- elif states(last_click) == "pressbuttonpage05button07" -%} {{ entity39 }} + {%- elif states(last_click) == "pressbuttonpage05button08" -%} {{ entity40 }} + {%- endif -%} + +##### Entity - Page Lightsettings - Skip Back ##### + entity_back: >- + {%- if states(last_click) == "pressbuttonpage01button01" -%} {{ "page buttonpage01" }} + {%- elif states(last_click) == "pressbuttonpage01button02" -%} {{ "page buttonpage01" }} + {%- elif states(last_click) == "pressbuttonpage01button03" -%} {{ "page buttonpage01" }} + {%- elif states(last_click) == "pressbuttonpage01button04" -%} {{ "page buttonpage01" }} + {%- elif states(last_click) == "pressbuttonpage01button05" -%} {{ "page buttonpage01" }} + {%- elif states(last_click) == "pressbuttonpage01button06" -%} {{ "page buttonpage01" }} + {%- elif states(last_click) == "pressbuttonpage01button07" -%} {{ "page buttonpage01" }} + {%- elif states(last_click) == "pressbuttonpage01button08" -%} {{ "page buttonpage01" }} + {%- elif states(last_click) == "pressbuttonpage02button01" -%} {{ "page buttonpage02" }} + {%- elif states(last_click) == "pressbuttonpage02button02" -%} {{ "page buttonpage02" }} + {%- elif states(last_click) == "pressbuttonpage02button03" -%} {{ "page buttonpage02" }} + {%- elif states(last_click) == "pressbuttonpage02button04" -%} {{ "page buttonpage02" }} + {%- elif states(last_click) == "pressbuttonpage02button05" -%} {{ "page buttonpage02" }} + {%- elif states(last_click) == "pressbuttonpage02button06" -%} {{ "page buttonpage02" }} + {%- elif states(last_click) == "pressbuttonpage02button07" -%} {{ "page buttonpage02" }} + {%- elif states(last_click) == "pressbuttonpage02button08" -%} {{ "page buttonpage02" }} + {%- elif states(last_click) == "pressbuttonpage03button01" -%} {{ "page buttonpage03" }} + {%- elif states(last_click) == "pressbuttonpage03button02" -%} {{ "page buttonpage03" }} + {%- elif states(last_click) == "pressbuttonpage03button03" -%} {{ "page buttonpage03" }} + {%- elif states(last_click) == "pressbuttonpage03button04" -%} {{ "page buttonpage03" }} + {%- elif states(last_click) == "pressbuttonpage03button05" -%} {{ "page buttonpage03" }} + {%- elif states(last_click) == "pressbuttonpage03button06" -%} {{ "page buttonpage03" }} + {%- elif states(last_click) == "pressbuttonpage03button07" -%} {{ "page buttonpage03" }} + {%- elif states(last_click) == "pressbuttonpage03button08" -%} {{ "page buttonpage03" }} + {%- elif states(last_click) == "pressbuttonpage04button01" -%} {{ "page buttonpage04" }} + {%- elif states(last_click) == "pressbuttonpage04button02" -%} {{ "page buttonpage04" }} + {%- elif states(last_click) == "pressbuttonpage04button03" -%} {{ "page buttonpage04" }} + {%- elif states(last_click) == "pressbuttonpage04button04" -%} {{ "page buttonpage04" }} + {%- elif states(last_click) == "pressbuttonpage04button05" -%} {{ "page buttonpage04" }} + {%- elif states(last_click) == "pressbuttonpage04button06" -%} {{ "page buttonpage04" }} + {%- elif states(last_click) == "pressbuttonpage04button07" -%} {{ "page buttonpage04" }} + {%- elif states(last_click) == "pressbuttonpage04button08" -%} {{ "page buttonpage04" }} + {%- elif states(last_click) == "pressbuttonpage05button01" -%} {{ "page buttonpage05" }} + {%- elif states(last_click) == "pressbuttonpage05button02" -%} {{ "page buttonpage05" }} + {%- elif states(last_click) == "pressbuttonpage05button03" -%} {{ "page buttonpage05" }} + {%- elif states(last_click) == "pressbuttonpage05button04" -%} {{ "page buttonpage05" }} + {%- elif states(last_click) == "pressbuttonpage05button05" -%} {{ "page buttonpage05" }} + {%- elif states(last_click) == "pressbuttonpage05button06" -%} {{ "page buttonpage05" }} + {%- elif states(last_click) == "pressbuttonpage05button07" -%} {{ "page buttonpage05" }} + {%- elif states(last_click) == "pressbuttonpage05button08" -%} {{ "page buttonpage05" }} + {%- endif -%} + +##### Page Button - SHORT Press - Toggle ##### + - choose: + - conditions: + - condition: trigger + id: short_press + sequence: + - service: >- + {% if entity_short is match 'light.' %} + light.toggle + {% elif entity_short is match 'switch.' %} + switch.toggle + {% elif entity_short is match 'cover.' %} + cover.toggle + {% elif entity_short is match 'input_boolean.' %} + input_boolean.toggle + {% endif %} + data: + entity_id: '{{ entity_short }}' + +##### Page Lightsettings - JUMP to Page Lightsettings and SYNC Light Settings ##### + - choose: + - conditions: + - condition: trigger + id: long_press + - condition: template + value_template: '{{ entity_long is match "light." }}' + sequence: + - service: !input command_printf + data: + cmd: page lightsettings + - service: !input command_text_printf + data: + component: lightsettings.a03 + message: '{{ (state_attr(entity_long, "brightness") | int * 100 / 254) |round(0) }}' + - service: !input command_text_printf + data: + component: lightsettings.a04 + message: '{{ state_attr(entity_long, "color_temp") |int }}' + +##### Page Lightsettings - SYNC Light Button ON / OFF ##### + - choose: + - conditions: + - condition: trigger + id: long_press + - condition: template + value_template: '{{ states(entity_long) == "on" }}' + sequence: + - service: !input command_value + data: + component: lightsettings.a06 + message: 1 + +##### Page Lightsettings - Brightness Slider ##### + - choose: + - conditions: + - condition: trigger + id: light_settings + - condition: template + value_template: '{{ states(last_click_lightsettings) is match "brightness\d+" }}' + sequence: + - service: light.turn_on + data: + entity_id: '{{ entity_long }}' + brightness_pct: '{{ states(last_click_lightsettings) |replace("brightness","") | int }}' + - service: !input command_text_printf + data: + component: lightsettings.a03 + message: '{{ states(last_click_lightsettings) |replace("brightness","") | int }}' + +##### Page Lightsettings - Color_Temp Slider ##### + - choose: + - conditions: + - condition: trigger + id: light_settings + - condition: template + value_template: '{{ states(last_click_lightsettings) is match "colortemp\d+" }}' + sequence: + - service: light.turn_on + data: + entity_id: '{{ entity_long }}' + color_temp: '{{ states(last_click_lightsettings) |replace("colortemp","") | int }}' + - service: !input command_text_printf + data: + component: lightsettings.a04 + message: '{{ states(last_click_lightsettings) |replace("colortemp","") | int }}' + +##### Page Lightsettings - Color RGB Slider ##### + - choose: + - conditions: + - condition: trigger + id: light_settings + - condition: template + value_template: '{{ states(last_click_lightsettings) is match "\d+,\d+,\d+" }}' + sequence: + - service: light.turn_on + data: + entity_id: '{{ entity_long }}' + rgb_color: '{{ states(last_click_lightsettings).split(",") }}' + +##### Page Lightsettings - Toggle Light ##### + - choose: + - conditions: + - condition: trigger + id: light_settings + - condition: template + value_template: '{{ states(last_click_lightsettings) == "releaselight" }}' + sequence: + - service: light.toggle + data: + entity_id: '{{ entity_long }}' + - delay: + milliseconds: 250 + - service: !input command_text_printf + data: + component: lightsettings.a03 + message: '{{ (state_attr(entity_long, "brightness") | int * 100 / 254) |round(0) }}' + - service: !input command_text_printf + data: + component: lightsettings.a04 + message: '{{ state_attr(entity_long, "color_temp") |int }}' + +##### Page Lightsettings - Close Lightsettings ##### + - choose: + - conditions: + - condition: trigger + id: light_settings + - condition: template + value_template: '{{ states(last_click_lightsettings) == "releaselightsettingsclose" }}' + sequence: + - service: !input command_printf + data: + cmd: '{{ entity_back }}' + +##### Page Coversettings - JUMP to Page Coversettings and SYNC Cover Settings ##### + - choose: + - conditions: + - condition: trigger + id: long_press + - condition: template + value_template: '{{ entity_long is match "cover." }}' + sequence: + - service: !input command_printf + data: + cmd: page coversettings + - service: !input command_text_printf + data: + component: coversettings.a03 + message: '{{ (state_attr(entity_long, "position") | int ) |round(0) }}' + - service: !input command_text_printf + data: + component: coversettings.a04 + message: '{{ (state_attr(entity_long, "battery") | int ) |round(0) }}' + +##### Page Coversettings - SYNC Cover Button ON / OFF ##### + - choose: + - conditions: + - condition: trigger + id: long_press + - condition: template + value_template: '{{ states(entity_long) == "open" }}' + sequence: + - service: !input command_value + data: + component: coversettings.a06 + message: 1 + +##### Page Coversettings - Cover Slider ##### + - choose: + - conditions: + - condition: trigger + id: cover_settings + - condition: template + value_template: '{{ states(last_click_coversettings) is match "coverposition\d+" }}' + sequence: + - service: cover.set_cover_position + data: + entity_id: '{{ entity_long }}' + position: '{{ states(last_click_coversettings) |replace("coverposition","") | int }}' + - service: !input command_text_printf + data: + component: coversettings.a03 + message: '{{ states(last_click_coversettings) |replace("coverposition","") | int }}' + +##### Page Coversettings - Toggle Cover ##### + - choose: + - conditions: + - condition: trigger + id: cover_settings + - condition: template + value_template: '{{ states(last_click_coversettings) == "releasecover" }}' + sequence: + - service: cover.toggle + data: + entity_id: '{{ entity_long }}' + - delay: + milliseconds: 250 + - service: !input command_text_printf + data: + component: coversettings.a03 + message: '{{ (state_attr(entity_long, "position") | int ) |round(0) }}' + +##### Page Coversettings - Close Coversettings ##### + - choose: + - conditions: + - condition: trigger + id: cover_settings + - condition: template + value_template: '{{ states(last_click_coversettings) == "releasecoversettingsclose" }}' + sequence: + - service: !input command_printf + data: + cmd: '{{ entity_back }}' + +##### TFT Upload Automation ##### + - choose: + - conditions: + - condition: trigger + id: tft_upload + sequence: + - delay: + seconds: 2 + - service: esphome.nspanel_buero_upload_tft + data: {} + +######################################### +# +# +############################################################# +##### CLOSE - START - Action ##### +############################################################# +# +## +### +############################################################################################################################################################################################# +### +## +# +############################################################# +##### START - HA Button SYNC ##### +############################################################# +# +# +######################################### + +##### Button01 ################################################################# + - choose: + - conditions: + - condition: trigger + id: current_state_entity01 +# - "{{ is_state('entity01', 'on' or 'open') }}" + - condition: state + entity_id: !input entity01 + state: + - "on" + - "open" + sequence: + - service: !input command_value + data: + component: buttonpage01.button01 + message: 1 + - conditions: + - condition: trigger + id: current_state_entity01 +# - "{{ is_state('entity01', 'off' or 'closed') }}" + - condition: state + entity_id: !input entity01 + state: + - "off" + - "closed" + sequence: + - service: !input command_value + data: + component: buttonpage01.button01 + message: 0 + +##### Button02 ################################################################# + - choose: + - conditions: + - condition: trigger + id: current_state_entity02 + - condition: state + entity_id: !input entity02 + state: + - "on" + - "open" + sequence: + - service: !input command_value + data: + component: buttonpage01.button02 + message: 1 + - conditions: + - condition: trigger + id: current_state_entity02 + - condition: state + entity_id: !input entity02 + state: + - "off" + - "closed" + sequence: + - service: !input command_value + data: + component: buttonpage01.button02 + message: 0 + +##### Button03 ################################################################# + - choose: + - conditions: + - condition: trigger + id: current_state_entity03 + - condition: state + entity_id: !input entity03 + state: + - "on" + - "open" + sequence: + - service: !input command_value + data: + component: buttonpage01.button03 + message: 1 + - conditions: + - condition: trigger + id: current_state_entity03 + - condition: state + entity_id: !input entity03 + state: + - "off" + - "closed" + sequence: + - service: !input command_value + data: + component: buttonpage01.button03 + message: 0 + +##### Button04 ################################################################# + - choose: + - conditions: + - condition: trigger + id: current_state_entity04 + - condition: state + entity_id: !input entity04 + state: + - "on" + - "open" + sequence: + - service: !input command_value + data: + component: buttonpage01.button04 + message: 1 + - conditions: + - condition: trigger + id: current_state_entity04 + - condition: state + entity_id: !input entity04 + state: + - "off" + - "closed" + sequence: + - service: !input command_value + data: + component: buttonpage01.button04 + message: 0 + +##### Button05 ################################################################# + - choose: + - conditions: + - condition: trigger + id: current_state_entity05 + - condition: state + entity_id: !input entity05 + state: + - "on" + - "open" + sequence: + - service: !input command_value + data: + component: buttonpage01.button05 + message: 1 + - conditions: + - condition: trigger + id: current_state_entity05 + - condition: state + entity_id: !input entity05 + state: + - "off" + - "closed" + sequence: + - service: !input command_value + data: + component: buttonpage01.button05 + message: 0 + +##### Button06 ################################################################# + - choose: + - conditions: + - condition: trigger + id: current_state_entity06 + - condition: state + entity_id: !input entity06 + state: + - "on" + - "open" + sequence: + - service: !input command_value + data: + component: buttonpage01.button06 + message: 1 + - conditions: + - condition: trigger + id: current_state_entity06 + - condition: state + entity_id: !input entity06 + state: + - "off" + - "closed" + sequence: + - service: !input command_value + data: + component: buttonpage01.button06 + message: 0 + +##### Button07 ################################################################# + - choose: + - conditions: + - condition: trigger + id: current_state_entity07 + - condition: state + entity_id: !input entity07 + state: + - "on" + - "open" + sequence: + - service: !input command_value + data: + component: buttonpage01.button07 + message: 1 + - conditions: + - condition: trigger + id: current_state_entity07 + - condition: state + entity_id: !input entity07 + state: + - "off" + - "closed" + sequence: + - service: !input command_value + data: + component: buttonpage01.button07 + message: 0 + +##### Button08 ################################################################# + - choose: + - conditions: + - condition: trigger + id: current_state_entity08 + - condition: state + entity_id: !input entity08 + state: + - "on" + - "open" + sequence: + - service: !input command_value + data: + component: buttonpage01.button08 + message: 1 + - conditions: + - condition: trigger + id: current_state_entity08 + - condition: state + entity_id: !input entity08 + state: + - "off" + - "closed" + sequence: + - service: !input command_value + data: + component: buttonpage01.button08 + message: 0 + +##### Button09 ################################################################# + - choose: + - conditions: + - condition: trigger + id: current_state_entity09 + - condition: state + entity_id: !input entity09 + state: + - "on" + - "open" + sequence: + - service: !input command_value + data: + component: buttonpage02.button01 + message: 1 + - conditions: + - condition: trigger + id: current_state_entity09 + - condition: state + entity_id: !input entity09 + state: + - "off" + - "closed" + sequence: + - service: !input command_value + data: + component: buttonpage02.button01 + message: 0 + +##### Button10 ################################################################# + - choose: + - conditions: + - condition: trigger + id: current_state_entity10 + - condition: state + entity_id: !input entity10 + state: + - "on" + - "open" + sequence: + - service: !input command_value + data: + component: buttonpage02.button02 + message: 1 + - conditions: + - condition: trigger + id: current_state_entity10 + - condition: state + entity_id: !input entity10 + state: + - "off" + - "closed" + sequence: + - service: !input command_value + data: + component: buttonpage02.button02 + message: 0 + +##### Button11 ################################################################# + - choose: + - conditions: + - condition: trigger + id: current_state_entity11 + - condition: state + entity_id: !input entity11 + state: + - "on" + - "open" + sequence: + - service: !input command_value + data: + component: buttonpage02.button03 + message: 1 + - conditions: + - condition: trigger + id: current_state_entity11 + - condition: state + entity_id: !input entity11 + state: + - "off" + - "closed" + sequence: + - service: !input command_value + data: + component: buttonpage02.button03 + message: 0 + +##### Button12 ################################################################# + - choose: + - conditions: + - condition: trigger + id: current_state_entity12 + - condition: state + entity_id: !input entity12 + state: + - "on" + - "open" + sequence: + - service: !input command_value + data: + component: buttonpage02.button04 + message: 1 + - conditions: + - condition: trigger + id: current_state_entity12 + - condition: state + entity_id: !input entity12 + state: + - "off" + - "closed" + sequence: + - service: !input command_value + data: + component: buttonpage02.button04 + message: 0 + +##### Button13 ################################################################# + - choose: + - conditions: + - condition: trigger + id: current_state_entity13 + - condition: state + entity_id: !input entity13 + state: + - "on" + - "open" + sequence: + - service: !input command_value + data: + component: buttonpage02.button05 + message: 1 + - conditions: + - condition: trigger + id: current_state_entity13 + - condition: state + entity_id: !input entity13 + state: + - "off" + - "closed" + sequence: + - service: !input command_value + data: + component: buttonpage02.button05 + message: 0 + +##### Button14 ################################################################# + - choose: + - conditions: + - condition: trigger + id: current_state_entity14 + - condition: state + entity_id: !input entity14 + state: + - "on" + - "open" + sequence: + - service: !input command_value + data: + component: buttonpage02.button06 + message: 1 + - conditions: + - condition: trigger + id: current_state_entity14 + - condition: state + entity_id: !input entity14 + state: + - "off" + - "closed" + sequence: + - service: !input command_value + data: + component: buttonpage02.button06 + message: 0 + +##### Button15 ################################################################# + - choose: + - conditions: + - condition: trigger + id: current_state_entity15 + - condition: state + entity_id: !input entity15 + state: + - "on" + - "open" + sequence: + - service: !input command_value + data: + component: buttonpage02.button07 + message: 1 + - conditions: + - condition: trigger + id: current_state_entity16 + - condition: state + entity_id: !input entity16 + state: + - "off" + - "closed" + sequence: + - service: !input command_value + data: + component: buttonpage02.button07 + message: 0 + +##### Button16 ################################################################# + - choose: + - conditions: + - condition: trigger + id: current_state_entity16 + - condition: state + entity_id: !input entity16 + state: + - "on" + - "open" + sequence: + - service: !input command_value + data: + component: buttonpage02.button08 + message: 1 + - conditions: + - condition: trigger + id: current_state_entity16 + - condition: state + entity_id: !input entity16 + state: + - "off" + - "closed" + sequence: + - service: !input command_value + data: + component: buttonpage02.button08 + message: 0 + +##### Button17 ################################################################# + - choose: + - conditions: + - condition: trigger + id: current_state_entity17 + - condition: state + entity_id: !input entity17 + state: + - "on" + - "open" + sequence: + - service: !input command_value + data: + component: buttonpage03.button01 + message: 1 + - conditions: + - condition: trigger + id: current_state_entity17 + - condition: state + entity_id: !input entity17 + state: + - "off" + - "closed" + sequence: + - service: !input command_value + data: + component: buttonpage03.button01 + message: 0 + +##### Button18 ################################################################# + - choose: + - conditions: + - condition: trigger + id: current_state_entity18 + - condition: state + entity_id: !input entity18 + state: + - "on" + - "open" + sequence: + - service: !input command_value + data: + component: buttonpage03.button02 + message: 1 + - conditions: + - condition: trigger + id: current_state_entity18 + - condition: state + entity_id: !input entity18 + state: + - "off" + - "closed" + sequence: + - service: !input command_value + data: + component: buttonpage03.button02 + message: 0 + +##### Button19 ################################################################# + - choose: + - conditions: + - condition: trigger + id: current_state_entity19 + - condition: state + entity_id: !input entity19 + state: + - "on" + - "open" + sequence: + - service: !input command_value + data: + component: buttonpage03.button03 + message: 1 + - conditions: + - condition: trigger + id: current_state_entity19 + - condition: state + entity_id: !input entity19 + state: + - "off" + - "closed" + sequence: + - service: !input command_value + data: + component: buttonpage03.button03 + message: 0 + +##### Button20 ################################################################# + - choose: + - conditions: + - condition: trigger + id: current_state_entity20 + - condition: state + entity_id: !input entity20 + state: + - "on" + - "open" + sequence: + - service: !input command_value + data: + component: buttonpage03.button04 + message: 1 + - conditions: + - condition: trigger + id: current_state_entity20 + - condition: state + entity_id: !input entity20 + state: + - "off" + - "closed" + sequence: + - service: !input command_value + data: + component: buttonpage03.button04 + message: 0 + +##### Button21 ################################################################# + - choose: + - conditions: + - condition: trigger + id: current_state_entity21 + - condition: state + entity_id: !input entity21 + state: + - "on" + - "open" + sequence: + - service: !input command_value + data: + component: buttonpage03.button05 + message: 1 + - conditions: + - condition: trigger + id: current_state_entity21 + - condition: state + entity_id: !input entity21 + state: + - "off" + - "closed" + sequence: + - service: !input command_value + data: + component: buttonpage03.button05 + message: 0 + +##### Button22 ################################################################# + - choose: + - conditions: + - condition: trigger + id: current_state_entity22 + - condition: state + entity_id: !input entity22 + state: + - "on" + - "open" + sequence: + - service: !input command_value + data: + component: buttonpage03.button06 + message: 1 + - conditions: + - condition: trigger + id: current_state_entity22 + - condition: state + entity_id: !input entity22 + state: + - "off" + - "closed" + sequence: + - service: !input command_value + data: + component: buttonpage03.button06 + message: 0 + +##### Button23 ################################################################# + - choose: + - conditions: + - condition: trigger + id: current_state_entity23 + - condition: state + entity_id: !input entity23 + state: + - "on" + - "open" + sequence: + - service: !input command_value + data: + component: buttonpage03.button07 + message: 1 + - conditions: + - condition: trigger + id: current_state_entity23 + - condition: state + entity_id: !input entity23 + state: + - "off" + - "closed" + sequence: + - service: !input command_value + data: + component: buttonpage03.button07 + message: 0 + +##### Button24 ################################################################# + - choose: + - conditions: + - condition: trigger + id: current_state_entity24 + - condition: state + entity_id: !input entity24 + state: + - "on" + - "open" + sequence: + - service: !input command_value + data: + component: buttonpage03.button08 + message: 1 + - conditions: + - condition: trigger + id: current_state_entity24 + - condition: state + entity_id: !input entity24 + state: + - "off" + - "closed" + sequence: + - service: !input command_value + data: + component: buttonpage03.button08 + message: 0 + +##### Button25 ################################################################# + - choose: + - conditions: + - condition: trigger + id: current_state_entity25 + - condition: state + entity_id: !input entity25 + state: + - "on" + - "open" + sequence: + - service: !input command_value + data: + component: buttonpage04.button01 + message: 1 + - conditions: + - condition: trigger + id: current_state_entity25 + - condition: state + entity_id: !input entity25 + state: + - "off" + - "closed" + sequence: + - service: !input command_value + data: + component: buttonpage04.button01 + message: 0 + +##### Button26 ################################################################# + - choose: + - conditions: + - condition: trigger + id: current_state_entity26 + - condition: state + entity_id: !input entity26 + state: + - "on" + - "open" + sequence: + - service: !input command_value + data: + component: buttonpage04.button02 + message: 1 + - conditions: + - condition: trigger + id: current_state_entity26 + - condition: state + entity_id: !input entity26 + state: + - "off" + - "closed" + sequence: + - service: !input command_value + data: + component: buttonpage04.button02 + message: 0 + +##### Button27 ################################################################# + - choose: + - conditions: + - condition: trigger + id: current_state_entity27 + - condition: state + entity_id: !input entity27 + state: + - "on" + - "open" + sequence: + - service: !input command_value + data: + component: buttonpage04.button03 + message: 1 + - conditions: + - condition: trigger + id: current_state_entity27 + - condition: state + entity_id: !input entity27 + state: + - "off" + - "closed" + sequence: + - service: !input command_value + data: + component: buttonpage04.button03 + message: 0 + +##### Button28 ################################################################# + - choose: + - conditions: + - condition: trigger + id: current_state_entity28 + - condition: state + entity_id: !input entity28 + state: + - "on" + - "open" + sequence: + - service: !input command_value + data: + component: buttonpage04.button04 + message: 1 + - conditions: + - condition: trigger + id: current_state_entity28 + - condition: state + entity_id: !input entity28 + state: + - "off" + - "closed" + sequence: + - service: !input command_value + data: + component: buttonpage04.button04 + message: 0 + +##### Button29 ################################################################# + - choose: + - conditions: + - condition: trigger + id: current_state_entity29 + - condition: state + entity_id: !input entity29 + state: + - "on" + - "open" + sequence: + - service: !input command_value + data: + component: buttonpage04.button05 + message: 1 + - conditions: + - condition: trigger + id: current_state_entity29 + - condition: state + entity_id: !input entity29 + state: + - "off" + - "closed" + sequence: + - service: !input command_value + data: + component: buttonpage04.button05 + message: 0 + +##### Button30 ################################################################# + - choose: + - conditions: + - condition: trigger + id: current_state_entity30 + - condition: state + entity_id: !input entity30 + state: + - "on" + - "open" + sequence: + - service: !input command_value + data: + component: buttonpage04.button06 + message: 1 + - conditions: + - condition: trigger + id: current_state_entity30 + - condition: state + entity_id: !input entity30 + state: + - "off" + - "closed" + sequence: + - service: !input command_value + data: + component: buttonpage04.button06 + message: 0 + +##### Button31 ################################################################# + - choose: + - conditions: + - condition: trigger + id: current_state_entity31 + - condition: state + entity_id: !input entity31 + state: + - "on" + - "open" + sequence: + - service: !input command_value + data: + component: buttonpage04.button07 + message: 1 + - conditions: + - condition: trigger + id: current_state_entity31 + - condition: state + entity_id: !input entity31 + state: + - "off" + - "closed" + sequence: + - service: !input command_value + data: + component: buttonpage04.button07 + message: 0 + +##### Button32 ################################################################# + - choose: + - conditions: + - condition: trigger + id: current_state_entity32 + - condition: state + entity_id: !input entity32 + state: + - "on" + - "open" + sequence: + - service: !input command_value + data: + component: buttonpage04.button08 + message: 1 + - conditions: + - condition: trigger + id: current_state_entity32 + - condition: state + entity_id: !input entity32 + state: + - "off" + - "closed" + sequence: + - service: !input command_value + data: + component: buttonpage04.button08 + message: 0 + +##### Button33 ################################################################# + - choose: + - conditions: + - condition: trigger + id: current_state_entity33 + - condition: state + entity_id: !input entity33 + state: + - "on" + - "open" + sequence: + - service: !input command_value + data: + component: buttonpage05.button01 + message: 1 + - conditions: + - condition: trigger + id: current_state_entity33 + - condition: state + entity_id: !input entity33 + state: + - "off" + - "closed" + sequence: + - service: !input command_value + data: + component: buttonpage05.button01 + message: 0 + +##### Button34 ################################################################# + - choose: + - conditions: + - condition: trigger + id: current_state_entity34 + - condition: state + entity_id: !input entity34 + state: + - "on" + - "open" + sequence: + - service: !input command_value + data: + component: buttonpage05.button02 + message: 1 + - conditions: + - condition: trigger + id: current_state_entity34 + - condition: state + entity_id: !input entity34 + state: + - "off" + - "closed" + sequence: + - service: !input command_value + data: + component: buttonpage05.button02 + message: 0 + +##### Button35 ################################################################# + - choose: + - conditions: + - condition: trigger + id: current_state_entity35 + - condition: state + entity_id: !input entity35 + state: + - "on" + - "open" + sequence: + - service: !input command_value + data: + component: buttonpage05.button03 + message: 1 + - conditions: + - condition: trigger + id: current_state_entity35 + - condition: state + entity_id: !input entity35 + state: + - "off" + - "closed" + sequence: + - service: !input command_value + data: + component: buttonpage05.button03 + message: 0 + +##### Button36 ################################################################# + - choose: + - conditions: + - condition: trigger + id: current_state_entity36 + - condition: state + entity_id: !input entity36 + state: + - "on" + - "open" + sequence: + - service: !input command_value + data: + component: buttonpage05.button04 + message: 1 + - conditions: + - condition: trigger + id: current_state_entity36 + - condition: state + entity_id: !input entity36 + state: + - "off" + - "closed" + sequence: + - service: !input command_value + data: + component: buttonpage05.button04 + message: 0 + +##### Button37 ################################################################# + - choose: + - conditions: + - condition: trigger + id: current_state_entity37 + - condition: state + entity_id: !input entity37 + state: + - "on" + - "open" + sequence: + - service: !input command_value + data: + component: buttonpage05.button05 + message: 1 + - conditions: + - condition: trigger + id: current_state_entity37 + - condition: state + entity_id: !input entity37 + state: + - "off" + - "closed" + sequence: + - service: !input command_value + data: + component: buttonpage05.button05 + message: 0 + +##### Button38 ################################################################# + - choose: + - conditions: + - condition: trigger + id: current_state_entity38 + - condition: state + entity_id: !input entity38 + state: + - "on" + - "open" + sequence: + - service: !input command_value + data: + component: buttonpage05.button06 + message: 1 + - conditions: + - condition: trigger + id: current_state_entity38 + - condition: state + entity_id: !input entity38 + state: + - "off" + - "closed" + sequence: + - service: !input command_value + data: + component: buttonpage05.button06 + message: 0 + +##### Button39 ################################################################# + - choose: + - conditions: + - condition: trigger + id: current_state_entity39 + - condition: state + entity_id: !input entity39 + state: + - "on" + - "open" + sequence: + - service: !input command_value + data: + component: buttonpage05.button07 + message: 1 + - conditions: + - condition: trigger + id: current_state_entity39 + - condition: state + entity_id: !input entity39 + state: + - "off" + - "closed" + sequence: + - service: !input command_value + data: + component: buttonpage05.button07 + message: 0 + +##### Button40 ################################################################# + - choose: + - conditions: + - condition: trigger + id: current_state_entity40 + - condition: state + entity_id: !input entity40 + state: + - "on" + - "open" + sequence: + - service: !input command_value + data: + component: buttonpage05.button08 + message: 1 + - conditions: + - condition: trigger + id: current_state_entity40 + - condition: state + entity_id: !input entity40 + state: + - "off" + - "closed" + sequence: + - service: !input command_value + data: + component: buttonpage05.button08 + message: 0 + +######################################### +# +# +############################################################# +##### CLOSE - HA Button SYNC ##### +############################################################# +# +## +### +############################################################################################################################################################################################# +### +## +# +############################################################# +##### START - Weather Forcast ##### +############################################################# +# +# +######################################### + - choose: + - conditions: + - condition: trigger + id: weather + sequence: + - service: !input command_text_printf + data: + component: weather01.a02 + message: '{{states("sensor.wochentag")}}' + - service: !input command_text_printf + data: + component: weather01.a04 + message: '{{states("sensor.home_wetter_realfeel_temperature_min_0d") | round(0)}}°' + - service: !input command_text_printf + data: + component: weather01.a05 + message: '{{states("sensor.home_wetter_realfeel_temperature_max_0d") | round(0)}}°' + - service: !input command_text_printf + data: + component: weather01.a06 + message: '{{ state_attr("weather.home_wetter","forecast")[0].precipitation_probability}} + %' + - service: !input command_text_printf + data: + component: weather01.a07 + message: '{{states("sensor.home_wetter_hours_of_sun_0d") | round(0)}} h' + - service: !input command_text_printf + data: + component: weather01.a08 + message: '{{state_attr("sensor.home_wetter_uv_index_0d", "level")}}' + - service: !input command_text_printf + data: + component: weather01.a09 + message: '{{states("sensor.home_wetter_uv_index_0d") | round(0)}}' + - service: !input command_text_printf + data: + component: weather01.a10 + message: '{{states("sensor.home_wetter_thunderstorm_probability_day_0d") | round(0)}} + %' + - service: !input command_text_printf + data: + component: weather01.a11 + message: '{{states("sensor.home_wetter_wind_day_0d") | round(0)}} km/h' + - service: !input command_text_printf + data: + component: weather01.a12 + message: '{{states("sensor.home_wetter_thunderstorm_probability_night_0d") | + round(0)}} %' + - service: !input command_text_printf + data: + component: weather01.a13 + message: '{{states("sensor.home_wetter_wind_night_0d") | round(0)}} km/h' + - if: + - condition: template + value_template: '{{state_attr(''weather.home_wetter'',''forecast'')[0].condition + == ''sunny''}}' + then: + - service: !input command_printf + data: + cmd: weather01.a03.pic=2 + - if: + - condition: template + value_template: '{{state_attr(''weather.home_wetter'',''forecast'')[0].condition + == ''cloudy''}}' + then: + - service: !input command_printf + data: + cmd: weather01.a03.pic=3 + - if: + - condition: template + value_template: '{{state_attr(''weather.home_wetter'',''forecast'')[0].condition + == ''rainy''}}' + then: + - service: !input command_printf + data: + cmd: weather01.a03.pic=4 + - if: + - condition: template + value_template: '{{state_attr(''weather.home_wetter'',''forecast'')[0].condition + == ''pouring''}}' + then: + - service: !input command_printf + data: + cmd: weather01.a03.pic=5 + - if: + - condition: template + value_template: '{{state_attr(''weather.home_wetter'',''forecast'')[0].condition + == ''snowy''}}' + then: + - service: !input command_printf + data: + cmd: weather01.a03.pic=6 + - if: + - condition: template + value_template: '{{state_attr(''weather.home_wetter'',''forecast'')[0].condition + == ''hail''}}' + then: + - service: !input command_printf + data: + cmd: weather01.a03.pic=7 + - if: + - condition: template + value_template: '{{state_attr(''weather.home_wetter'',''forecast'')[0].condition + == ''snowy-rainy''}}' + then: + - service: !input command_printf + data: + cmd: weather01.a03.pic=7 + - if: + - condition: template + value_template: '{{state_attr(''weather.home_wetter'',''forecast'')[0].condition + == ''fog''}}' + then: + - service: !input command_printf + data: + cmd: weather01.a03.pic=8 + - if: + - condition: template + value_template: '{{state_attr(''weather.home_wetter'',''forecast'')[0].condition + == ''windy''}}' + then: + - service: !input command_printf + data: + cmd: weather01.a03.pic=9 + - if: + - condition: template + value_template: '{{state_attr(''weather.home_wetter'',''forecast'')[0].condition + == ''windy-variant''}}' + then: + - service: !input command_printf + data: + cmd: weather01.a03.pic=9 + - if: + - condition: template + value_template: '{{state_attr(''weather.home_wetter'',''forecast'')[0].condition + == ''lightning''}}' + then: + - service: !input command_printf + data: + cmd: weather01.a03.pic=10 + - if: + - condition: template + value_template: '{{state_attr(''weather.home_wetter'',''forecast'')[0].condition + == ''partlycloudy''}}' + then: + - service: !input command_printf + data: + cmd: weather01.a03.pic=11 + - if: + - condition: template + value_template: '{{state_attr(''weather.home_wetter'',''forecast'')[0].condition + == ''lightning-rainy''}}' + then: + - service: !input command_printf + data: + cmd: weather01.a03.pic=13 + - if: + - condition: template + value_template: '{{state_attr(''weather.home_wetter'',''forecast'')[0].condition + == ''execptional''}}' + then: + - service: !input command_printf + data: + cmd: weather01.a03.pic=13 + - if: + - condition: template + value_template: '{{state_attr(''weather.home_wetter'',''forecast'')[0].condition + == ''clear-night''}}' + then: + - service: !input command_printf + data: + cmd: weather01.a03.pic=15 + - service: !input command_text_printf + data: + component: weather02.a02 + message: '{{states("sensor.wochentag01")}}' + - service: !input command_text_printf + data: + component: weather02.a04 + message: '{{states("sensor.home_wetter_realfeel_temperature_min_1d") | round(0)}}°' + - service: !input command_text_printf + data: + component: weather02.a05 + message: '{{states("sensor.home_wetter_realfeel_temperature_max_1d") | round(0)}}°' + - service: !input command_text_printf + data: + component: weather02.a06 + message: '{{ state_attr("weather.home_wetter","forecast")[1].precipitation_probability}} + %' + - service: !input command_text_printf + data: + component: weather02.a07 + message: '{{states("sensor.home_wetter_hours_of_sun_1d") | round(0)}} h' + - service: !input command_text_printf + data: + component: weather02.a08 + message: '{{state_attr("sensor.home_wetter_uv_index_1d", "level")}}' + - service: !input command_text_printf + data: + component: weather02.a09 + message: '{{states("sensor.home_wetter_uv_index_1d") | round(0)}}' + - service: !input command_text_printf + data: + component: weather02.a10 + message: '{{states("sensor.home_wetter_thunderstorm_probability_day_1d") | round(0)}} + %' + - service: !input command_text_printf + data: + component: weather02.a11 + message: '{{states("sensor.home_wetter_wind_day_1d") | round(0)}} km/h' + - service: !input command_text_printf + data: + component: weather02.a12 + message: '{{states("sensor.home_wetter_thunderstorm_probability_night_1d") | + round(0)}} %' + - service: !input command_text_printf + data: + component: weather02.a13 + message: '{{states("sensor.home_wetter_wind_night_1d") | round(0)}} km/h' + - if: + - condition: template + value_template: '{{state_attr(''weather.home_wetter'',''forecast'')[1].condition + == ''sunny''}}' + then: + - service: !input command_printf + data: + cmd: weather02.a03.pic=2 + - if: + - condition: template + value_template: '{{state_attr(''weather.home_wetter'',''forecast'')[1].condition + == ''cloudy''}}' + then: + - service: !input command_printf + data: + cmd: weather02.a03.pic=3 + - if: + - condition: template + value_template: '{{state_attr(''weather.home_wetter'',''forecast'')[1].condition + == ''rainy''}}' + then: + - service: !input command_printf + data: + cmd: weather02.a03.pic=4 + - if: + - condition: template + value_template: '{{state_attr(''weather.home_wetter'',''forecast'')[1].condition + == ''pouring''}}' + then: + - service: !input command_printf + data: + cmd: weather02.a03.pic=5 + - if: + - condition: template + value_template: '{{state_attr(''weather.home_wetter'',''forecast'')[1].condition + == ''snowy''}}' + then: + - service: !input command_printf + data: + cmd: weather02.a03.pic=6 + - if: + - condition: template + value_template: '{{state_attr(''weather.home_wetter'',''forecast'')[1].condition + == ''hail''}}' + then: + - service: !input command_printf + data: + cmd: weather02.a03.pic=7 + - if: + - condition: template + value_template: '{{state_attr(''weather.home_wetter'',''forecast'')[1].condition + == ''snowy-rainy''}}' + then: + - service: !input command_printf + data: + cmd: weather02.a03.pic=7 + - if: + - condition: template + value_template: '{{state_attr(''weather.home_wetter'',''forecast'')[1].condition + == ''fog''}}' + then: + - service: !input command_printf + data: + cmd: weather02.a03.pic=8 + - if: + - condition: template + value_template: '{{state_attr(''weather.home_wetter'',''forecast'')[1].condition + == ''windy''}}' + then: + - service: !input command_printf + data: + cmd: weather02.a03.pic=9 + - if: + - condition: template + value_template: '{{state_attr(''weather.home_wetter'',''forecast'')[1].condition + == ''windy-variant''}}' + then: + - service: !input command_printf + data: + cmd: weather02.a03.pic=9 + - if: + - condition: template + value_template: '{{state_attr(''weather.home_wetter'',''forecast'')[1].condition + == ''lightning''}}' + then: + - service: !input command_printf + data: + cmd: weather02.a03.pic=10 + - if: + - condition: template + value_template: '{{state_attr(''weather.home_wetter'',''forecast'')[1].condition + == ''partlycloudy''}}' + then: + - service: !input command_printf + data: + cmd: weather02.a03.pic=11 + - if: + - condition: template + value_template: '{{state_attr(''weather.home_wetter'',''forecast'')[1].condition + == ''lightning-rainy''}}' + then: + - service: !input command_printf + data: + cmd: weather02.a03.pic=13 + - if: + - condition: template + value_template: '{{state_attr(''weather.home_wetter'',''forecast'')[1].condition + == ''execptional''}}' + then: + - service: !input command_printf + data: + cmd: weather02.a03.pic=13 + - if: + - condition: template + value_template: '{{state_attr(''weather.home_wetter'',''forecast'')[1].condition + == ''clear-night''}}' + then: + - service: !input command_printf + data: + cmd: weather02.a03.pic=15 + - service: !input command_text_printf + data: + component: weather03.a02 + message: '{{states("sensor.wochentag02")}}' + - service: !input command_text_printf + data: + component: weather03.a04 + message: '{{states("sensor.home_wetter_realfeel_temperature_min_2d") | round(0)}}°' + - service: !input command_text_printf + data: + component: weather03.a05 + message: '{{states("sensor.home_wetter_realfeel_temperature_max_2d") | round(0)}}°' + - service: !input command_text_printf + data: + component: weather03.a06 + message: '{{ state_attr("weather.home_wetter","forecast")[2].precipitation_probability}} + %' + - service: !input command_text_printf + data: + component: weather03.a07 + message: '{{states("sensor.home_wetter_hours_of_sun_2d") | round(0)}} h' + - service: !input command_text_printf + data: + component: weather03.a08 + message: '{{state_attr("sensor.home_wetter_uv_index_2d", "level")}}' + - service: !input command_text_printf + data: + component: weather03.a09 + message: '{{states("sensor.home_wetter_uv_index_2d") | round(0)}}' + - service: !input command_text_printf + data: + component: weather03.a10 + message: '{{states("sensor.home_wetter_thunderstorm_probability_day_2d") | round(0)}} + %' + - service: !input command_text_printf + data: + component: weather03.a11 + message: '{{states("sensor.home_wetter_wind_day_2d") | round(0)}} km/h' + - service: !input command_text_printf + data: + component: weather03.a12 + message: '{{states("sensor.home_wetter_thunderstorm_probability_night_2d") | + round(0)}} %' + - service: !input command_text_printf + data: + component: weather03.a13 + message: '{{states("sensor.home_wetter_wind_night_2d") | round(0)}} km/h' + - if: + - condition: template + value_template: '{{state_attr(''weather.home_wetter'',''forecast'')[2].condition + == ''sunny''}}' + then: + - service: !input command_printf + data: + cmd: weather03.a03.pic=2 + - if: + - condition: template + value_template: '{{state_attr(''weather.home_wetter'',''forecast'')[2].condition + == ''cloudy''}}' + then: + - service: !input command_printf + data: + cmd: weather03.a03.pic=3 + - if: + - condition: template + value_template: '{{state_attr(''weather.home_wetter'',''forecast'')[2].condition + == ''rainy''}}' + then: + - service: !input command_printf + data: + cmd: weather03.a03.pic=4 + - if: + - condition: template + value_template: '{{state_attr(''weather.home_wetter'',''forecast'')[2].condition + == ''pouring''}}' + then: + - service: !input command_printf + data: + cmd: weather03.a03.pic=5 + - if: + - condition: template + value_template: '{{state_attr(''weather.home_wetter'',''forecast'')[2].condition + == ''snowy''}}' + then: + - service: !input command_printf + data: + cmd: weather03.a03.pic=6 + - if: + - condition: template + value_template: '{{state_attr(''weather.home_wetter'',''forecast'')[2].condition + == ''hail''}}' + then: + - service: !input command_printf + data: + cmd: weather03.a03.pic=7 + - if: + - condition: template + value_template: '{{state_attr(''weather.home_wetter'',''forecast'')[2].condition + == ''snowy-rainy''}}' + then: + - service: !input command_printf + data: + cmd: weather03.a03.pic=7 + - if: + - condition: template + value_template: '{{state_attr(''weather.home_wetter'',''forecast'')[2].condition + == ''fog''}}' + then: + - service: !input command_printf + data: + cmd: weather03.a03.pic=8 + - if: + - condition: template + value_template: '{{state_attr(''weather.home_wetter'',''forecast'')[2].condition + == ''windy''}}' + then: + - service: !input command_printf + data: + cmd: weather03.a03.pic=9 + - if: + - condition: template + value_template: '{{state_attr(''weather.home_wetter'',''forecast'')[2].condition + == ''windy-variant''}}' + then: + - service: !input command_printf + data: + cmd: weather03.a03.pic=9 + - if: + - condition: template + value_template: '{{state_attr(''weather.home_wetter'',''forecast'')[2].condition + == ''lightning''}}' + then: + - service: !input command_printf + data: + cmd: weather03.a03.pic=10 + - if: + - condition: template + value_template: '{{state_attr(''weather.home_wetter'',''forecast'')[2].condition + == ''partlycloudy''}}' + then: + - service: !input command_printf + data: + cmd: weather03.a03.pic=11 + - if: + - condition: template + value_template: '{{state_attr(''weather.home_wetter'',''forecast'')[2].condition + == ''lightning-rainy''}}' + then: + - service: !input command_printf + data: + cmd: weather03.a03.pic=13 + - if: + - condition: template + value_template: '{{state_attr(''weather.home_wetter'',''forecast'')[2].condition + == ''execptional''}}' + then: + - service: !input command_printf + data: + cmd: weather03.a03.pic=13 + - if: + - condition: template + value_template: '{{state_attr(''weather.home_wetter'',''forecast'')[2].condition + == ''clear-night''}}' + then: + - service: !input command_printf + data: + cmd: weather03.a03.pic=15 + - service: !input command_text_printf + data: + component: weather04.a02 + message: '{{states("sensor.wochentag03")}}' + - service: !input command_text_printf + data: + component: weather04.a04 + message: '{{states("sensor.home_wetter_realfeel_temperature_min_3d") | round(0)}}°' + - service: !input command_text_printf + data: + component: weather04.a05 + message: '{{states("sensor.home_wetter_realfeel_temperature_max_3d") | round(0)}}°' + - service: !input command_text_printf + data: + component: weather04.a06 + message: '{{ state_attr("weather.home_wetter","forecast")[3].precipitation_probability}} + %' + - service: !input command_text_printf + data: + component: weather04.a07 + message: '{{states("sensor.home_wetter_hours_of_sun_3d") | round(0)}} h' + - service: !input command_text_printf + data: + component: weather04.a08 + message: '{{state_attr("sensor.home_wetter_uv_index_3d", "level")}}' + - service: !input command_text_printf + data: + component: weather04.a09 + message: '{{states("sensor.home_wetter_uv_index_3d") | round(0)}}' + - service: !input command_text_printf + data: + component: weather04.a10 + message: '{{states("sensor.home_wetter_thunderstorm_probability_day_3d") | round(0)}} + %' + - service: !input command_text_printf + data: + component: weather04.a11 + message: '{{states("sensor.home_wetter_wind_day_3d") | round(0)}} km/h' + - service: !input command_text_printf + data: + component: weather04.a12 + message: '{{states("sensor.home_wetter_thunderstorm_probability_night_3d") | + round(0)}} %' + - service: !input command_text_printf + data: + component: weather04.a13 + message: '{{states("sensor.home_wetter_wind_night_3d") | round(0)}} km/h' + - if: + - condition: template + value_template: '{{state_attr(''weather.home_wetter'',''forecast'')[3].condition + == ''sunny''}}' + then: + - service: !input command_printf + data: + md: weather04.a03.pic=2 + - if: + - condition: template + value_template: '{{state_attr(''weather.home_wetter'',''forecast'')[3].condition + == ''cloudy''}}' + then: + - service: !input command_printf + data: + cmd: weather04.a03.pic=3 + - if: + - condition: template + value_template: '{{state_attr(''weather.home_wetter'',''forecast'')[3].condition + == ''rainy''}}' + then: + - service: !input command_printf + data: + cmd: weather04.a03.pic=4 + - if: + - condition: template + value_template: '{{state_attr(''weather.home_wetter'',''forecast'')[3].condition + == ''pouring''}}' + then: + - service: !input command_printf + data: + cmd: weather04.a03.pic=5 + - if: + - condition: template + value_template: '{{state_attr(''weather.home_wetter'',''forecast'')[3].condition + == ''snowy''}}' + then: + - service: !input command_printf + data: + cmd: weather04.a03.pic=6 + - if: + - condition: template + value_template: '{{state_attr(''weather.home_wetter'',''forecast'')[3].condition + == ''hail''}}' + then: + - service: !input command_printf + data: + cmd: weather04.a03.pic=7 + - if: + - condition: template + value_template: '{{state_attr(''weather.home_wetter'',''forecast'')[3].condition + == ''snowy-rainy''}}' + then: + - service: !input command_printf + data: + cmd: weather04.a03.pic=7 + - if: + - condition: template + value_template: '{{state_attr(''weather.home_wetter'',''forecast'')[3].condition + == ''fog''}}' + then: + - service: !input command_printf + data: + cmd: weather04.a03.pic=8 + - if: + - condition: template + value_template: '{{state_attr(''weather.home_wetter'',''forecast'')[3].condition + == ''windy''}}' + then: + - service: !input command_printf + data: + cmd: weather04.a03.pic=9 + - if: + - condition: template + value_template: '{{state_attr(''weather.home_wetter'',''forecast'')[3].condition + == ''windy-variant''}}' + then: + - service: !input command_printf + data: + cmd: weather04.a03.pic=9 + - if: + - condition: template + value_template: '{{state_attr(''weather.home_wetter'',''forecast'')[3].condition + == ''lightning''}}' + then: + - service: !input command_printf + data: + cmd: weather04.a03.pic=10 + - if: + - condition: template + value_template: '{{state_attr(''weather.home_wetter'',''forecast'')[3].condition + == ''partlycloudy''}}' + then: + - service: !input command_printf + data: + cmd: weather04.a03.pic=11 + - if: + - condition: template + value_template: '{{state_attr(''weather.home_wetter'',''forecast'')[3].condition + == ''lightning-rainy''}}' + then: + - service: !input command_printf + data: + cmd: weather04.a03.pic=13 + - if: + - condition: template + value_template: '{{state_attr(''weather.home_wetter'',''forecast'')[3].condition + == ''execptional''}}' + then: + - service: !input command_printf + data: + cmd: weather04.a03.pic=13 + - if: + - condition: template + value_template: '{{state_attr(''weather.home_wetter'',''forecast'')[3].condition + == ''clear-night''}}' + then: + - service: !input command_printf + data: + cmd: weather04.a03.pic=15 + - service: !input command_text_printf + data: + component: weather05.a02 + message: '{{states("sensor.wochentag04")}}' + - service: !input command_text_printf + data: + component: weather05.a04 + message: '{{states("sensor.home_wetter_realfeel_temperature_min_4d") | round(0)}}°' + - service: !input command_text_printf + data: + component: weather05.a05 + message: '{{states("sensor.home_wetter_realfeel_temperature_max_4d") | round(0)}}°' + - service: !input command_text_printf + data: + component: weather05.a06 + message: '{{ state_attr("weather.home_wetter","forecast")[4].precipitation_probability}} + %' + - service: !input command_text_printf + data: + component: weather05.a07 + message: '{{states("sensor.home_wetter_hours_of_sun_4d") | round(0)}} h' + - service: !input command_text_printf + data: + component: weather05.a08 + message: '{{state_attr("sensor.home_wetter_uv_index_4d", "level")}}' + - service: !input command_text_printf + data: + component: weather05.a09 + message: '{{states("sensor.home_wetter_uv_index_4d") | round(0)}}' + - service: !input command_text_printf + data: + component: weather05.a10 + message: '{{states("sensor.home_wetter_thunderstorm_probability_day_4d") | round(0)}} + %' + - service: !input command_text_printf + data: + component: weather05.a11 + message: '{{states("sensor.home_wetter_wind_day_4d") | round(0)}} km/h' + - service: !input command_text_printf + data: + component: weather05.a12 + message: '{{states("sensor.home_wetter_thunderstorm_probability_night_4d") | + round(0)}} %' + - service: !input command_text_printf + data: + component: weather05.a13 + message: '{{states("sensor.home_wetter_wind_night_4d") | round(0)}} km/h' + - if: + - condition: template + value_template: '{{state_attr(''weather.home_wetter'',''forecast'')[4].condition + == ''sunny''}}' + then: + - service: !input command_printf + data: + cmd: weather05.a03.pic=2 + - if: + - condition: template + value_template: '{{state_attr(''weather.home_wetter'',''forecast'')[4].condition + == ''cloudy''}}' + then: + - service: !input command_printf + data: + cmd: weather05.a03.pic=3 + - if: + - condition: template + value_template: '{{state_attr(''weather.home_wetter'',''forecast'')[4].condition + == ''rainy''}}' + then: + - service: !input command_printf + data: + cmd: weather05.a03.pic=4 + - if: + - condition: template + value_template: '{{state_attr(''weather.home_wetter'',''forecast'')[4].condition + == ''pouring''}}' + then: + - service: !input command_printf + data: + cmd: weather05.a03.pic=5 + - if: + - condition: template + value_template: '{{state_attr(''weather.home_wetter'',''forecast'')[4].condition + == ''snowy''}}' + then: + - service: !input command_printf + data: + cmd: weather05.a03.pic=6 + - if: + - condition: template + value_template: '{{state_attr(''weather.home_wetter'',''forecast'')[4].condition + == ''hail''}}' + then: + - service: !input command_printf + data: + cmd: weather05.a03.pic=7 + - if: + - condition: template + value_template: '{{state_attr(''weather.home_wetter'',''forecast'')[4].condition + == ''snowy-rainy''}}' + then: + - service: !input command_printf + data: + cmd: weather05.a03.pic=7 + - if: + - condition: template + value_template: '{{state_attr(''weather.home_wetter'',''forecast'')[4].condition + == ''fog''}}' + then: + - service: !input command_printf + data: + cmd: weather05.a03.pic=8 + - if: + - condition: template + value_template: '{{state_attr(''weather.home_wetter'',''forecast'')[4].condition + == ''windy''}}' + then: + - service: !input command_printf + data: + cmd: weather05.a03.pic=9 + - if: + - condition: template + value_template: '{{state_attr(''weather.home_wetter'',''forecast'')[4].condition + == ''windy-variant''}}' + then: + - service: !input command_printf + data: + cmd: weather05.a03.pic=9 + - if: + - condition: template + value_template: '{{state_attr(''weather.home_wetter'',''forecast'')[4].condition + == ''lightning''}}' + then: + - service: !input command_printf + data: + cmd: weather05.a03.pic=10 + - if: + - condition: template + value_template: '{{state_attr(''weather.home_wetter'',''forecast'')[4].condition + == ''partlycloudy''}}' + then: + - service: !input command_printf + data: + cmd: weather05.a03.pic=11 + - if: + - condition: template + value_template: '{{state_attr(''weather.home_wetter'',''forecast'')[4].condition + == ''lightning-rainy''}}' + then: + - service: !input command_printf + data: + cmd: weather05.a03.pic=13 + - if: + - condition: template + value_template: '{{state_attr(''weather.home_wetter'',''forecast'')[4].condition + == ''execptional''}}' + then: + - service: !input command_printf + data: + cmd: weather05.a03.pic=13 + - if: + - condition: template + value_template: '{{state_attr(''weather.home_wetter'',''forecast'')[4].condition + == ''clear-night''}}' + then: + - service: !input command_printf + data: + cmd: weather05.a03.pic=15 + + ######################################### +# +# +############################################################# +##### CLOSE - Weather Forcast ##### +############################################################# +# +## +### +############################################################################################################################################################################################# \ No newline at end of file diff --git a/OLD_config/sensor_V1.yaml b/OLD_config/sensor_V1.yaml new file mode 100644 index 0000000..1431ae1 --- /dev/null +++ b/OLD_config/sensor_V1.yaml @@ -0,0 +1,78 @@ +##### Sensor ###### +sensor: + + - platform: template + sensors: + wochentag: + friendly_name: "Wochentag" + unique_id: 6ac64850-8563-456c-b562-92343dd96f0b + value_template: > + {% set days = ['Montag,', 'Dienstag,', 'Mittwoch,', 'Donnerstag,', 'Freitag,', 'Samstag,', 'Sonntag,'] %} + {{ now().timestamp() | timestamp_custom(days[now().weekday()] ~ ' %d.%m')}} + icon_template: mdi:calendar-range + + - platform: template + sensors: + wochentag01: + friendly_name: "Wochentag+1" + unique_id: 6b2aad54-3eb0-48cc-ae32-ee3574197f1b + value_template: > + {% set days = ['Montag,', 'Dienstag,', 'Mittwoch,', 'Donnerstag,', 'Freitag,', 'Samstag,', 'Sonntag,', 'Montag,'] %} + {{(as_timestamp(now())+ (86400)) | timestamp_custom(days[now().weekday()+1] ~ ' %d.%m') }} + icon_template: mdi:calendar-range + + - platform: template + sensors: + wochentag02: + friendly_name: "Wochentag+2" + unique_id: edbddaf0-2791-4774-b8d4-aa706f75cc7a + value_template: > + {% set days = ['Montag,', 'Dienstag,', 'Mittwoch,', 'Donnerstag,', 'Freitag,', 'Samstag,', 'Sonntag,', 'Montag,', 'Dienstag,'] %} + {{(as_timestamp(now())+ (172800)) | timestamp_custom(days[now().weekday()+2] ~ ' %d.%m') }} + icon_template: mdi:calendar-range + + - platform: template + sensors: + wochentag03: + friendly_name: "Wochentag+3" + unique_id: ad592622-db86-40f7-9961-4c1ffd21c711 + value_template: > + {% set days = ['Montag,', 'Dienstag,', 'Mittwoch,', 'Donnerstag,', 'Freitag,', 'Samstag,', 'Sonntag,', 'Montag,', 'Dienstag,', 'Mittwoch,'] %} + {{(as_timestamp(now())+ (259200)) | timestamp_custom(days[now().weekday()+3] ~ ' %d.%m') }} + icon_template: mdi:calendar-range + + - platform: template + sensors: + wochentag04: + friendly_name: "Wochentag+4" + unique_id: dcb3ed45-2b89-4672-a04f-a55f025ac745 + value_template: > + {% set days = ['Montag,', 'Dienstag,', 'Mittwoch,', 'Donnerstag,', 'Freitag,', 'Samstag,', 'Sonntag,', 'Montag,', 'Dienstag,', 'Mittwoch,', 'Donnerstag,'] %} + {{(as_timestamp(now())+ (345600)) | timestamp_custom(days[now().weekday()+4] ~ ' %d.%m') }} + icon_template: mdi:calendar-range + + - platform: template + sensors: + wochentag05: + friendly_name: "Wochentag+5" + unique_id: 77e642a5-de54-452d-9f4a-febe3a7851c2 + value_template: > + {% set days = ['Montag,', 'Dienstag,', 'Mittwoch,', 'Donnerstag,', 'Freitag,', 'Samstag,', 'Sonntag,', 'Montag,', 'Dienstag,', 'Mittwoch,', 'Donnerstag,', 'Freitag,'] %} + {{(as_timestamp(now())+ (432000)) | timestamp_custom(days[now().weekday()+ 5] ~ ' %d.%m') }} + icon_template: mdi:calendar-range + +###### NSPanel Büro - climate target temperature ##### + - platform: template + sensors: + nspanel_buro_target_temp: + unique_id: 2393ab74-21ce-42d3-b15e-ec162b9d6f31 + friendly_name: NSPanel Buro Target Temp + value_template: "{{ state_attr('climate.nspanel_buro', 'temperature') }}" + +###### NSPanel Büro - climate target temperature ##### + - platform: template + sensors: + nspanel_lea_target_temp: + unique_id: e8e61ff7-3a41-47ad-bd6c-303f730de96f + friendly_name: NSPanel Lea Target Temp + value_template: "{{ state_attr('climate.nspanel_lea', 'temperature') }}" \ No newline at end of file