Files
NSPanel_HA_Blueprint/nspanel_blueprint.yaml
2023-03-25 23:26:44 +01:00

9759 lines
499 KiB
YAML
Raw Blame History

This file contains invisible Unicode characters
This file contains invisible Unicode characters that are indistinguishable to humans but may be processed differently by a computer. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
#############################################################
##### START - INPUT #####
#############################################################
blueprint:
name: NSPanel Configuration
description: '# Configuration and synchronization NSPanel via Blueprint
This project allows you to configure your complete NSPanel via a Blueprint with UI.
### *That means you dont have to customize any code or change any lines in the code.*
So you have a nice graphical interface where you can build your NSPanel.
And the best thing is, the installation takes only a few minutes.
The goal was to create a version that allows everyone to use the NSpanel fully local without having to deal with programming or reading hours of documentation - *AND YES WE DID IT!!!!* ;)
📕 Full documentation and installation is available here [NSPanel Configuration, Setup and HowTo](https://github.com/Blackymas/NSPanel_HA_Blueprint/wiki).
🖼️ Home Assistant [Icon Page](https://htmlpreview.github.io/?https://github.com/jobr99/Generate-HASP-Fonts/blob/master/cheatsheet.html)
🎨 [Color Converter](https://nodtem66.github.io/nextion-hmi-color-convert/index.html)
📌 Step by Step - [Setup Video](https://www.youtube.com/watch?v=3afPFg6kUdc)
🚀 How to create "Issues" when I have a problem [WIKI HowTo](https://github.com/Blackymas/NSPanel_HA_Blueprint/wiki)
⭐ All Feature Requests can be found here [All Feature Request](https://github.com/Blackymas/NSPanel_HA_Blueprint/labels/new%20feature%20request)
🎉 Roadmap Roadmap can be found here [Roadmap](https://github.com/Blackymas/NSPanel_HA_Blueprint/labels/roadmap)
Version: v.3.2.1
'
source_url: https://github.com/Blackymas/NSPanel_HA_Blueprint/blob/main/nspnael_blueprint.yaml
domain: automation
homeassistant:
min_version: 2022.11.1
input:
##### MAIN NAME #####
nspanel_name:
name: ESPhome Node Name
description: '* *"SYSTEM" - here you have to enter exactly the same **"device_name"** you entered in the Esphome file*'
default: [nspanel_name]
selector:
text: {}
##### SYSTEM SETTINGS #####
language:
name: Language for NSPanel
description: '* *"SYSTEM" - select the language for your NSPanel*'
default: 'ENG'
selector:
select:
mode: dropdown
options:
- label: 'Bulgarian'
value: BGR
- label: 'Czech'
value: CZE
- label: 'Danish'
value: DNK
- label: 'Dutch'
value: NLD
- label: 'English'
value: ENG
- label: 'Estonian'
value: EST
- label: 'Finnish'
value: FIN
- label: 'French'
value: FRA
- label: 'German'
value: DEU
- label: 'Greek'
value: GRC
- label: 'Hebrew'
value: HEB
- label: 'Hungarian'
value: HUN
- label: 'Indonesian'
value: IDN
- label: 'Italian'
value: ITA
- label: 'Latvian'
value: LVA
- label: 'Lithuanian'
value: LTU
- label: 'Norwegian'
value: NOR
- label: 'Polish'
value: POL
- label: 'Portuguese'
value: PRT
- label: 'Romanian'
value: ROU
- label: 'Russian'
value: RUS
- label: 'Swedish'
value: SWE
- label: 'Slovak'
value: SVK
- label: 'Slovene'
value: SVN
- label: 'Spanish'
value: ESP
- label: 'Turkish'
value: TUR
- label: 'Ukrainian'
value: UKR
date_format:
name: Date Format
description: '* *"SYSTEM" - select the format for date to display*'
default: '%d.%m'
selector:
select:
multiple: false
#mode: dropdown
options:
- label: 'DD.MM (ex. 22.03)'
value: '%d.%m'
- label: 'DD/MM (ex. 22/03)'
value: '%d/%m'
- label: 'D/M (ex. 3/22)'
value: '%-m/%-d'
time_format:
name: Time Format
description: '* *"SYSTEM" - select the format for time to display*'
default: '%H:%M'
selector:
select:
multiple: false
#mode: dropdown
options:
- label: 'HH:MM (ex. 13:30)'
value: '%H:%M'
- label: 'H:MM AM/PM (ex. 1:30PM)'
value: '%-I:%M'
delay:
name: Delay to avoid synchronization problem
description: '* *"SYSTEM" - Synchronization Problems may occur due to the **NETWORK / WLAN**. To avoid this problem enter your value for the delay (milliseconds)*'
default: '1'
selector:
number:
min: 0
max: 100
##### PLACEHOLDER ######################################################################
placeholder01:
name: 'Is only a placeholder without function for a better overview'
description: '# ✅ WEATHER AND TEMPERATURE ✅ '
default: 'Weather and Temp'
selector:
select:
options:
- Weather and Temp
##### PLACEHOLDER ######################################################################
##### WEATHER - Page Home / Weather 01-04 #####
weather:
name: Weather Integration
description: '* *"SYSTEM" - select our Weather Integration*'
default: 'Default'
selector:
select:
options:
- Default
- AccuWeather
weather_entity:
name: Weather entity from HA
description: '* *"SYSTEM" - Select your weather entity.*'
default: []
selector:
entity:
domain:
- weather
##### Temp - Page Home #####
outdoortemp:
name: Outdoor Temperature Sensor (Optional)
description: '* *Page "HOME" - If no outdoor sensor is available, leave the field empty and the value from your selected weather integration will be used automatically*'
default: []
selector:
entity:
domain:
- sensor
home_outdoor_temp_label_color:
name: Outdoor Temperature Sensor - LABEL COLOR (Optional)
description: '* *Page "HOME" - Label color which should be displayed*'
default: [255,255,255] #65535 White
selector: &color-selector
color_rgb:
indoortemp:
name: Indoor Temperature Sensor - ENTITY (Optional)
description: '* *Page "HOME" - An indoor temperature sensor is not necessary. Leave the field empty if you want to use the temperature sensor of the NSPanel. Additionally a temperature correction for the NSPanel sensor is possible under HA Devices. So everyone can adjust the sensor exactly*'
default: []
selector:
entity:
domain:
- sensor
home_indoor_temp_icon:
name: Indoor Temperature Sensor - ICON (Optional)
description: '* *Page "HOME" - Icon which should be displayed (Default #E50E)*'
default: #E50E
selector:
text: {}
home_indoor_temp_icon_color:
name: Indoor Temperature Sensor - ICON COLOR (Optional)
description: '* *Page "HOME" - Icon color which should be displayed*'
default: [255,255,255] #65535 White
selector: *color-selector
home_indoor_temp_label_color:
name: Indoor Temperature Sensor - LABEL COLOR (Optional)
description: '* *Page "HOME" - Label color which should be displayed*'
default: [255,255,255] #65535 White
selector: *color-selector
##### PLACEHOLDER ######################################################################
placeholder02:
name: 'Is only a placeholder without function for a better overview'
description: '# ✅ SENSOR HOME PAGE ✅ '
default: 'sensor'
selector:
select:
options:
- sensor
##### PLACEHOLDER ######################################################################
##### Sensor - Page Home #####
home_value01:
name: Sensor 01 - ENTITY (Optional)
description: '* *Page "HOME" - Entity which should be displayed*'
default: []
selector:
entity:
domain:
- sensor
home_value01_icon:
name: Sensor 01 - ICON (Optional)
description: '* *Page "HOME" - Icon which should be displayed (if not set, no icon is shown)*'
default: []
selector: &icon-selector
text: {}
home_value01_icon_color:
name: Sensor 01 - ICON COLOR (Optional)
description: '* *Page "HOME" - Icon color which should be displayed*'
default: [200,204,200] #52857 Grey super light
selector: *color-selector
home_value01_label_color:
name: Sensor 01 - LABEL COLOR (Optional)
description: '* *Page "HOME" - Label color which should be displayed*'
default: [200,204,200] #52857 Grey super light
selector: *color-selector
home_value02:
name: Sensor 02 - ENTITY (Optional)
description: '* *Page "HOME" - Entity which should be displayed*'
default: []
selector:
entity:
domain:
- sensor
home_value02_icon:
name: Sensor 02 - ICON (Optional)
description: '* *Page "HOME" - Icon which should be displayed (if not set, no icon is shown)*'
default: []
selector:
text: {}
home_value02_icon_color:
name: Sensor 02 - ICON COLOR (Optional)
description: '* *Page "HOME" - Icon color which should be displayed*'
default: [200,204,200] #52857 Grey super light
selector: *color-selector
home_value02_label_color:
name: Sensor 02 - LABEL COLOR (Optional)
description: '* *Page "HOME" - Label color which should be displayed*'
default: [200,204,200] #52857 Grey super light
selector: *color-selector
home_value03:
name: Sensor 03 - ENTITY (Optional)
description: '* *Page "HOME" - Entity which should be displayed*'
default: []
selector:
entity:
domain:
- sensor
home_value03_icon:
name: Sensor 03 - ICON (Optional)
description: '* *Page "HOME" - Icon which should be displayed (if not set, no icon is shown)*'
default: []
selector: *icon-selector
home_value03_icon_color:
name: Sensor 03 - ICON COLOR (Optional)
description: '* *Page "HOME" - Icon color which should be displayed*'
default: [200,204,200] #52857 Grey super light
selector: *color-selector
home_value03_label_color:
name: Sensor 03 - LABEL COLOR (Optional)
description: '* *Page "HOME" - Label color which should be displayed*'
default: [200,204,200] #52857 Grey super light
selector: *color-selector
##### PLACEHOLDER ######################################################################
placeholder03:
name: 'Is only a placeholder without function for a better overview'
description: '# ✅ CHIPS ✅ '
default: 'chips'
selector:
select:
options:
- chips
##### PLACEHOLDER ######################################################################
##### Chips - Page Home #####
chip01:
name: Chip 01 - ENTITY (Optional)
description: '* *Page "HOME" - Entity which should be displayed (ONLY light | switch | binary_sensor | sensor | with state ON/OFF)*'
default: []
selector: &chip-entity-selector
entity:
domain:
- binary_sensor
- input_boolean
- light
- sensor
- switch
chip01_icon:
name: Chip 01 - ICON (Optional)
description: '* *Page "HOME" - Icon which should be displayed when state ON (if not set, no icon is shown)*'
default: []
selector:
text: {}
chip01_icon_color:
name: Chip 01 - ICON COLOR (Optional)
description: '* *Page "HOME" - Icon color which should be displayed*'
default: [128,128,128] #33808 Grey light
selector: *color-selector
chip02:
name: Chip 02 - ENTITY (Optional)
description: '* *Page "HOME" - Entity which should be displayed (ONLY light | switch | binary_sensor | sensor | with state ON/OFF)*'
default: []
selector: *chip-entity-selector
chip02_icon:
name: Chip 02 - ICON (Optional)
description: '* *Page "HOME" - Icon which should be displayed when state ON (if not set, no icon is shown)*'
default: []
selector: *icon-selector
chip02_icon_color:
name: Chip 02 - ICON COLOR (Optional)
description: '* *Page "HOME" - Icon color which should be displayed*'
default: [128,128,128] #33808 Grey light
selector: *color-selector
chip03:
name: Chip 03 - ENTITY (Optional)
description: '* *Page "HOME" - Entity which should be displayed (ONLY light | switch | binary_sensor | sensor | with state ON/OFF)*'
default: []
selector: *chip-entity-selector
chip03_icon:
name: Chip 03 - ICON (Optional)
description: '* *Page "HOME" - Icon which should be displayed when state ON (if not set, no icon is shown)*'
default: []
selector: *icon-selector
chip03_icon_color:
name: Chip 03 - ICON COLOR (Optional)
description: '* *Page "HOME" - Icon color which should be displayed*'
default: [128,128,128] #33808 Grey light
selector: *color-selector
chip04:
name: Chip 04 - ENTITY (Optional)
description: '* *Page "HOME" - Entity which should be displayed (ONLY light | switch | binary_sensor | sensor | with state ON/OFF)*'
default: []
selector: *chip-entity-selector
chip04_icon:
name: Chip 04 - ICON (Optional)
description: '* *Page "HOME" - Icon which should be displayed when state ON (if not set, no icon is shown)*'
default: []
selector: *icon-selector
chip04_icon_color:
name: Chip 04 - ICON COLOR (Optional)
description: '* *Page "HOME" - Icon color which should be displayed*'
default: [128,128,128] #33808 Grey light
selector: *color-selector
chip05:
name: Chip 05 - ENTITY (Optional)
description: '* *Page "HOME" - Entity which should be displayed (ONLY light | switch | binary_sensor | sensor | with state ON/OFF)*'
default: []
selector: *chip-entity-selector
chip05_icon:
name: Chip 05 - ICON (Optional)
description: '* *Page "HOME" - Icon which should be displayed when state ON (if not set, no icon is shown)*'
default: []
selector: *icon-selector
chip05_icon_color:
name: Chip 05 - ICON COLOR (Optional)
description: '* *Page "HOME" - Icon color which should be displayed*'
default: [128,128,128] #33808 Grey light
selector: *color-selector
chip06:
name: Chip 06 - ENTITY (Optional)
description: '* *Page "HOME" - Entity which should be displayed (ONLY light | switch | binary_sensor | sensor | with state ON/OFF)*'
default: []
selector: *chip-entity-selector
chip06_icon:
name: Chip 06 - ICON (Optional)
description: '* *Page "HOME" - Icon which should be displayed when state ON (if not set, no icon is shown)*'
default: []
selector: *icon-selector
chip06_icon_color:
name: Chip 06 - ICON COLOR (Optional)
description: '* *Page "HOME" - Icon color which should be displayed*'
default: [128,128,128] #33808 Grey light
selector: *color-selector
chip07:
name: Chip 07 - ENTITY (Optional)
description: '* *Page "HOME" - Entity which should be displayed (ONLY light | switch | binary_sensor | sensor | with state ON/OFF)*'
default: []
selector: *chip-entity-selector
chip07_icon:
name: Chip 07 - ICON (Optional)
description: '* *Page "HOME" - Icon which should be displayed when state ON (if not set, no icon is shown)*'
default: []
selector: *icon-selector
chip07_icon_color:
name: Chip 07 - ICON COLOR (Optional)
description: '* *Page "HOME" - Icon color which should be displayed*'
default: [128,128,128] #33808 Grey light
selector: *color-selector
##### PLACEHOLDER ######################################################################
placeholder04:
name: 'Is only a placeholder without function for a better overview'
description: '# ✅ CLIMATE ✅ '
default: 'climate'
selector:
select:
options:
- climate
##### PLACEHOLDER ######################################################################
##### Climate - Page Climate #####
climate:
name: Climate to control - ENTITY (Optional)
description: '* *Page "CLIMATE" - If an entity is selected, the **"Thermostat page"** is activated and enabled. If you have **"Underfloor Heating System"** and want to switch it via the relay, you must create a separate climate in HA. See HowTo*'
default: []
selector:
entity:
domain: climate
climate_optimistic:
name: Climate control optimistic mode - TRUE/FALSE (Optional)
default: true
description: '* *Page "CLIMATE" - Depends on your climate device and HA-Integration. If optimisitc mode is **OFF** then changes are made will wait for response from device to update temperature in the display. This can cause delays or jumping values. If **ON** the script update the display immediately but apply changes after closing climate-page* '
selector:
boolean:
hotwatercharge:
name: Hot Water Charge Button - ENTITY (Optional)
description: '* *Page "CLIMATE" - Choose your switch to turn on/off*'
default: []
selector:
entity:
domain:
- switch
- input_boolean
##### PLACEHOLDER ######################################################################
placeholder05:
name: 'Is only a placeholder without function for a better overview'
description: '# ✅ QR CODE ✅ '
default: 'qrcode'
selector:
select:
options:
- qrcode
##### PLACEHOLDER ######################################################################
##### QR Code - Page Home/QR Code #####
qrcode_enabled:
name: Activate QR Code - TRUE/FALSE (Optional)
default: false
description: '* *Page "HOME" - activate QR Code page and QR Code Button on the home page* '
selector:
boolean:
qrcode_label:
name: QR Code page name - LABEL (Optional)
description: '* *Page "QRCODE" - Label which should be displayed*'
default: []
selector:
text: {}
qrcode_value:
name: QR Code content - VALUE (Optional)
description: '* *Page "QRCODE" - Value you want to display as QR code*'
default: []
selector:
text: {}
home_button05_icon:
name: QR Code - ICON (Optional)
description: '* *Page "HOME" - Icon which should be displayed (Default #E432)*'
default: #E432
selector: *icon-selector
home_button05_icon_color:
name: QR Code - ICON COLOR (Optional)
description: '* *Page "HOME" - Icon color which should be displayed (default color is set)*'
default: [200,204,200] #52857 Grey super light
selector: *color-selector
##### PLACEHOLDER ######################################################################
placeholder06:
name: 'Is only a placeholder without function for a better overview'
description: '# ✅ HARDWARE BUTTONS ✅ '
default: 'hardwarebuttons'
selector:
select:
options:
- hardwarebuttons
##### PLACEHOLDER ######################################################################
##### Hardware Buttons - Page Home #####
hold_delay:
name: Delay for HW-Button hold in seconds - VALUE
description: '* *"SYSTEM" - Time in seconds to detect a hold*'
default: 1.0
selector:
number:
min: 1.0
max: 10.0
step: 1.0
unit_of_measurement: seconds
relay_1_local_fallback:
name: Activate relay 1 local fallback - TRUE/FALSE (Optional)
default: false
description: '* *"SYSTEM" - activate this to use left button to toggle relay 1 if display is offline* '
selector:
boolean:
left_button_entity:
name: Left hardware button - ENTITY (Optional)
description: '* *"SYSTEM" - Entity which should be switched*'
default: []
selector: &hardware-button-selector
entity:
domain:
- light
- switch
- input_boolean
- cover
- automation
- button
- input_button
- scene
- script
- fan
left_button_name:
name: Left hardware button name - LABEL (Optional)
description: '* *Page "HOME" - Label which should be displayed (10 characters are supported)*'
default: []
selector:
text: {}
left_button_hold_select:
name: Left hardware button hold assignment - VALUE (Optional)
description: '* *"SYSTEM" - select what shold happen on hold*'
default: 'Default'
selector: &hardware-button-hold-selector
select:
options:
- Default
- Custom Action
left_button_hold_custom_action:
name: Left hardware button custom hold action - VALUE (Optional)
description: '*"SYSTEM" - The action(s) to launch on hold**'
default: []
selector:
action:
left_button_color:
name: Left hardware button - LABEL COLOR (Optional)
description: '* *Page "HOME" - LABEL color which should be displayed*'
default: [200,204,200] #52857 Grey super light
selector: *color-selector
relay_2_local_fallback:
name: Activate relay 2 local fallback - TRUE/FALSE (Optional)
default: false
description: '* *"SYSTEM" - activate this to use right button to toggle relay 2 if display is offline* '
selector:
boolean:
right_button_entity:
name: Right hardware button - ENTITY (Optional)
description: '* *"SYSTEM" - Entity which should be switched*'
default: []
selector: *hardware-button-selector
right_button_name:
name: Right hardware button name - LABEL (Optional)
description: '* *Page "HOME" - Label which should be displayed (10 characters are supported)*'
default: []
selector:
text: {}
right_button_hold_select:
name: Right button hold assignment - VALUE (Optional)
description: '* *"SYSTEM" - select what shold happen on hold*'
default: 'Default'
selector: *hardware-button-hold-selector
right_button_hold_custom_action:
name: Right button custom hold action - VALUE (Optional)
description: '*"SYSTEM" - The action(s) to launch on hold**'
default: []
selector:
action:
right_button_color:
name: Right hardware button - LABEL COLOR (Optional)
description: '* *Page "HOME" - LABEL color which should be displayed*'
default: [200,204,200] #52857 Grey super light
selector: *color-selector
##### PLACEHOLDER ######################################################################
placeholder07:
name: 'Is only a placeholder without function for a better overview'
description: '# ✅ BUTTON PAGE 01 ✅ '
default: 'buttonpage01'
selector:
select:
options:
- buttonpage01
##### PLACEHOLDER ######################################################################
##### BUTTON Page Labels #####
button_page01_label:
name: Button page 01 name - LABEL (Optional)
description: '* *Page "ButtonPage01" - Label which should be displayed*'
default: []
selector:
text: {}
button_page02_label:
name: Button page 02 name - LABEL (Optional)
description: '* *Page "ButtonPage02" - Label which should be displayed*'
default: []
selector:
text: {}
button_page03_label:
name: Button page 03 name - LABEL (Optional)
description: '* *Page "ButtonPage03" - Label which should be displayed*'
default: []
selector:
text: {}
button_page04_label:
name: Button page 04 name - LABEL (Optional)
description: '* *Page "ButtonPage04" - Label which should be displayed*'
default: []
selector:
text: {}
##### BUTTONS #####
entity01:
name: Button 01 - ENTITY (Optional)
description: '* *Page "BUTTONPAGE01" - Entity which should be switched (ONLY light | switch | cover | input_boolean | automation | button | input_button | scene | person | script | binary_sensor | fan | climate)*'
default: []
selector: &button-entity-selector
entity:
domain:
- light
- switch
- cover
- input_boolean
- automation
- button
- input_button
- scene
- person
- script
- binary_sensor
- fan
- climate
entity01_name:
name: Button 01 name - LABEL (Optional)
description: '* *Page "BUTTONPAGE01" - Label which should be displayed (10 characters are supported)*'
default: []
selector:
text: {}
entity01_icon:
name: Button 01 - ICON (Optional)
description: '* *Page "BUTTONPAGE01" - Icon which should be displayed (Default - an icon matching the entity will be set automatically)*'
default: []
selector: *icon-selector
entity01_icon_color:
name: Button 01 - ICON COLOR (Optional)
description: '* *Page "BUTTONPAGE01" - Icon color which should be displayed when button is on*'
default: [0,128,248] #1055 Blue
selector: *color-selector
entity01_confirm:
name: Confirm execution of the button press - TRUE/FALSE (Optional)
default: false
description: '* *Page "BUTTONPAGE01" - Ask for confirmation to execute **Button01** action*'
selector:
boolean:
entity02:
name: Button 02 - ENTITY (Optional)
description: '* *Page "BUTTONPAGE01" - Entity which should be switched (ONLY light | switch | cover | input_boolean | automation | button | input_button | scene | person | script | binary_sensor | fan | climate)*'
default: []
selector: *button-entity-selector
entity02_name:
name: Button 02 name - LABEL (Optional)
description: '* *Page "BUTTONPAGE01" - Label which should be displayed (10 characters are supported)*'
default: []
selector:
text: {}
entity02_icon:
name: Button 02 - ICON (Optional)
description: '* *Page "BUTTONPAGE01" - Icon which should be displayed (Default - an icon matching the entity will be set automatically)*'
default: []
selector: *icon-selector
entity02_icon_color:
name: Button 02 - ICON COLOR (Optional)
description: '* *Page "BUTTONPAGE01" - Icon color which should be displayed when button is on*'
default: [0,128,248] #1055 Blue
selector: *color-selector
entity02_confirm:
name: Confirm execution of the button press - TRUE/FALSE (Optional)
default: false
description: '* *Page "BUTTONPAGE01" - Ask for confirmation to execute **Button02** action*'
selector:
boolean:
entity03:
name: Button 03 - ENTITY (Optional)
description: '* *Page "BUTTONPAGE01" - Entity which should be switched (ONLY light | switch | cover | input_boolean | automation | button | input_button | scene | person | script | binary_sensor | fan | climate)*'
default: []
selector: *button-entity-selector
entity03_name:
name: Button 03 name - LABEL (Optional)
description: '* *Page "BUTTONPAGE01" - Label which should be displayed (10 characters are supported)*'
default: []
selector:
text: {}
entity03_icon:
name: Button 03 - ICON (Optional)
description: '* *Page "BUTTONPAGE01" - Icon which should be displayed (Default - an icon matching the entity will be set automatically)*'
default: []
selector: *icon-selector
entity03_icon_color:
name: Button 03 - ICON COLOR (Optional)
description: '* *Page "BUTTONPAGE01" - Icon color which should be displayed when button is on*'
default: [0,128,248] #1055 Blue
selector: *color-selector
entity03_confirm:
name: Confirm execution of the button press - TRUE/FALSE (Optional)
default: false
description: '* *Page "BUTTONPAGE01" - Ask for confirmation to execute **Button03** action*'
selector:
boolean:
entity04:
name: Button 04 - ENTITY (Optional)
description: '* *Page "BUTTONPAGE01" - Entity which should be switched (ONLY light | switch | cover | input_boolean | automation | button | input_button | scene | person | script | binary_sensor | fan | climate)*'
default: []
selector: *button-entity-selector
entity04_name:
name: Button 04 name - LABEL (Optional)
description: '* *Page "BUTTONPAGE01" - Label which should be displayed (10 characters are supported)*'
default: []
selector:
text: {}
entity04_icon:
name: Button 04 - ICON (Optional)
description: '* *Page "BUTTONPAGE01" - Icon which should be displayed (Default - an icon matching the entity will be set automatically)*'
default: []
selector: *icon-selector
entity04_icon_color:
name: Button 04 - ICON COLOR (Optional)
description: '* *Page "BUTTONPAGE01" - Icon color which should be displayed when button is on*'
default: [0,128,248] #1055 Blue
selector: *color-selector
entity04_confirm:
name: Confirm execution of the button press - TRUE/FALSE (Optional)
default: false
description: '* *Page "BUTTONPAGE01" - Ask for confirmation to execute **Button04** action*'
selector:
boolean:
entity05:
name: Button 05 - ENTITY (Optional)
description: '* *Page "BUTTONPAGE01" - Entity which should be switched (ONLY light | switch | cover | input_boolean | automation | button | input_button | scene | person | script | binary_sensor | fan | climate)*'
default: []
selector: *button-entity-selector
entity05_name:
name: Button 05 name - LABEL (Optional)
description: '* *Page "BUTTONPAGE01" - Label which should be displayed (10 characters are supported)*'
default: []
selector:
text: {}
entity05_icon:
name: Button 05 - ICON (Optional)
description: '* *Page "BUTTONPAGE01" - Icon which should be displayed (Default - an icon matching the entity will be set automatically)*'
default: []
selector: *icon-selector
entity05_icon_color:
name: Button 05 - ICON COLOR (Optional)
description: '* *Page "BUTTONPAGE01" - Icon color which should be displayed when button is on*'
default: [0,128,248] #1055 Blue
selector: *color-selector
entity05_confirm:
name: Confirm execution of the button press - TRUE/FALSE (Optional)
default: false
description: '* *Page "BUTTONPAGE01" - Ask for confirmation to execute **Button05** action*'
selector:
boolean:
entity06:
name: Button 06 - ENTITY (Optional)
description: '* *Page "BUTTONPAGE01" - Entity which should be switched (ONLY light | switch | cover | input_boolean | automation | button | input_button | scene | person | script | binary_sensor | fan | climate)*'
default: []
selector: *button-entity-selector
entity06_name:
name: Button 06 name - LABEL (Optional)
description: '* *Page "BUTTONPAGE01" - Label which should be displayed (10 characters are supported)*'
default: []
selector:
text: {}
entity06_icon:
name: Button 06 - ICON (Optional)
description: '* *Page "BUTTONPAGE01" - Icon which should be displayed (Default - an icon matching the entity will be set automatically)*'
default: []
selector: *icon-selector
entity06_icon_color:
name: Button 06 - ICON COLOR (Optional)
description: '* *Page "BUTTONPAGE01" - Icon color which should be displayed when button is on*'
default: [0,128,248] #1055 Blue
selector: *color-selector
entity06_confirm:
name: Confirm execution of the button press - TRUE/FALSE (Optional)
default: false
description: '* *Page "BUTTONPAGE01" - Ask for confirmation to execute **Button06** action*'
selector:
boolean:
entity07:
name: Button 07 - ENTITY (Optional)
description: '* *Page "BUTTONPAGE01" - Entity which should be switched (ONLY light | switch | cover | input_boolean | automation | button | input_button | scene | person | script | binary_sensor | fan | climate)*'
default: []
selector: *button-entity-selector
entity07_name:
name: Button 07 name - LABEL (Optional)
description: '* *Page "BUTTONPAGE01" - Label which should be displayed (10 characters are supported)*'
default: []
selector:
text: {}
entity07_icon:
name: Button 07 - ICON (Optional)
description: '* *Page "BUTTONPAGE01" - Icon which should be displayed (Default - an icon matching the entity will be set automatically)*'
default: []
selector: *icon-selector
entity07_icon_color:
name: Button 07 - ICON COLOR (Optional)
description: '* *Page "BUTTONPAGE01" - Icon color which should be displayed when button is on*'
default: [0,128,248] #1055 Blue
selector: *color-selector
entity07_confirm:
name: Confirm execution of the button press - TRUE/FALSE (Optional)
default: false
description: '* *Page "BUTTONPAGE01" - Ask for confirmation to execute **Button07** action*'
selector:
boolean:
entity08:
name: Button 08 - ENTITY (Optional)
description: '* *Page "BUTTONPAGE01" - Entity which should be switched (ONLY light | switch | cover | input_boolean | automation | button | input_button | scene | person | script | binary_sensor | fan | climate)*'
default: []
selector: *button-entity-selector
entity08_name:
name: Button 08 name - LABEL (Optional)
description: '* *Page "BUTTONPAGE01" - Label which should be displayed (10 characters are supported)*'
default: []
selector:
text: {}
entity08_icon:
name: Button 08 - ICON (Optional)
description: '* *Page "BUTTONPAGE01" - Icon which should be displayed (Default - an icon matching the entity will be set automatically)*'
default: []
selector: *icon-selector
entity08_icon_color:
name: Button 08 - ICON COLOR (Optional)
description: '* *Page "BUTTONPAGE01" - Icon color which should be displayed when button is on*'
default: [0,128,248] #1055 Blue
selector: *color-selector
entity08_confirm:
name: Confirm execution of the button press - TRUE/FALSE (Optional)
default: false
description: '* *Page "BUTTONPAGE01" - Ask for confirmation to execute **Button08** action*'
selector:
boolean:
##### PLACEHOLDER ######################################################################
placeholder08:
name: 'Is only a placeholder without function for a better overview'
description: '# ✅ BUTTON PAGE 02 ✅ '
default: 'buttonpage02'
selector:
select:
options:
- buttonpage02
##### PLACEHOLDER ######################################################################
entity09:
name: Button 09 - ENTITY (Optional)
description: '* *Page "BUTTONPAGE02" - Entity which should be switched (ONLY light | switch | cover | input_boolean | automation | button | input_button | scene | person | script | binary_sensor | fan | climate)*'
default: []
selector: *button-entity-selector
entity09_name:
name: Button 09 name - LABEL (Optional)
description: '* *Page "BUTTONPAGE02" - Label which should be displayed (10 characters are supported)*'
default: []
selector:
text: {}
entity09_icon:
name: Button 09 - ICON (Optional)
description: '* *Page "BUTTONPAGE02" - Icon which should be displayed (Default - an icon matching the entity will be set automatically)*'
default: []
selector: *icon-selector
entity09_icon_color:
name: Button 09 - ICON COLOR (Optional)
description: '* *Page "BUTTONPAGE02" - Icon color which should be displayed when button is on*'
default: [0,128,248] #1055 Blue
selector: *color-selector
entity09_confirm:
name: Confirm execution of the button press - TRUE/FALSE (Optional)
default: false
description: '* *Page "BUTTONPAGE02" - Ask for confirmation to execute **Button09** action*'
selector:
boolean:
entity10:
name: Button 10 - ENTITY (Optional)
description: '* *Page "BUTTONPAGE02" - Entity which should be switched (ONLY light | switch | cover | input_boolean | automation | button | input_button | scene | person | script | binary_sensor | fan | climate)*'
default: []
selector: *button-entity-selector
entity10_name:
name: Button 10 name - LABEL (Optional)
description: '* *Page "BUTTONPAGE02" - Label which should be displayed (10 characters are supported)*'
default: []
selector:
text: {}
entity10_icon:
name: Button 10 - ICON (Optional)
description: '* *Page "BUTTONPAGE02" - Icon which should be displayed (Default - an icon matching the entity will be set automatically)*'
default: []
selector: *icon-selector
entity10_icon_color:
name: Button 10 - ICON COLOR (Optional)
description: '* *Page "BUTTONPAGE02" - Icon color which should be displayed when button is on*'
default: [0,128,248] #1055 Blue
selector: *color-selector
entity10_confirm:
name: Confirm execution of the button press - TRUE/FALSE (Optional)
default: false
description: '* *Page "BUTTONPAGE02" - Ask for confirmation to execute **Button10** action*'
selector:
boolean:
entity11:
name: Button 11 - ENTITY (Optional)
description: '* *Page "BUTTONPAGE02" - Entity which should be switched (ONLY light | switch | cover | input_boolean | automation | button | input_button | scene | person | script | binary_sensor | fan | climate)*'
default: []
selector: *button-entity-selector
entity11_name:
name: Button 11 name - LABEL (Optional)
description: '* *Page "BUTTONPAGE02" - Label which should be displayed (10 characters are supported)*'
default: []
selector:
text: {}
entity11_icon:
name: Button 11 - ICON (Optional)
description: '* *Page "BUTTONPAGE02" - Icon which should be displayed (Default - an icon matching the entity will be set automatically)*'
default: []
selector: *icon-selector
entity11_icon_color:
name: Button 11 - ICON COLOR (Optional)
description: '* *Page "BUTTONPAGE02" - Icon color which should be displayed when button is on*'
default: [0,128,248] #1055 Blue
selector: *color-selector
entity11_confirm:
name: Confirm execution of the button press - TRUE/FALSE (Optional)
default: false
description: '* *Page "BUTTONPAGE02" - Ask for confirmation to execute **Button11** action*'
selector:
boolean:
entity12:
name: Button 12 - ENTITY (Optional)
description: '* *Page "BUTTONPAGE02" - Entity which should be switched (ONLY light | switch | cover | input_boolean | automation | button | input_button | scene | person | script | binary_sensor | fan | climate)*'
default: []
selector: *button-entity-selector
entity12_name:
name: Button 12 name - LABEL (Optional)
description: '* *Page "BUTTONPAGE02" - Label which should be displayed (10 characters are supported)*'
default: []
selector:
text: {}
entity12_icon:
name: Button 12 - ICON (Optional)
description: '* *Page "BUTTONPAGE02" - Icon which should be displayed (Default - an icon matching the entity will be set automatically)*'
default: []
selector: *icon-selector
entity12_icon_color:
name: Button 12 - ICON COLOR (Optional)
description: '* *Page "BUTTONPAGE02" - Icon color which should be displayed when button is on*'
default: [0,128,248] #1055 Blue
selector: *color-selector
entity12_confirm:
name: Confirm execution of the button press - TRUE/FALSE (Optional)
default: false
description: '* *Page "BUTTONPAGE02" - Ask for confirmation to execute **Button12** action*'
selector:
boolean:
entity13:
name: Button 13 - ENTITY (Optional)
description: '* *Page "BUTTONPAGE02" - Entity which should be switched (ONLY light | switch | cover | input_boolean | automation | button | input_button | scene | person | script | binary_sensor | fan | climate)*'
default: []
selector: *button-entity-selector
entity13_name:
name: Button 13 name - LABEL (Optional)
description: '* *Page "BUTTONPAGE02" - Label which should be displayed (10 characters are supported)*'
default: []
selector:
text: {}
entity13_icon:
name: Button 13 - ICON (Optional)
description: '* *Page "BUTTONPAGE02" - Icon which should be displayed (Default - an icon matching the entity will be set automatically)*'
default: []
selector: *icon-selector
entity13_icon_color:
name: Button 13 - ICON COLOR (Optional)
description: '* *Page "BUTTONPAGE02" - Icon color which should be displayed when button is on*'
default: [0,128,248] #1055 Blue
selector: *color-selector
entity13_confirm:
name: Confirm execution of the button press - TRUE/FALSE (Optional)
default: false
description: '* *Page "BUTTONPAGE02" - Ask for confirmation to execute **Button13** action*'
selector:
boolean:
entity14:
name: Button 14 - ENTITY (Optional)
description: '* *Page "BUTTONPAGE02" - Entity which should be switched (ONLY light | switch | cover | input_boolean | automation | button | input_button | scene | person | script | binary_sensor | fan | climate)*'
default: []
selector: *button-entity-selector
entity14_name:
name: Button 14 name - LABEL (Optional)
description: '* *Page "BUTTONPAGE02" - Label which should be displayed (10 characters are supported)*'
default: []
selector:
text: {}
entity14_icon:
name: Button 14 - ICON (Optional)
description: '* *Page "BUTTONPAGE02" - Icon which should be displayed (Default - an icon matching the entity will be set automatically)*'
default: []
selector: *icon-selector
entity14_icon_color:
name: Button 14 - ICON COLOR (Optional)
description: '* *Page "BUTTONPAGE02" - Icon color which should be displayed when button is on*'
default: [0,128,248] #1055 Blue
selector: *color-selector
entity14_confirm:
name: Confirm execution of the button press - TRUE/FALSE (Optional)
default: false
description: '* *Page "BUTTONPAGE02" - Ask for confirmation to execute **Button14** action*'
selector:
boolean:
entity15:
name: Button 15 - ENTITY (Optional)
description: '* *Page "BUTTONPAGE02" - Entity which should be switched (ONLY light | switch | cover | input_boolean | automation | button | input_button | scene | person | script | binary_sensor | fan | climate)*'
default: []
selector: *button-entity-selector
entity15_name:
name: Button 15 name - LABEL (Optional)
description: '* *Page "BUTTONPAGE02" - Label which should be displayed (10 characters are supported)*'
default: []
selector:
text: {}
entity15_icon:
name: Button 15 - ICON (Optional)
description: '* *Page "BUTTONPAGE02" - Icon which should be displayed (Default - an icon matching the entity will be set automatically)*'
default: []
selector: *icon-selector
entity15_icon_color:
name: Button 15 - ICON COLOR (Optional)
description: '* *Page "BUTTONPAGE02" - Icon color which should be displayed when button is on*'
default: [0,128,248] #1055 Blue
selector: *color-selector
entity15_confirm:
name: Confirm execution of the button press - TRUE/FALSE (Optional)
default: false
description: '* *Page "BUTTONPAGE02" - Ask for confirmation to execute **Button15** action*'
selector:
boolean:
entity16:
name: Button 16 - ENTITY (Optional)
description: '* *Page "BUTTONPAGE02" - Entity which should be switched (ONLY light | switch | cover | input_boolean | automation | button | input_button | scene | person | script | binary_sensor | fan | climate)*'
default: []
selector: *button-entity-selector
entity16_name:
name: Button 16 name - LABEL (Optional)
description: '* *Page "BUTTONPAGE02" - Label which should be displayed (10 characters are supported)*'
default: []
selector:
text: {}
entity16_icon:
name: Button 16 - ICON (Optional)
description: '* *Page "BUTTONPAGE02" - Icon which should be displayed (Default - an icon matching the entity will be set automatically)*'
default: []
selector: *icon-selector
entity16_icon_color:
name: Button 16 - ICON COLOR (Optional)
description: '* *Page "BUTTONPAGE02" - Icon color which should be displayed when button is on*'
default: [0,128,248] #1055 Blue
selector: *color-selector
entity16_confirm:
name: Confirm execution of the button press - TRUE/FALSE (Optional)
default: false
description: '* *Page "BUTTONPAGE02" - Ask for confirmation to execute **Button16** action*'
selector:
boolean:
##### PLACEHOLDER ######################################################################
placeholder09:
name: 'Is only a placeholder without function for a better overview'
description: '# ✅ BUTTON PAGE 03 ✅ '
default: 'buttonpage03'
selector:
select:
options:
- buttonpage03
##### PLACEHOLDER ######################################################################
entity17:
name: Button 17 - ENTITY (Optional)
description: '* *Page "BUTTONPAGE03" - Entity which should be switched (ONLY light | switch | cover | input_boolean | automation | button | input_button | scene | person | script | binary_sensor | fan | climate)*'
default: []
selector: *button-entity-selector
entity17_name:
name: Button 17 name - LABEL (Optional)
description: '* *Page "BUTTONPAGE03" - Label which should be displayed (10 characters are supported)*'
default: []
selector:
text: {}
entity17_icon:
name: Button 17 - ICON (Optional)
description: '* *Page "BUTTONPAGE03" - Icon which should be displayed (Default - an icon matching the entity will be set automatically)*'
default: []
selector: *icon-selector
entity17_icon_color:
name: Button 17 - ICON COLOR (Optional)
description: '* *Page "BUTTONPAGE03" - Icon color which should be displayed when button is on*'
default: [0,128,248] #1055 Blue
selector: *color-selector
entity17_confirm:
name: Confirm execution of the button press - TRUE/FALSE (Optional)
default: false
description: '* *Page "BUTTONPAGE03" - Ask for confirmation to execute **Button17** action*'
selector:
boolean:
entity18:
name: Button 18 - ENTITY (Optional)
description: '* *Page "BUTTONPAGE03" - Entity which should be switched (ONLY light | switch | cover | input_boolean | automation | button | input_button | scene | person | script | binary_sensor | fan | climate)*'
default: []
selector: *button-entity-selector
entity18_name:
name: Button 18 name - LABEL (Optional)
description: '* *Page "BUTTONPAGE03" - Label which should be displayed (10 characters are supported)*'
default: []
selector:
text: {}
entity18_icon:
name: Button 18 - ICON (Optional)
description: '* *Page "BUTTONPAGE03" - Icon which should be displayed (Default - an icon matching the entity will be set automatically)*'
default: []
selector: *icon-selector
entity18_icon_color:
name: Button 18 - ICON COLOR (Optional)
description: '* *Page "BUTTONPAGE03" - Icon color which should be displayed when button is on*'
default: [0,128,248] #1055 Blue
selector: *color-selector
entity18_confirm:
name: Confirm execution of the button press - TRUE/FALSE (Optional)
default: false
description: '* *Page "BUTTONPAGE03" - Ask for confirmation to execute **Button18** action*'
selector:
boolean:
entity19:
name: Button 19 - ENTITY (Optional)
description: '* *Page "BUTTONPAGE03" - Entity which should be switched (ONLY light | switch | cover | input_boolean | automation | button | input_button | scene | person | script | binary_sensor | fan | climate)*'
default: []
selector: *button-entity-selector
entity19_name:
name: Button 19 name - LABEL (Optional)
description: '* *Page "BUTTONPAGE03" - Label which should be displayed (10 characters are supported)*'
default: []
selector:
text: {}
entity19_icon:
name: Button 19 - ICON (Optional)
description: '* *Page "BUTTONPAGE03" - Icon which should be displayed (Default - an icon matching the entity will be set automatically)*'
default: []
selector: *icon-selector
entity19_icon_color:
name: Button 19 - ICON COLOR (Optional)
description: '* *Page "BUTTONPAGE03" - Icon color which should be displayed when button is on*'
default: [0,128,248] #1055 Blue
selector: *color-selector
entity19_confirm:
name: Confirm execution of the button press - TRUE/FALSE (Optional)
default: false
description: '* *Page "BUTTONPAGE03" - Ask for confirmation to execute **Button19** action*'
selector:
boolean:
entity20:
name: Button 20 - ENTITY (Optional)
description: '* *Page "BUTTONPAGE03" - Entity which should be switched (ONLY light | switch | cover | input_boolean | automation | button | input_button | scene | person | script | binary_sensor | fan | climate)*'
default: []
selector: *button-entity-selector
entity20_name:
name: Button 20 name - LABEL (Optional)
description: '* *Page "BUTTONPAGE03" - Label which should be displayed (10 characters are supported)*'
default: []
selector:
text: {}
entity20_icon:
name: Button 20 - ICON (Optional)
description: '* *Page "BUTTONPAGE03" - Icon which should be displayed (Default - an icon matching the entity will be set automatically)*'
default: []
selector: *icon-selector
entity20_icon_color:
name: Button 20 - ICON COLOR (Optional)
description: '* *Page "BUTTONPAGE03" - Icon color which should be displayed when button is on*'
default: [0,128,248] #1055 Blue
selector: *color-selector
entity20_confirm:
name: Confirm execution of the button press - TRUE/FALSE (Optional)
default: false
description: '* *Page "BUTTONPAGE03" - Ask for confirmation to execute **Button20** action*'
selector:
boolean:
entity21:
name: Button 21 - ENTITY (Optional)
description: '* *Page "BUTTONPAGE03" - Entity which should be switched (ONLY light | switch | cover | input_boolean | automation | button | input_button | scene | person | script | binary_sensor | fan | climate)*'
default: []
selector: *button-entity-selector
entity21_name:
name: Button 21 name - LABEL (Optional)
description: '* *Page "BUTTONPAGE03" - Label which should be displayed (10 characters are supported)*'
default: []
selector:
text: {}
entity21_icon:
name: Button 21 - ICON (Optional)
description: '* *Page "BUTTONPAGE03" - Icon which should be displayed (Default - an icon matching the entity will be set automatically)*'
default: []
selector: *icon-selector
entity21_icon_color:
name: Button 21 - ICON COLOR (Optional)
description: '* *Page "BUTTONPAGE03" - Icon color which should be displayed when button is on*'
default: [0,128,248] #1055 Blue
selector: *color-selector
entity21_confirm:
name: Confirm execution of the button press - TRUE/FALSE (Optional)
default: false
description: '* *Page "BUTTONPAGE03" - Ask for confirmation to execute **Button21** action*'
selector:
boolean:
entity22:
name: Button 22 - ENTITY (Optional)
description: '* *Page "BUTTONPAGE03" - Entity which should be switched (ONLY light | switch | cover | input_boolean | automation | button | input_button | scene | person | script | binary_sensor | fan | climate)*'
default: []
selector: *button-entity-selector
entity22_name:
name: Button 22 name - LABEL (Optional)
description: '* *Page "BUTTONPAGE03" - Label which should be displayed (10 characters are supported)*'
default: []
selector:
text: {}
entity22_icon:
name: Button 22 - ICON (Optional)
description: '* *Page "BUTTONPAGE03" - Icon which should be displayed (Default - an icon matching the entity will be set automatically)*'
default: []
selector: *icon-selector
entity22_icon_color:
name: Button 22 - ICON COLOR (Optional)
description: '* *Page "BUTTONPAGE03" - Icon color which should be displayed when button is on*'
default: [0,128,248] #1055 Blue
selector: *color-selector
entity22_confirm:
name: Confirm execution of the button press - TRUE/FALSE (Optional)
default: false
description: '* *Page "BUTTONPAGE03" - Ask for confirmation to execute **Button22** action*'
selector:
boolean:
entity23:
name: Button 23 - ENTITY (Optional)
description: '* *Page "BUTTONPAGE03" - Entity which should be switched (ONLY light | switch | cover | input_boolean | automation | button | input_button | scene | person | script | binary_sensor | fan | climate)*'
default: []
selector: *button-entity-selector
entity23_name:
name: Button 23 name - LABEL (Optional)
description: '* *Page "BUTTONPAGE03" - Label which should be displayed (10 characters are supported)*'
default: []
selector:
text: {}
entity23_icon:
name: Button 23 - ICON (Optional)
description: '* *Page "BUTTONPAGE03" - Icon which should be displayed (Default - an icon matching the entity will be set automatically)*'
default: []
selector: *icon-selector
entity23_icon_color:
name: Button 23 - ICON COLOR (Optional)
description: '* *Page "BUTTONPAGE03" - Icon color which should be displayed when button is on*'
default: [0,128,248] #1055 Blue
selector: *color-selector
entity23_confirm:
name: Confirm execution of the button press - TRUE/FALSE (Optional)
default: false
description: '* *Page "BUTTONPAGE03" - Ask for confirmation to execute **Button23** action*'
selector:
boolean:
entity24:
name: Button 24 - ENTITY (Optional)
description: '* *Page "BUTTONPAGE03" - Entity which should be switched (ONLY light | switch | cover | input_boolean | automation | button | input_button | scene | person | script | binary_sensor | fan | climate)*'
default: []
selector: *button-entity-selector
entity24_name:
name: Button 24 name - LABEL (Optional)
description: '* *Page "BUTTONPAGE03" - Label which should be displayed (10 characters are supported)*'
default: []
selector:
text: {}
entity24_icon:
name: Button 24 - ICON (Optional)
description: '* *Page "BUTTONPAGE03" - Icon which should be displayed (Default - an icon matching the entity will be set automatically)*'
default: []
selector: *icon-selector
entity24_icon_color:
name: Button 24 - ICON COLOR (Optional)
description: '* *Page "BUTTONPAGE03" - Icon color which should be displayed when button is on*'
default: [0,128,248] #1055 Blue
selector: *color-selector
entity24_confirm:
name: Confirm execution of the button press - TRUE/FALSE (Optional)
default: false
description: '* *Page "BUTTONPAGE03" - Ask for confirmation to execute **Button24** action*'
selector:
boolean:
##### PLACEHOLDER ######################################################################
placeholder10:
name: 'Is only a placeholder without function for a better overview'
description: '# ✅ BUTTON PAGE 04 ✅ '
default: 'buttonpage04'
selector:
select:
options:
- buttonpage04
##### PLACEHOLDER ######################################################################
entity25:
name: Button 25 - ENTITY (Optional)
description: '* *Page "BUTTONPAGE04" - Entity which should be switched (ONLY light | switch | cover | input_boolean | automation | button | input_button | scene | person | script | binary_sensor | fan | climate)*'
default: []
selector: *button-entity-selector
entity25_name:
name: Button 25 name - LABEL (Optional)
description: '* *Page "BUTTONPAGE04" - Label which should be displayed (10 characters are supported)*'
default: []
selector:
text: {}
entity25_icon:
name: Button 25 - ICON (Optional)
description: '* *Page "BUTTONPAGE04" - Icon which should be displayed (Default - an icon matching the entity will be set automatically)*'
default: []
selector: *icon-selector
entity25_icon_color:
name: Button 25 - ICON COLOR (Optional)
description: '* *Page "BUTTONPAGE04" - Icon color which should be displayed when button is on*'
default: [0,128,248] #1055 Blue
selector: *color-selector
entity25_confirm:
name: Confirm execution of the button press - TRUE/FALSE (Optional)
default: false
description: '* *Page "BUTTONPAGE04" - Ask for confirmation to execute **Button25** action*'
selector:
boolean:
entity26:
name: Button 26 - ENTITY (Optional)
description: '* *Page "BUTTONPAGE04" - Entity which should be switched (ONLY light | switch | cover | input_boolean | automation | button | input_button | scene | person | script | binary_sensor | fan | climate)*'
default: []
selector: *button-entity-selector
entity26_name:
name: Button 26 name - LABEL (Optional)
description: '* *Page "BUTTONPAGE04" - Label which should be displayed (10 characters are supported)*'
default: []
selector:
text: {}
entity26_icon:
name: Button 26 - ICON (Optional)
description: '* *Page "BUTTONPAGE04" - Icon which should be displayed (Default - an icon matching the entity will be set automatically)*'
default: []
selector: *icon-selector
entity26_icon_color:
name: Button 26 - ICON COLOR (Optional)
description: '* *Page "BUTTONPAGE04" - Icon color which should be displayed when button is on*'
default: [0,128,248] #1055 Blue
selector: *color-selector
entity26_confirm:
name: Confirm execution of the button press - TRUE/FALSE (Optional)
default: false
description: '* *Page "BUTTONPAGE04" - Ask for confirmation to execute **Button26** action*'
selector:
boolean:
entity27:
name: Button 27 - ENTITY (Optional)
description: '* *Page "BUTTONPAGE04" - Entity which should be switched (ONLY light | switch | cover | input_boolean | automation | button | input_button | scene | person | script | binary_sensor | fan | climate)*'
default: []
selector: *button-entity-selector
entity27_name:
name: Button 27 name - LABEL (Optional)
description: '* *Page "BUTTONPAGE04" - Label which should be displayed (10 characters are supported)*'
default: []
selector:
text: {}
entity27_icon:
name: Button 27 - ICON (Optional)
description: '* *Page "BUTTONPAGE04" - Icon which should be displayed (Default - an icon matching the entity will be set automatically)*'
default: []
selector: *icon-selector
entity27_icon_color:
name: Button 27 - ICON COLOR (Optional)
description: '* *Page "BUTTONPAGE04" - Icon color which should be displayed when button is on*'
default: [0,128,248] #1055 Blue
selector: *color-selector
entity27_confirm:
name: Confirm execution of the button press - TRUE/FALSE (Optional)
default: false
description: '* *Page "BUTTONPAGE04" - Ask for confirmation to execute **Button27** action*'
selector:
boolean:
entity28:
name: Button 28 - ENTITY (Optional)
description: '* *Page "BUTTONPAGE04" - Entity which should be switched (ONLY light | switch | cover | input_boolean | automation | button | input_button | scene | person | script | binary_sensor | fan | climate)*'
default: []
selector: *button-entity-selector
entity28_name:
name: Button 28 name - LABEL (Optional)
description: '* *Page "BUTTONPAGE04" - Label which should be displayed (10 characters are supported)*'
default: []
selector:
text: {}
entity28_icon:
name: Button 28 - ICON (Optional)
description: '* *Page "BUTTONPAGE04" - Icon which should be displayed (Default - an icon matching the entity will be set automatically)*'
default: []
selector: *icon-selector
entity28_icon_color:
name: Button 28 - ICON COLOR (Optional)
description: '* *Page "BUTTONPAGE04" - Icon color which should be displayed when button is on*'
default: [0,128,248] #1055 Blue
selector: *color-selector
entity28_confirm:
name: Confirm execution of the button press - TRUE/FALSE (Optional)
default: false
description: '* *Page "BUTTONPAGE04" - Ask for confirmation to execute **Button28** action*'
selector:
boolean:
entity29:
name: Button 29 - ENTITY (Optional)
description: '* *Page "BUTTONPAGE04" - Entity which should be switched (ONLY light | switch | cover | input_boolean | automation | button | input_button | scene | person | script | binary_sensor | fan | climate)*'
default: []
selector: *button-entity-selector
entity29_name:
name: Button 29 name - LABEL (Optional)
description: '* *Page "BUTTONPAGE04" - Label which should be displayed (10 characters are supported)*'
default: []
selector:
text: {}
entity29_icon:
name: Button 29 - ICON (Optional)
description: '* *Page "BUTTONPAGE04" - Icon which should be displayed (Default - an icon matching the entity will be set automatically)*'
default: []
selector: *icon-selector
entity29_icon_color:
name: Button 29 - ICON COLOR (Optional)
description: '* *Page "BUTTONPAGE04" - Icon color which should be displayed when button is on*'
default: [0,128,248] #1055 Blue
selector: *color-selector
entity29_confirm:
name: Confirm execution of the button press - TRUE/FALSE (Optional)
default: false
description: '* *Page "BUTTONPAGE04" - Ask for confirmation to execute **Button29** action*'
selector:
boolean:
entity30:
name: Button 30 - ENTITY (Optional)
description: '* *Page "BUTTONPAGE04" - Entity which should be switched (ONLY light | switch | cover | input_boolean | automation | button | input_button | scene | person | script | binary_sensor | fan | climate)*'
default: []
selector: *button-entity-selector
entity30_name:
name: Button 30 name - LABEL (Optional)
description: '* *Page "BUTTONPAGE04" - Label which should be displayed (10 characters are supported)*'
default: []
selector:
text: {}
entity30_icon:
name: Button 30 - ICON (Optional)
description: '* *Page "BUTTONPAGE04" - Icon which should be displayed (Default - an icon matching the entity will be set automatically)*'
default: []
selector: *icon-selector
entity30_icon_color:
name: Button 30 - ICON COLOR (Optional)
description: '* *Page "BUTTONPAGE04" - Icon color which should be displayed when button is on*'
default: [0,128,248] #1055 Blue
selector: *color-selector
entity30_confirm:
name: Confirm execution of the button press - TRUE/FALSE (Optional)
default: false
description: '* *Page "BUTTONPAGE04" - Ask for confirmation to execute **Button30** action*'
selector:
boolean:
entity31:
name: Button 31 - ENTITY (Optional)
description: '* *Page "BUTTONPAGE04" - Entity which should be switched (ONLY light | switch | cover | input_boolean | automation | button | input_button | scene | person | script | binary_sensor | fan | climate)*'
default: []
selector: *button-entity-selector
entity31_name:
name: Button 31 name - LABEL (Optional)
description: '* *Page "BUTTONPAGE04" - Label which should be displayed (10 characters are supported)*'
default: []
selector:
text: {}
entity31_icon:
name: Button 31 - ICON (Optional)
description: '* *Page "BUTTONPAGE04" - Icon which should be displayed (Default - an icon matching the entity will be set automatically)*'
default: []
selector: *icon-selector
entity31_icon_color:
name: Button 31 - ICON COLOR (Optional)
description: '* *Page "BUTTONPAGE04" - Icon color which should be displayed when button is on*'
default: [0,128,248] #1055 Blue
selector: *color-selector
entity31_confirm:
name: Confirm execution of the button press - TRUE/FALSE (Optional)
default: false
description: '* *Page "BUTTONPAGE04" - Ask for confirmation to execute **Button31** action*'
selector:
boolean:
entity32:
name: Button 32 - ENTITY (Optional)
description: '* *Page "BUTTONPAGE04" - Entity which should be switched (ONLY light | switch | cover | input_boolean | automation | button | input_button | scene | person | script | binary_sensor | fan | climate)*'
default: []
selector: *button-entity-selector
entity32_name:
name: Button 32 name - LABEL (Optional)
description: '* *Page "BUTTONPAGE04" - Label which should be displayed (10 characters are supported)*'
default: []
selector: *icon-selector
entity32_icon:
name: Button 32 - ICON (Optional)
description: '* *Page "BUTTONPAGE04" - Icon which should be displayed (Default - an icon matching the entity will be set automatically)*'
default: []
selector:
text: {}
entity32_icon_color:
name: Button 32 - ICON COLOR (Optional)
description: '* *Page "BUTTONPAGE04" - Icon color which should be displayed when button is on*'
default: [0,128,248] #1055 Blue
selector: *color-selector
entity32_confirm:
name: Confirm execution of the button press - TRUE/FALSE (Optional)
default: false
description: '* *Page "BUTTONPAGE04" - Ask for confirmation to execute **Button32** action*'
selector:
boolean:
##### PLACEHOLDER ######################################################################
placeholder11:
name: 'Is only a placeholder without function for a better overview'
description: '# ✅ ENTITY PAGE SETTINGS ✅ '
default: 'entitypage'
selector:
select:
options:
- entitypage
##### PLACEHOLDER ######################################################################
##### ENTITY Pages Config #####
entitypages_enabled:
name: Activate entity page - TRUE/FALSE (Optional)
default: false
description: '* *"SYSTEM" - activate entity page and entity page Button on the home page* '
selector:
boolean:
home_button06_icon:
name: Entity page - ICON (Optional)
description: '* *Page "HOME" - Icon which should be displayed (Default #EDCF) *'
default: #EDCF
selector: *icon-selector
home_button06_icon_color:
name: Entity page - ICON COLOR (Optional)
description: '* *Page "HOME" - Icon color which should be displayed (default color is set)*'
default: [200,204,200] #52857 Grey super light
selector: *color-selector
##### ENTITY Page Labels #####
##### PLACEHOLDER ######################################################################
placeholder12:
name: 'Is only a placeholder without function for a better overview'
description: '# ✅ ENTITY PAGE 01 ✅ '
default: 'entitypage01'
selector:
select:
options:
- entitypage01
##### PLACEHOLDER ######################################################################
entity_page01_label:
name: Entity page 01 name - LABEL (Optional)
description: '* *Page "ENTITYPAGE01" - Label which should be displayed*'
default: []
selector:
text: {}
entity_page02_label:
name: Entity page 02 name - LABEL (Optional)
description: '* *Page "ENTITYPAGE02" - Label which should be displayed*'
default: []
selector:
text: {}
entity_page03_label:
name: Entity page 03 name - LABEL (Optional)
description: '* *Page "ENTITYPAGE03" - Label which should be displayed*'
default: []
selector:
text: {}
entity_page04_label:
name: Entity page 04 name - LABEL (Optional)
description: '* *Page "ENTITYPAGE04" - Label which should be displayed*'
default: []
selector:
text: {}
##### ENTITIES #####
entities_entity01:
name: Entity 01 - ENTITY (Optional)
description: '* *Page "ENTITYPAGE01" - entity which should be displayed*'
default: []
selector:
entity:
entities_entity01_name:
name: Entity 01 name - LABEL (Optional)
description: '* *Page "ENTITYPAGE01" - Label which should be displayed (replaces the **"friendly_name"** of the entity)*'
default: []
selector:
text: {}
entities_entity01_icon:
name: Entity 01 - ICON (Optional)
description: '* *Page "BUTTONPAGE01" - Icon which should be displayed (if not set, no icon is shown)*'
default: []
selector: *icon-selector
entities_entity02:
name: Entity 02 - ENTITY (Optional)
description: '* *Page "ENTITYPAGE01" - entity which should be displayed*'
default: []
selector:
entity:
entities_entity02_name:
name: Entity 02 name - LABEL (Optional)
description: '* *Page "ENTITYPAGE01" - Label which should be displayed (replaces the **"friendly_name"** of the entity)*'
default: []
selector:
text: {}
entities_entity02_icon:
name: Entity 02 - ICON (Optional)
description: '* *Page "BUTTONPAGE01" - Icon which should be displayed (if not set, no icon is shown)*'
default: []
selector: *icon-selector
entities_entity03:
name: Entity 03 - ENTITY (Optional)
description: '* *Page "ENTITYPAGE01" - entity which should be displayed*'
default: []
selector:
entity:
entities_entity03_name:
name: Entity 03 name - LABEL (Optional)
description: '* *Page "ENTITYPAGE01" - Label which should be displayed (replaces the **"friendly_name"** of the entity)*'
default: []
selector:
text: {}
entities_entity03_icon:
name: Entity 03 - ICON (Optional)
description: '* *Page "BUTTONPAGE01" - Icon which should be displayed (if not set, no icon is shown)*'
default: []
selector: *icon-selector
entities_entity04:
name: Entity 04 - ENTITY (Optional)
description: '* *Page "ENTITYPAGE01" - entity which should be displayed*'
default: []
selector:
entity:
entities_entity04_name:
name: Entity 04 name - LABEL (Optional)
description: '* *Page "ENTITYPAGE01" - Label which should be displayed (replaces the **"friendly_name"** of the entity)*'
default: []
selector:
text: {}
entities_entity04_icon:
name: Entity 04 - ICON (Optional)
description: '* *Page "BUTTONPAGE01" - Icon which should be displayed (if not set, no icon is shown)*'
default: []
selector: *icon-selector
entities_entity05:
name: Entity 05 - ENTITY (Optional)
description: '* *Page "ENTITYPAGE01" - entity which should be displayed*'
default: []
selector:
entity:
entities_entity05_name:
name: Entity 05 name - LABEL (Optional)
description: '* *Page "ENTITYPAGE01" - Label which should be displayed (replaces the **"friendly_name"** of the entity)*'
default: []
selector:
text: {}
entities_entity05_icon:
name: Entity 05 - ICON (Optional)
description: '* *Page "BUTTONPAGE01" - Icon which should be displayed (if not set, no icon is shown)*'
default: []
selector: *icon-selector
entities_entity06:
name: Entity 06 - ENTITY (Optional)
description: '* *Page "ENTITYPAGE01" - entity which should be displayed*'
default: []
selector:
entity:
entities_entity06_name:
name: Entity 06 name - LABEL (Optional)
description: '* *Page "ENTITYPAGE01" - Label which should be displayed (replaces the **"friendly_name"** of the entity)*'
default: []
selector:
text: {}
entities_entity06_icon:
name: Entity 06 - ICON (Optional)
description: '* *Page "BUTTONPAGE01" - Icon which should be displayed (if not set, no icon is shown)*'
default: []
selector: *icon-selector
entities_entity07:
name: Entity 07 - ENTITY (Optional)
description: '* *Page "ENTITYPAGE01" - entity which should be displayed*'
default: []
selector:
entity:
entities_entity07_name:
name: Entity 07 name - LABEL (Optional)
description: '* *Page "ENTITYPAGE01" - Label which should be displayed (replaces the **"friendly_name"** of the entity)*'
default: []
selector:
text: {}
entities_entity07_icon:
name: Entity 07 - ICON (Optional)
description: '* *Page "BUTTONPAGE01" - Icon which should be displayed (if not set, no icon is shown)*'
default: []
selector: *icon-selector
entities_entity08:
name: Entity 08 - ENTITY (Optional)
description: '* *Page "ENTITYPAGE01" - entity which should be displayed*'
default: []
selector:
entity:
entities_entity08_name:
name: Entity 08 name - LABEL (Optional)
description: '* *Page "ENTITYPAGE01" - Label which should be displayed (replaces the **"friendly_name"** of the entity)*'
default: []
selector:
text: {}
entities_entity08_icon:
name: Entity 08 - ICON (Optional)
description: '* *Page "BUTTONPAGE01" - Icon which should be displayed (if not set, no icon is shown)*'
default: []
selector: *icon-selector
##### PLACEHOLDER ######################################################################
placeholder13:
name: 'Is only a placeholder without function for a better overview'
description: '# ✅ ENTITY PAGE 02 ✅ '
default: 'entitypage02'
selector:
select:
options:
- entitypage02
##### PLACEHOLDER ######################################################################
entities_entity09:
name: Entity 09 - ENTITY (Optional)
description: '* *Page "ENTITYPAGE02" - entity which should be displayed*'
default: []
selector:
entity:
entities_entity09_name:
name: Entity 09 name - LABEL (Optional)
description: '* *Page "ENTITYPAGE02" - Label which should be displayed (replaces the **"friendly_name"** of the entity)*'
default: []
selector:
text: {}
entities_entity09_icon:
name: Entity 09 - ICON (Optional)
description: '* *Page "BUTTONPAGE02" - Icon which should be displayed (if not set, no icon is shown)*'
default: []
selector: *icon-selector
entities_entity10:
name: Entity 10 - ENTITY (Optional)
description: '* *Page "ENTITYPAGE02" - entity which should be displayed*'
default: []
selector:
entity:
entities_entity10_name:
name: Entity 10 name - LABEL (Optional)
description: '* *Page "ENTITYPAGE02" - Label which should be displayed (replaces the **"friendly_name"** of the entity)*'
default: []
selector:
text: {}
entities_entity10_icon:
name: Entity 10 - ICON (Optional)
description: '* *Page "BUTTONPAGE02" - Icon which should be displayed (if not set, no icon is shown)*'
default: []
selector: *icon-selector
entities_entity11:
name: Entity 11 - ENTITY (Optional)
description: '* *Page "ENTITYPAGE02" - entity which should be displayed*'
default: []
selector:
entity:
entities_entity11_name:
name: Entity 11 name - LABEL (Optional)
description: '* *Page "ENTITYPAGE02" - Label which should be displayed (replaces the **"friendly_name"** of the entity)*'
default: []
selector:
text: {}
entities_entity11_icon:
name: Entity 11 - ICON (Optional)
description: '* *Page "BUTTONPAGE02" - Icon which should be displayed (if not set, no icon is shown)*'
default: []
selector: *icon-selector
entities_entity12:
name: Entity 12 - ENTITY (Optional)
description: '* *Page "ENTITYPAGE02" - entity which should be displayed*'
default: []
selector:
entity:
entities_entity12_name:
name: Entity 12 name - LABEL (Optional)
description: '* *Page "ENTITYPAGE02" - Label which should be displayed (replaces the **"friendly_name"** of the entity)*'
default: []
selector:
text: {}
entities_entity12_icon:
name: Entity 12 - ICON (Optional)
description: '* *Page "BUTTONPAGE02" - Icon which should be displayed (if not set, no icon is shown)*'
default: []
selector: *icon-selector
entities_entity13:
name: Entity 13 - ENTITY (Optional)
description: '* *Page "ENTITYPAGE02" - entity which should be displayed*'
default: []
selector:
entity:
entities_entity13_name:
name: Entity 13 name - LABEL (Optional)
description: '* *Page "ENTITYPAGE02" - Label which should be displayed (replaces the **"friendly_name"** of the entity)*'
default: []
selector:
text: {}
entities_entity13_icon:
name: Entity 13 - ICON (Optional)
description: '* *Page "BUTTONPAGE02" - Icon which should be displayed (if not set, no icon is shown)*'
default: []
selector: *icon-selector
entities_entity14:
name: Entity 14 - ENTITY (Optional)
description: '* *Page "ENTITYPAGE02" - entity which should be displayed*'
default: []
selector:
entity:
entities_entity14_name:
name: Entity 14 name - LABEL (Optional)
description: '* *Page "ENTITYPAGE02" - Label which should be displayed (replaces the **"friendly_name"** of the entity)*'
default: []
selector:
text: {}
entities_entity14_icon:
name: Entity 14 - ICON (Optional)
description: '* *Page "BUTTONPAGE02" - Icon which should be displayed (if not set, no icon is shown)*'
default: []
selector: *icon-selector
entities_entity15:
name: Entity 15 - ENTITY (Optional)
description: '* *Page "ENTITYPAGE02" - entity which should be displayed*'
default: []
selector:
entity:
entities_entity15_name:
name: Entity 15 name - LABEL (Optional)
description: '* *Page "ENTITYPAGE02" - Label which should be displayed (replaces the **"friendly_name"** of the entity)*'
default: []
selector:
text: {}
entities_entity15_icon:
name: Entity 15 - ICON (Optional)
description: '* *Page "BUTTONPAGE02" - Icon which should be displayed (if not set, no icon is shown)*'
default: []
selector: *icon-selector
entities_entity16:
name: Entity 16 - ENTITY (Optional)
description: '* *Page "ENTITYPAGE02" - entity which should be displayed*'
default: []
selector:
entity:
entities_entity16_name:
name: Entity 16 name - LABEL (Optional)
description: '* *Page "ENTITYPAGE02" - Label which should be displayed (replaces the **"friendly_name"** of the entity)*'
default: []
selector:
text: {}
entities_entity16_icon:
name: Entity 16 - ICON (Optional)
description: '* *Page "BUTTONPAGE02" - Icon which should be displayed (if not set, no icon is shown)*'
default: []
selector: *icon-selector
##### PLACEHOLDER ######################################################################
placeholder14:
name: 'Is only a placeholder without function for a better overview'
description: '# ✅ ENTITY PAGE 03 ✅ '
default: 'entitypage03'
selector:
select:
options:
- entitypage03
##### PLACEHOLDER ######################################################################
entities_entity17:
name: Entity 17 - ENTITY (Optional)
description: '* *Page "ENTITYPAGE03" - entity which should be displayed*'
default: []
selector:
entity:
entities_entity17_name:
name: Entity 17 name - LABEL (Optional)
description: '* *Page "ENTITYPAGE03" - Label which should be displayed (replaces the **"friendly_name"** of the entity)*'
default: []
selector:
text: {}
entities_entity17_icon:
name: Entity 17 - ICON (Optional)
description: '* *Page "BUTTONPAGE03" - Icon which should be displayed (if not set, no icon is shown)*'
default: []
selector: *icon-selector
entities_entity18:
name: Entity 18 - ENTITY (Optional)
description: '* *Page "ENTITYPAGE03" - entity which should be displayed*'
default: []
selector:
entity:
entities_entity18_name:
name: Entity 18 name - LABEL (Optional)
description: '* *Page "ENTITYPAGE03" - Label which should be displayed (replaces the **"friendly_name"** of the entity)*'
default: []
selector:
text: {}
entities_entity18_icon:
name: Entity 18 - ICON (Optional)
description: '* *Page "BUTTONPAGE03" - Icon which should be displayed (if not set, no icon is shown)*'
default: []
selector: *icon-selector
entities_entity19:
name: Entity 19 - ENTITY (Optional)
description: '* *Page "ENTITYPAGE03" - entity which should be displayed*'
default: []
selector:
entity:
entities_entity19_name:
name: Entity 19 name - LABEL (Optional)
description: '* *Page "ENTITYPAGE03" - Label which should be displayed (replaces the **"friendly_name"** of the entity)*'
default: []
selector:
text: {}
entities_entity19_icon:
name: Entity 19 - ICON (Optional)
description: '* *Page "BUTTONPAGE03" - Icon which should be displayed (if not set, no icon is shown)*'
default: []
selector: *icon-selector
entities_entity20:
name: Entity 20 - ENTITY (Optional)
description: '* *Page "ENTITYPAGE03" - entity which should be displayed*'
default: []
selector:
entity:
entities_entity20_name:
name: Entity 20 name - LABEL (Optional)
description: '* *Page "ENTITYPAGE03" - Label which should be displayed (replaces the **"friendly_name"** of the entity)*'
default: []
selector:
text: {}
entities_entity20_icon:
name: Entity 20 - ICON (Optional)
description: '* *Page "BUTTONPAGE03" - Icon which should be displayed (if not set, no icon is shown)*'
default: []
selector: *icon-selector
entities_entity21:
name: Entity 21 - ENTITY (Optional)
description: '* *Page "ENTITYPAGE03" - entity which should be displayed*'
default: []
selector:
entity:
entities_entity21_name:
name: Entity 21 name - LABEL (Optional)
description: '* *Page "ENTITYPAGE03" - Label which should be displayed (replaces the **"friendly_name"** of the entity)*'
default: []
selector:
text: {}
entities_entity21_icon:
name: Entity 21 - ICON (Optional)
description: '* *Page "BUTTONPAGE03" - Icon which should be displayed (if not set, no icon is shown)*'
default: []
selector: *icon-selector
entities_entity22:
name: Entity 22 - ENTITY (Optional)
description: '* *Page "ENTITYPAGE03" - entity which should be displayed*'
default: []
selector:
entity:
entities_entity22_name:
name: Entity 22 name - LABEL (Optional)
description: '* *Page "ENTITYPAGE03" - Label which should be displayed (replaces the **"friendly_name"** of the entity)*'
default: []
selector:
text: {}
entities_entity22_icon:
name: Entity 22 - ICON (Optional)
description: '* *Page "BUTTONPAGE03" - Icon which should be displayed (if not set, no icon is shown)*'
default: []
selector: *icon-selector
entities_entity23:
name: Entity 23 - ENTITY (Optional)
description: '* *Page "ENTITYPAGE03" - entity which should be displayed*'
default: []
selector:
entity:
entities_entity23_name:
name: Entity 23 name - LABEL (Optional)
description: '* *Page "ENTITYPAGE03" - Label which should be displayed (replaces the **"friendly_name"** of the entity)*'
default: []
selector:
text: {}
entities_entity23_icon:
name: Entity 23 - ICON (Optional)
description: '* *Page "BUTTONPAGE03" - Icon which should be displayed (if not set, no icon is shown)*'
default: []
selector: *icon-selector
entities_entity24:
name: Entity 24 - ENTITY (Optional)
description: '* *Page "ENTITYPAGE03" - entity which should be displayed*'
default: []
selector:
entity:
entities_entity24_name:
name: Entity 24 name - LABEL (Optional)
description: '* *Page "ENTITYPAGE03" - Label which should be displayed (replaces the **"friendly_name"** of the entity)*'
default: []
selector:
text: {}
entities_entity24_icon:
name: Entity 24 - ICON (Optional)
description: '* *Page "BUTTONPAGE03" - Icon which should be displayed (if not set, no icon is shown)*'
default: []
selector: *icon-selector
##### PLACEHOLDER ######################################################################
placeholder15:
name: 'Is only a placeholder without function for a better overview'
description: '# ✅ ENTITY PAGE 04 ✅ '
default: 'entitypage04'
selector:
select:
options:
- entitypage04
##### PLACEHOLDER ######################################################################
entities_entity25:
name: Entity 25 - ENTITY (Optional)
description: '* *Page "ENTITYPAGE04" - entity which should be displayed*'
default: []
selector:
entity:
entities_entity25_name:
name: Entity 25 name - LABEL (Optional)
description: '* *Page "ENTITYPAGE04" - Label which should be displayed (replaces the **"friendly_name"** of the entity)*'
default: []
selector:
text: {}
entities_entity25_icon:
name: Entity 25 - ICON (Optional)
description: '* *Page "BUTTONPAGE04" - Icon which should be displayed (if not set, no icon is shown)*'
default: []
selector: *icon-selector
entities_entity26:
name: Entity 26 - ENTITY (Optional)
description: '* *Page "ENTITYPAGE04" - entity which should be displayed*'
default: []
selector:
entity:
entities_entity26_name:
name: Entity 26 name - LABEL (Optional)
description: '* *Page "ENTITYPAGE04" - Label which should be displayed (replaces the **"friendly_name"** of the entity)*'
default: []
selector:
text: {}
entities_entity26_icon:
name: Entity 26 - ICON (Optional)
description: '* *Page "BUTTONPAGE04" - Icon which should be displayed (if not set, no icon is shown)*'
default: []
selector: *icon-selector
entities_entity27:
name: Entity 27 - ENTITY (Optional)
description: '* *Page "ENTITYPAGE04" - entity which should be displayed*'
default: []
selector:
entity:
entities_entity27_name:
name: Entity 27 name - LABEL (Optional)
description: '* *Page "ENTITYPAGE04" - Label which should be displayed (replaces the **"friendly_name"** of the entity)*'
default: []
selector:
text: {}
entities_entity27_icon:
name: Entity 27 - ICON (Optional)
description: '* *Page "BUTTONPAGE04" - Icon which should be displayed (if not set, no icon is shown)*'
default: []
selector: *icon-selector
entities_entity28:
name: Entity 28 - ENTITY (Optional)
description: '* *Page "ENTITYPAGE04" - entity which should be displayed*'
default: []
selector:
entity:
entities_entity28_name:
name: Entity 28 name - LABEL (Optional)
description: '* *Page "ENTITYPAGE04" - Label which should be displayed (replaces the **"friendly_name"** of the entity)*'
default: []
selector:
text: {}
entities_entity28_icon:
name: Entity 28 - ICON (Optional)
description: '* *Page "BUTTONPAGE04" - Icon which should be displayed (if not set, no icon is shown)*'
default: []
selector: *icon-selector
entities_entity29:
name: Entity 29 - ENTITY (Optional)
description: '* *Page "ENTITYPAGE04" - entity which should be displayed*'
default: []
selector:
entity:
entities_entity29_name:
name: Entity 29 name - LABEL (Optional)
description: '* *Page "ENTITYPAGE04" - Label which should be displayed (replaces the **"friendly_name"** of the entity)*'
default: []
selector:
text: {}
entities_entity29_icon:
name: Entity 29 - ICON (Optional)
description: '* *Page "BUTTONPAGE04" - Icon which should be displayed (if not set, no icon is shown)*'
default: []
selector: *icon-selector
entities_entity30:
name: Entity 30 - ENTITY (Optional)
description: '* *Page "ENTITYPAGE04" - entity which should be displayed*'
default: []
selector:
entity:
entities_entity30_name:
name: Entity 30 name - LABEL (Optional)
description: '* *Page "ENTITYPAGE04" - Label which should be displayed (replaces the **"friendly_name"** of the entity)*'
default: []
selector:
text: {}
entities_entity30_icon:
name: Entity 30 - ICON (Optional)
description: '* *Page "BUTTONPAGE04" - Icon which should be displayed (if not set, no icon is shown)*'
default: []
selector: *icon-selector
entities_entity31:
name: Entity 31 - ENTITY (Optional)
description: '* *Page "ENTITYPAGE04" - entity which should be displayed*'
default: []
selector:
entity:
entities_entity31_name:
name: Entity 31 name - LABEL (Optional)
description: '* *Page "ENTITYPAGE04" - Label which should be displayed (replaces the **"friendly_name"** of the entity)*'
default: []
selector:
text: {}
entities_entity31_icon:
name: Entity 31 - ICON (Optional)
description: '* *Page "BUTTONPAGE04" - Icon which should be displayed (if not set, no icon is shown)*'
default: []
selector: *icon-selector
entities_entity32:
name: Entity 32 - ENTITY (Optional)
description: '* *Page "ENTITYPAGE04" - entity which should be displayed*'
default: []
selector:
entity:
entities_entity32_name:
name: Entity 32 name - LABEL (Optional)
description: '* *Page "ENTITYPAGE04" - Label which should be displayed (replaces the **"friendly_name"** of the entity)*'
default: []
selector:
text: {}
entities_entity32_icon:
name: Entity 32 - ICON (Optional)
description: '* *Page "BUTTONPAGE04" - Icon which should be displayed (if not set, no icon is shown)*'
default: []
selector: *icon-selector
##### PLACEHOLDER ######################################################################
placeholder16:
name: 'Is only a placeholder without function for a better overview'
description: '# ✅ CUSTOM CONFIGURATION ✅ '
default: 'configuration'
selector:
select:
options:
- configuration
##### PLACEHOLDER ######################################################################
##### General Custom Design #####
home_button04_icon:
name: Notification - ICON (Optional)
description: '* *Page "HOME" - Icon which should be displayed (Default #E1ED) *'
default: #E1ED
selector: *icon-selector
home_button04_icon_color01:
name: Notification read - ICON COLOR (Optional)
description: '* *Page "HOME" - Icon color which should be displayed (default color is set)*'
default: [200,204,200] #52857 Grey super light #Grey super light
selector: *color-selector
home_button04_icon_color02:
name: Notification unread - ICON COLOR (Optional)
description: '* *Page "HOME" - Icon color which should be displayed (default color is set)*'
default: [248,0,0] #63488 Red
selector: *color-selector
relay01_icon:
name: Relay 01 - ICON (Optional)
description: '* *Page "HOME" - Icon which should be displayed (Default #E3A5) *'
default: #E3A5
selector: *icon-selector
relay01_icon_color:
name: Relay 01 - ICON COLOR (Optional)
description: '* *Page "HOME" - Icon color which should be displayed (default color is set)*'
default: [128,128,128] #33808 Grey light
selector: *color-selector
relay02_icon:
name: Relay 02 - ICON (Optional)
description: '* *Page "HOME" - Icon which should be displayed (Default #E3A8) *'
default: #E3A8
selector: *icon-selector
relay02_icon_color:
name: Relay - ICON COLOR (Optional)
description: '* *Page "HOME" - Icon color which should be displayed (default color is set)*'
default: [128,128,128] #33808 Grey light
selector: *color-selector
thermostat_icon:
name: Thermostat - ICON (Optional)
description: '* *Page "HOME" - Icon which should be displayed (Default #E50E) *'
default: #E50E
selector: *icon-selector
heat_icon:
name: Thermostat - ICON (Optional)
description: '* *Page "HOME" - Icon which should be displayed (Default #E50F) *'
default: #E50F
selector: *icon-selector
thermostat_icon_color:
name: Thermostat / Heat - ICON COLOR (Optional)
description: '* *Page "HOME" - Icon color which should be displayed (default color is set)*'
default: [128,128,128] #33808 Grey light
selector: *color-selector
time_label_color:
name: Time - LABEL COLOR (Optional)
description: '* *Page "HOME" - Label color which should be displayed (default color is set)*'
default: [255,255,255] #65535 White
selector: *color-selector
date_label_color:
name: Date - LABEL COLOR (Optional)
description: '* *Page "HOME" - Label color which should be displayed (default color is set)*'
default: [255,255,255] #65535 White
selector: *color-selector
###### Muss noch Raus ###############################################################################################################################################################################
hotwatertemp:
name: Hot Water Temperature Sensor (Optional)
description: '* *Choose your hot water sensor*'
default: []
selector:
entity:
domain:
- sensor
tft_path:
name: Nextion TFT File Folder (Optional)
description: '* *TFT Path where the Nextion TFT File is stored. Attention! The **"Folder-Watcher"** must also be configured in the configuration.yaml. **Only necessary for manual upload of TFT file in ESPHome Advaced mode.** See HowTo*'
default: []
selector:
text: {}
sync_value_ha:
name: Synchronization of all values (Optional)
description: '* *Synchronization of values between HA and NSPanel for Lightsetting and Coversetting Page -> Maybe causes number jumps*'
default: 'select_no'
selector: &sync-selector-bool
select:
options:
- label: 'No'
value: select_no
- label: 'Yes'
value: select_yes
sync_slider_ha:
name: Synchronization of all Sliders (Optional)
description: '* *Synchronization of sliders between HA and NSPanel for Lightsetting and Coversetting Page -> Maybe causes flickering on the Slider*'
default: 'select_no'
selector: *sync-selector-bool
mode: parallel
max: 5000
trace:
stored_traces: 10
#############################################################
##### CLOSE - INPUT #####
#############################################################
#############################################################
##### START - Variables #####
#############################################################
trigger_variables:
nspanel_name: !input "nspanel_name"
last_click: "sensor.{{ nspanel_name }}_last_click"
last_click_lightsettings: "sensor.{{ nspanel_name }}_last_click_lightsettings"
last_click_coversettings: "sensor.{{ nspanel_name }}_last_click_coversettings"
last_click_climatesettings: "sensor.{{ nspanel_name }}_last_click_climatesettings"
left_button: "binary_sensor.{{ nspanel_name }}_left_button"
right_button: "binary_sensor.{{ nspanel_name }}_right_button"
weather_forcast_button: "binary_sensor.{{ nspanel_name }}_weather_forcast"
nextion_inited_trigger: "switch.{{ nspanel_name }}_nextion_inited"
# current_page: "sensor.{{ nspanel_name }}_current_page"
current_page: "sensor.{{ nspanel_name }}_currentpage"
hotwatercharge: !input "hotwatercharge"
display_target_temperature: "sensor.{{ nspanel_name }}_display_target_temperature"
relay01_entity: "switch.{{ nspanel_name }}_relay_1"
relay02_entity: "switch.{{ nspanel_name }}_relay_2"
nspaneltemp: "sensor.{{ nspanel_name }}_temperature"
settings_entity: "sensor.{{ nspanel_name }}_settings_entity"
reboot_button: "button.{{ nspanel_name }}_restart"
##### notification Trigger #####
notification_unread: "switch.{{ nspanel_name }}_notification_unread"
notification_text: "sensor.{{ nspanel_name }}_notification_text"
notification_label: "sensor.{{ nspanel_name }}_notification_label"
##### WEATHER Trigger #####
weather: !input "weather"
weather_entity: !input "weather_entity"
accuweather_name: '{{ weather_entity |replace("weather.","") }}'
variables:
##### GENERAL #####
blueprint_version: "3.2.1"
language: !input "language"
date_format: !input "date_format"
time_format: !input "time_format"
time: "{{ as_timestamp(now()) | timestamp_custom(time_format) }}"
meridiem: "{{ as_timestamp(now()) | timestamp_custom('%p') if time_format == '%-I:%M' else '' }}"
notification_sound: "switch.{{ nspanel_name }}_notification_sound"
confirmation_message: "switch.{{ nspanel_name }}_confirmation_message"
##### PUSH TO NEXTION DISPLAY #####
command_text_printf: "esphome.{{ nspanel_name }}_send_command_text_printf"
command_value: "esphome.{{ nspanel_name }}_send_command_value"
command_printf: "esphome.{{ nspanel_name }}_send_command_printf"
command_font_color: "esphome.{{ nspanel_name }}_send_command_font_color"
command_background_color: "esphome.{{ nspanel_name }}_send_command_background_color"
command_thermostat_cycle: "esphome.{{ nspanel_name }}_send_thermostat_cycle_state"
command_notification_show: "esphome.{{ nspanel_name }}_notification_show"
command_notification_clear: "esphome.{{ nspanel_name }}_notification_clear"
command_play_rtttl: "esphome.{{ nspanel_name }}_play_rtttl"
command_set_settings_entity: "esphome.{{ nspanel_name }}_set_settings_entity"
command_show_all: "esphome.{{ nspanel_name }}_send_command_show_all"
###### SYNC SETTINGS #####
delay_boot: !input "delay"
delay_value: !input "delay"
delay_jump_page: !input "delay"
sync_slider_ha: !input "sync_slider_ha"
sync_value_ha: !input "sync_value_ha"
climate_optimistic: !input "climate_optimistic"
##### TFT UPLOAD #####
tft_upload: "esphome.{{ nspanel_name }}_upload_tft"
tft_path: !input "tft_path"
##### GENERAL ENTITYS #####
hotwatertemp: !input "hotwatertemp"
outdoortemp: !input "outdoortemp"
indoortemp: !input "indoortemp"
climate: !input "climate"
qrcode_label: !input "qrcode_label"
qrcode_value: !input "qrcode_value"
qrcode_enabled: !input "qrcode_enabled"
relay_1_local_fallback: !input "relay_1_local_fallback"
relay_2_local_fallback: !input "relay_2_local_fallback"
#### HARDWARE BUTTONS #####
left_button_entity: !input "left_button_entity"
left_button_name: !input "left_button_name"
right_button_entity: !input "right_button_entity"
right_button_name: !input "right_button_name"
left_button_hold_select: !input "left_button_hold_select"
right_button_hold_select: !input "right_button_hold_select"
##### NEXTION PIC MAPPING #####
# button_light_off: "62"
# button_light_on: "63"
# button_switch_off: "64"
# button_switch_on: "65"
# button_cover_off: "66"
# button_cover_on: "67"
# button_automation_off: "107"
# button_automation_on: "108"
# button_button_off: "109"
# button_button_on: "110"
# button_scene_off: "113"
# button_scene_on: "114"
# button_person_off: "111"
# button_person_on: "112"
# button_script_off: "107"
# button_script_on: "108"
# button_binary_sensor_off: '107'
# button_binary_sensor_on: '108'
# button_fan_off: "121"
# button_fan_on: "122"
# button_climate_off: "121"
# button_climate_on: "122"
# cover_pic_closed: "78"
# cover_pic_open: "79"
# light_pic_off: "96"
# light_pic_on: "97"
# # hotwater_pic_off: "60"
# hotwater_pic_on: "61"
# flame_pic_on: "57"
# # flame_pic_off: "60"
# top_menu_blank: "60"
weather_sunny: "2"
weather_cloudy: "3"
weather_rainy: "4"
weather_pouring: "5"
weather_snowy: "6"
weather_hail: "7"
weather_snowy_rainy: "7"
weather_fog: "8"
weather_windy: "9"
weather_windy_variant: "9"
weather_lightning: "10"
weather_partlycloudy_day: "11"
weather_partlycloudy_night: "12"
weather_lightning_rainy_day: "13"
weather_lightning_rainy_night: "14"
weather_execptional_day: "13"
weather_execptional_night: "14"
weather_clear_night: "15"
hotw_bt_blank: "79"
hotw_bt_off: "80"
hotw_bt_on: "81"
##### CHANGE ME START ##########################################################################################################
###### GENERAL - NEXTION COLOR MAPPING #####
color_01: "65535" #White rgb(255,255,255)
color_02: "10597" #Grey dark rgb(40,44,40)
color_03: "33808" #Grey light rgb(128,128,128)
color_04: "1055" #Blue rgb(0,128,248)
color_05: "63488" #Red rgb(248,0,0)
color_06: "52857" #Grey super light rgb(200,204,200)
color_07: "65472" #Yellow rgb(248,248,0)
###### "GENERAL" NEXTION FONT ICON MAPPING #####
blank_icon: "\U0000FFFF" #blank macbook bug
battery_icon: "\U0000F2A1" #F2A1
battery_icon_color: "52857" #Grey super light
###### "BUTTON" NEXTION FONT ICON MAPPING #####
button_icon_unknown: "\U00000E27" #E027
button_icon_light: "\U0000E334" #E334
button_icon_switch: "\U0000E97D" #E97D
button_icon_input_boolan: "\U0000EA19" #EA19
button_icon_cover: "\U0000E0AB" #E0AB
button_icon_automation: "\U0000F6FC" #F6FC
button_icon_button: "\U0000ED76" #ED76
button_icon_input_button: "\U0000F2A7" #F2A7
button_icon_scene: "\U0000EE0B" #EE0B
button_icon_script: "\U0000F45D" #F45D
button_icon_person: "\U0000E003" #E003
button_icon_binary_sensor: "\U0000E7C0" #E7C0
button_icon_fan: "\U0000E20F" #E20F
button_icon_climate: "\U0000E392" #E392
###### "Weather" NEXTION FONT ICON MAPPING #####
weather_icon_rain: "\U0000E595" #E595
weather_icon_sun: "\U0000E5A7" #E5A7
weather_icon_protect: "\U0000F05C" #F05C
weather_icon_lightning: "\U0000E592" #E592
weather_icon_wind: "\U0000E59C" #E59C
##### CHANGE ME END ##########################################################################################################
### Home Page - Feature Buttons ###
home_button01_icon: ""
home_button01_icon_color01: ""
home_button02_icon: ""
home_button02_icon_color02: ""
home_button03_icon: ""
home_button03_icon_color03: ""
home_button04_icon: !input "home_button04_icon" #E1ED
home_button04_icon_color01_value: !input "home_button04_icon_color01"
home_button04_icon_color01: '{% set rgb = home_button04_icon_color01_value %}{{ rgb if is_number(rgb) else ((rgb[0] //(2**3)) *(2**11))+((rgb[1] //(2**2)) *(2**5))+(rgb[2] //(2**3)) }}'
home_button04_icon_color02_value: !input "home_button04_icon_color02"
home_button04_icon_color02: '{% set rgb = home_button04_icon_color02_value %}{{ rgb if is_number(rgb) else ((rgb[0] //(2**3)) *(2**11))+((rgb[1] //(2**2)) *(2**5))+(rgb[2] //(2**3)) }}'
home_button05_icon: !input "home_button05_icon" #E432
home_button05_icon_color_value: !input "home_button05_icon_color"
home_button05_icon_color: '{% set rgb = home_button05_icon_color_value %}{{ rgb if is_number(rgb) else ((rgb[0] //(2**3)) *(2**11))+((rgb[1] //(2**2)) *(2**5))+(rgb[2] //(2**3)) }}'
home_button06_icon: !input "home_button06_icon" #EDCF
home_button06_icon_color_value: !input "home_button06_icon_color"
home_button06_icon_color: '{% set rgb = home_button06_icon_color_value %}{{ rgb if is_number(rgb) else ((rgb[0] //(2**3)) *(2**11))+((rgb[1] //(2**2)) *(2**5))+(rgb[2] //(2**3)) }}'
home_button07_icon: ""
home_button07_icon_color: ""
### Home Page - Value 01 - 03
home_value01: !input "home_value01"
home_value01_icon: !input "home_value01_icon"
home_value01_icon_color_value: !input "home_value01_icon_color"
home_value01_icon_color: '{% set rgb = home_value01_icon_color_value %}{{ rgb if is_number(rgb) else ((rgb[0] //(2**3)) *(2**11))+((rgb[1] //(2**2)) *(2**5))+(rgb[2] //(2**3)) }}'
home_value01_label_color_value: !input "home_value01_label_color"
home_value01_label_color: '{% set rgb = home_value01_label_color_value %}{{ rgb if is_number(rgb) else ((rgb[0] //(2**3)) *(2**11))+((rgb[1] //(2**2)) *(2**5))+(rgb[2] //(2**3)) }}'
home_value02: !input "home_value02"
home_value02_icon: !input "home_value02_icon"
home_value02_icon_color_value: !input "home_value02_icon_color"
home_value02_icon_color: '{% set rgb = home_value02_icon_color_value %}{{ rgb if is_number(rgb) else ((rgb[0] //(2**3)) *(2**11))+((rgb[1] //(2**2)) *(2**5))+(rgb[2] //(2**3)) }}'
home_value02_label_color_value: !input "home_value02_label_color"
home_value02_label_color: '{% set rgb = home_value02_label_color_value %}{{ rgb if is_number(rgb) else ((rgb[0] //(2**3)) *(2**11))+((rgb[1] //(2**2)) *(2**5))+(rgb[2] //(2**3)) }}'
home_value03: !input "home_value03"
home_value03_icon: !input "home_value03_icon"
home_value03_icon_color_value: !input "home_value03_icon_color"
home_value03_icon_color: '{% set rgb = home_value03_icon_color_value %}{{ rgb if is_number(rgb) else ((rgb[0] //(2**3)) *(2**11))+((rgb[1] //(2**2)) *(2**5))+(rgb[2] //(2**3)) }}'
home_value03_label_color_value: !input "home_value03_label_color"
home_value03_label_color: '{% set rgb = home_value03_label_color_value %}{{ rgb if is_number(rgb) else ((rgb[0] //(2**3)) *(2**11))+((rgb[1] //(2**2)) *(2**5))+(rgb[2] //(2**3)) }}'
### Home Page - Chips ###
chip01: !input "chip01"
chip01_icon: !input "chip01_icon"
chip01_icon_color_value: !input "chip01_icon_color"
chip01_icon_color: '{% set rgb = chip01_icon_color_value %}{{ rgb if is_number(rgb) else ((rgb[0] //(2**3)) *(2**11))+((rgb[1] //(2**2)) *(2**5))+(rgb[2] //(2**3)) }}'
chip02: !input "chip02"
chip02_icon: !input "chip02_icon"
chip02_icon_color_value: !input "chip02_icon_color"
chip02_icon_color: '{% set rgb = chip02_icon_color_value %}{{ rgb if is_number(rgb) else ((rgb[0] //(2**3)) *(2**11))+((rgb[1] //(2**2)) *(2**5))+(rgb[2] //(2**3)) }}'
chip03: !input "chip03"
chip03_icon: !input "chip03_icon"
chip03_icon_color_value: !input "chip03_icon_color"
chip03_icon_color: '{% set rgb = chip03_icon_color_value %}{{ rgb if is_number(rgb) else ((rgb[0] //(2**3)) *(2**11))+((rgb[1] //(2**2)) *(2**5))+(rgb[2] //(2**3)) }}'
chip04: !input "chip04"
chip04_icon: !input "chip04_icon"
chip04_icon_color_value: !input "chip04_icon_color"
chip04_icon_color: '{% set rgb = chip04_icon_color_value %}{{ rgb if is_number(rgb) else ((rgb[0] //(2**3)) *(2**11))+((rgb[1] //(2**2)) *(2**5))+(rgb[2] //(2**3)) }}'
chip05: !input "chip05"
chip05_icon: !input "chip05_icon"
chip05_icon_color_value: !input "chip05_icon_color"
chip05_icon_color: '{% set rgb = chip05_icon_color_value %}{{ rgb if is_number(rgb) else ((rgb[0] //(2**3)) *(2**11))+((rgb[1] //(2**2)) *(2**5))+(rgb[2] //(2**3)) }}'
chip06: !input "chip06"
chip06_icon: !input "chip06_icon"
chip06_icon_color_value: !input "chip06_icon_color"
chip06_icon_color: '{% set rgb = chip06_icon_color_value %}{{ rgb if is_number(rgb) else ((rgb[0] //(2**3)) *(2**11))+((rgb[1] //(2**2)) *(2**5))+(rgb[2] //(2**3)) }}'
chip07: !input "chip07"
chip07_icon: !input "chip07_icon"
chip07_icon_color_value: !input "chip07_icon_color"
chip07_icon_color: '{% set rgb = chip07_icon_color_value %}{{ rgb if is_number(rgb) else ((rgb[0] //(2**3)) *(2**11))+((rgb[1] //(2**2)) *(2**5))+(rgb[2] //(2**3)) }}'
### Home Page - Chips General ###
relay01_icon: !input "relay01_icon" #E3A5
relay01_icon_color_value: !input "relay01_icon_color"
relay01_icon_color: '{% set rgb = relay01_icon_color_value %}{{ rgb if is_number(rgb) else ((rgb[0] //(2**3)) *(2**11))+((rgb[1] //(2**2)) *(2**5))+(rgb[2] //(2**3)) }}'
relay02_icon: !input "relay02_icon" #E3A8
relay02_icon_color_value: !input "relay02_icon_color"
relay02_icon_color: '{% set rgb = relay02_icon_color_value %}{{ rgb if is_number(rgb) else ((rgb[0] //(2**3)) *(2**11))+((rgb[1] //(2**2)) *(2**5))+(rgb[2] //(2**3)) }}'
thermostat_icon: !input "thermostat_icon" #E50E
thermostat_icon_color_value: !input "thermostat_icon_color"
thermostat_icon_color: '{% set rgb = thermostat_icon_color_value %}{{ rgb if is_number(rgb) else ((rgb[0] //(2**3)) *(2**11))+((rgb[1] //(2**2)) *(2**5))+(rgb[2] //(2**3)) }}'
heat_icon: !input "heat_icon" #\U0000E50F
### Home Page - General ###
home_outdoor_temp_label_color_value: !input "home_outdoor_temp_label_color"
home_outdoor_temp_label_color: '{% set rgb = home_outdoor_temp_label_color_value %}{{ rgb if is_number(rgb) else ((rgb[0] //(2**3)) *(2**11))+((rgb[1] //(2**2)) *(2**5))+(rgb[2] //(2**3)) }}'
home_indoor_temp_icon: !input "home_indoor_temp_icon" #E50E
home_indoor_temp_icon_color_value: !input "home_indoor_temp_icon_color"
home_indoor_temp_icon_color: '{% set rgb = home_indoor_temp_icon_color_value %}{{ rgb if is_number(rgb) else ((rgb[0] //(2**3)) *(2**11))+((rgb[1] //(2**2)) *(2**5))+(rgb[2] //(2**3)) }}'
home_indoor_temp_label_color_value: !input "home_indoor_temp_label_color"
home_indoor_temp_label_color: '{% set rgb = home_indoor_temp_label_color_value %}{{ rgb if is_number(rgb) else ((rgb[0] //(2**3)) *(2**11))+((rgb[1] //(2**2)) *(2**5))+(rgb[2] //(2**3)) }}'
time_label_color_value: !input "time_label_color"
time_label_color: '{% set rgb = time_label_color_value %}{{ rgb if is_number(rgb) else ((rgb[0] //(2**3)) *(2**11))+((rgb[1] //(2**2)) *(2**5))+(rgb[2] //(2**3)) }}'
date_label_color_value: !input "date_label_color"
date_label_color: '{% set rgb = date_label_color_value %}{{ rgb if is_number(rgb) else ((rgb[0] //(2**3)) *(2**11))+((rgb[1] //(2**2)) *(2**5))+(rgb[2] //(2**3)) }}'
right_button_color_value: !input "right_button_color"
right_button_color: '{% set rgb = right_button_color_value %}{{ rgb if is_number(rgb) else ((rgb[0] //(2**3)) *(2**11))+((rgb[1] //(2**2)) *(2**5))+(rgb[2] //(2**3)) }}'
left_button_color_value: !input "left_button_color"
left_button_color: '{% set rgb = left_button_color_value %}{{ rgb if is_number(rgb) else ((rgb[0] //(2**3)) *(2**11))+((rgb[1] //(2**2)) *(2**5))+(rgb[2] //(2**3)) }}'
##### BUTTON Page Labels #####
button_page01_label: !input button_page01_label
button_page02_label: !input button_page02_label
button_page03_label: !input button_page03_label
button_page04_label: !input button_page04_label
##### BUTTONS 1- 32 #####
entity01: !input "entity01"
entity01_name: !input "entity01_name"
entity01_icon: !input "entity01_icon"
entity01_icon_color_value: !input "entity01_icon_color"
entity01_icon_color: '{% set rgb = entity01_icon_color_value %}{{ rgb if is_number(rgb) else ((rgb[0] //(2**3)) *(2**11))+((rgb[1] //(2**2)) *(2**5))+(rgb[2] //(2**3)) }}'
entity01_confirm: !input "entity01_confirm"
entity02: !input "entity02"
entity02_name: !input "entity02_name"
entity02_icon: !input "entity02_icon"
entity02_icon_color_value: !input "entity02_icon_color"
entity02_icon_color: '{% set rgb = entity02_icon_color_value %}{{ rgb if is_number(rgb) else ((rgb[0] //(2**3)) *(2**11))+((rgb[1] //(2**2)) *(2**5))+(rgb[2] //(2**3)) }}'
entity02_confirm: !input "entity02_confirm"
entity03: !input "entity03"
entity03_name: !input "entity03_name"
entity03_icon: !input "entity03_icon"
entity03_icon_color_value: !input "entity03_icon_color"
entity03_icon_color: '{% set rgb = entity03_icon_color_value %}{{ rgb if is_number(rgb) else ((rgb[0] //(2**3)) *(2**11))+((rgb[1] //(2**2)) *(2**5))+(rgb[2] //(2**3)) }}'
entity03_confirm: !input "entity03_confirm"
entity04: !input "entity04"
entity04_name: !input "entity04_name"
entity04_icon: !input "entity04_icon"
entity04_icon_color_value: !input "entity04_icon_color"
entity04_icon_color: '{% set rgb = entity04_icon_color_value %}{{ rgb if is_number(rgb) else ((rgb[0] //(2**3)) *(2**11))+((rgb[1] //(2**2)) *(2**5))+(rgb[2] //(2**3)) }}'
entity04_confirm: !input "entity04_confirm"
entity05: !input "entity05"
entity05_name: !input "entity05_name"
entity05_icon: !input "entity05_icon"
entity05_icon_color_value: !input "entity05_icon_color"
entity05_icon_color: '{% set rgb = entity05_icon_color_value %}{{ rgb if is_number(rgb) else ((rgb[0] //(2**3)) *(2**11))+((rgb[1] //(2**2)) *(2**5))+(rgb[2] //(2**3)) }}'
entity05_confirm: !input "entity05_confirm"
entity06: !input "entity06"
entity06_name: !input "entity06_name"
entity06_icon: !input "entity06_icon"
entity06_icon_color_value: !input "entity06_icon_color"
entity06_icon_color: '{% set rgb = entity06_icon_color_value %}{{ rgb if is_number(rgb) else ((rgb[0] //(2**3)) *(2**11))+((rgb[1] //(2**2)) *(2**5))+(rgb[2] //(2**3)) }}'
entity06_confirm: !input "entity06_confirm"
entity07: !input "entity07"
entity07_name: !input "entity07_name"
entity07_icon: !input "entity07_icon"
entity07_icon_color_value: !input "entity07_icon_color"
entity07_icon_color: '{% set rgb = entity07_icon_color_value %}{{ rgb if is_number(rgb) else ((rgb[0] //(2**3)) *(2**11))+((rgb[1] //(2**2)) *(2**5))+(rgb[2] //(2**3)) }}'
entity07_confirm: !input "entity07_confirm"
entity08: !input "entity08"
entity08_name: !input "entity08_name"
entity08_icon: !input "entity08_icon"
entity08_icon_color_value: !input "entity08_icon_color"
entity08_icon_color: '{% set rgb = entity08_icon_color_value %}{{ rgb if is_number(rgb) else ((rgb[0] //(2**3)) *(2**11))+((rgb[1] //(2**2)) *(2**5))+(rgb[2] //(2**3)) }}'
entity08_confirm: !input "entity08_confirm"
entity09: !input "entity09"
entity09_name: !input "entity09_name"
entity09_icon: !input "entity09_icon"
entity09_icon_color_value: !input "entity09_icon_color"
entity09_icon_color: '{% set rgb = entity09_icon_color_value %}{{ rgb if is_number(rgb) else ((rgb[0] //(2**3)) *(2**11))+((rgb[1] //(2**2)) *(2**5))+(rgb[2] //(2**3)) }}'
entity09_confirm: !input "entity09_confirm"
entity10: !input "entity10"
entity10_name: !input "entity10_name"
entity10_icon: !input "entity10_icon"
entity10_icon_color_value: !input "entity10_icon_color"
entity10_icon_color: '{% set rgb = entity10_icon_color_value %}{{ rgb if is_number(rgb) else ((rgb[0] //(2**3)) *(2**11))+((rgb[1] //(2**2)) *(2**5))+(rgb[2] //(2**3)) }}'
entity10_confirm: !input "entity10_confirm"
entity11: !input "entity11"
entity11_name: !input "entity11_name"
entity11_icon: !input "entity11_icon"
entity11_icon_color_value: !input "entity11_icon_color"
entity11_icon_color: '{% set rgb = entity11_icon_color_value %}{{ rgb if is_number(rgb) else ((rgb[0] //(2**3)) *(2**11))+((rgb[1] //(2**2)) *(2**5))+(rgb[2] //(2**3)) }}'
entity11_confirm: !input "entity11_confirm"
entity12: !input "entity12"
entity12_name: !input "entity12_name"
entity12_icon: !input "entity12_icon"
entity12_icon_color_value: !input "entity12_icon_color"
entity12_icon_color: '{% set rgb = entity12_icon_color_value %}{{ rgb if is_number(rgb) else ((rgb[0] //(2**3)) *(2**11))+((rgb[1] //(2**2)) *(2**5))+(rgb[2] //(2**3)) }}'
entity12_confirm: !input "entity12_confirm"
entity13: !input "entity13"
entity13_name: !input "entity13_name"
entity13_icon: !input "entity13_icon"
entity13_icon_color_value: !input "entity13_icon_color"
entity13_icon_color: '{% set rgb = entity13_icon_color_value %}{{ rgb if is_number(rgb) else ((rgb[0] //(2**3)) *(2**11))+((rgb[1] //(2**2)) *(2**5))+(rgb[2] //(2**3)) }}'
entity13_confirm: !input "entity13_confirm"
entity14: !input "entity14"
entity14_name: !input "entity14_name"
entity14_icon: !input "entity14_icon"
entity14_icon_color_value: !input "entity14_icon_color"
entity14_icon_color: '{% set rgb = entity14_icon_color_value %}{{ rgb if is_number(rgb) else ((rgb[0] //(2**3)) *(2**11))+((rgb[1] //(2**2)) *(2**5))+(rgb[2] //(2**3)) }}'
entity14_confirm: !input "entity14_confirm"
entity15: !input "entity15"
entity15_name: !input "entity15_name"
entity15_icon: !input "entity15_icon"
entity15_icon_color_value: !input "entity15_icon_color"
entity15_icon_color: '{% set rgb = entity15_icon_color_value %}{{ rgb if is_number(rgb) else ((rgb[0] //(2**3)) *(2**11))+((rgb[1] //(2**2)) *(2**5))+(rgb[2] //(2**3)) }}'
entity15_confirm: !input "entity15_confirm"
entity16: !input "entity16"
entity16_name: !input "entity16_name"
entity16_icon: !input "entity16_icon"
entity16_icon_color_value: !input "entity16_icon_color"
entity16_icon_color: '{% set rgb = entity16_icon_color_value %}{{ rgb if is_number(rgb) else ((rgb[0] //(2**3)) *(2**11))+((rgb[1] //(2**2)) *(2**5))+(rgb[2] //(2**3)) }}'
entity16_confirm: !input "entity16_confirm"
entity17: !input "entity17"
entity17_name: !input "entity17_name"
entity17_icon: !input "entity17_icon"
entity17_icon_color_value: !input "entity17_icon_color"
entity17_icon_color: '{% set rgb = entity17_icon_color_value %}{{ rgb if is_number(rgb) else ((rgb[0] //(2**3)) *(2**11))+((rgb[1] //(2**2)) *(2**5))+(rgb[2] //(2**3)) }}'
entity17_confirm: !input "entity17_confirm"
entity18: !input "entity18"
entity18_name: !input "entity18_name"
entity18_icon: !input "entity18_icon"
entity18_icon_color_value: !input "entity18_icon_color"
entity18_icon_color: '{% set rgb = entity18_icon_color_value %}{{ rgb if is_number(rgb) else ((rgb[0] //(2**3)) *(2**11))+((rgb[1] //(2**2)) *(2**5))+(rgb[2] //(2**3)) }}'
entity18_confirm: !input "entity18_confirm"
entity19: !input "entity19"
entity19_name: !input "entity19_name"
entity19_icon: !input "entity19_icon"
entity19_icon_color_value: !input "entity19_icon_color"
entity19_icon_color: '{% set rgb = entity19_icon_color_value %}{{ rgb if is_number(rgb) else ((rgb[0] //(2**3)) *(2**11))+((rgb[1] //(2**2)) *(2**5))+(rgb[2] //(2**3)) }}'
entity19_confirm: !input "entity19_confirm"
entity20: !input "entity20"
entity20_name: !input "entity20_name"
entity20_icon: !input "entity20_icon"
entity20_icon_color_value: !input "entity20_icon_color"
entity20_icon_color: '{% set rgb = entity20_icon_color_value %}{{ rgb if is_number(rgb) else ((rgb[0] //(2**3)) *(2**11))+((rgb[1] //(2**2)) *(2**5))+(rgb[2] //(2**3)) }}'
entity20_confirm: !input "entity20_confirm"
entity21: !input "entity21"
entity21_name: !input "entity21_name"
entity21_icon: !input "entity21_icon"
entity21_icon_color_value: !input "entity21_icon_color"
entity21_icon_color: '{% set rgb = entity21_icon_color_value %}{{ rgb if is_number(rgb) else ((rgb[0] //(2**3)) *(2**11))+((rgb[1] //(2**2)) *(2**5))+(rgb[2] //(2**3)) }}'
entity21_confirm: !input "entity21_confirm"
entity22: !input "entity22"
entity22_name: !input "entity22_name"
entity22_icon: !input "entity22_icon"
entity22_icon_color_value: !input "entity22_icon_color"
entity22_icon_color: '{% set rgb = entity22_icon_color_value %}{{ rgb if is_number(rgb) else ((rgb[0] //(2**3)) *(2**11))+((rgb[1] //(2**2)) *(2**5))+(rgb[2] //(2**3)) }}'
entity22_confirm: !input "entity22_confirm"
entity23: !input "entity23"
entity23_name: !input "entity23_name"
entity23_icon: !input "entity23_icon"
entity23_icon_color_value: !input "entity23_icon_color"
entity23_icon_color: '{% set rgb = entity23_icon_color_value %}{{ rgb if is_number(rgb) else ((rgb[0] //(2**3)) *(2**11))+((rgb[1] //(2**2)) *(2**5))+(rgb[2] //(2**3)) }}'
entity23_confirm: !input "entity23_confirm"
entity24: !input "entity24"
entity24_name: !input "entity24_name"
entity24_icon: !input "entity24_icon"
entity24_icon_color_value: !input "entity24_icon_color"
entity24_icon_color: '{% set rgb = entity24_icon_color_value %}{{ rgb if is_number(rgb) else ((rgb[0] //(2**3)) *(2**11))+((rgb[1] //(2**2)) *(2**5))+(rgb[2] //(2**3)) }}'
entity24_confirm: !input "entity24_confirm"
entity25: !input "entity25"
entity25_name: !input "entity25_name"
entity25_icon: !input "entity25_icon"
entity25_icon_color_value: !input "entity25_icon_color"
entity25_icon_color: '{% set rgb = entity25_icon_color_value %}{{ rgb if is_number(rgb) else ((rgb[0] //(2**3)) *(2**11))+((rgb[1] //(2**2)) *(2**5))+(rgb[2] //(2**3)) }}'
entity25_confirm: !input "entity25_confirm"
entity26: !input "entity26"
entity26_name: !input "entity26_name"
entity26_icon: !input "entity26_icon"
entity26_icon_color_value: !input "entity26_icon_color"
entity26_icon_color: '{% set rgb = entity26_icon_color_value %}{{ rgb if is_number(rgb) else ((rgb[0] //(2**3)) *(2**11))+((rgb[1] //(2**2)) *(2**5))+(rgb[2] //(2**3)) }}'
entity26_confirm: !input "entity26_confirm"
entity27: !input "entity27"
entity27_name: !input "entity27_name"
entity27_icon: !input "entity27_icon"
entity27_icon_color_value: !input "entity27_icon_color"
entity27_icon_color: '{% set rgb = entity27_icon_color_value %}{{ rgb if is_number(rgb) else ((rgb[0] //(2**3)) *(2**11))+((rgb[1] //(2**2)) *(2**5))+(rgb[2] //(2**3)) }}'
entity27_confirm: !input "entity27_confirm"
entity28: !input "entity28"
entity28_name: !input "entity28_name"
entity28_icon: !input "entity28_icon"
entity28_icon_color_value: !input "entity28_icon_color"
entity28_icon_color: '{% set rgb = entity28_icon_color_value %}{{ rgb if is_number(rgb) else ((rgb[0] //(2**3)) *(2**11))+((rgb[1] //(2**2)) *(2**5))+(rgb[2] //(2**3)) }}'
entity28_confirm: !input "entity28_confirm"
entity29: !input "entity29"
entity29_name: !input "entity29_name"
entity29_icon: !input "entity29_icon"
entity29_icon_color_value: !input "entity29_icon_color"
entity29_icon_color: '{% set rgb = entity29_icon_color_value %}{{ rgb if is_number(rgb) else ((rgb[0] //(2**3)) *(2**11))+((rgb[1] //(2**2)) *(2**5))+(rgb[2] //(2**3)) }}'
entity29_confirm: !input "entity29_confirm"
entity30: !input "entity30"
entity30_name: !input "entity30_name"
entity30_icon: !input "entity30_icon"
entity30_icon_color_value: !input "entity30_icon_color"
entity30_icon_color: '{% set rgb = entity30_icon_color_value %}{{ rgb if is_number(rgb) else ((rgb[0] //(2**3)) *(2**11))+((rgb[1] //(2**2)) *(2**5))+(rgb[2] //(2**3)) }}'
entity30_confirm: !input "entity30_confirm"
entity31: !input "entity31"
entity31_name: !input "entity31_name"
entity31_icon: !input "entity31_icon"
entity31_icon_color_value: !input "entity31_icon_color"
entity31_icon_color: '{% set rgb = entity31_icon_color_value %}{{ rgb if is_number(rgb) else ((rgb[0] //(2**3)) *(2**11))+((rgb[1] //(2**2)) *(2**5))+(rgb[2] //(2**3)) }}'
entity31_confirm: !input "entity31_confirm"
entity32: !input "entity32"
entity32_name: !input "entity32_name"
entity32_icon: !input "entity32_icon"
entity32_icon_color_value: !input "entity32_icon_color"
entity32_icon_color: '{% set rgb = entity32_icon_color_value %}{{ rgb if is_number(rgb) else ((rgb[0] //(2**3)) *(2**11))+((rgb[1] //(2**2)) *(2**5))+(rgb[2] //(2**3)) }}'
entity32_confirm: !input "entity32_confirm"
##### ENTITIES #####
entitypages_enabled: !input "entitypages_enabled"
##### ENTITY Page Labels #####
entity_page01_label: !input "entity_page01_label"
entity_page02_label: !input "entity_page02_label"
entity_page03_label: !input "entity_page03_label"
entity_page04_label: !input "entity_page04_label"
##### ENTITIES 1- 32 #####
## page 01
entities_entity01: !input "entities_entity01"
entities_entity02: !input "entities_entity02"
entities_entity03: !input "entities_entity03"
entities_entity04: !input "entities_entity04"
entities_entity05: !input "entities_entity05"
entities_entity06: !input "entities_entity06"
entities_entity07: !input "entities_entity07"
entities_entity08: !input "entities_entity08"
## page 02
entities_entity09: !input "entities_entity09"
entities_entity10: !input "entities_entity10"
entities_entity11: !input "entities_entity11"
entities_entity12: !input "entities_entity12"
entities_entity13: !input "entities_entity13"
entities_entity14: !input "entities_entity14"
entities_entity15: !input "entities_entity15"
entities_entity16: !input "entities_entity16"
## page 03
entities_entity17: !input "entities_entity17"
entities_entity18: !input "entities_entity18"
entities_entity19: !input "entities_entity19"
entities_entity20: !input "entities_entity20"
entities_entity21: !input "entities_entity21"
entities_entity22: !input "entities_entity22"
entities_entity23: !input "entities_entity23"
entities_entity24: !input "entities_entity24"
## page 04
entities_entity25: !input "entities_entity25"
entities_entity26: !input "entities_entity26"
entities_entity27: !input "entities_entity27"
entities_entity28: !input "entities_entity28"
entities_entity29: !input "entities_entity29"
entities_entity30: !input "entities_entity30"
entities_entity31: !input "entities_entity31"
entities_entity32: !input "entities_entity32"
## page 01 - name
entities_entity01_name: !input "entities_entity01_name"
entities_entity02_name: !input "entities_entity02_name"
entities_entity03_name: !input "entities_entity03_name"
entities_entity04_name: !input "entities_entity04_name"
entities_entity05_name: !input "entities_entity05_name"
entities_entity06_name: !input "entities_entity06_name"
entities_entity07_name: !input "entities_entity07_name"
entities_entity08_name: !input "entities_entity08_name"
## page 02 - name
entities_entity09_name: !input "entities_entity09_name"
entities_entity10_name: !input "entities_entity10_name"
entities_entity11_name: !input "entities_entity11_name"
entities_entity12_name: !input "entities_entity12_name"
entities_entity13_name: !input "entities_entity13_name"
entities_entity14_name: !input "entities_entity14_name"
entities_entity15_name: !input "entities_entity15_name"
entities_entity16_name: !input "entities_entity16_name"
## page 03 - name
entities_entity17_name: !input "entities_entity17_name"
entities_entity18_name: !input "entities_entity18_name"
entities_entity19_name: !input "entities_entity19_name"
entities_entity20_name: !input "entities_entity20_name"
entities_entity21_name: !input "entities_entity21_name"
entities_entity22_name: !input "entities_entity22_name"
entities_entity23_name: !input "entities_entity23_name"
entities_entity24_name: !input "entities_entity24_name"
## page 04 - name
entities_entity25_name: !input "entities_entity25_name"
entities_entity26_name: !input "entities_entity26_name"
entities_entity27_name: !input "entities_entity27_name"
entities_entity28_name: !input "entities_entity28_name"
entities_entity29_name: !input "entities_entity29_name"
entities_entity30_name: !input "entities_entity30_name"
entities_entity31_name: !input "entities_entity31_name"
entities_entity32_name: !input "entities_entity32_name"
## page 01 - icon
entities_entity01_icon: !input "entities_entity01_icon"
entities_entity02_icon: !input "entities_entity02_icon"
entities_entity03_icon: !input "entities_entity03_icon"
entities_entity04_icon: !input "entities_entity04_icon"
entities_entity05_icon: !input "entities_entity05_icon"
entities_entity06_icon: !input "entities_entity06_icon"
entities_entity07_icon: !input "entities_entity07_icon"
entities_entity08_icon: !input "entities_entity08_icon"
## page 02 - icon
entities_entity09_icon: !input "entities_entity09_icon"
entities_entity10_icon: !input "entities_entity10_icon"
entities_entity11_icon: !input "entities_entity11_icon"
entities_entity12_icon: !input "entities_entity12_icon"
entities_entity13_icon: !input "entities_entity13_icon"
entities_entity14_icon: !input "entities_entity14_icon"
entities_entity15_icon: !input "entities_entity15_icon"
entities_entity16_icon: !input "entities_entity16_icon"
## page 03 - icon
entities_entity17_icon: !input "entities_entity17_icon"
entities_entity18_icon: !input "entities_entity18_icon"
entities_entity19_icon: !input "entities_entity19_icon"
entities_entity20_icon: !input "entities_entity20_icon"
entities_entity21_icon: !input "entities_entity21_icon"
entities_entity22_icon: !input "entities_entity22_icon"
entities_entity23_icon: !input "entities_entity23_icon"
entities_entity24_icon: !input "entities_entity24_icon"
## page 04 - icon
entities_entity25_icon: !input "entities_entity25_icon"
entities_entity26_icon: !input "entities_entity26_icon"
entities_entity27_icon: !input "entities_entity27_icon"
entities_entity28_icon: !input "entities_entity28_icon"
entities_entity29_icon: !input "entities_entity29_icon"
entities_entity30_icon: !input "entities_entity30_icon"
entities_entity31_icon: !input "entities_entity31_icon"
entities_entity32_icon: !input "entities_entity32_icon"
###### NEXTION PIC MAPPING #####
hardware_button_pic_off: "77"
hardware_button_pic_on: "78"
button_off: "101"
button_on: "102"
heating_bt_pic_off: "82"
heating_bt_pic_on: "83"
###### NEXTION PAGE MAPPING #####
page_home: "home"
page_weather01: "weather01"
page_weather02: "weather02"
page_weather03: "weather03"
page_weather04: "weather04"
page_weather05: "weather05"
page_climate: "climate"
page_settings: "settings"
page_boot: "boot"
page_screensaver: "screensaver"
page_lightsettings: "lightsettings"
page_coversettings: "coversettings"
page_buttonpage01: "buttonpage01"
page_buttonpage02: "buttonpage02"
page_buttonpage03: "buttonpage03"
page_buttonpage04: "buttonpage04"
page_notification: "notification"
page_qrcode: "qrcode"
page_entitypage01: "entitypage01"
page_entitypage02: "entitypage02"
page_entitypage03: "entitypage03"
page_entitypage04: "entitypage04"
##### MUI Multilingual User Interface (DE/EN) #####
mui:
BGR:
weekdays:
mon: Понеделник
tue: Вторник
wed: Сряда
thu: Четвъртък
fri: Петък
sat: Събота
sun: Неделя
today: Днес
tomorrow: Утре
in_2_days: за 2 дни
in_3_days: за 3 дни
in_4_days: за 4 дни
climate:
states:
"on": на
"off": изключване
heat: топлина
please_confirm: Моля, потвърдете
CZE:
weekdays:
mon: Pondělí
tue: Úterý
wed: Středa
thu: Čtvrtek
fri: Pátek
sat: Sobota
sun: Neděle
today: Dnes
tomorrow: Zítra
in_2_days: za 2 dny
in_3_days: za 3 dny
in_4_days: za 4 dny
climate:
states:
"on": zapnuto
"off": vypnuto
heat: topení
please_confirm: Potvrďte prosím
DEU:
weekdays:
mon: Montag
tue: Dienstag
wed: Mittwoch
thu: Donnerstag
fri: Freitag
sat: Samstag
sun: Sonntag
today: Heute
tomorrow: Morgen
in_2_days: in 2 Tagen
in_3_days: in 3 Tagen
in_4_days: in 4 Tagen
climate:
states:
"on": ein
"off": aus
heat: heizen
please_confirm: Bitte bestätigen
DNK:
weekdays:
mon: Mandag
tue: Tirsdag
wed: Onsdag
thu: Torsdag
fri: Fredag
sat: Lørdag
sun: Søndag
today: I dag
tomorrow: I morgen
in_2_days: om 2 dage
in_3_days: om 3 dage
in_4_days: om 4 dage
climate:
states:
"on":
"off": off
heat: varme
please_confirm: Bekræft venligst
ENG:
weekdays:
mon: Monday
tue: Tuesday
wed: Wednesday
thu: Thursday
fri: Friday
sat: Saturday
sun: Sunday
today: Today
tomorrow: Tomorrow
in_2_days: In 2 days
in_3_days: In 3 days
in_4_days: In 4 days
climate:
states:
"on": on
"off": off
heat: heat
please_confirm: Please confirm
ESP:
weekdays:
mon: Lunes
tue: Martes
wed: Miércoles
thu: Jueves
fri: Viernes
sat: Sábado
sun: Domingo
today: Hoy
tomorrow: Mañana
in_2_days: en 2 Días
in_3_days: en 3 Días
in_4_days: en 4 Días
climate:
states:
"on": on
"off": off
heat: calor
please_confirm: Por favor, confirme
EST:
weekdays:
mon: Esmaspäev
tue: Teisipäev
wed: Kolmapäev
thu: Neljapäev
fri: Reede
sat: Laupäev
sun: Pühapäev
today: Täna
tomorrow: Homme
in_2_days: 2 päeva pärast
in_3_days: 3 päeva pärast
in_4_days: 4 päeva pärast
climate:
states:
"on": aadressil
"off": välja
heat: soojus
please_confirm: Palun kinnitage
FIN:
weekdays:
mon: Maanantai
tue: Tiistai
wed: Keskiviikko
thu: Torstai
fri: Perjantai
sat: Lauantai
sun: Sunnuntai
today: Tänään
tomorrow: Huomenna
in_2_days: 2 päivän päästä
in_3_days: 3 päivän päästä
in_4_days: 4 päivän päästä
climate:
states:
"on": osoitteessa
"off": off
heat: lämpö
please_confirm: Vahvistakaa
FRA:
weekdays:
mon: Lundi
tue: Mardi
wed: Mercredi
thu: Jeudi
fri: Vendredi
sat: Samedi
sun: Dimanche
today: Aujourd hui
tomorrow: Demain
in_2_days: Dans 2 jours
in_3_days: Dans 3 jours
in_4_days: Dans 4 jours
climate:
states:
"on": on
"off": off
heat: Chaleur
please_confirm: Veuillez confirmer
GRC:
weekdays:
mon: Δευτέρα
tue: Τρίτη
wed: Τετάρτη
thu: Πέμπτη
fri: Παρασκευή
sat: Σάββατο
sun: Κυριακή
today: Σήμερα
tomorrow: Αύριο
in_2_days: σε 2 ημέρες
in_3_days: σε 3 ημέρες
in_4_days: σε 4 ημέρες
climate:
states:
"on": Ενεργό
"off": Ανενεργό
heat: Θέρμανση
please_confirm: Παρακαλώ επιβεβαιώστε
HEB:
weekdays:
mon: ינש
tue: ישילש
wed: יעיבר
thu: ישימח
fri: ישיש
sat: תבש
sun: ןושאר
today: םויה
tomorrow: רחמ
in_2_days: םיימוי דוע
in_3_days: םימי 3 דוע
in_4_days: םימי 4 דוע
climate:
states:
"on": קולד
"off": יובכ
heat: םוח
please_confirm: רשא השקבב
HUN:
weekdays:
mon: Hétfő
tue: Kedd
wed: Szerda
thu: Csütörtök
fri: Péntek
sat: Szombat
sun: Vasárnap
today: Ma
tomorrow: Holnap
in_2_days: 2 nap múlva
in_3_days: 3 nap múlva
in_4_days: 4 nap múlva
climate:
states:
"on": a oldalon
"off": off
heat:
please_confirm: Kérjük, erősítse meg
IDN:
weekdays:
mon: Senin
tue: Selasa
wed: Rabu
thu: Kamis
fri: Jumat
sat: Sabtu
sun: Minggu
today: Hari ini
tomorrow: Besok
in_2_days: dalam 2 Hari
in_3_days: dalam 3 Hari
in_4_days: dalam 4 Hari
climate:
states:
"on": on
"off": off
heat: panas
please_confirm: Mohon konfirmasi
ITA:
weekdays:
mon: Lunedì
tue: Martedì
wed: Mercoledì
thu: Giovedì
fri: Venerdì
sat: Sabato
sun: Domenica
today: Oggi
tomorrow: Domani
in_2_days: in 2 giorni
in_3_days: in 3 giorni
in_4_days: in 4 giorni
climate:
states:
"on": on
"off": off
heat: caldo
please_confirm: Confermare
LTU:
weekdays:
mon: Pirmadienis
tue: Antradienis
wed: Trečiadienis
thu: Ketvirtadienis
fri: Penktadienis
sat: Šeštadienis
sun: Sekmadienis
today: Šiandien
tomorrow: Rytoj
in_2_days: per 2 dienas
in_3_days: per 3 dienas
in_4_days: per 4 dienas
climate:
states:
"on": svetainėje
"off": išjungta
heat: šiluma
please_confirm: Prašome patvirtinti
LVA:
weekdays:
mon: Pirmdiena
tue: Otrdiena
wed: Trešdiena
thu: Ceturtdiena
fri: Piektdiena
sat: Sestdiena
sun: Svētdiena
today: Šodien
tomorrow: Rīt
in_2_days: pēc 2 dienām
in_3_days: pēc 3 dienām
in_4_days: pēc 4 dienām
climate:
states:
"on": vietnē
"off": izslēgts
heat: siltums
please_confirm: Lūdzu, apstipriniet
NLD:
weekdays:
mon: Maandag
tue: Dinsdag
wed: Woensdag
thu: Donderdag
fri: Vrijdag
sat: Zaterdag
sun: Zondag
today: Vandaag
tomorrow: Morgen
in_2_days: in 2 dagen
in_3_days: in 3 dagen
in_4_days: in 4 dagen
climate:
states:
"on": aan
"off": uit
heat: verwarm
please_confirm: Bevestig alstublieft
NOR:
weekdays:
mon: Mandag
tue: Tirsdag
wed: Onsdag
thu: Torsdag
fri: Fredag
sat: Lørdag
sun: Søndag
today: I dag
tomorrow: I morgen
in_2_days: om 2 dager
in_3_days: om 3 dager
in_4_days: om 4 dager
climate:
states:
"on":
"off": av
heat: varme
please_confirm: Vennligst bekreft
POL:
weekdays:
mon: Poniedziałek
tue: Wtorek
wed: Środa
thu: Czwartek
fri: Piątek
sat: Sobota
sun: Niedziela
today: Dzisiaj
tomorrow: Jutro
in_2_days: za 2 dni
in_3_days: za 3 dni
in_4_days: za 4 dni
climate:
states:
"on": na
"off": off
heat: ciepło
please_confirm: Proszę o potwierdzenie
PRT:
weekdays:
mon: Segunda-feira
tue: Terça-feira
wed: Quarta-feira
thu: Quinta-feira
fri: Sexta-feira
sat: Sábado
sun: Domingo
today: Hoje
tomorrow: Amanhã
in_2_days: Em 2 dias
in_3_days: Em 3 dias
in_4_days: Em 4 dias
climate:
states:
"on": ligado
"off": desligado
heat: Aquecimento
please_confirm: Confirme, por favor
ROU:
weekdays:
mon: Luni
tue: Marți
wed: Miercuri
thu: Joi
fri: Vineri
sat: Sâmbătă
sun: Duminică
today: Astăzi
tomorrow: Mâine
in_2_days: în 2 zile
in_3_days: în 3 zile
in_4_days: în 4 zile
climate:
states:
"on": pe
"off": off
heat: căldură
please_confirm: Vă rugăm să confirmați
RUS:
weekdays:
mon: Понедельник
tue: Вторник
wed: Среда
thu: Четверг
fri: Пятница
sat: Суббота
sun: Воскресение
today: Сегодня
tomorrow: Завтра
in_2_days: на 2 дня
in_3_days: на 3 дня
in_4_days: на 4 дня
climate:
states:
"on": включено
"off": выключено
heat: нагрев
please_confirm: Пожалуйста, подтвердите
SVK:
weekdays:
mon: Pondelok
tue: Utorok
wed: Streda
thu: Štvrtok
fri: Piatok
sat: Sobota
sun: Nedeľa
today: Dnes
tomorrow: Zajtra
in_2_days: o 2 dni
in_3_days: o 3 dni
in_4_days: o 4 dni
climate:
states:
"on": zapnuté
"off": vypnuté
heat: kúrenie
please_confirm: Potvrďte, prosím
SVN:
weekdays:
mon: Ponedeljek
tue: Torek
wed: Sreda
thu: Četrtek
fri: Petek
sat: Sobota
sun: Nedelja
today: Danes
tomorrow: Jutri
in_2_days: v 2 dneh
in_3_days: v 3 dneh
in_4_days: v 4 dneh
climate:
states:
"on": na
"off": izklop
heat: toplota
please_confirm: Prosimo, potrdite
SWE:
weekdays:
mon: Måndag
tue: Tisdag
wed: Onsdag
thu: Torsdag
fri: Fredag
sat: Lördag
sun: Söndag
today: Idag
tomorrow: Imorgon
in_2_days: om 2 dagar
in_3_days: om 3 dagar
in_4_days: om 4 dagar
climate:
states:
"on":
"off": av
heat: värme
please_confirm: Vänligen bekräfta
TUR:
weekdays:
mon: Pazartesi
tue: Salı
wed: Çarşamba
thu: Perşembe
fri: Cuma
sat: Cumartesi
sun: Pazar
today: Bugün
tomorrow: Yarın
in_2_days: 2 Gün İçinde
in_3_days: 3 Gün İçinde
in_4_days: 4 Gün İçinde
climate:
states:
"on": üzerinde
"off": kapalı
heat: ısı
please_confirm: Lütfen onaylayın
UKR:
weekdays:
mon: Понеділок
tue: Вівторок
wed: середа
thu: четвер
fri: п ятниця
sat: Субота
sun: Неділя
today: Сьогодні
tomorrow: Завтра
in_2_days: через 2 дні
in_3_days: через 3 дні
in_4_days: через 2 дні
climate:
states:
"on": увімк
"off": вимк
heat: нагрів
please_confirm: Будь ласка, підтвердіть
mui_weekday_today: "{{ (dict.values(mui[language].weekdays) | list)[now().weekday()] ~ ', ' ~ as_timestamp(now()) | timestamp_custom(date_format) }}"
mui_weekday_tomorrow: "{{ (dict.values(mui[language].weekdays) | list)[(now() + timedelta(days=1)).weekday()] ~ ', ' ~ as_timestamp(now() + timedelta(days=1)) | timestamp_custom(date_format) }}"
mui_weekday_in_2_days: "{{ (dict.values(mui[language].weekdays) | list)[(now() + timedelta(days=2)).weekday()] ~ ', ' ~ as_timestamp(now() + timedelta(days=2)) | timestamp_custom(date_format) }}"
mui_weekday_in_3_days: "{{ (dict.values(mui[language].weekdays) | list)[(now() + timedelta(days=3)).weekday()] ~ ', ' ~ as_timestamp(now() + timedelta(days=3)) | timestamp_custom(date_format) }}"
mui_weekday_in_4_days: "{{ (dict.values(mui[language].weekdays) | list)[(now() + timedelta(days=4)).weekday()] ~ ', ' ~ as_timestamp(now() + timedelta(days=4)) | timestamp_custom(date_format) }}"
#heat_mui: "{{ mui[language].climate.heat }}"
##### FORCAST ACCUWEATHER - DAY 0 #####
accuweather_realfeel_temperature_min_0d: "sensor.{{ accuweather_name }}_realfeel_temperature_min_0d"
accuweather_realfeel_temperature_max_0d: "sensor.{{ accuweather_name }}_realfeel_temperature_max_0d"
accuweather_hours_of_sun_0d: "sensor.{{ accuweather_name }}_hours_of_sun_0d"
accuweather_uv_index_0d: "sensor.{{ accuweather_name }}_uv_index_0d"
accuweather_thunderstorm_probability_day_0d: "sensor.{{ accuweather_name }}_thunderstorm_probability_day_0d"
accuweather_thunderstorm_probability_night_0d: "sensor.{{ accuweather_name }}_thunderstorm_probability_night_0d"
accuweather_wind_day_0d: "sensor.{{ accuweather_name }}_wind_day_0d"
accuweather_wind_night_0d: "sensor.{{ accuweather_name }}_wind_night_0d"
##### FORCAST ACCUWEATHER - DAY 1 #####
accuweather_realfeel_temperature_min_1d: "sensor.{{ accuweather_name }}_realfeel_temperature_min_1d"
accuweather_realfeel_temperature_max_1d: "sensor.{{ accuweather_name }}_realfeel_temperature_max_1d"
accuweather_hours_of_sun_1d: "sensor.{{ accuweather_name }}_hours_of_sun_1d"
accuweather_uv_index_1d: "sensor.{{ accuweather_name }}_uv_index_1d"
accuweather_thunderstorm_probability_day_1d: "sensor.{{ accuweather_name }}_thunderstorm_probability_day_1d"
accuweather_thunderstorm_probability_night_1d: "sensor.{{ accuweather_name }}_thunderstorm_probability_night_1d"
accuweather_wind_day_1d: "sensor.{{ accuweather_name }}_wind_day_1d"
accuweather_wind_night_1d: "sensor.{{ accuweather_name }}_wind_night_1d"
##### FORCAST ACCUWEATHER - DAY 2 #####
accuweather_realfeel_temperature_min_2d: "sensor.{{ accuweather_name }}_realfeel_temperature_min_2d"
accuweather_realfeel_temperature_max_2d: "sensor.{{ accuweather_name }}_realfeel_temperature_max_2d"
accuweather_hours_of_sun_2d: "sensor.{{ accuweather_name }}_hours_of_sun_2d"
accuweather_uv_index_2d: "sensor.{{ accuweather_name }}_uv_index_2d"
accuweather_thunderstorm_probability_day_2d: "sensor.{{ accuweather_name }}_thunderstorm_probability_day_2d"
accuweather_thunderstorm_probability_night_2d: "sensor.{{ accuweather_name }}_thunderstorm_probability_night_2d"
accuweather_wind_day_2d: "sensor.{{ accuweather_name }}_wind_day_2d"
accuweather_wind_night_2d: "sensor.{{ accuweather_name }}_wind_night_2d"
##### FORCAST ACCUWEATHER - DAY 3 #####
accuweather_realfeel_temperature_min_3d: "sensor.{{ accuweather_name }}_realfeel_temperature_min_3d"
accuweather_realfeel_temperature_max_3d: "sensor.{{ accuweather_name }}_realfeel_temperature_max_3d"
accuweather_hours_of_sun_3d: "sensor.{{ accuweather_name }}_hours_of_sun_3d"
accuweather_uv_index_3d: "sensor.{{ accuweather_name }}_uv_index_3d"
accuweather_thunderstorm_probability_day_3d: "sensor.{{ accuweather_name }}_thunderstorm_probability_day_3d"
accuweather_thunderstorm_probability_night_3d: "sensor.{{ accuweather_name }}_thunderstorm_probability_night_3d"
accuweather_wind_day_3d: "sensor.{{ accuweather_name }}_wind_day_3d"
accuweather_wind_night_3d: "sensor.{{ accuweather_name }}_wind_night_3d"
##### FORCAST ACCUWEATHER - DAY 4 #####
accuweather_realfeel_temperature_min_4d: "sensor.{{ accuweather_name }}_realfeel_temperature_min_4d"
accuweather_realfeel_temperature_max_4d: "sensor.{{ accuweather_name }}_realfeel_temperature_max_4d"
accuweather_hours_of_sun_4d: "sensor.{{ accuweather_name }}_hours_of_sun_4d"
accuweather_uv_index_4d: "sensor.{{ accuweather_name }}_uv_index_4d"
accuweather_thunderstorm_probability_day_4d: "sensor.{{ accuweather_name }}_thunderstorm_probability_day_4d"
accuweather_thunderstorm_probability_night_4d: "sensor.{{ accuweather_name }}_thunderstorm_probability_night_4d"
accuweather_wind_day_4d: "sensor.{{ accuweather_name }}_wind_day_4d"
accuweather_wind_night_4d: "sensor.{{ accuweather_name }}_wind_night_4d"
#############################################################
##### CLOSE - Variables #####
#############################################################
#############################################################
##### START - Trigger #####
#############################################################
trigger:
##### Trigger - General #################################################################################################################
###### DELME - Trigger "nspanel_boot_init" ######
- platform: state
entity_id: input_boolean.trigger_nspanel_boot
to: "on"
id: nspanel_boot_init
##### Reboot - Trigger "nspanel_boot_init" #####
- platform: template
value_template: '{{ states(nextion_inited_trigger) is match "on" }}'
for:
seconds: 1
id: nspanel_boot_init
##### settings_entity - Trigger "settings_entity" #####
- platform: event
event_type: state_changed
event_data:
entity_id: "{{ settings_entity }}"
id: settings_entity
##### Automation reload
- platform: event
event_type: automation_reloaded
id: automation_reloaded
##### TFT Upload - Trigger "tft_upload" #####
- platform: event
event_type: folder_watcher
event_data:
event_type: modified
path: !input "tft_path"
id: tft_upload
##### Time - Trigger "time_state" #####
- platform: time_pattern
minutes: "/1"
id: time_state
#### Weather state changed #######
- platform: event
event_type: state_changed
event_data:
entity_id: '{{ weather_entity }}'
id: weather_state_change
##### HOME Value 01 - Trigger "home_value01_state" #####
- platform: event
event_type: state_changed
event_data:
entity_id: !input "home_value01"
id: home_value01_state
##### HOME Value 02 - Trigger "home_value02_state" #####
- platform: event
event_type: state_changed
event_data:
entity_id: !input "home_value02"
id: home_value02_state
##### HOME Value 03 - Trigger "home_value03_state" #####
- platform: event
event_type: state_changed
event_data:
entity_id: !input "home_value03"
id: home_value03_state
##### Climate - Trigger "climate_state" #####
- platform: event
event_type: state_changed
event_data:
entity_id: !input "climate"
id: climate_state
##### Hot Water - Trigger "hotwatertemp_state" #####
- platform: event
event_type: state_changed
event_data:
entity_id: !input "hotwatertemp"
id: hotwatertemp_state
##### Outdoor Temp - Trigger "outdoortemp_state" #####
- platform: event
event_type: state_changed
event_data:
entity_id: !input "outdoortemp"
id: outdoortemp_state
##### indoor Temp Sensor - Trigger "indoortemp_state" #####
- platform: event
event_type: state_changed
event_data:
entity_id: !input "indoortemp"
id: indoortemp_state
##### NSPAnel Temp Sensor - Trigger "nspaneltemp_state" #####
- platform: event
event_type: state_changed
event_data:
entity_id: '{{ nspaneltemp }}'
id: nspaneltemp_state
##### Hot Water Charge - Trigger "hotwatercharge_state" #####
- platform: event
event_type: state_changed
event_data:
entity_id: !input "hotwatercharge"
id: hotwatercharge_state
##### Chip 01 - Trigger "chip01_state" #####
- platform: event
event_type: state_changed
event_data:
entity_id: !input "chip01"
id: chip01_state
##### Chip 02 - Trigger "chip02_state" #####
- platform: event
event_type: state_changed
event_data:
entity_id: !input "chip02"
id: chip02_state
##### Chip 03 - Trigger "chip03_state" #####
- platform: event
event_type: state_changed
event_data:
entity_id: !input "chip03"
id: chip03_state
##### Chip 04 - Trigger "chip04_state" #####
- platform: event
event_type: state_changed
event_data:
entity_id: !input "chip04"
id: chip04_state
##### Chip 05 - Trigger "chip05_state" #####
- platform: event
event_type: state_changed
event_data:
entity_id: !input "chip05"
id: chip05_state
##### Chip 06 - Trigger "chip06_state" #####
- platform: event
event_type: state_changed
event_data:
entity_id: !input "chip06"
id: chip06_state
##### Chip 07 - Trigger "chip07_state" #####
- platform: event
event_type: state_changed
event_data:
entity_id: !input "chip07"
id: chip07_state
##### Relay01 - Trigger "relay01_state" #####
- platform: event
event_type: state_changed
event_data:
entity_id: '{{ relay01_entity }}'
id: relay01_state
##### Relay02 - Trigger "relay02_state" #####
- platform: event
event_type: state_changed
event_data:
entity_id: '{{ relay02_entity }}'
id: relay02_state
##### Left Button - Trigger "left_button_press" #####
- platform: template
value_template: '{{ states(left_button) is match "on" }}'
id: left_button_press
##### Right Button - Trigger "right_button_press" #####
- platform: template
value_template: '{{ states(right_button) is match "on" }}'
id: right_button_press
##### Left Button - State "left_button_state" #####
- platform: event
event_type: state_changed
event_data:
entity_id: !input "left_button_entity"
id: left_button_state
##### Right Button - State "right_button_state" #####
- platform: event
event_type: state_changed
event_data:
entity_id: !input "right_button_entity"
id: right_button_state
##### Notification Text - Trigger "notification_text_state" #####
- platform: event
event_type: state_changed
event_data:
entity_id: '{{ notification_text }}'
id: notification_text_state
##### Notification Text - Trigger "notification_text_state" #####
- platform: event
event_type: state_changed
event_data:
entity_id: '{{ notification_unread }}'
id: notification_unread_state
#### Show notification - Trigger ####
- platform: template
value_template: '{{ states(last_click) is match "homebutton04release" }}'
id: open_notification_page
#### Notification clear - Trigger ####
- platform: template
value_template: '{{ states(last_click) is match "notificationclearrelease" }}'
id: btn_notificationclearrelease
#### Notification accept - Trigger ####
- platform: template
value_template: '{{ states(last_click) is match "notificationacceptrelease" }}'
id: btn_notificationacceptrelease
#### Show QR code - Trigger ####
- platform: template
value_template: '{{ states(last_click) is match "homebutton05release" }}'
id: open_qrcode_page
#### Show ENTITIES - Trigger ####
- platform: template
value_template: '{{ states(last_click) is match "homebutton06release" }}'
id: open_entity_page
#### Show Climate - Trigger ####
- platform: template
value_template: '{{ states(last_click) is match "weatherpagerelease" }}'
id: open_weather_page
#### Climate - Trigger ####
- platform: template
value_template: '{{ states(last_click) is match "climaterelease" }}'
id: open_climate_page
##### Trigger - Button General #################################################################################################################
##### Page Button - Trigger "short_press" - SHORT Press via "last_click" #####
- platform: template
value_template: '{{ states(last_click) is match "releasebutton" }}'
id: short_press
##### Page Button - Trigger "long_press" - LONG Press via "last_click" - Button LONG Press for jump to Lightsetting or Coversetting Page #####
- platform: template
value_template: '{{ states(last_click) is match "press" }}'
for:
seconds: 1
id: long_press
##### Page Lightsettings - Trigger "light_settings" - Changes Lightsettings Page via "last_click_lightsettings" #####
- platform: event
event_type: state_changed
event_data:
entity_id: "{{ last_click_lightsettings }}"
id: light_settings
##### Page Coversettings - Trigger "cover_settings" - Changes Coversettings Page via "last_click_coversettings" #####
- platform: event
event_type: state_changed
event_data:
entity_id: "{{ last_click_coversettings }}"
id: cover_settings
##### Page Climatesettings - Trigger "climate_settings" - Changes Climatesettings Page via "last_click_climatesettings" #####
- platform: event
event_type: state_changed
event_data:
entity_id: "{{ last_click_climatesettings }}"
id: climate_settings
##### Current page changed #####
- platform: event
event_type: state_changed
event_data:
entity_id: "{{ current_page }}"
id: current_page_changed
##### Page Button - Trigger "button_page" Entity sync #####
- platform: template
value_template: '{{ states(last_click) is match "button" }}'
id: button_page
##### Trigger - Button State change #################################################################################################################
##### Button01 Sync - Trigger "current_state_entity01" #####
- platform: state
entity_id: !input "entity01"
id: current_state_entity01
##### Button02 Sync - Trigger "current_state_entity02" #####
- platform: state
entity_id: !input "entity02"
id: current_state_entity02
##### Button03 Sync - Trigger "current_state_entity03" #####
- platform: state
entity_id: !input "entity03"
id: current_state_entity03
##### Button04 Sync - Trigger "current_state_entity04" #####
- platform: state
entity_id: !input "entity04"
id: current_state_entity04
##### Button05 Sync - Trigger "current_state_entity05" #####
- platform: state
entity_id: !input "entity05"
id: current_state_entity05
##### Button06 Sync - Trigger "current_state_entity06" #####
- platform: state
entity_id: !input "entity06"
id: current_state_entity06
##### Button07 Sync - Trigger "current_state_entity07" #####
- platform: state
entity_id: !input "entity07"
id: current_state_entity07
##### Button08 Sync - Trigger "current_state_entity08" #####
- platform: state
entity_id: !input "entity08"
id: current_state_entity08
##### Button09 Sync - Trigger "current_state_entity09" #####
- platform: state
entity_id: !input "entity09"
id: current_state_entity09
##### Button10 Sync - Trigger "current_state_entity10" #####
- platform: state
entity_id: !input "entity10"
id: current_state_entity10
##### Button11 Sync - Trigger "current_state_entity11" #####
- platform: state
entity_id: !input "entity11"
id: current_state_entity11
##### Button12 Sync - Trigger "current_state_entity12" #####
- platform: state
entity_id: !input "entity12"
id: current_state_entity12
##### Button13 Sync - Trigger "current_state_entity13" #####
- platform: state
entity_id: !input "entity13"
id: current_state_entity13
##### Button14 Sync - Trigger "current_state_entity14" #####
- platform: state
entity_id: !input "entity14"
id: current_state_entity14
##### Button15 Sync - Trigger "current_state_entity15" #####
- platform: state
entity_id: !input "entity15"
id: current_state_entity15
##### Button16 Sync - Trigger "current_state_entity16" #####
- platform: state
entity_id: !input "entity16"
id: current_state_entity16
##### Button17 Sync - Trigger "current_state_entity17" #####
- platform: state
entity_id: !input "entity17"
id: current_state_entity17
##### Button18 Sync - Trigger "current_state_entity18" #####
- platform: state
entity_id: !input "entity18"
id: current_state_entity18
##### Button19 Sync - Trigger "current_state_entity19" #####
- platform: state
entity_id: !input "entity19"
id: current_state_entity19
##### Button20 Sync - Trigger "current_state_entity20" #####
- platform: state
entity_id: !input "entity20"
id: current_state_entity20
##### Button21 Sync - Trigger "current_state_entity21" #####
- platform: state
entity_id: !input "entity21"
id: current_state_entity21
##### Button22 Sync - Trigger "current_state_entity22" #####
- platform: state
entity_id: !input "entity22"
id: current_state_entity22
##### Button23 Sync - Trigger "current_state_entity23" #####
- platform: state
entity_id: !input "entity23"
id: current_state_entity23
##### Button24 Sync - Trigger "current_state_entity24" #####
- platform: state
entity_id: !input "entity24"
id: current_state_entity24
##### Button25 Sync - Trigger "current_state_entity25" #####
- platform: state
entity_id: !input "entity25"
id: current_state_entity25
##### Button26 Sync - Trigger "current_state_entity26" #####
- platform: state
entity_id: !input "entity26"
id: current_state_entity26
##### Button27 Sync - Trigger "current_state_entity27" #####
- platform: state
entity_id: !input "entity27"
id: current_state_entity27
##### Button28 Sync - Trigger "current_state_entity28" #####
- platform: state
entity_id: !input "entity28"
id: current_state_entity28
##### Button29 Sync - Trigger "current_state_entity29" #####
- platform: state
entity_id: !input "entity29"
id: current_state_entity29
##### Button30 Sync - Trigger "current_state_entity30" #####
- platform: state
entity_id: !input "entity30"
id: current_state_entity30
##### Button31 Sync - Trigger "current_state_entity31" #####
- platform: state
entity_id: !input "entity31"
id: current_state_entity31
##### Button32 Sync - Trigger "current_state_entity32" #####
- platform: state
entity_id: !input "entity32"
id: current_state_entity32
#############################################################
##### CLOSE - Trigger #####
#############################################################
#############################################################
##### START - Action #####
#############################################################
#condition: '{{ states(relay01_entity) != "unavailable" and states(relay02_entity) != "unavailable" }}'
condition: '{{ states(nextion_inited_trigger) == "on" }}'
action:
- variables:
#settings_entity_value: '{{ states(settings_entity) }}'
settings_entity_value: >-
{%- if states(settings_entity) != "unavailable" -%} {{ states(settings_entity) }}
{%- else -%} unknown
{%- endif -%}
entity_long: >-
{%- if settings_entity_value != "unknown" and settings_entity_value.split(',') | count >= 1 -%} {{ settings_entity_value.split(',')[0] }}
{%- else -%} unknown
{%- endif -%}
entity_back: >-
{%- if settings_entity_value != "unknown" and settings_entity_value.split(',') | count >= 2 -%} {{ settings_entity_value.split(',')[1] }}
{%- else -%} unknown
{%- endif -%}
entity_long_name: >-
{%- if settings_entity_value != "unknown" and settings_entity_value.split(',') | count >= 3 -%} {{ settings_entity_value.split(',')[2] }}
{%- else -%} unknown
{%- endif -%}
entity_long_icon: >-
{%- if settings_entity_value != "unknown" and settings_entity_value.split(',') | count >= 4 -%} {{ settings_entity_value.split(',')[3] }}
{%- else -%} unknown
{%- endif -%}
entity_long_icon_color: >-
{%- if settings_entity_value != "unknown" and settings_entity_value.split(',') | count >= 5 -%} {{ settings_entity_value.split(',')[4] }}
{%- else -%} unknown
{%- endif -%}
########################################################################################################################
# main - alias: "choose alias (name)"
- choose:
##### JUMP TO - settings page lightsettings /coversettings / climate (SETTINGS ENTITY CHANGED) #####
- conditions:
- condition: trigger
id: settings_entity
- condition: template
value_template: "{{ trigger.event.data.new_state.state != 'unknown' }}"
sequence:
- choose:
- conditions: '{{ entity_long is match "light." }}'
sequence:
- service: "{{ command_printf }}"
data:
cmd: "page {{ page_lightsettings }}"
- conditions: '{{ entity_long is match "cover." }}'
sequence:
- service: "{{ command_printf }}"
data:
cmd: "page {{ page_coversettings }}"
- conditions: '{{ entity_long is match "climate." }}'
sequence:
- service: "{{ command_printf }}"
data:
cmd: "page {{ page_climate }}"
##### BOOT NSPANEL - boot init #####
- conditions:
- condition: trigger
id: nspanel_boot_init
- condition: template
value_template: '{{ states(current_page) != page_home or states(last_click) == "unknown" }}'
sequence:
- delay:
milliseconds: 100
##### NSPanel boot init only #####
- service: "{{ command_text_printf }}"
data:
component: boot.bluep_version
message: "{{ blueprint_version }}"
###### Set local fallback ######
- if:
- condition: template
value_template: '{{ relay_1_local_fallback }}'
then:
- service: switch.turn_on
data:
entity_id: 'switch.{{ nspanel_name }}_relay_1_local_fallback'
else:
- service: switch.turn_off
data:
entity_id: 'switch.{{ nspanel_name }}_relay_1_local_fallback'
- if:
- condition: template
value_template: '{{ relay_2_local_fallback }}'
then:
- service: switch.turn_on
data:
entity_id: 'switch.{{ nspanel_name }}_relay_2_local_fallback'
else:
- service: switch.turn_off
data:
entity_id: 'switch.{{ nspanel_name }}_relay_2_local_fallback'
##### clear notification icon #####
- service: "{{ command_notification_clear }}"
data: {}
###### NSPanel beep ######
- delay:
milliseconds: 2000
- if:
- condition: template
value_template: '{{ is_state(notification_sound, "on") }}'
then:
- service: "{{ command_play_rtttl }}"
data:
song_str: "two short:d=4,o=5,b=100:16e6,16e6"
##### NSPanel boot init finished and jump to Home Page#####
- delay:
milliseconds: "{{ delay_value }}"
- service: "{{ command_printf }}"
data:
cmd: page home
##### PAGE CHANGED - changes when page changed #####
- conditions:
- condition: trigger
id: current_page_changed
sequence:
##### climate-page left - apply climate temperature if climate_optimistic ##### ## TODO - remove from here
- if:
- condition: template
value_template: '{{ trigger.event.data.old_state.state == page_climate }}'
then:
- if:
- condition: template
value_template: '{{ climate_optimistic == true }}'
then:
- variables:
display_target_temperature: "{{states(display_target_temperature) | round(1)}}"
- if:
- condition: template
value_template: '{{ display_target_temperature != 0.0 }}'
then:
- service: climate.set_temperature
data:
entity_id: '{{ entity_long }}'
#hvac_mode: 'heat'
temperature: "{{ display_target_temperature }}"
- choose:
## PAGE HOME ##
- conditions: '{{ trigger.event.data.new_state.state == page_home }}'
alias: 'home page'
sequence: &refresh_page_home
- service: '{{ command_set_settings_entity }}'
data:
entity: 'unknown'
##### NSPanel Date #####
### DATE Font Color ###
- delay:
milliseconds: "{{ delay_value }}"
- service: "{{ command_font_color }}"
data:
component: home.date
message: "{{ date_label_color }}"
### DATE Font ###
- delay:
milliseconds: "{{ delay_value }}"
- service: "{{ command_text_printf }}"
data:
component: home.date
message: "{{ mui_weekday_today }}"
##### NSPanel Time #####
### TIME Font Color ###
- delay:
milliseconds: "{{ delay_value }}"
- service: "{{ command_font_color }}"
data:
component: home.time
message: "{{ time_label_color }}"
### TIME Font ###
- delay:
milliseconds: "{{ delay_value }}"
- service: "{{ command_text_printf }}"
data:
component: home.time
message: "{{ time }}"
### TIME Meridiem Font Color ###
- delay:
milliseconds: "{{ delay_value }}"
- service: "{{ command_font_color }}"
data:
component: home.meridiem
message: "{{ time_label_color }}"
### TIME Meridiem Font ###
- delay:
milliseconds: "{{ delay_value }}"
- service: "{{ command_text_printf }}"
data:
component: home.meridiem
message: "{{ meridiem }}"
##### NSPanel Outdoor Temp #####
- variables:
outdoor_temp: >-
{%- if outdoortemp is match "sensor." and states(outdoortemp).state != "unavailable" -%} {{ states(outdoortemp) |round(1) }}
{%- elif state_attr(weather_entity, "temperature") != None -%} {{state_attr(weather_entity,"temperature") | round(1)}}
{%- else -%} 0
{%- endif -%}
### LABEL Outdoor Temp Font Color ###
- delay:
milliseconds: "{{ delay_value }}"
- service: "{{ command_font_color }}"
data:
component: home.outdoor_temp
message: "{{ home_outdoor_temp_label_color }}"
### LABEL Outdoor Temp Font ###
- delay:
milliseconds: "{{ delay_value }}"
- service: "{{ command_text_printf }}"
data:
component: home.outdoor_temp
message: "{{ outdoor_temp }}°"
##### NSPanel Indoor Temp #####
- variables:
indoor_temp: >-
{%- if indoortemp is match "sensor." and states(indoortemp).state != "unavailable" -%} {{ states(indoortemp) |round(1) }}
{%- else -%} {{ states(nspaneltemp) |round(1) }}
{%- endif -%}
### ICON Indoor Temp Font Color ###
- delay:
milliseconds: "{{ delay_value }}"
- service: "{{ command_font_color }}"
data:
component: home.indoortempicon
message: "{{ home_indoor_temp_icon_color }}"
### ICON Indoor Temp Font ###
- delay:
milliseconds: "{{ delay_value }}"
- service: "{{ command_text_printf }}"
data:
component: home.indoortempicon
message: "{{ home_indoor_temp_icon }}"
### LABEL Indoor Temp Font Color ###
- delay:
milliseconds: "{{ delay_value }}"
- service: "{{ command_font_color }}"
data:
component: home.current_temp
message: "{{ home_indoor_temp_label_color }}"
### LABEL Indoor Temp Font ###
- delay:
milliseconds: "{{ delay_value }}"
- service: "{{ command_text_printf }}"
data:
component: home.current_temp
message: "{{ indoor_temp }}°"
##### Weather Icon Home Page #####
- variables:
weather_pic: >-
{%- if states(weather_entity) == 'sunny' -%} {{ weather_sunny }}
{%- elif states(weather_entity) == 'cloudy' -%} {{ weather_cloudy }}
{%- elif states(weather_entity) == 'rainy' -%} {{ weather_rainy }}
{%- elif states(weather_entity) == 'pouring' -%} {{ weather_pouring }}
{%- elif states(weather_entity) == 'snowy' -%} {{ weather_snowy }}
{%- elif states(weather_entity) == 'hail' -%} {{ weather_hail }}
{%- elif states(weather_entity) == 'snowy-rainy' -%} {{ weather_snowy_rainy }}
{%- elif states(weather_entity) == 'fog' -%} {{ weather_fog }}
{%- elif states(weather_entity) == 'windy' -%} {{ weather_windy }}
{%- elif states(weather_entity) == 'windy-variant' -%} {{ weather_windy-variant }}
{%- elif states(weather_entity) == 'lightning' -%} {{ weather_lightning }}
{%- elif states(weather_entity) == 'partlycloudy' and states('sun.sun') == 'above_horizon' -%} {{ weather_partlycloudy_day }}
{%- elif states(weather_entity) == 'partlycloudy' and states('sun.sun') == 'below_horizon' -%} {{ weather_partlycloudy_night }}
{%- elif states(weather_entity) == 'lightning-rainy' and states('sun.sun') == 'above_horizon' -%} {{ weather_lightning_rainy_day }}
{%- elif states(weather_entity) == 'lightning-rainy' and states('sun.sun') == 'below_horizon' -%} {{ weather_lightning_rainy_night }}
{%- elif states(weather_entity) == 'execptional' and states('sun.sun') == 'above_horizon' -%} {{ weather_execptional_day }}
{%- elif states(weather_entity) == 'execptional' and states('sun.sun') == 'below_horizon' -%} {{ weather_execptional_night }}
{%- elif states(weather_entity) == 'clear-night' -%} {{ weather_clear_night }}
{%- endif -%}
- delay:
milliseconds: "{{ delay_value }}"
- service: "{{ command_printf }}"
data:
cmd: home.weather.pic={{ weather_pic }}
##### NSPanel Left Button Name #####
- if:
- condition: template
value_template: '{{ left_button_name |length > 0 }}'
then:
### LABEL Font Color ###
- delay:
milliseconds: "{{ delay_value }}"
- service: "{{ command_font_color }}"
data:
component: home.left_bt_text
message: "{{ left_button_color }}"
### LABEL Font ###
- delay:
milliseconds: "{{ delay_value }}"
- service: "{{ command_text_printf }}"
data:
component: home.left_bt_text
message: "{{ left_button_name }}"
##### SET Left Hardware Button PIC on Home Page ####
- if:
- condition: template
value_template: '{{ left_button_entity |length > 0 and states(left_button_entity).state != "unavailable" }}'
then:
- variables:
# Hardware Button PIC
left_hardware_button_state: >-
{%- if states(left_button_entity) == 'off' -%} {{ hardware_button_pic_off }}
{%- elif states(left_button_entity) == 'on' -%} {{ hardware_button_pic_on }}
{%- endif -%}
- delay:
milliseconds: "{{ delay_value }}"
- service: "{{ command_printf }}"
data:
cmd: home.left_bt_pic.pic={{ left_hardware_button_state }}
##### NSPanel Right Button Name #####
- if:
- condition: template
value_template: '{{ right_button_name |length > 0 }}'
then:
### LABEL Font Color ###
- delay:
milliseconds: "{{ delay_value }}"
- service: "{{ command_font_color }}"
data:
component: home.right_bt_text
message: "{{ right_button_color }}"
### LABEL Font ###
- delay:
milliseconds: "{{ delay_value }}"
- service: "{{ command_text_printf }}"
data:
component: home.right_bt_text
message: "{{ right_button_name }}"
##### SET Right Hardware Button PIC on Home Page #####
- if:
- condition: template
value_template: '{{ right_button_entity |length > 0 and states(right_button_entity).state != "unavailable" }}'
then:
- variables:
# Hardware Button PIC
right_hardware_button_state: >-
{%- if states(right_button_entity) == 'off' -%} {{ hardware_button_pic_off }}
{%- elif states(right_button_entity) == 'on' -%} {{ hardware_button_pic_on }}
{%- endif -%}
- delay:
milliseconds: "{{ delay_value }}"
- service: "{{ command_printf }}"
data:
cmd: home.right_bt_pic.pic={{ right_hardware_button_state }}
##### StatusBar - Climate Symbol ######
- if:
- condition: template
value_template: '{{ climate |length > 0 }}'
then:
- variables:
chip_climate: >-
{%- if states(climate) == "heat" and state_attr(climate, "hvac_action") != None and state_attr(climate, "hvac_action") == "heating" -%} {{ heat_icon }}
{%- elif states(climate) == "heat" -%} {{ thermostat_icon }}
{%- else -%} {{ blank_icon }}
{%- endif -%}
### ICON Thermostat Font Color ###
- delay:
milliseconds: "{{ delay_value }}"
- service: "{{ command_font_color }}"
data:
component: home.icon_top_03
message: "{{ thermostat_icon_color }}"
### ICON Thermostat Font ###
- delay:
milliseconds: "{{ delay_value }}"
- service: "{{ command_text_printf }}"
data:
component: home.icon_top_03
message: "{{ chip_climate }}"
##### StatusBar - Relay Symbols ######
- variables:
chip_relay01: >-
{%- if states(relay01_entity) == 'on' -%} {{ relay01_icon }}
{%- else -%} {{ blank_icon}}
{%- endif -%}
chip_relay02: >-
{%- if states(relay02_entity) == 'on' -%} {{ relay02_icon }}
{%- else -%} {{ blank_icon }}
{%- endif -%}
### ICON Relay01 Font Color ###
- delay:
milliseconds: "{{ delay_value }}"
- service: "{{ command_font_color }}"
data:
component: home.icon_top_01
message: "{{ relay01_icon_color }}"
### ICON Relay01 Font ###
- delay:
milliseconds: "{{ delay_value }}"
- service: "{{ command_text_printf }}"
data:
component: home.icon_top_01
message: "{{ chip_relay01 }}"
### ICON Relay02 Font Color ###
- delay:
milliseconds: "{{ delay_value }}"
- service: "{{ command_font_color }}"
data:
component: home.icon_top_02
message: "{{ relay02_icon_color }}"
### ICON Relay02 Font ###
- delay:
milliseconds: "{{ delay_value }}"
- service: "{{ command_text_printf }}"
data:
component: home.icon_top_02
message: "{{ chip_relay02 }}"
###### CHIPS 01 - 07 - Statusbar 04 - 10 ######
- delay:
milliseconds: "{{ delay_value }}"
- repeat:
for_each:
- position: home.icon_top_04
entity: "{{ chip01 }}"
entity_icon: "{{ chip01_icon }}"
entity_icon_color: "{{ chip01_icon_color }}"
- position: home.icon_top_05
entity: "{{ chip02 }}"
entity_icon: "{{ chip02_icon }}"
entity_icon_color: "{{ chip02_icon_color }}"
- position: home.icon_top_06
entity: "{{ chip03 }}"
entity_icon: "{{ chip03_icon }}"
entity_icon_color: "{{ chip03_icon_color }}"
- position: home.icon_top_07
entity: "{{ chip04 }}"
entity_icon: "{{ chip04_icon }}"
entity_icon_color: "{{ chip04_icon_color }}"
- position: home.icon_top_08
entity: "{{ chip05 }}"
entity_icon: "{{ chip05_icon }}"
entity_icon_color: "{{ chip05_icon_color }}"
- position: home.icon_top_09
entity: "{{ chip06 }}"
entity_icon: "{{ chip06_icon }}"
entity_icon_color: "{{ chip06_icon_color }}"
- position: home.icon_top_10
entity: "{{ chip07 }}"
entity_icon: "{{ chip07_icon }}"
entity_icon_color: "{{ chip07_icon_color }}"
sequence:
- if:
- condition: template
value_template: '{{ repeat.item.entity |length > 0 }}'
then:
### ICON Font Color ###
- delay:
milliseconds: "{{ delay_value }}"
- service: "{{ command_font_color }}"
data:
component: "{{ repeat.item.position }}"
message: "{{ repeat.item.entity_icon_color }}"
### ICON Font ###
- delay:
milliseconds: "{{ delay_value }}"
- service: "{{ command_text_printf }}"
data:
component: "{{ repeat.item.position }}"
message: >-
{%- if states(repeat.item.entity) == 'on' -%} {{ repeat.item.entity_icon }}
{%- else -%} {{ blank_icon }}
{%- endif -%}
##### HOME VALUE 01 - 03
- delay:
milliseconds: "{{ delay_value }}"
- repeat:
for_each:
- row: home.value01
entity: "{{ home_value01 }}"
entity_icon: "{{ home_value01_icon }}"
entity_icon_color: "{{ home_value01_icon_color }}"
entity_label_color: "{{ home_value01_label_color }}"
- row: home.value02
entity: "{{ home_value02 }}"
entity_icon: "{{ home_value02_icon }}"
entity_icon_color: "{{ home_value02_icon_color }}"
entity_label_color: "{{ home_value02_label_color }}"
- row: home.value03
entity: "{{ home_value03 }}"
entity_icon: "{{ home_value03_icon }}"
entity_icon_color: "{{ home_value03_icon_color }}"
entity_label_color: "{{ home_value03_label_color }}"
sequence:
- if:
- condition: template
value_template: '{{ repeat.item.entity is match "sensor." and states(repeat.item.entity) != "unavailable" }}'
then:
- if:
- condition: template
value_template: '{{ repeat.item.entity_icon |length > 0 }}'
then:
### ICON Font Color ###
- delay:
milliseconds: "{{ delay_value }}"
- service: "{{ command_font_color }}"
data:
component: "{{ repeat.item.row }}_icon"
message: "{{ repeat.item.entity_icon_color }}"
### ICON Font ###
- delay:
milliseconds: "{{ delay_value }}"
- service: "{{ command_text_printf }}"
data:
component: "{{ repeat.item.row }}_icon"
message: "{{ repeat.item.entity_icon }}"
### LABEL Font Color ###
- delay:
milliseconds: "{{ delay_value }}"
- service: "{{ command_font_color }}"
data:
component: "{{ repeat.item.row }}_state"
message: "{{ repeat.item.entity_label_color }}"
### LABEL Font ###
- delay:
milliseconds: "{{ delay_value }}"
- service: "{{ command_text_printf }}"
data:
component: "{{ repeat.item.row }}_state"
message: >
{% if is_number(states(repeat.item.entity)) %}
{{ states(repeat.item.entity) | round(1) }}{{ state_attr(repeat.item.entity, "unit_of_measurement") if state_attr(repeat.item.entity, "unit_of_measurement") else '' }}
{% else %}
{{ states(repeat.item.entity) | default('unknown') }}
{% endif %}
##### Set notify icon #####
- variables:
set_button04_icon: >-
{%- if is_state(notification_unread, 'on') and states(notification_text) |length > 0 -%} {{ home_button04_icon}}
{%- elif is_state(notification_unread, 'off') and states(notification_text) |length > 0 -%} {{ home_button04_icon }}
{%- else -%} {{ blank_icon }}
{%- endif -%}
set_button04_icon_font: >-
{%- if is_state(notification_unread, 'on') and states(notification_text) |length > 0 -%} {{ home_button04_icon_color01 }}
{%- elif is_state(notification_unread, 'off') and states(notification_text) |length > 0 -%} {{ home_button04_icon_color02 }}
{%- else -%} {{ color_03 }}
{%- endif -%}
##### SET ICON Font - Notify #####
- delay:
milliseconds: "{{ delay_value }}"
- service: "{{ command_text_printf }}"
data:
component: home.button04_icon
message: "{{ set_button04_icon }}"
##### SET ICON Font Color - Notify #####
- delay:
milliseconds: "{{ delay_value }}"
- service: "{{ command_font_color }}"
data:
component: home.button04_icon
message: "{{ set_button04_icon_font }}"
###### QR Code - Icon ######
- if:
- condition: template
value_template: '{{ qrcode_enabled == true }}'
then:
### ICON Font Color ###
- delay:
milliseconds: "{{ delay_value }}"
- service: "{{ command_font_color }}"
data:
component: home.button05_icon
message: "{{ home_button05_icon_color }}"
### ICON Font ###
- delay:
milliseconds: "{{ delay_value }}"
- service: "{{ command_text_printf }}"
data:
component: home.button05_icon
message: "{{ home_button05_icon }}"
###### ENTITIES - Icon ######
- if:
- condition: template
value_template: '{{ entitypages_enabled }}'
then:
### ICON Font Color ###
- delay:
milliseconds: "{{ delay_value }}"
- service: "{{ command_font_color }}"
data:
component: home.button06_icon
message: "{{ home_button06_icon_color }}"
### ICON Font ###
- delay:
milliseconds: "{{ delay_value }}"
- service: "{{ command_text_printf }}"
data:
component: home.button06_icon
message: "{{ home_button06_icon }}"
###### SHOW All component when page loading done #####
- delay:
milliseconds: "{{ delay_value }}"
- service: "{{ command_show_all }}"
## PAGE BUTTONPAGE01 ##
- conditions: '{{ trigger.event.data.new_state.state == page_buttonpage01 }}'
alias: 'buttonpage01 page'
sequence: &refresh_page_buttonpage01
- service: '{{ command_set_settings_entity }}'
data:
entity: 'unknown'
##### Button Page Label #####
- if:
- condition: template
value_template: '{{ button_page01_label |length > 0 }}'
then:
- service: "{{ command_text_printf }}"
data:
component: "bpage01_label"
message: "{{ button_page01_label }}"
##### NSPanel build buttons Buttonpage01 #####
- delay:
milliseconds: "{{ delay_value }}"
- repeat:
for_each:
- entity: "{{ entity01 }}"
button_icon: "{{ entity01_icon }}"
button_label: "{{ entity01_name }}"
button_icon_color: "{{ entity01_icon_color }}"
button: buttonpage01.button01
- entity: "{{ entity02 }}"
button_icon: "{{ entity02_icon }}"
button_label: "{{ entity02_name }}"
button_icon_color: "{{ entity02_icon_color }}"
button: buttonpage01.button02
- entity: "{{ entity03 }}"
button_icon: "{{ entity03_icon }}"
button_label: "{{ entity03_name }}"
button_icon_color: "{{ entity03_icon_color }}"
button: buttonpage01.button03
- entity: "{{ entity04 }}"
button_icon: "{{ entity04_icon }}"
button_label: "{{ entity04_name }}"
button_icon_color: "{{ entity04_icon_color }}"
button: buttonpage01.button04
- entity: "{{ entity05 }}"
button_icon: "{{ entity05_icon }}"
button_label: "{{ entity05_name }}"
button_icon_color: "{{ entity05_icon_color }}"
button: buttonpage01.button05
- entity: "{{ entity06 }}"
button_icon: "{{ entity06_icon }}"
button_label: "{{ entity06_name }}"
button_icon_color: "{{ entity06_icon_color }}"
button: buttonpage01.button06
- entity: "{{ entity07 }}"
button_icon: "{{ entity07_icon }}"
button_label: "{{ entity07_name }}"
button_icon_color: "{{ entity07_icon_color }}"
button: buttonpage01.button07
- entity: "{{ entity08 }}"
button_icon: "{{ entity08_icon }}"
button_label: "{{ entity08_name }}"
button_icon_color: "{{ entity08_icon_color }}"
button: buttonpage01.button08
sequence:
- if:
- condition: template
value_template: '{{ repeat.item.entity|length > 0 }}'
then:
- variables:
### component_to_update: "{{ repeat.item.button }}"
current_entity_state: "{{ states(repeat.item.entity) }}"
# Button PIC GRAY/WHITE
btn_pic: >-
{%- if current_entity_state == 'unknown' or current_entity_state == 'unavailable' -%} {{ button_off }}
{%- elif repeat.item.entity is match "light." and current_entity_state == 'on' -%} {{ button_on }}
{%- elif repeat.item.entity is match "light." and current_entity_state == 'off' -%} {{ button_off }}
{%- elif repeat.item.entity is match "switch." and current_entity_state == 'on' -%} {{ button_on }}
{%- elif repeat.item.entity is match "switch." and current_entity_state == 'off' -%} {{ button_off }}
{%- elif repeat.item.entity is match "input_boolean." and current_entity_state == 'on' -%} {{ button_on }}
{%- elif repeat.item.entity is match "input_boolean." and current_entity_state == 'off' -%} {{ button_off }}
{%- elif repeat.item.entity is match "cover." and current_entity_state == 'open' -%} {{ button_on }}
{%- elif repeat.item.entity is match "cover." and current_entity_state == 'closed' -%} {{ button_off }}
{%- elif repeat.item.entity is match "automation." and current_entity_state == 'on' -%} {{ button_on }}
{%- elif repeat.item.entity is match "automation." and current_entity_state == 'off' -%} {{ button_off }}
{%- elif repeat.item.entity is match "button." -%} {{ button_off }}
{%- elif repeat.item.entity is match "input_button." -%} {{ button_off }}
{%- elif repeat.item.entity is match "scene." -%} {{ button_off }}
{%- elif repeat.item.entity is match "script." and current_entity_state == 'on' -%} {{ button_on }}
{%- elif repeat.item.entity is match "script." and current_entity_state == 'off' -%} {{ button_off }}
{%- elif repeat.item.entity is match "person." and current_entity_state == 'home' -%} {{ button_on }}
{%- elif repeat.item.entity is match "person." and current_entity_state != 'home' -%} {{ button_off }}
{%- elif repeat.item.entity is match "binary_sensor." and current_entity_state == 'on' -%} {{ button_on }}
{%- elif repeat.item.entity is match "binary_sensor." and current_entity_state == 'off' -%} {{ button_off }}
{%- elif repeat.item.entity is match "fan." and current_entity_state == 'on' -%} {{ button_on }}
{%- elif repeat.item.entity is match "fan." and current_entity_state == 'off' -%} {{ button_off }}
{%- elif repeat.item.entity is match "climate." and current_entity_state != 'off' -%} {{ button_on }}
{%- elif repeat.item.entity is match "climate." and current_entity_state == 'off' -%} {{ button_off }}
{%- endif -%}
# TEXT, BRIGHTNESS and ICON Background
btn_bg: >-
{%- if current_entity_state == 'unknown' or current_entity_state == 'unavailable' -%} {{ color_02 }}
{%- elif repeat.item.entity is match "button." or repeat.item.entity is match "input_button." or repeat.item.entity is match "scene." -%} {{ color_02 }}
{%- elif current_entity_state == 'on' or current_entity_state == 'open' -%} {{ color_01 }}
{%- elif current_entity_state == 'off' or current_entity_state == 'closed' -%} {{ color_02 }}
{%- elif repeat.item.entity is match "person." and current_entity_state == 'home' -%} {{ color_01 }}
{%- elif repeat.item.entity is match "person." and current_entity_state != 'home' -%} {{ color_02 }}
{%- elif repeat.item.entity is match "climate." and current_entity_state != 'off' -%} {{ color_01 }}
{%- elif repeat.item.entity is match "climate." and current_entity_state == 'off' -%} {{ color_02 }}
{%- endif -%}
# ICON Font Color
btn_icon_font: >-
{%- if current_entity_state == 'unknown' or current_entity_state == 'unavailable' -%} {{ color_05 }}
{%- elif repeat.item.entity is match "button." or repeat.item.entity is match "input_button." or repeat.item.entity is match "scene." -%} {{ color_03 }}
{%- elif current_entity_state == 'on' or current_entity_state == 'open' -%} {{ repeat.item.button_icon_color }}
{%- elif current_entity_state == 'off' or current_entity_state == 'closed' -%} {{ color_03 }}
{%- elif repeat.item.entity is match "person." and current_entity_state == 'home' -%} {{ repeat.item.button_icon_color }}
{%- elif repeat.item.entity is match "person." and current_entity_state != 'home' -%} {{ color_03 }}
{%- elif repeat.item.entity is match "climate." and current_entity_state != 'off' -%} {{ repeat.item.button_icon_color }}
{%- elif repeat.item.entity is match "climate." and current_entity_state == 'off' -%} {{ color_03 }}
{%- endif -%}
# LABEL Font Color
btn_txt_font: >-
{%- if current_entity_state == 'unknown' or current_entity_state == 'unavailable' -%} {{ color_01 }}
{%- elif repeat.item.entity is match "button." or repeat.item.entity is match "input_button." or repeat.item.entity is match "scene." -%} {{ color_01 }}
{%- elif current_entity_state == 'on' or current_entity_state == 'open' -%} {{ color_02 }}
{%- elif current_entity_state == 'off' or current_entity_state == 'closed' -%} {{ color_01 }}
{%- elif repeat.item.entity is match "person." and current_entity_state == 'home' -%} {{ color_02 }}
{%- elif repeat.item.entity is match "person." and current_entity_state != 'home' -%} {{ color_01 }}
{%- elif repeat.item.entity is match "climate." and current_entity_state != 'off' -%} {{ color_02 }}
{%- elif repeat.item.entity is match "climate." and current_entity_state == 'off' -%} {{ color_01 }}
{%- endif -%}
# BRIGHTNESS Font Color
btn_bri_font: "{{ color_02 }}"
# ICON Value
btn_icon: >-
{%- if current_entity_state == 'unknown' or current_entity_state == 'unavailable' -%} {{ button_icon_unknown }}
{%- elif repeat.item.button_icon |length > 0 -%} {{ repeat.item.button_icon }}
{%- elif repeat.item.entity is match "light." -%} {{ button_icon_light }}
{%- elif repeat.item.entity is match "switch." -%} {{ button_icon_switch }}
{%- elif repeat.item.entity is match "input_boolean." -%} {{ button_icon_input_boolan }}
{%- elif repeat.item.entity is match "cover." -%} {{ button_icon_cover }}
{%- elif repeat.item.entity is match "automation." -%} {{ button_icon_automation }}
{%- elif repeat.item.entity is match "button." -%} {{ button_icon_button }}
{%- elif repeat.item.entity is match "input_button." -%} {{ button_icon_input_button }}
{%- elif repeat.item.entity is match "scene." -%} {{ button_icon_screne }}
{%- elif repeat.item.entity is match "script." -%} {{ button_icon_script }}
{%- elif repeat.item.entity is match "person." -%} {{ button_icon_person }}
{%- elif repeat.item.entity is match "binary_sensor." -%} {{ button_icon_binary_sensor }}
{%- elif repeat.item.entity is match "fan." -%} {{ button_icon_fan }}
{%- elif repeat.item.entity is match "climate." -%} {{ button_icon_climate }}
{%- endif -%}
# LABEL Value
btn_label: "{{ repeat.item.button_label }}"
# BRIGHTNESS Value
btn_bri_txt: >-
{%- if current_entity_state == 'unknown' or current_entity_state == 'unavailable' -%} 0
{%- elif repeat.item.entity is match "light." and current_entity_state == 'on' and state_attr(repeat.item.entity, "brightness") != None -%} {{ (state_attr(repeat.item.entity, "brightness") | int * 100 /255) | round(0) }}%
{%- elif repeat.item.entity is match "cover." and current_entity_state == 'open' and state_attr(repeat.item.entity, "current_position") != None -%} {{ (state_attr(repeat.item.entity, "current_position") | int(100)) | round(0) }}%
{%- elif repeat.item.entity is match "climate." and current_entity_state != 'off' and state_attr(repeat.item.entity, "current_temperature") != None -%} {{ (state_attr(repeat.item.entity, "current_temperature") | int) | round(0) }}°
{%- else -%} 0
{%- endif -%}
##### SET Buttons Background ####
#
##### SET Button PIC #####
- service: "{{ command_printf }}"
data:
cmd: "{{ repeat.item.button }}pic.pic={{ btn_pic }}"
##### SET ICON Background #####
- delay:
milliseconds: "{{ delay_value }}"
- service: "{{ command_background_color }}"
data:
component: "{{ repeat.item.button }}icon"
message: "{{ btn_bg }}"
##### SET LABEL Background #####
- delay:
milliseconds: "{{ delay_value }}"
- service: "{{ command_background_color }}"
data:
component: "{{ repeat.item.button }}text"
message: "{{ btn_bg }}"
##### SET BRIGHTNESS Background Color #####
- delay:
milliseconds: "{{ delay_value }}"
- service: "{{ command_background_color }}"
data:
component: "{{ repeat.item.button }}bri"
message: "{{ btn_bg }}"
##### SET Buttons Font Color ####
#
##### SET ICON Font Color #####
- delay:
milliseconds: "{{ delay_value }}"
- service: "{{ command_font_color }}"
data:
component: "{{ repeat.item.button }}icon"
message: "{{ btn_icon_font }}"
##### SET LABEL Font Color #####
- delay:
milliseconds: "{{ delay_value }}"
- service: "{{ command_font_color }}"
data:
component: "{{ repeat.item.button }}text"
message: "{{ btn_txt_font }}"
##### SET BRIGHTNESS Font Color #####
- delay:
milliseconds: "{{ delay_value }}"
- service: "{{ command_font_color }}"
data:
component: "{{ repeat.item.button }}bri"
message: "{{ btn_bri_font }}"
##### SET Buttons Text Value ####
#
##### "ICON" Value #####
- delay:
milliseconds: "{{ delay_value }}"
- service: "{{ command_text_printf }}"
data:
component: "{{ repeat.item.button }}icon"
message: "{{ btn_icon }}"
##### "LABEL" Value #####
- delay:
milliseconds: "{{ delay_value }}"
- service: "{{ command_text_printf }}"
data:
component: "{{ repeat.item.button }}text"
message: "{{ btn_label }}"
##### "BRIGHTNESS" Value #####
- delay:
milliseconds: "{{ delay_value }}"
- if:
- condition: template
value_template: "{{ btn_bri_txt == 0 }}"
then:
- service: "{{ command_text_printf }}"
data:
component: "{{ repeat.item.button }}bri"
message: " "
else:
- service: "{{ command_text_printf }}"
data:
component: "{{ repeat.item.button }}bri"
message: "{{ btn_bri_txt }}"
###### SHOW All component when page loading done #####
- delay:
milliseconds: "{{ delay_value }}"
- service: "{{ command_show_all }}"
## PAGE BUTTONPAGE02 ##
- conditions: '{{ trigger.event.data.new_state.state == page_buttonpage02 }}'
alias: 'buttonpage02 page'
sequence: &refresh_page_buttonpage02
- service: '{{ command_set_settings_entity }}'
data:
entity: 'unknown'
##### Button Page Label #####
- if:
- condition: template
value_template: '{{ button_page02_label |length > 0 }}'
then:
- service: "{{ command_text_printf }}"
data:
component: "bpage02_label"
message: "{{ button_page02_label }}"
##### NSPanel build buttons Buttonpage01 #####
- delay:
milliseconds: "{{ delay_value }}"
- repeat:
for_each:
- entity: "{{ entity09 }}"
button_icon: "{{ entity09_icon }}"
button_label: "{{ entity09_name }}"
button_icon_color: "{{ entity09_icon_color }}"
button: buttonpage02.button01
- entity: "{{ entity10 }}"
button_icon: "{{ entity10_icon }}"
button_label: "{{ entity10_name }}"
button_icon_color: "{{ entity10_icon_color }}"
button: buttonpage02.button02
- entity: "{{ entity11 }}"
button_icon: "{{ entity11_icon }}"
button_label: "{{ entity11_name }}"
button_icon_color: "{{ entity11_icon_color }}"
button: buttonpage02.button03
- entity: "{{ entity12 }}"
button_icon: "{{ entity12_icon }}"
button_label: "{{ entity12_name }}"
button_icon_color: "{{ entity12_icon_color }}"
button: buttonpage02.button04
- entity: "{{ entity13 }}"
button_icon: "{{ entity13_icon }}"
button_label: "{{ entity13_name }}"
button_icon_color: "{{ entity13_icon_color }}"
button: buttonpage02.button05
- entity: "{{ entity14 }}"
button_icon: "{{ entity14_icon }}"
button_label: "{{ entity14_name }}"
button_icon_color: "{{ entity14_icon_color }}"
button: buttonpage02.button06
- entity: "{{ entity15 }}"
button_icon: "{{ entity15_icon }}"
button_label: "{{ entity15_name }}"
button_icon_color: "{{ entity15_icon_color }}"
button: buttonpage02.button07
- entity: "{{ entity16 }}"
button_icon: "{{ entity16_icon }}"
button_label: "{{ entity16_name }}"
button_icon_color: "{{ entity16_icon_color }}"
button: buttonpage02.button08
sequence:
- if:
- condition: template
value_template: '{{ repeat.item.entity|length > 0 }}'
then:
- variables:
### component_to_update: "{{ repeat.item.button }}"
current_entity_state: "{{ states(repeat.item.entity) }}"
# Button PIC GRAY/WHITE
btn_pic: >-
{%- if current_entity_state == 'unknown' or current_entity_state == 'unavailable' -%} {{ button_off }}
{%- elif repeat.item.entity is match "light." and current_entity_state == 'on' -%} {{ button_on }}
{%- elif repeat.item.entity is match "light." and current_entity_state == 'off' -%} {{ button_off }}
{%- elif repeat.item.entity is match "switch." and current_entity_state == 'on' -%} {{ button_on }}
{%- elif repeat.item.entity is match "switch." and current_entity_state == 'off' -%} {{ button_off }}
{%- elif repeat.item.entity is match "input_boolean." and current_entity_state == 'on' -%} {{ button_on }}
{%- elif repeat.item.entity is match "input_boolean." and current_entity_state == 'off' -%} {{ button_off }}
{%- elif repeat.item.entity is match "cover." and current_entity_state == 'open' -%} {{ button_on }}
{%- elif repeat.item.entity is match "cover." and current_entity_state == 'closed' -%} {{ button_off }}
{%- elif repeat.item.entity is match "automation." and current_entity_state == 'on' -%} {{ button_on }}
{%- elif repeat.item.entity is match "automation." and current_entity_state == 'off' -%} {{ button_off }}
{%- elif repeat.item.entity is match "button." -%} {{ button_off }}
{%- elif repeat.item.entity is match "input_button." -%} {{ button_off }}
{%- elif repeat.item.entity is match "scene." -%} {{ button_off }}
{%- elif repeat.item.entity is match "script." and current_entity_state == 'on' -%} {{ button_on }}
{%- elif repeat.item.entity is match "script." and current_entity_state == 'off' -%} {{ button_off }}
{%- elif repeat.item.entity is match "person." and current_entity_state == 'home' -%} {{ button_on }}
{%- elif repeat.item.entity is match "person." and current_entity_state != 'home' -%} {{ button_off }}
{%- elif repeat.item.entity is match "binary_sensor." and current_entity_state == 'on' -%} {{ button_on }}
{%- elif repeat.item.entity is match "binary_sensor." and current_entity_state == 'off' -%} {{ button_off }}
{%- elif repeat.item.entity is match "fan." and current_entity_state == 'on' -%} {{ button_on }}
{%- elif repeat.item.entity is match "fan." and current_entity_state == 'off' -%} {{ button_off }}
{%- elif repeat.item.entity is match "climate." and current_entity_state != 'off' -%} {{ button_on }}
{%- elif repeat.item.entity is match "climate." and current_entity_state == 'off' -%} {{ button_off }}
{%- endif -%}
# TEXT, BRIGHTNESS and ICON Background
btn_bg: >-
{%- if current_entity_state == 'unknown' or current_entity_state == 'unavailable' -%} {{ color_02 }}
{%- elif repeat.item.entity is match "button." or repeat.item.entity is match "input_button." or repeat.item.entity is match "scene." -%} {{ color_02 }}
{%- elif current_entity_state == 'on' or current_entity_state == 'open' -%} {{ color_01 }}
{%- elif current_entity_state == 'off' or current_entity_state == 'closed' -%} {{ color_02 }}
{%- elif repeat.item.entity is match "person." and current_entity_state == 'home' -%} {{ color_01 }}
{%- elif repeat.item.entity is match "person." and current_entity_state != 'home' -%} {{ color_02 }}
{%- elif repeat.item.entity is match "climate." and current_entity_state != 'off' -%} {{ color_01 }}
{%- elif repeat.item.entity is match "climate." and current_entity_state == 'off' -%} {{ color_02 }}
{%- endif -%}
# ICON Font Color
btn_icon_font: >-
{%- if current_entity_state == 'unknown' or current_entity_state == 'unavailable' -%} {{ color_05 }}
{%- elif repeat.item.entity is match "button." or repeat.item.entity is match "input_button." or repeat.item.entity is match "scene." -%} {{ color_03 }}
{%- elif current_entity_state == 'on' or current_entity_state == 'open' -%} {{ repeat.item.button_icon_color }}
{%- elif current_entity_state == 'off' or current_entity_state == 'closed' -%} {{ color_03 }}
{%- elif repeat.item.entity is match "person." and current_entity_state == 'home' -%} {{ repeat.item.button_icon_color }}
{%- elif repeat.item.entity is match "person." and current_entity_state != 'home' -%} {{ color_03 }}
{%- elif repeat.item.entity is match "climate." and current_entity_state != 'off' -%} {{ repeat.item.button_icon_color }}
{%- elif repeat.item.entity is match "climate." and current_entity_state == 'off' -%} {{ color_03 }}
{%- endif -%}
# LABEL Font Color
btn_txt_font: >-
{%- if current_entity_state == 'unknown' or current_entity_state == 'unavailable' -%} {{ color_01 }}
{%- elif repeat.item.entity is match "button." or repeat.item.entity is match "input_button." or repeat.item.entity is match "scene." -%} {{ color_01 }}
{%- elif current_entity_state == 'on' or current_entity_state == 'open' -%} {{ color_02 }}
{%- elif current_entity_state == 'off' or current_entity_state == 'closed' -%} {{ color_01 }}
{%- elif repeat.item.entity is match "person." and current_entity_state == 'home' -%} {{ color_02 }}
{%- elif repeat.item.entity is match "person." and current_entity_state != 'home' -%} {{ color_01 }}
{%- elif repeat.item.entity is match "climate." and current_entity_state != 'off' -%} {{ color_02 }}
{%- elif repeat.item.entity is match "climate." and current_entity_state == 'off' -%} {{ color_01 }}
{%- endif -%}
# BRIGHTNESS Font Color
btn_bri_font: "{{ color_02 }}"
# ICON Value
btn_icon: >-
{%- if current_entity_state == 'unknown' or current_entity_state == 'unavailable' -%} {{ button_icon_unknown }}
{%- elif repeat.item.button_icon |length > 0 -%} {{ repeat.item.button_icon }}
{%- elif repeat.item.entity is match "light." -%} {{ button_icon_light }}
{%- elif repeat.item.entity is match "switch." -%} {{ button_icon_switch }}
{%- elif repeat.item.entity is match "input_boolean." -%} {{ button_icon_input_boolan }}
{%- elif repeat.item.entity is match "cover." -%} {{ button_icon_cover }}
{%- elif repeat.item.entity is match "automation." -%} {{ button_icon_automation }}
{%- elif repeat.item.entity is match "button." -%} {{ button_icon_button }}
{%- elif repeat.item.entity is match "input_button." -%} {{ button_icon_input_button }}
{%- elif repeat.item.entity is match "scene." -%} {{ button_icon_screne }}
{%- elif repeat.item.entity is match "script." -%} {{ button_icon_script }}
{%- elif repeat.item.entity is match "person." -%} {{ button_icon_person }}
{%- elif repeat.item.entity is match "binary_sensor." -%} {{ button_icon_binary_sensor }}
{%- elif repeat.item.entity is match "fan." -%} {{ button_icon_fan }}
{%- elif repeat.item.entity is match "climate." -%} {{ button_icon_climate }}
{%- endif -%}
# LABEL Value
btn_label: "{{ repeat.item.button_label }}"
# BRIGHTNESS Value
btn_bri_txt: >-
{%- if current_entity_state == 'unknown' or current_entity_state == 'unavailable' -%} 0
{%- elif repeat.item.entity is match "light." and current_entity_state == 'on' and state_attr(repeat.item.entity, "brightness") != None -%} {{ (state_attr(repeat.item.entity, "brightness") | int * 100 /255) | round(0) }}%
{%- elif repeat.item.entity is match "cover." and current_entity_state == 'open' and state_attr(repeat.item.entity, "current_position") != None -%} {{ (state_attr(repeat.item.entity, "current_position") | int(100)) | round(0) }}%
{%- elif repeat.item.entity is match "climate." and current_entity_state != 'off' and state_attr(repeat.item.entity, "current_temperature") != None -%} {{ (state_attr(repeat.item.entity, "current_temperature") | int) | round(0) }}°
{%- else -%} 0
{%- endif -%}
##### SET Buttons Background ####
#
##### SET Button PIC #####
- service: "{{ command_printf }}"
data:
cmd: "{{ repeat.item.button }}pic.pic={{ btn_pic }}"
##### SET ICON Background #####
- delay:
milliseconds: "{{ delay_value }}"
- service: "{{ command_background_color }}"
data:
component: "{{ repeat.item.button }}icon"
message: "{{ btn_bg }}"
##### SET LABEL Background #####
- delay:
milliseconds: "{{ delay_value }}"
- service: "{{ command_background_color }}"
data:
component: "{{ repeat.item.button }}text"
message: "{{ btn_bg }}"
##### SET BRIGHTNESS Background Color #####
- delay:
milliseconds: "{{ delay_value }}"
- service: "{{ command_background_color }}"
data:
component: "{{ repeat.item.button }}bri"
message: "{{ btn_bg }}"
##### SET Buttons Font Color ####
#
##### SET ICON Font Color #####
- delay:
milliseconds: "{{ delay_value }}"
- service: "{{ command_font_color }}"
data:
component: "{{ repeat.item.button }}icon"
message: "{{ btn_icon_font }}"
##### SET LABEL Font Color #####
- delay:
milliseconds: "{{ delay_value }}"
- service: "{{ command_font_color }}"
data:
component: "{{ repeat.item.button }}text"
message: "{{ btn_txt_font }}"
##### SET BRIGHTNESS Font Color #####
- delay:
milliseconds: "{{ delay_value }}"
- service: "{{ command_font_color }}"
data:
component: "{{ repeat.item.button }}bri"
message: "{{ btn_bri_font }}"
##### SET Buttons Text Value ####
#
##### "ICON" Value #####
- delay:
milliseconds: "{{ delay_value }}"
- service: "{{ command_text_printf }}"
data:
component: "{{ repeat.item.button }}icon"
message: "{{ btn_icon }}"
##### "LABEL" Value #####
- delay:
milliseconds: "{{ delay_value }}"
- service: "{{ command_text_printf }}"
data:
component: "{{ repeat.item.button }}text"
message: "{{ btn_label }}"
##### "BRIGHTNESS" Value #####
- delay:
milliseconds: "{{ delay_value }}"
- if:
- condition: template
value_template: "{{ btn_bri_txt == 0 }}"
then:
- service: "{{ command_text_printf }}"
data:
component: "{{ repeat.item.button }}bri"
message: " "
else:
- service: "{{ command_text_printf }}"
data:
component: "{{ repeat.item.button }}bri"
message: "{{ btn_bri_txt }}"
###### SHOW All component when page loading done #####
- delay:
milliseconds: "{{ delay_value }}"
- service: "{{ command_show_all }}"
## PAGE BUTTONPAGE03 ##
- conditions: '{{ trigger.event.data.new_state.state == page_buttonpage03 }}'
alias: 'buttonpage03 page'
sequence: &refresh_page_buttonpage03
- service: '{{ command_set_settings_entity }}'
data:
entity: 'unknown'
##### Button Page Label #####
- if:
- condition: template
value_template: '{{ button_page03_label |length > 0 }}'
then:
- service: "{{ command_text_printf }}"
data:
component: "bpage03_label"
message: "{{ button_page03_label }}"
##### NSPanel build buttons Buttonpage01 #####
- delay:
milliseconds: "{{ delay_value }}"
- repeat:
for_each:
- entity: "{{ entity17 }}"
button_icon: "{{ entity17_icon }}"
button_label: "{{ entity17_name }}"
button_icon_color: "{{ entity17_icon_color }}"
button: buttonpage03.button01
- entity: "{{ entity18 }}"
button_icon: "{{ entity18_icon }}"
button_label: "{{ entity18_name }}"
button_icon_color: "{{ entity18_icon_color }}"
button: buttonpage03.button02
- entity: "{{ entity19 }}"
button_icon: "{{ entity19_icon }}"
button_label: "{{ entity19_name }}"
button_icon_color: "{{ entity19_icon_color }}"
button: buttonpage03.button03
- entity: "{{ entity20 }}"
button_icon: "{{ entity20_icon }}"
button_label: "{{ entity20_name }}"
button_icon_color: "{{ entity20_icon_color }}"
button: buttonpage03.button04
- entity: "{{ entity21 }}"
button_icon: "{{ entity21_icon }}"
button_label: "{{ entity21_name }}"
button_icon_color: "{{ entity21_icon_color }}"
button: buttonpage03.button05
- entity: "{{ entity22 }}"
button_icon: "{{ entity22_icon }}"
button_label: "{{ entity22_name }}"
button_icon_color: "{{ entity22_icon_color }}"
button: buttonpage03.button06
- entity: "{{ entity23 }}"
button_icon: "{{ entity23_icon }}"
button_label: "{{ entity23_name }}"
button_icon_color: "{{ entity23_icon_color }}"
button: buttonpage03.button07
- entity: "{{ entity24 }}"
button_icon: "{{ entity24_icon }}"
button_label: "{{ entity24_name }}"
button_icon_color: "{{ entity24_icon_color }}"
button: buttonpage03.button08
sequence:
- if:
- condition: template
value_template: '{{ repeat.item.entity|length > 0 }}'
then:
- variables:
### component_to_update: "{{ repeat.item.button }}"
current_entity_state: "{{ states(repeat.item.entity) }}"
# Button PIC GRAY/WHITE
btn_pic: >-
{%- if current_entity_state == 'unknown' or current_entity_state == 'unavailable' -%} {{ button_off }}
{%- elif repeat.item.entity is match "light." and current_entity_state == 'on' -%} {{ button_on }}
{%- elif repeat.item.entity is match "light." and current_entity_state == 'off' -%} {{ button_off }}
{%- elif repeat.item.entity is match "switch." and current_entity_state == 'on' -%} {{ button_on }}
{%- elif repeat.item.entity is match "switch." and current_entity_state == 'off' -%} {{ button_off }}
{%- elif repeat.item.entity is match "input_boolean." and current_entity_state == 'on' -%} {{ button_on }}
{%- elif repeat.item.entity is match "input_boolean." and current_entity_state == 'off' -%} {{ button_off }}
{%- elif repeat.item.entity is match "cover." and current_entity_state == 'open' -%} {{ button_on }}
{%- elif repeat.item.entity is match "cover." and current_entity_state == 'closed' -%} {{ button_off }}
{%- elif repeat.item.entity is match "automation." and current_entity_state == 'on' -%} {{ button_on }}
{%- elif repeat.item.entity is match "automation." and current_entity_state == 'off' -%} {{ button_off }}
{%- elif repeat.item.entity is match "button." -%} {{ button_off }}
{%- elif repeat.item.entity is match "input_button." -%} {{ button_off }}
{%- elif repeat.item.entity is match "scene." -%} {{ button_off }}
{%- elif repeat.item.entity is match "script." and current_entity_state == 'on' -%} {{ button_on }}
{%- elif repeat.item.entity is match "script." and current_entity_state == 'off' -%} {{ button_off }}
{%- elif repeat.item.entity is match "person." and current_entity_state == 'home' -%} {{ button_on }}
{%- elif repeat.item.entity is match "person." and current_entity_state != 'home' -%} {{ button_off }}
{%- elif repeat.item.entity is match "binary_sensor." and current_entity_state == 'on' -%} {{ button_on }}
{%- elif repeat.item.entity is match "binary_sensor." and current_entity_state == 'off' -%} {{ button_off }}
{%- elif repeat.item.entity is match "fan." and current_entity_state == 'on' -%} {{ button_on }}
{%- elif repeat.item.entity is match "fan." and current_entity_state == 'off' -%} {{ button_off }}
{%- elif repeat.item.entity is match "climate." and current_entity_state != 'off' -%} {{ button_on }}
{%- elif repeat.item.entity is match "climate." and current_entity_state == 'off' -%} {{ button_off }}
{%- endif -%}
# TEXT, BRIGHTNESS and ICON Background
btn_bg: >-
{%- if current_entity_state == 'unknown' or current_entity_state == 'unavailable' -%} {{ color_02 }}
{%- elif repeat.item.entity is match "button." or repeat.item.entity is match "input_button." or repeat.item.entity is match "scene." -%} {{ color_02 }}
{%- elif current_entity_state == 'on' or current_entity_state == 'open' -%} {{ color_01 }}
{%- elif current_entity_state == 'off' or current_entity_state == 'closed' -%} {{ color_02 }}
{%- elif repeat.item.entity is match "person." and current_entity_state == 'home' -%} {{ color_01 }}
{%- elif repeat.item.entity is match "person." and current_entity_state != 'home' -%} {{ color_02 }}
{%- elif repeat.item.entity is match "climate." and current_entity_state != 'off' -%} {{ color_01 }}
{%- elif repeat.item.entity is match "climate." and current_entity_state == 'off' -%} {{ color_02 }}
{%- endif -%}
# ICON Font Color
btn_icon_font: >-
{%- if current_entity_state == 'unknown' or current_entity_state == 'unavailable' -%} {{ color_05 }}
{%- elif repeat.item.entity is match "button." or repeat.item.entity is match "input_button." or repeat.item.entity is match "scene." -%} {{ color_03 }}
{%- elif current_entity_state == 'on' or current_entity_state == 'open' -%} {{ repeat.item.button_icon_color }}
{%- elif current_entity_state == 'off' or current_entity_state == 'closed' -%} {{ color_03 }}
{%- elif repeat.item.entity is match "person." and current_entity_state == 'home' -%} {{ repeat.item.button_icon_color }}
{%- elif repeat.item.entity is match "person." and current_entity_state != 'home' -%} {{ color_03 }}
{%- elif repeat.item.entity is match "climate." and current_entity_state != 'off' -%} {{ repeat.item.button_icon_color }}
{%- elif repeat.item.entity is match "climate." and current_entity_state == 'off' -%} {{ color_03 }}
{%- endif -%}
# LABEL Font Color
btn_txt_font: >-
{%- if current_entity_state == 'unknown' or current_entity_state == 'unavailable' -%} {{ color_01 }}
{%- elif repeat.item.entity is match "button." or repeat.item.entity is match "input_button." or repeat.item.entity is match "scene." -%} {{ color_01 }}
{%- elif current_entity_state == 'on' or current_entity_state == 'open' -%} {{ color_02 }}
{%- elif current_entity_state == 'off' or current_entity_state == 'closed' -%} {{ color_01 }}
{%- elif repeat.item.entity is match "person." and current_entity_state == 'home' -%} {{ color_02 }}
{%- elif repeat.item.entity is match "person." and current_entity_state != 'home' -%} {{ color_01 }}
{%- elif repeat.item.entity is match "climate." and current_entity_state != 'off' -%} {{ color_02 }}
{%- elif repeat.item.entity is match "climate." and current_entity_state == 'off' -%} {{ color_01 }}
{%- endif -%}
# BRIGHTNESS Font Color
btn_bri_font: "{{ color_02 }}"
# ICON Value
btn_icon: >-
{%- if current_entity_state == 'unknown' or current_entity_state == 'unavailable' -%} {{ button_icon_unknown }}
{%- elif repeat.item.button_icon |length > 0 -%} {{ repeat.item.button_icon }}
{%- elif repeat.item.entity is match "light." -%} {{ button_icon_light }}
{%- elif repeat.item.entity is match "switch." -%} {{ button_icon_switch }}
{%- elif repeat.item.entity is match "input_boolean." -%} {{ button_icon_input_boolan }}
{%- elif repeat.item.entity is match "cover." -%} {{ button_icon_cover }}
{%- elif repeat.item.entity is match "automation." -%} {{ button_icon_automation }}
{%- elif repeat.item.entity is match "button." -%} {{ button_icon_button }}
{%- elif repeat.item.entity is match "input_button." -%} {{ button_icon_input_button }}
{%- elif repeat.item.entity is match "scene." -%} {{ button_icon_screne }}
{%- elif repeat.item.entity is match "script." -%} {{ button_icon_script }}
{%- elif repeat.item.entity is match "person." -%} {{ button_icon_person }}
{%- elif repeat.item.entity is match "binary_sensor." -%} {{ button_icon_binary_sensor }}
{%- elif repeat.item.entity is match "fan." -%} {{ button_icon_fan }}
{%- elif repeat.item.entity is match "climate." -%} {{ button_icon_climate }}
{%- endif -%}
# LABEL Value
btn_label: "{{ repeat.item.button_label }}"
# BRIGHTNESS Value
btn_bri_txt: >-
{%- if current_entity_state == 'unknown' or current_entity_state == 'unavailable' -%} 0
{%- elif repeat.item.entity is match "light." and current_entity_state == 'on' and state_attr(repeat.item.entity, "brightness") != None -%} {{ (state_attr(repeat.item.entity, "brightness") | int * 100 /255) | round(0) }}%
{%- elif repeat.item.entity is match "cover." and current_entity_state == 'open' and state_attr(repeat.item.entity, "current_position") != None -%} {{ (state_attr(repeat.item.entity, "current_position") | int(100)) | round(0) }}%
{%- elif repeat.item.entity is match "climate." and current_entity_state != 'off' and state_attr(repeat.item.entity, "current_temperature") != None -%} {{ (state_attr(repeat.item.entity, "current_temperature") | int) | round(0) }}°
{%- else -%} 0
{%- endif -%}
##### SET Buttons Background ####
#
##### SET Button PIC #####
- service: "{{ command_printf }}"
data:
cmd: "{{ repeat.item.button }}pic.pic={{ btn_pic }}"
##### SET ICON Background #####
- delay:
milliseconds: "{{ delay_value }}"
- service: "{{ command_background_color }}"
data:
component: "{{ repeat.item.button }}icon"
message: "{{ btn_bg }}"
##### SET LABEL Background #####
- delay:
milliseconds: "{{ delay_value }}"
- service: "{{ command_background_color }}"
data:
component: "{{ repeat.item.button }}text"
message: "{{ btn_bg }}"
##### SET BRIGHTNESS Background Color #####
- delay:
milliseconds: "{{ delay_value }}"
- service: "{{ command_background_color }}"
data:
component: "{{ repeat.item.button }}bri"
message: "{{ btn_bg }}"
##### SET Buttons Font Color ####
#
##### SET ICON Font Color #####
- delay:
milliseconds: "{{ delay_value }}"
- service: "{{ command_font_color }}"
data:
component: "{{ repeat.item.button }}icon"
message: "{{ btn_icon_font }}"
##### SET LABEL Font Color #####
- delay:
milliseconds: "{{ delay_value }}"
- service: "{{ command_font_color }}"
data:
component: "{{ repeat.item.button }}text"
message: "{{ btn_txt_font }}"
##### SET BRIGHTNESS Font Color #####
- delay:
milliseconds: "{{ delay_value }}"
- service: "{{ command_font_color }}"
data:
component: "{{ repeat.item.button }}bri"
message: "{{ btn_bri_font }}"
##### SET Buttons Text Value ####
#
##### "ICON" Value #####
- delay:
milliseconds: "{{ delay_value }}"
- service: "{{ command_text_printf }}"
data:
component: "{{ repeat.item.button }}icon"
message: "{{ btn_icon }}"
##### "LABEL" Value #####
- delay:
milliseconds: "{{ delay_value }}"
- service: "{{ command_text_printf }}"
data:
component: "{{ repeat.item.button }}text"
message: "{{ btn_label }}"
##### "BRIGHTNESS" Value #####
- delay:
milliseconds: "{{ delay_value }}"
- if:
- condition: template
value_template: "{{ btn_bri_txt == 0 }}"
then:
- service: "{{ command_text_printf }}"
data:
component: "{{ repeat.item.button }}bri"
message: " "
else:
- service: "{{ command_text_printf }}"
data:
component: "{{ repeat.item.button }}bri"
message: "{{ btn_bri_txt }}"
###### SHOW All component when page loading done #####
- delay:
milliseconds: "{{ delay_value }}"
- service: "{{ command_show_all }}"
## PAGE BUTTONPAGE04 ##
- conditions: '{{ trigger.event.data.new_state.state == page_buttonpage04 }}'
alias: 'buttonpage04 page'
sequence: &refresh_page_buttonpage04
- service: '{{ command_set_settings_entity }}'
data:
entity: 'unknown'
##### Button Page Label #####
- if:
- condition: template
value_template: '{{ button_page04_label |length > 0 }}'
then:
- service: "{{ command_text_printf }}"
data:
component: "bpage04_label"
message: "{{ button_page04_label }}"
##### NSPanel build buttons Buttonpage01 #####
- delay:
milliseconds: "{{ delay_value }}"
- repeat:
for_each:
- entity: "{{ entity25 }}"
button_icon: "{{ entity25_icon }}"
button_label: "{{ entity25_name }}"
button_icon_color: "{{ entity25_icon_color }}"
button: buttonpage04.button01
- entity: "{{ entity26 }}"
button_icon: "{{ entity26_icon }}"
button_label: "{{ entity26_name }}"
button_icon_color: "{{ entity26_icon_color }}"
button: buttonpage04.button02
- entity: "{{ entity27 }}"
button_icon: "{{ entity27_icon }}"
button_label: "{{ entity27_name }}"
button_icon_color: "{{ entity27_icon_color }}"
button: buttonpage04.button03
- entity: "{{ entity28 }}"
button_icon: "{{ entity28_icon }}"
button_label: "{{ entity28_name }}"
button_icon_color: "{{ entity28_icon_color }}"
button: buttonpage04.button04
- entity: "{{ entity29 }}"
button_icon: "{{ entity29_icon }}"
button_label: "{{ entity29_name }}"
button_icon_color: "{{ entity29_icon_color }}"
button: buttonpage04.button05
- entity: "{{ entity30 }}"
button_icon: "{{ entity30_icon }}"
button_label: "{{ entity30_name }}"
button_icon_color: "{{ entity30_icon_color }}"
button: buttonpage04.button06
- entity: "{{ entity31 }}"
button_icon: "{{ entity31_icon }}"
button_label: "{{ entity31_name }}"
button_icon_color: "{{ entity31_icon_color }}"
button: buttonpage04.button07
- entity: "{{ entity32 }}"
button_icon: "{{ entity32_icon }}"
button_label: "{{ entity32_name }}"
button_icon_color: "{{ entity32_icon_color }}"
button: buttonpage04.button08
sequence:
- if:
- condition: template
value_template: '{{ repeat.item.entity|length > 0 }}'
then:
- variables:
### component_to_update: "{{ repeat.item.button }}"
current_entity_state: "{{ states(repeat.item.entity) }}"
# Button PIC GRAY/WHITE
btn_pic: >-
{%- if current_entity_state == 'unknown' or current_entity_state == 'unavailable' -%} {{ button_off }}
{%- elif repeat.item.entity is match "light." and current_entity_state == 'on' -%} {{ button_on }}
{%- elif repeat.item.entity is match "light." and current_entity_state == 'off' -%} {{ button_off }}
{%- elif repeat.item.entity is match "switch." and current_entity_state == 'on' -%} {{ button_on }}
{%- elif repeat.item.entity is match "switch." and current_entity_state == 'off' -%} {{ button_off }}
{%- elif repeat.item.entity is match "input_boolean." and current_entity_state == 'on' -%} {{ button_on }}
{%- elif repeat.item.entity is match "input_boolean." and current_entity_state == 'off' -%} {{ button_off }}
{%- elif repeat.item.entity is match "cover." and current_entity_state == 'open' -%} {{ button_on }}
{%- elif repeat.item.entity is match "cover." and current_entity_state == 'closed' -%} {{ button_off }}
{%- elif repeat.item.entity is match "automation." and current_entity_state == 'on' -%} {{ button_on }}
{%- elif repeat.item.entity is match "automation." and current_entity_state == 'off' -%} {{ button_off }}
{%- elif repeat.item.entity is match "button." -%} {{ button_off }}
{%- elif repeat.item.entity is match "input_button." -%} {{ button_off }}
{%- elif repeat.item.entity is match "scene." -%} {{ button_off }}
{%- elif repeat.item.entity is match "script." and current_entity_state == 'on' -%} {{ button_on }}
{%- elif repeat.item.entity is match "script." and current_entity_state == 'off' -%} {{ button_off }}
{%- elif repeat.item.entity is match "person." and current_entity_state == 'home' -%} {{ button_on }}
{%- elif repeat.item.entity is match "person." and current_entity_state != 'home' -%} {{ button_off }}
{%- elif repeat.item.entity is match "binary_sensor." and current_entity_state == 'on' -%} {{ button_on }}
{%- elif repeat.item.entity is match "binary_sensor." and current_entity_state == 'off' -%} {{ button_off }}
{%- elif repeat.item.entity is match "fan." and current_entity_state == 'on' -%} {{ button_on }}
{%- elif repeat.item.entity is match "fan." and current_entity_state == 'off' -%} {{ button_off }}
{%- elif repeat.item.entity is match "climate." and current_entity_state != 'off' -%} {{ button_on }}
{%- elif repeat.item.entity is match "climate." and current_entity_state == 'off' -%} {{ button_off }}
{%- endif -%}
# TEXT, BRIGHTNESS and ICON Background
btn_bg: >-
{%- if current_entity_state == 'unknown' or current_entity_state == 'unavailable' -%} {{ color_02 }}
{%- elif repeat.item.entity is match "button." or repeat.item.entity is match "input_button." or repeat.item.entity is match "scene." -%} {{ color_02 }}
{%- elif current_entity_state == 'on' or current_entity_state == 'open' -%} {{ color_01 }}
{%- elif current_entity_state == 'off' or current_entity_state == 'closed' -%} {{ color_02 }}
{%- elif repeat.item.entity is match "person." and current_entity_state == 'home' -%} {{ color_01 }}
{%- elif repeat.item.entity is match "person." and current_entity_state != 'home' -%} {{ color_02 }}
{%- elif repeat.item.entity is match "climate." and current_entity_state != 'off' -%} {{ color_01 }}
{%- elif repeat.item.entity is match "climate." and current_entity_state == 'off' -%} {{ color_02 }}
{%- endif -%}
# ICON Font Color
btn_icon_font: >-
{%- if current_entity_state == 'unknown' or current_entity_state == 'unavailable' -%} {{ color_05 }}
{%- elif repeat.item.entity is match "button." or repeat.item.entity is match "input_button." or repeat.item.entity is match "scene." -%} {{ color_03 }}
{%- elif current_entity_state == 'on' or current_entity_state == 'open' -%} {{ repeat.item.button_icon_color }}
{%- elif current_entity_state == 'off' or current_entity_state == 'closed' -%} {{ color_03 }}
{%- elif repeat.item.entity is match "person." and current_entity_state == 'home' -%} {{ repeat.item.button_icon_color }}
{%- elif repeat.item.entity is match "person." and current_entity_state != 'home' -%} {{ color_03 }}
{%- elif repeat.item.entity is match "climate." and current_entity_state != 'off' -%} {{ repeat.item.button_icon_color }}
{%- elif repeat.item.entity is match "climate." and current_entity_state == 'off' -%} {{ color_03 }}
{%- endif -%}
# LABEL Font Color
btn_txt_font: >-
{%- if current_entity_state == 'unknown' or current_entity_state == 'unavailable' -%} {{ color_01 }}
{%- elif repeat.item.entity is match "button." or repeat.item.entity is match "input_button." or repeat.item.entity is match "scene." -%} {{ color_01 }}
{%- elif current_entity_state == 'on' or current_entity_state == 'open' -%} {{ color_02 }}
{%- elif current_entity_state == 'off' or current_entity_state == 'closed' -%} {{ color_01 }}
{%- elif repeat.item.entity is match "person." and current_entity_state == 'home' -%} {{ color_02 }}
{%- elif repeat.item.entity is match "person." and current_entity_state != 'home' -%} {{ color_01 }}
{%- elif repeat.item.entity is match "climate." and current_entity_state != 'off' -%} {{ color_02 }}
{%- elif repeat.item.entity is match "climate." and current_entity_state == 'off' -%} {{ color_01 }}
{%- endif -%}
# BRIGHTNESS Font Color
btn_bri_font: "{{ color_02 }}"
# ICON Value
btn_icon: >-
{%- if current_entity_state == 'unknown' or current_entity_state == 'unavailable' -%} {{ button_icon_unknown }}
{%- elif repeat.item.button_icon |length > 0 -%} {{ repeat.item.button_icon }}
{%- elif repeat.item.entity is match "light." -%} {{ button_icon_light }}
{%- elif repeat.item.entity is match "switch." -%} {{ button_icon_switch }}
{%- elif repeat.item.entity is match "input_boolean." -%} {{ button_icon_input_boolan }}
{%- elif repeat.item.entity is match "cover." -%} {{ button_icon_cover }}
{%- elif repeat.item.entity is match "automation." -%} {{ button_icon_automation }}
{%- elif repeat.item.entity is match "button." -%} {{ button_icon_button }}
{%- elif repeat.item.entity is match "input_button." -%} {{ button_icon_input_button }}
{%- elif repeat.item.entity is match "scene." -%} {{ button_icon_screne }}
{%- elif repeat.item.entity is match "script." -%} {{ button_icon_script }}
{%- elif repeat.item.entity is match "person." -%} {{ button_icon_person }}
{%- elif repeat.item.entity is match "binary_sensor." -%} {{ button_icon_binary_sensor }}
{%- elif repeat.item.entity is match "fan." -%} {{ button_icon_fan }}
{%- elif repeat.item.entity is match "climate." -%} {{ button_icon_climate }}
{%- endif -%}
# LABEL Value
btn_label: "{{ repeat.item.button_label }}"
# BRIGHTNESS Value
btn_bri_txt: >-
{%- if current_entity_state == 'unknown' or current_entity_state == 'unavailable' -%} 0
{%- elif repeat.item.entity is match "light." and current_entity_state == 'on' and state_attr(repeat.item.entity, "brightness") != None -%} {{ (state_attr(repeat.item.entity, "brightness") | int * 100 /255) | round(0) }}%
{%- elif repeat.item.entity is match "cover." and current_entity_state == 'open' and state_attr(repeat.item.entity, "current_position") != None -%} {{ (state_attr(repeat.item.entity, "current_position") | int(100)) | round(0) }}%
{%- elif repeat.item.entity is match "climate." and current_entity_state != 'off' and state_attr(repeat.item.entity, "current_temperature") != None -%} {{ (state_attr(repeat.item.entity, "current_temperature") | int) | round(0) }}°
{%- else -%} 0
{%- endif -%}
##### SET Buttons Background ####
#
##### SET Button PIC #####
- service: "{{ command_printf }}"
data:
cmd: "{{ repeat.item.button }}pic.pic={{ btn_pic }}"
##### SET ICON Background #####
- delay:
milliseconds: "{{ delay_value }}"
- service: "{{ command_background_color }}"
data:
component: "{{ repeat.item.button }}icon"
message: "{{ btn_bg }}"
##### SET LABEL Background #####
- delay:
milliseconds: "{{ delay_value }}"
- service: "{{ command_background_color }}"
data:
component: "{{ repeat.item.button }}text"
message: "{{ btn_bg }}"
##### SET BRIGHTNESS Background Color #####
- delay:
milliseconds: "{{ delay_value }}"
- service: "{{ command_background_color }}"
data:
component: "{{ repeat.item.button }}bri"
message: "{{ btn_bg }}"
##### SET Buttons Font Color ####
#
##### SET ICON Font Color #####
- delay:
milliseconds: "{{ delay_value }}"
- service: "{{ command_font_color }}"
data:
component: "{{ repeat.item.button }}icon"
message: "{{ btn_icon_font }}"
##### SET LABEL Font Color #####
- delay:
milliseconds: "{{ delay_value }}"
- service: "{{ command_font_color }}"
data:
component: "{{ repeat.item.button }}text"
message: "{{ btn_txt_font }}"
##### SET BRIGHTNESS Font Color #####
- delay:
milliseconds: "{{ delay_value }}"
- service: "{{ command_font_color }}"
data:
component: "{{ repeat.item.button }}bri"
message: "{{ btn_bri_font }}"
##### SET Buttons Text Value ####
#
##### "ICON" Value #####
- delay:
milliseconds: "{{ delay_value }}"
- service: "{{ command_text_printf }}"
data:
component: "{{ repeat.item.button }}icon"
message: "{{ btn_icon }}"
##### "LABEL" Value #####
- delay:
milliseconds: "{{ delay_value }}"
- service: "{{ command_text_printf }}"
data:
component: "{{ repeat.item.button }}text"
message: "{{ btn_label }}"
##### "BRIGHTNESS" Value #####
- delay:
milliseconds: "{{ delay_value }}"
- if:
- condition: template
value_template: "{{ btn_bri_txt == 0 }}"
then:
- service: "{{ command_text_printf }}"
data:
component: "{{ repeat.item.button }}bri"
message: " "
else:
- service: "{{ command_text_printf }}"
data:
component: "{{ repeat.item.button }}bri"
message: "{{ btn_bri_txt }}"
###### SHOW All component when page loading done #####
- delay:
milliseconds: "{{ delay_value }}"
- service: "{{ command_show_all }}"
## PAGE LIGHTSETTUNGS ##
- conditions: '{{ trigger.event.data.new_state.state == page_lightsettings }}'
alias: 'lightsettings page'
sequence:
- service: "{{ command_text_printf }}"
data:
component: lightsettings.light_name
message: '{{ entity_long_name }}'
##### LIGHT ICON - ON / OFF #####
- variables:
lightsettings_icon_font: >-
{%- if entity_long_icon |length > 0 -%} {{ entity_long_icon }}
{%- else -%} {{ button_icon_light }}
{%- endif -%}
lightsettings_icon_font_color: >-
{%- if states(entity_long) == 'on' -%} {{ entity_long_icon_color }}
{%- else -%} {{ color_03 }}
{%- endif -%}
- delay:
milliseconds: "{{ delay_value }}"
- service: "{{ command_text_printf }}"
data:
component: lightsettings.icon_state
message: "{{ lightsettings_icon_font }}"
- delay:
milliseconds: "{{ delay_value }}"
- service: "{{ command_font_color }}"
data:
component: lightsettings.icon_state
message: "{{ lightsettings_icon_font_color }}"
##### LIGHT State #####
- delay:
milliseconds: "{{ delay_value }}"
- if:
- condition: template
value_template: "{{ state_attr(entity_long, 'brightness') != none }}"
then:
- service: "{{ command_value }}"
data:
component: lightsettings.lightslider
message: '{{ (state_attr(entity_long, "brightness") | int * 100 / 255) |round(0) }}'
- delay:
milliseconds: "{{ delay_value }}"
- service: "{{ command_text_printf }}"
data:
component: lightsettings.light_value
message: '{{ (state_attr(entity_long, "brightness") | int * 100 / 255) | round(0) }}%'
- delay:
milliseconds: "{{ delay_value }}"
- service: "{{ command_text_printf }}"
data:
component: lightsettings.light_value_2
message: '{{ (state_attr(entity_long, "brightness") | int * 100 /255) | round(0) }}%'
else:
- service: "{{ command_value }}"
data:
component: lightsettings.lightslider
message: '0'
- delay:
milliseconds: "{{ delay_value }}"
- service: "{{ command_text_printf }}"
data:
component: lightsettings.light_value
message: '0 %'
- delay:
milliseconds: "{{ delay_value }}"
- service: "{{ command_text_printf }}"
data:
component: lightsettings.light_value_2
message: '0 %'
##### LIGHT Check Color_Temp Value is available when yes send some current Values #####
- if:
- condition: template
value_template: "{{ state_attr(entity_long, 'color_temp') != none }}"
then:
- delay:
milliseconds: "{{ delay_value }}"
- service: "{{ command_text_printf }}"
data:
component: lightsettings.temp_value
message: '{{ (state_attr(entity_long, "color_temp") | int ) |round(0) }}'
- delay:
milliseconds: "{{ delay_value }}"
- service: "{{ command_text_printf }}"
data:
component: lightsettings.temp_value_2
message: '{{ (state_attr(entity_long, "color_temp") | int ) |round(0) }}'
- delay:
milliseconds: "{{ delay_value }}"
- service: "{{ command_value }}"
data:
component: lightsettings.tempslider
message: '{{ (state_attr(entity_long, "color_temp") | int ) |round(0) }}'
## PAGE COVERSETTINGS ##
- conditions: '{{ trigger.event.data.new_state.state == page_coversettings }}'
alias: 'coversettings page'
sequence:
##### COVER - OPEN / CLOSE #####
- variables:
coversettings_icon_font: >-
{%- if entity_long_icon |length > 0 -%} {{ entity_long_icon }}
{%- else -%} {{ button_icon_cover }}
{%- endif -%}
coversettings_icon_font_color: >-
{%- if states(entity_long) == 'open' -%} {{ entity_long_icon_color }}
{%- else -%} {{ color_03 }}
{%- endif -%}
- delay:
milliseconds: "{{ delay_value }}"
- service: "{{ command_text_printf }}"
data:
component: coversettings.icon_state
message: "{{ coversettings_icon_font }}"
- delay:
milliseconds: "{{ delay_value }}"
- service: "{{ command_font_color }}"
data:
component: coversettings.icon_state
message: "{{ coversettings_icon_font_color }}"
- delay:
milliseconds: "{{ delay_value }}"
- service: "{{ command_text_printf }}"
data:
component: coversettings.cover_name
message: '{{ entity_long_name }}'
##### COVER State
- service: "{{ command_value }}"
data:
component: coversettings.coverslider
message: '{{ (state_attr(entity_long, "current_position") | int ) |round(0) }}'
- delay:
milliseconds: "{{ delay_value }}"
- service: "{{ command_text_printf }}"
data:
component: coversettings.cover_value
message: '{{ (state_attr(entity_long, "current_position") | int ) |round(0) }} %'
##### COVER Battery ICON Yes / NO #####
- if:
- condition: template
value_template: "{{ state_attr(entity_long, 'battery') != none }}"
then:
- delay:
milliseconds: "{{ delay_value }}"
- service: "{{ command_text_printf }}"
data:
component: coversettings.battery_value
message: '{{ (state_attr(entity_long, "battery") | int ) |round(0) }} %'
### ICON Battery Font Color ###
- delay:
milliseconds: "{{ delay_value }}"
- service: "{{ command_font_color }}"
data:
component: coversettings.battery_icon
message: "{{ battery_icon_color }}"
### ICON Battery Font ###
- delay:
milliseconds: "{{ delay_value }}"
- service: "{{ command_text_printf }}"
data:
component: coversettings.battery_icon
message: "{{ battery_icon }}"
## ENTITY PAGE 01 ##
- conditions: '{{ trigger.event.data.new_state.state == page_entitypage01 }}'
alias: 'entity01 page'
sequence: &refresh_page_entitypage01
##### ENTITY Page Label #####
- if:
- condition: template
value_template: '{{ entity_page01_label |length > 0 }}'
then:
- service: "{{ command_text_printf }}"
data:
component: "entity01_label"
message: "{{ entity_page01_label }}"
##### Entities #####
- delay:
milliseconds: "{{ delay_value }}"
- repeat:
for_each:
- row: entitypage01.value01
entity: "{{ entities_entity01 }}"
entity_name: "{{ entities_entity01_name }}"
entity_icon: "{{ entities_entity01_icon }}"
- row: entitypage01.value02
entity: "{{ entities_entity02 }}"
entity_name: "{{ entities_entity02_name }}"
entity_icon: "{{ entities_entity02_icon }}"
- row: entitypage01.value03
entity: "{{ entities_entity03 }}"
entity_name: "{{ entities_entity03_name }}"
entity_icon: "{{ entities_entity03_icon }}"
- row: entitypage01.value04
entity: "{{ entities_entity04 }}"
entity_name: "{{ entities_entity04_name }}"
entity_icon: "{{ entities_entity04_icon }}"
- row: entitypage01.value05
entity: "{{ entities_entity05 }}"
entity_name: "{{ entities_entity05_name }}"
entity_icon: "{{ entities_entity05_icon }}"
- row: entitypage01.value06
entity: "{{ entities_entity06 }}"
entity_name: "{{ entities_entity06_name }}"
entity_icon: "{{ entities_entity06_icon }}"
- row: entitypage01.value07
entity: "{{ entities_entity07 }}"
entity_name: "{{ entities_entity07_name }}"
entity_icon: "{{ entities_entity07_icon }}"
- row: entitypage01.value08
entity: "{{ entities_entity08 }}"
entity_name: "{{ entities_entity08_name }}"
entity_icon: "{{ entities_entity08_icon }}"
sequence:
- if:
- condition: template
value_template: '{{ repeat.item.entity|length > 0 }}'
then:
- if:
- condition: template
value_template: '{{ repeat.item.entity_icon |length > 0 }}'
then:
- delay:
milliseconds: "{{ delay_value }}"
- service: "{{ command_text_printf }}"
data:
component: "{{ repeat.item.row }}_pic"
message: "{{ repeat.item.entity_icon }}"
- delay:
milliseconds: "{{ delay_value }}"
- service: "{{ command_text_printf }}"
data:
component: "{{ repeat.item.row }}_label"
message: >-
{%- if repeat.item.entity_name |length > 0 -%} {{ repeat.item.entity_name }}
{%- elif states(repeat.item.entity) == 'unavailable' -%} {{ repeat.item.entity }}
{%- else -%} {{ state_attr(repeat.item.entity, "friendly_name")| default('no name') }}
{%- endif -%}
- delay:
milliseconds: "{{ delay_value }}"
- service: "{{ command_text_printf }}"
data:
component: "{{ repeat.item.row }}"
#message: '{{ states(repeat.item.entity) }} {{ state_attr(repeat.item.entity, "unit_of_measurement")| default("") }}'
message: >-
{%- if state_attr(repeat.item.entity, "unit_of_measurement") == None -%}
{{ states(repeat.item.entity) }}
{%- else -%}
{{ states(repeat.item.entity) }} {{ state_attr(repeat.item.entity, "unit_of_measurement") }}
{%- endif -%}
## ENTITY PAGE 02 ##
- conditions: '{{ trigger.event.data.new_state.state == page_entitypage02 }}'
alias: 'entity02 page'
sequence: &refresh_page_entitypage02
##### ENTITY Page Label #####
- if:
- condition: template
value_template: '{{ entity_page02_label |length > 0 }}'
then:
- service: "{{ command_text_printf }}"
data:
component: "entity02_label"
message: "{{ entity_page02_label }}"
##### Entities #####
- delay:
milliseconds: "{{ delay_value }}"
- repeat:
for_each:
- row: entitypage02.value01
entity: "{{ entities_entity09 }}"
entity_name: "{{ entities_entity09_name }}"
entity_icon: "{{ entities_entity09_icon }}"
- row: entitypage02.value02
entity: "{{ entities_entity10 }}"
entity_name: "{{ entities_entity10_name }}"
entity_icon: "{{ entities_entity10_icon }}"
- row: entitypage02.value03
entity: "{{ entities_entity11 }}"
entity_name: "{{ entities_entity11_name }}"
entity_icon: "{{ entities_entity11_icon }}"
- row: entitypage02.value04
entity: "{{ entities_entity12 }}"
entity_name: "{{ entities_entity12_name }}"
entity_icon: "{{ entities_entity12_icon }}"
- row: entitypage02.value05
entity: "{{ entities_entity13 }}"
entity_name: "{{ entities_entity13_name }}"
entity_icon: "{{ entities_entity13_icon }}"
- row: entitypage02.value06
entity: "{{ entities_entity14 }}"
entity_name: "{{ entities_entity14_name }}"
entity_icon: "{{ entities_entity14_icon }}"
- row: entitypage02.value07
entity: "{{ entities_entity15 }}"
entity_name: "{{ entities_entity15_name }}"
entity_icon: "{{ entities_entity15_icon }}"
- row: entitypage02.value08
entity: "{{ entities_entity16 }}"
entity_name: "{{ entities_entity16_name }}"
entity_icon: "{{ entities_entity16_icon }}"
sequence:
- if:
- condition: template
value_template: '{{ repeat.item.entity|length > 0 }}'
then:
- if:
- condition: template
value_template: '{{ repeat.item.entity_icon |length > 0 }}'
then:
- delay:
milliseconds: "{{ delay_value }}"
- service: "{{ command_text_printf }}"
data:
component: "{{ repeat.item.row }}_pic"
message: "{{ repeat.item.entity_icon }}"
- delay:
milliseconds: "{{ delay_value }}"
- service: "{{ command_text_printf }}"
data:
component: "{{ repeat.item.row }}_label"
message: >-
{%- if repeat.item.entity_name |length > 0 -%} {{ repeat.item.entity_name }}
{%- elif states(repeat.item.entity) == 'unavailable' -%} {{ repeat.item.entity }}
{%- else -%} {{ state_attr(repeat.item.entity, "friendly_name")| default('no name') }}
{%- endif -%}
- delay:
milliseconds: "{{ delay_value }}"
- service: "{{ command_text_printf }}"
data:
component: "{{ repeat.item.row }}"
#message: '{{ states(repeat.item.entity) }} {{ state_attr(repeat.item.entity, "unit_of_measurement")| default("") }}'
message: >-
{%- if state_attr(repeat.item.entity, "unit_of_measurement") == None -%}
{{ states(repeat.item.entity) }}
{%- else -%}
{{ states(repeat.item.entity) }} {{ state_attr(repeat.item.entity, "unit_of_measurement") }}
{%- endif -%}
## ENTITY PAGE 03 ##
- conditions: '{{ trigger.event.data.new_state.state == page_entitypage03 }}'
alias: 'entity03 page'
sequence: &refresh_page_entitypage03
##### ENTITY Page Label #####
- if:
- condition: template
value_template: '{{ entity_page03_label |length > 0 }}'
then:
- service: "{{ command_text_printf }}"
data:
component: "entity03_label"
message: "{{ entity_page03_label }}"
##### Entities #####
- delay:
milliseconds: "{{ delay_value }}"
- repeat:
for_each:
- row: entitypage03.value01
entity: "{{ entities_entity17 }}"
entity_name: "{{ entities_entity17_name }}"
entity_icon: "{{ entities_entity17_icon }}"
- row: entitypage03.value02
entity: "{{ entities_entity18 }}"
entity_name: "{{ entities_entity18_name }}"
entity_icon: "{{ entities_entity18_icon }}"
- row: entitypage03.value03
entity: "{{ entities_entity19 }}"
entity_name: "{{ entities_entity19_name }}"
entity_icon: "{{ entities_entity19_icon }}"
- row: entitypage03.value04
entity: "{{ entities_entity20 }}"
entity_name: "{{ entities_entity20_name }}"
entity_icon: "{{ entities_entity20_icon }}"
- row: entitypage03.value05
entity: "{{ entities_entity21 }}"
entity_name: "{{ entities_entity21_name }}"
entity_icon: "{{ entities_entity21_icon }}"
- row: entitypage03.value06
entity: "{{ entities_entity22 }}"
entity_name: "{{ entities_entity22_name }}"
entity_icon: "{{ entities_entity22_icon }}"
- row: entitypage03.value07
entity: "{{ entities_entity23 }}"
entity_name: "{{ entities_entity23_name }}"
entity_icon: "{{ entities_entity23_icon }}"
- row: entitypage03.value08
entity: "{{ entities_entity24 }}"
entity_name: "{{ entities_entity24_name }}"
entity_icon: "{{ entities_entity24_icon }}"
sequence:
- if:
- condition: template
value_template: '{{ repeat.item.entity|length > 0 }}'
then:
- if:
- condition: template
value_template: '{{ repeat.item.entity_icon |length > 0 }}'
then:
- service: "{{ command_text_printf }}"
data:
component: "{{ repeat.item.row }}_pic"
message: "{{ repeat.item.entity_icon }}"
- service: "{{ command_text_printf }}"
data:
component: "{{ repeat.item.row }}_label"
message: >-
{%- if repeat.item.entity_name |length > 0 -%} {{ repeat.item.entity_name }}
{%- elif states(repeat.item.entity) == 'unavailable' -%} {{ repeat.item.entity }}
{%- else -%} {{ state_attr(repeat.item.entity, "friendly_name")| default('no name') }}
{%- endif -%}
- service: "{{ command_text_printf }}"
data:
component: "{{ repeat.item.row }}"
#message: '{{ states(repeat.item.entity) }} {{ state_attr(repeat.item.entity, "unit_of_measurement")| default("") }}'
message: >-
{%- if state_attr(repeat.item.entity, "unit_of_measurement") == None -%}
{{ states(repeat.item.entity) }}
{%- else -%}
{{ states(repeat.item.entity) }} {{ state_attr(repeat.item.entity, "unit_of_measurement") }}
{%- endif -%}
## ENTITY PAGE 04 ##
- conditions: '{{ trigger.event.data.new_state.state == page_entitypage04 }}'
alias: 'entity04 page'
sequence: &refresh_page_entitypage04
##### ENTITY Page Label #####
- if:
- condition: template
value_template: '{{ entity_page04_label |length > 0 }}'
then:
- service: "{{ command_text_printf }}"
data:
component: "entity04_label"
message: "{{ entity_page04_label }}"
##### Entities #####
- delay:
milliseconds: "{{ delay_value }}"
- repeat:
for_each:
- row: entitypage04.value01
entity: "{{ entities_entity25 }}"
entity_name: "{{ entities_entity25_name }}"
entity_icon: "{{ entities_entity25_icon }}"
- row: entitypage04.value02
entity: "{{ entities_entity26 }}"
entity_name: "{{ entities_entity26_name }}"
entity_icon: "{{ entities_entity26_icon }}"
- row: entitypage04.value03
entity: "{{ entities_entity27 }}"
entity_name: "{{ entities_entity27_name }}"
entity_icon: "{{ entities_entity27_icon }}"
- row: entitypage04.value04
entity: "{{ entities_entity28 }}"
entity_name: "{{ entities_entity28_name }}"
entity_icon: "{{ entities_entity28_icon }}"
- row: entitypage04.value05
entity: "{{ entities_entity29 }}"
entity_name: "{{ entities_entity29_name }}"
entity_icon: "{{ entities_entity29_icon }}"
- row: entitypage04.value06
entity: "{{ entities_entity30 }}"
entity_name: "{{ entities_entity30_name }}"
entity_icon: "{{ entities_entity30_icon }}"
- row: entitypage04.value07
entity: "{{ entities_entity31 }}"
entity_name: "{{ entities_entity31_name }}"
entity_icon: "{{ entities_entity31_icon }}"
- row: entitypage04.value08
entity: "{{ entities_entity32 }}"
entity_name: "{{ entities_entity32_name }}"
entity_icon: "{{ entities_entity32_icon }}"
sequence:
- if:
- condition: template
value_template: '{{ repeat.item.entity|length > 0 }}'
then:
- if:
- condition: template
value_template: '{{ repeat.item.entity_icon |length > 0 }}'
then:
- service: "{{ command_text_printf }}"
data:
component: "{{ repeat.item.row }}_pic"
message: "{{ repeat.item.entity_icon }}"
- service: "{{ command_text_printf }}"
data:
component: "{{ repeat.item.row }}_label"
message: >-
{%- if repeat.item.entity_name |length > 0 -%} {{ repeat.item.entity_name }}
{%- elif states(repeat.item.entity) == 'unavailable' -%} {{ repeat.item.entity }}
{%- else -%} {{ state_attr(repeat.item.entity, "friendly_name")| default('no name') }}
{%- endif -%}
- service: "{{ command_text_printf }}"
data:
component: "{{ repeat.item.row }}"
#message: '{{ states(repeat.item.entity) }} {{ state_attr(repeat.item.entity, "unit_of_measurement")| default("") }}'
message: >-
{%- if state_attr(repeat.item.entity, "unit_of_measurement") == None -%}
{{ states(repeat.item.entity) }}
{%- else -%}
{{ states(repeat.item.entity) }} {{ state_attr(repeat.item.entity, "unit_of_measurement") }}
{%- endif -%}
## PAGE CLIMATE ##
- conditions: '{{ trigger.event.data.new_state.state == page_climate }}'
alias: 'climate page'
sequence:
- variables:
hvac_mode: "{{ states(entity_long) }}"
outdoor_temp: >-
{%- if outdoortemp is match "sensor." and states(outdoortemp).state != "unavailable" -%} {{ states(outdoortemp) |round(0) }}
{%- elif state_attr(weather_entity, "temperature") != None -%} {{state_attr(weather_entity,"temperature") | round(0)}}
{%- else -%} 0
{%- endif -%}
heating_state: "{{ mui[language].climate.states.off if hvac_mode == 'off' else mui[language].climate.states.on }}"
- service: "{{ command_text_printf }}"
data:
component: climate.climate_label
message: '{{ entity_long_name }}'
- delay:
milliseconds: "{{ delay_value }}"
- service: "{{ command_text_printf }}"
data:
component: outdoor_temp
message: "{{ outdoor_temp }}°"
- service: "{{ command_text_printf }}"
data:
component: current_temp
message: "{{state_attr(entity_long, 'current_temperature') | round(1)}}°"
- if:
condition: template
value_template: '{{ hvac_mode != "off" }}'
then:
- variables:
target_temp: "{{state_attr(entity_long, 'temperature') | round(1)}}"
- service: "{{ command_thermostat_cycle }}"
data:
value: "{{target_temp}}"
else:
- service: "{{ command_thermostat_cycle }}"
data:
value: "0"
- service: "{{ command_text_printf }}"
data:
component: target_temp
message: " "
- service: "{{ command_text_printf }}"
data:
component: heating_state
message: "{{heating_state}}"
# HVAC Button PIC
- variables:
heating_bt_pic: >-
{%- if hvac_mode == "off" -%} {{ heating_bt_pic_off }}
{%- else -%} {{ heating_bt_pic_on }}
{%- endif -%}
- delay:
milliseconds: "{{ delay_value }}"
- service: "{{ command_printf }}"
data:
cmd: heating_bt_pic.pic={{ heating_bt_pic }}
- variables:
hotw_bt_pic: >-
{%- if hotwatercharge | length > 0 and states(hotwatercharge) == 'on' -%} {{ hotw_bt_on }}
{%- elif hotwatercharge | length > 0 and states(hotwatercharge) == 'off' -%} {{ hotw_bt_off }}
{%- else -%} {{ hotw_bt_blank }}
{%- endif -%}
- service: "{{ command_printf }}"
data:
cmd: hotw_bt_pic.pic={{ hotw_bt_pic }}
- if:
- condition: template
value_template: '{{ hotwatertemp is match "sensor." }}'
then:
- service: "{{ command_text_printf }}"
data:
component: climate.hotwater_temp
message: "{{ states(hotwatertemp) |round(1) }}°"
## PAGE WEATHE01 ##
- conditions: '{{ trigger.event.data.new_state.state == page_weather01 }}'
alias: 'weather01 page'
sequence:
- choose:
### DEFAULT - WEATHER ###
- conditions: '{{ weather == "Default" }}'
sequence:
- variables:
# weather PIC
weather_icon: >-
{%- if states(weather_entity) == 'sunny' -%} {{ weather_sunny }}
{%- elif states(weather_entity) == 'cloudy' -%} {{ weather_cloudy }}
{%- elif states(weather_entity) == 'rainy' -%} {{ weather_rainy }}
{%- elif states(weather_entity) == 'pouring' -%} {{ weather_pouring }}
{%- elif states(weather_entity) == 'snowy' -%} {{ weather_snowy }}
{%- elif states(weather_entity) == 'hail' -%} {{ weather_hail }}
{%- elif states(weather_entity) == 'snowy-rainy' -%} {{ weather_snowy_rainy }}
{%- elif states(weather_entity) == 'fog' -%} {{ weather_fog }}
{%- elif states(weather_entity) == 'windy' -%} {{ weather_windy }}
{%- elif states(weather_entity) == 'windy-variant' -%} {{ weather_windy-variant }}
{%- elif states(weather_entity) == 'lightning' -%} {{ weather_lightning }}
{%- elif states(weather_entity) == 'partlycloudy' and states('sun.sun') == 'above_horizon' -%} {{ weather_partlycloudy_day }}
{%- elif states(weather_entity) == 'partlycloudy' and states('sun.sun') == 'below_horizon' -%} {{ weather_partlycloudy_night }}
{%- elif states(weather_entity) == 'lightning-rainy' and states('sun.sun') == 'above_horizon' -%} {{ weather_lightning_rainy_day }}
{%- elif states(weather_entity) == 'lightning-rainy' and states('sun.sun') == 'below_horizon' -%} {{ weather_lightning_rainy_night }}
{%- elif states(weather_entity) == 'execptional' and states('sun.sun') == 'above_horizon' -%} {{ weather_execptional_day }}
{%- elif states(weather_entity) == 'execptional' and states('sun.sun') == 'below_horizon' -%} {{ weather_execptional_night }}
{%- elif states(weather_entity) == 'clear-night' -%} {{ weather_clear_night }}
{%- endif -%}
##### SET weather PIC on Home Page ####
- service: "{{ command_printf }}"
data:
cmd: weather01.weather_icon.pic={{ weather_icon }}
- delay:
milliseconds: "{{ delay_value }}"
##### SET TEMP MAX ####
- service: "{{ command_text_printf }}"
data:
component: weather01.temp_max ### Temperature MAX ###
message: '{{state_attr(weather_entity,"temperature") | round(0)}}°'
- delay:
milliseconds: "{{ delay_value }}"
##### Day Name #####
- service: "{{ command_text_printf }}"
data:
component: weather01.day
message: "{{ mui[language].today }}"
- delay:
milliseconds: "{{ delay_value }}"
##### Day Date #####
- service: "{{ command_text_printf }}"
data:
component: weather01.date
message: "{{ mui_weekday_today }}"
- delay:
milliseconds: "{{ delay_value }}"
##### field 1 #####
##### field 2 #####
##### field 3 #####
- service: "{{ command_text_printf }}"
data:
component: weather01.value03
message: '{{state_attr(weather_entity,"wind_speed") | round(0)}} km/h'
- delay:
milliseconds: "{{ delay_value }}"
- service: "{{ command_text_printf }}"
data:
component: weather01.value03_icon
message: "{{ weather_icon_wind }}"
- delay:
milliseconds: "{{ delay_value }}"
##### field 4 #####
##### field 5 #####
### ACCUWEATHER - WEATHER ###
- conditions: '{{ weather == "AccuWeather" }}'
sequence:
- variables:
# weather PIC
weather_icon: >-
{%- if state_attr(weather_entity,"forecast")[0].condition == 'sunny' -%} {{ weather_sunny }}
{%- elif state_attr(weather_entity,"forecast")[0].condition == 'cloudy' -%} {{ weather_cloudy }}
{%- elif state_attr(weather_entity,"forecast")[0].condition == 'rainy' -%} {{ weather_rainy }}
{%- elif state_attr(weather_entity,"forecast")[0].condition == 'pouring' -%} {{ weather_pouring }}
{%- elif state_attr(weather_entity,"forecast")[0].condition == 'snowy' -%} {{ weather_snowy }}
{%- elif state_attr(weather_entity,"forecast")[0].condition == 'hail' -%} {{ weather_hail }}
{%- elif state_attr(weather_entity,"forecast")[0].condition == 'snowy-rainy' -%} {{ weather_snowy_rainy }}
{%- elif state_attr(weather_entity,"forecast")[0].condition == 'fog' -%} {{ weather_fog }}
{%- elif state_attr(weather_entity,"forecast")[0].condition == 'windy' -%} {{ weather_windy }}
{%- elif state_attr(weather_entity,"forecast")[0].condition == 'windy-variant' -%} {{ weather_windy-variant }}
{%- elif state_attr(weather_entity,"forecast")[0].condition == 'lightning' -%} {{ weather_lightning }}
{%- elif state_attr(weather_entity,"forecast")[0].condition == 'partlycloudy' -%} {{ weather_partlycloudy_day }}
{%- elif state_attr(weather_entity,"forecast")[0].condition == 'lightning-rainy' -%} {{ weather_lightning_rainy_day }}
{%- elif state_attr(weather_entity,"forecast")[0].condition == 'execptional' -%} {{ weather_execptional_day }}
{%- elif state_attr(weather_entity,"forecast")[0].condition == 'clear-night' -%} {{ weather_clear_night }}
{%- endif -%}
##### SET weather PIC on Home Page ####
- service: "{{ command_printf }}"
data:
cmd: weather01.weather_icon.pic={{ weather_icon }}
- delay:
milliseconds: "{{ delay_value }}"
##### SET TEMP MIN ####
- service: "{{ command_text_printf }}"
data:
component: weather01.temp_min ### Temperature MIN ###
message: '{{states(accuweather_realfeel_temperature_min_0d) | round(0)}}°'
- delay:
milliseconds: "{{ delay_value }}"
##### Slash #####
- service: "{{ command_text_printf }}"
data:
component: weather01.slash
message: '/'
- delay:
milliseconds: "{{ delay_value }}"
##### SET TEMP MAX ####
- service: "{{ command_text_printf }}"
data:
component: weather01.temp_max ### Temperature MAX ###
message: '{{states(accuweather_realfeel_temperature_max_0d) | round(0)}}°'
- delay:
milliseconds: "{{ delay_value }}"
##### Day Name #####
- service: "{{ command_text_printf }}"
data:
component: weather01.day
message: "{{ mui[language].today }}"
- delay:
milliseconds: "{{ delay_value }}"
##### Day Date #####
- service: "{{ command_text_printf }}"
data:
component: weather01.date
message: "{{ mui_weekday_today }}"
- delay:
milliseconds: "{{ delay_value }}"
##### field 1 #####
- service: "{{ command_text_printf }}"
data:
component: weather01.value01
message: "{{ state_attr(weather_entity,'forecast')[0].precipitation_probability}} %"
- delay:
milliseconds: "{{ delay_value }}"
- service: "{{ command_text_printf }}"
data:
component: weather01.value01_icon
message: "{{ weather_icon_rain }}"
- delay:
milliseconds: "{{ delay_value }}"
##### field 2 #####
- service: "{{ command_text_printf }}"
data:
component: weather01.value02
message: "{{states(accuweather_hours_of_sun_0d) | round(0)}} h"
- delay:
milliseconds: "{{ delay_value }}"
- service: "{{ command_text_printf }}"
data:
component: weather01.value02_icon
message: "{{ weather_icon_sun }}"
- delay:
milliseconds: "{{ delay_value }}"
##### field 3 #####
- service: "{{ command_text_printf }}"
data:
component: weather01.value03
message: "{{state_attr(accuweather_uv_index_0d, 'level')}} {{states(accuweather_uv_index_0d) | round(0)}}"
- delay:
milliseconds: "{{ delay_value }}"
- service: "{{ command_text_printf }}"
data:
component: weather01.value03_icon
message: "{{ weather_icon_protect }}"
- delay:
milliseconds: "{{ delay_value }}"
##### field 4 #####
- service: "{{ command_text_printf }}"
data:
component: weather01.value04
message: "{{states(accuweather_thunderstorm_probability_day_0d) | round(0)}} %"
- delay:
milliseconds: "{{ delay_value }}"
- service: "{{ command_text_printf }}"
data:
component: weather01.value04_icon
message: "{{ weather_icon_lightning }}"
- delay:
milliseconds: "{{ delay_value }}"
##### field 5 #####
- service: "{{ command_text_printf }}"
data:
component: weather01.value05
message: "{{states(accuweather_wind_day_0d) | round(0)}} km/h"
- delay:
milliseconds: "{{ delay_value }}"
- service: "{{ command_text_printf }}"
data:
component: weather01.value05_icon
message: "{{ weather_icon_wind }}"
### DEFAULT ###
default:
- service: "{{ command_printf }}"
data:
cmd: "page {{ page_home }}"
## PAGE WEATHE02 ##
- conditions: '{{ trigger.event.data.new_state.state == page_weather02 }}'
alias: 'weather02 page'
sequence:
- choose:
### DEFAULT - WEATHER ###
- conditions: '{{ weather == "Default" }}'
sequence:
- variables:
# weather PIC
weather_icon: >-
{%- if state_attr(weather_entity,"forecast")[0].condition == 'sunny' -%} {{ weather_sunny }}
{%- elif state_attr(weather_entity,"forecast")[0].condition == 'cloudy' -%} {{ weather_cloudy }}
{%- elif state_attr(weather_entity,"forecast")[0].condition == 'rainy' -%} {{ weather_rainy }}
{%- elif state_attr(weather_entity,"forecast")[0].condition == 'pouring' -%} {{ weather_pouring }}
{%- elif state_attr(weather_entity,"forecast")[0].condition == 'snowy' -%} {{ weather_snowy }}
{%- elif state_attr(weather_entity,"forecast")[0].condition == 'hail' -%} {{ weather_hail }}
{%- elif state_attr(weather_entity,"forecast")[0].condition == 'snowy-rainy' -%} {{ weather_snowy_rainy }}
{%- elif state_attr(weather_entity,"forecast")[0].condition == 'fog' -%} {{ weather_fog }}
{%- elif state_attr(weather_entity,"forecast")[0].condition == 'windy' -%} {{ weather_windy }}
{%- elif state_attr(weather_entity,"forecast")[0].condition == 'windy-variant' -%} {{ weather_windy-variant }}
{%- elif state_attr(weather_entity,"forecast")[0].condition == 'lightning' -%} {{ weather_lightning }}
{%- elif state_attr(weather_entity,"forecast")[0].condition == 'partlycloudy' -%} {{ weather_partlycloudy_day }}
{%- elif state_attr(weather_entity,"forecast")[0].condition == 'lightning-rainy' -%} {{ weather_lightning_rainy_day }}
{%- elif state_attr(weather_entity,"forecast")[0].condition == 'execptional' -%} {{ weather_execptional_day }}
{%- elif state_attr(weather_entity,"forecast")[0].condition == 'clear-night' -%} {{ weather_clear_night }}
{%- endif -%}
##### SET weather PIC on Home Page ####
- service: "{{ command_printf }}"
data:
cmd: weather02.weather_icon.pic={{ weather_icon }}
- delay:
milliseconds: "{{ delay_value }}"
##### SET TEMP MIN ####
- service: "{{ command_text_printf }}"
data:
component: weather02.temp_min ### Temperature MIN ###
message: '{{state_attr(weather_entity,"forecast")[0].templow | round(0)}}°'
- delay:
milliseconds: "{{ delay_value }}"
##### Slash #####
- service: "{{ command_text_printf }}"
data:
component: weather02.slash
message: '/'
- delay:
milliseconds: "{{ delay_value }}"
##### SET TEMP MAX ####
- service: "{{ command_text_printf }}"
data:
component: weather02.temp_max ### Temperature MAX ###
message: '{{state_attr(weather_entity,"forecast")[0].temperature | round(0)}}°'
- delay:
milliseconds: "{{ delay_value }}"
##### Day Name #####
- service: "{{ command_text_printf }}"
data:
component: weather02.day
message: "{{ mui[language].tomorrow }}"
- delay:
milliseconds: "{{ delay_value }}"
##### Day Date #####
- service: "{{ command_text_printf }}"
data:
component: weather02.date
message: "{{ mui_weekday_tomorrow }}"
- delay:
milliseconds: "{{ delay_value }}"
##### field 1 #####
##### field 2 #####
- service: "{{ command_text_printf }}"
data:
component: weather02.value02
message: '{{state_attr(weather_entity,"forecast")[0].precipitation| round(1)}} mm'
- delay:
milliseconds: "{{ delay_value }}"
- service: "{{ command_text_printf }}"
data:
component: weather02.value02_icon
message: "{{ weather_icon_rain }}"
- delay:
milliseconds: "{{ delay_value }}"
##### field 3 #####
- service: "{{ command_text_printf }}"
data:
component: weather02.value03
message: '{{state_attr(weather_entity,"forecast")[0].wind_speed | round(1)}} km/h'
- delay:
milliseconds: "{{ delay_value }}"
- service: "{{ command_text_printf }}"
data:
component: weather02.value03_icon
message: "{{ weather_icon_wind }}"
- delay:
milliseconds: "{{ delay_value }}"
##### field 4 #####
##### field 5 #####
### ACCUWEATHER - WEATHER ###
- conditions: '{{ weather == "AccuWeather" }}'
sequence:
- variables:
# weather PIC
weather_icon: >-
{%- if state_attr(weather_entity,"forecast")[1].condition == 'sunny' -%} {{ weather_sunny }}
{%- elif state_attr(weather_entity,"forecast")[1].condition == 'cloudy' -%} {{ weather_cloudy }}
{%- elif state_attr(weather_entity,"forecast")[1].condition == 'rainy' -%} {{ weather_rainy }}
{%- elif state_attr(weather_entity,"forecast")[1].condition == 'pouring' -%} {{ weather_pouring }}
{%- elif state_attr(weather_entity,"forecast")[1].condition == 'snowy' -%} {{ weather_snowy }}
{%- elif state_attr(weather_entity,"forecast")[1].condition == 'hail' -%} {{ weather_hail }}
{%- elif state_attr(weather_entity,"forecast")[1].condition == 'snowy-rainy' -%} {{ weather_snowy_rainy }}
{%- elif state_attr(weather_entity,"forecast")[1].condition == 'fog' -%} {{ weather_fog }}
{%- elif state_attr(weather_entity,"forecast")[1].condition == 'windy' -%} {{ weather_windy }}
{%- elif state_attr(weather_entity,"forecast")[1].condition == 'windy-variant' -%} {{ weather_windy-variant }}
{%- elif state_attr(weather_entity,"forecast")[1].condition == 'lightning' -%} {{ weather_lightning }}
{%- elif state_attr(weather_entity,"forecast")[1].condition == 'partlycloudy' -%} {{ weather_partlycloudy_day }}
{%- elif state_attr(weather_entity,"forecast")[1].condition == 'lightning-rainy' -%} {{ weather_lightning_rainy_day }}
{%- elif state_attr(weather_entity,"forecast")[1].condition == 'execptional' -%} {{ weather_execptional_day }}
{%- elif state_attr(weather_entity,"forecast")[1].condition == 'clear-night' -%} {{ weather_clear_night }}
{%- endif -%}
##### SET weather PIC on Home Page ####
- service: "{{ command_printf }}"
data:
cmd: weather02.weather_icon.pic={{ weather_icon }}
- delay:
milliseconds: "{{ delay_value }}"
##### SET TEMP MIN ####
- service: "{{ command_text_printf }}"
data:
component: weather02.temp_min ### Temperature MIN ###
message: '{{states(accuweather_realfeel_temperature_min_1d) | round(0)}}°'
- delay:
milliseconds: "{{ delay_value }}"
##### Slash #####
- service: "{{ command_text_printf }}"
data:
component: weather02.slash
message: '/'
- delay:
milliseconds: "{{ delay_value }}"
##### SET TEMP MAX ####
- service: "{{ command_text_printf }}"
data:
component: weather02.temp_max ### Temperature MAX ###
message: '{{states(accuweather_realfeel_temperature_max_1d) | round(0)}}°'
- delay:
milliseconds: "{{ delay_value }}"
##### Day Name #####
- service: "{{ command_text_printf }}"
data:
component: weather02.day
message: "{{ mui[language].tomorrow }}"
- delay:
milliseconds: "{{ delay_value }}"
##### Day Date #####
- service: "{{ command_text_printf }}"
data:
component: weather02.date
message: "{{ mui_weekday_tomorrow }}"
- delay:
milliseconds: "{{ delay_value }}"
##### field 1 #####
- service: "{{ command_text_printf }}"
data:
component: weather02.value01
message: "{{ state_attr(weather_entity,'forecast')[1].precipitation_probability}} %"
- delay:
milliseconds: "{{ delay_value }}"
- service: "{{ command_text_printf }}"
data:
component: weather02.value01_icon
message: "{{ weather_icon_rain }}"
- delay:
milliseconds: "{{ delay_value }}"
##### field 2 #####
- service: "{{ command_text_printf }}"
data:
component: weather02.value02
message: "{{states(accuweather_hours_of_sun_1d) | round(0)}} h"
- delay:
milliseconds: "{{ delay_value }}"
- service: "{{ command_text_printf }}"
data:
component: weather02.value02_icon
message: "{{ weather_icon_sun }}"
- delay:
milliseconds: "{{ delay_value }}"
##### field 3 #####
- service: "{{ command_text_printf }}"
data:
component: weather02.value03
message: "{{state_attr(accuweather_uv_index_1d, 'level')}} {{states(accuweather_uv_index_1d) | round(0)}}"
- delay:
milliseconds: "{{ delay_value }}"
- service: "{{ command_text_printf }}"
data:
component: weather02.value03_icon
message: "{{ weather_icon_protect }}"
- delay:
milliseconds: "{{ delay_value }}"
##### field 4 #####
- service: "{{ command_text_printf }}"
data:
component: weather02.value04
message: "{{states(accuweather_thunderstorm_probability_day_1d) | round(0)}} %"
- delay:
milliseconds: "{{ delay_value }}"
- service: "{{ command_text_printf }}"
data:
component: weather02.value04_icon
message: "{{ weather_icon_lightning }}"
- delay:
milliseconds: "{{ delay_value }}"
##### field 5 #####
- service: "{{ command_text_printf }}"
data:
component: weather02.value05
message: "{{states(accuweather_wind_day_1d) | round(0)}} km/h"
- delay:
milliseconds: "{{ delay_value }}"
- service: "{{ command_text_printf }}"
data:
component: weather02.value05_icon
message: "{{ weather_icon_wind }}"
### DEFAULT ####
default:
- service: "{{ command_printf }}"
data:
cmd: "page {{ page_home }}"
## PAGE WEATHE03 ##
- conditions: '{{ trigger.event.data.new_state.state == page_weather03 }}'
alias: 'weather03 page'
sequence:
- choose:
### DEFAULT - WEATHER ###
- conditions: '{{ weather == "Default" }}'
sequence:
- variables:
# weather PIC
weather_icon: >-
{%- if state_attr(weather_entity,"forecast")[1].condition == 'sunny' -%} {{ weather_sunny }}
{%- elif state_attr(weather_entity,"forecast")[1].condition == 'cloudy' -%} {{ weather_cloudy }}
{%- elif state_attr(weather_entity,"forecast")[1].condition == 'rainy' -%} {{ weather_rainy }}
{%- elif state_attr(weather_entity,"forecast")[1].condition == 'pouring' -%} {{ weather_pouring }}
{%- elif state_attr(weather_entity,"forecast")[1].condition == 'snowy' -%} {{ weather_snowy }}
{%- elif state_attr(weather_entity,"forecast")[1].condition == 'hail' -%} {{ weather_hail }}
{%- elif state_attr(weather_entity,"forecast")[1].condition == 'snowy-rainy' -%} {{ weather_snowy_rainy }}
{%- elif state_attr(weather_entity,"forecast")[1].condition == 'fog' -%} {{ weather_fog }}
{%- elif state_attr(weather_entity,"forecast")[1].condition == 'windy' -%} {{ weather_windy }}
{%- elif state_attr(weather_entity,"forecast")[1].condition == 'windy-variant' -%} {{ weather_windy-variant }}
{%- elif state_attr(weather_entity,"forecast")[1].condition == 'lightning' -%} {{ weather_lightning }}
{%- elif state_attr(weather_entity,"forecast")[1].condition == 'partlycloudy' -%} {{ weather_partlycloudy_day }}
{%- elif state_attr(weather_entity,"forecast")[1].condition == 'lightning-rainy' -%} {{ weather_lightning_rainy_day }}
{%- elif state_attr(weather_entity,"forecast")[1].condition == 'execptional' -%} {{ weather_execptional_day }}
{%- elif state_attr(weather_entity,"forecast")[1].condition == 'clear-night' -%} {{ weather_clear_night }}
{%- endif -%}
##### SET weather PIC on Home Page ####
- service: "{{ command_printf }}"
data:
cmd: weather03.weather_icon.pic={{ weather_icon }}
- delay:
milliseconds: "{{ delay_value }}"
##### SET TEMP MIN ####
- service: "{{ command_text_printf }}"
data:
component: weather03.temp_min ### Temperature MIN ###
message: '{{state_attr(weather_entity,"forecast")[1].templow | round(0)}}°'
- delay:
milliseconds: "{{ delay_value }}"
##### Slash #####
- service: "{{ command_text_printf }}"
data:
component: weather03.slash
message: '/'
- delay:
milliseconds: "{{ delay_value }}"
##### SET TEMP MAX ####
- service: "{{ command_text_printf }}"
data:
component: weather03.temp_max ### Temperature MAX ###
message: '{{state_attr(weather_entity,"forecast")[1].temperature | round(0)}}°'
- delay:
milliseconds: "{{ delay_value }}"
##### Day Name #####
- service: "{{ command_text_printf }}"
data:
component: weather03.day
message: "{{ mui[language].in_2_days }}"
- delay:
milliseconds: "{{ delay_value }}"
##### Day Date #####
- service: "{{ command_text_printf }}"
data:
component: weather03.date
message: "{{ mui_weekday_in_2_days }}"
- delay:
milliseconds: "{{ delay_value }}"
##### field 1 #####
##### field 2 #####
- service: "{{ command_text_printf }}"
data:
component: weather03.value02
message: '{{state_attr(weather_entity,"forecast")[1].precipitation| round(1)}} mm'
- delay:
milliseconds: "{{ delay_value }}"
- service: "{{ command_text_printf }}"
data:
component: weather03.value02_icon
message: "{{ weather_icon_rain }}"
- delay:
milliseconds: "{{ delay_value }}"
##### field 3 #####
- service: "{{ command_text_printf }}"
data:
component: weather03.value03
message: '{{state_attr(weather_entity,"forecast")[1].wind_speed | round(1)}} km/h'
- delay:
milliseconds: "{{ delay_value }}"
- service: "{{ command_text_printf }}"
data:
component: weather03.value03_icon
message: "{{ weather_icon_wind }}"
- delay:
milliseconds: "{{ delay_value }}"
##### field 4 #####
##### field 5 #####
### ACCUWEATHER - WEATHER ###
- conditions: '{{ weather == "AccuWeather" }}'
sequence:
- variables:
# weather PIC
weather_icon: >-
{%- if state_attr(weather_entity,"forecast")[2].condition == 'sunny' -%} {{ weather_sunny }}
{%- elif state_attr(weather_entity,"forecast")[2].condition == 'cloudy' -%} {{ weather_cloudy }}
{%- elif state_attr(weather_entity,"forecast")[2].condition == 'rainy' -%} {{ weather_rainy }}
{%- elif state_attr(weather_entity,"forecast")[2].condition == 'pouring' -%} {{ weather_pouring }}
{%- elif state_attr(weather_entity,"forecast")[2].condition == 'snowy' -%} {{ weather_snowy }}
{%- elif state_attr(weather_entity,"forecast")[2].condition == 'hail' -%} {{ weather_hail }}
{%- elif state_attr(weather_entity,"forecast")[2].condition == 'snowy-rainy' -%} {{ weather_snowy_rainy }}
{%- elif state_attr(weather_entity,"forecast")[2].condition == 'fog' -%} {{ weather_fog }}
{%- elif state_attr(weather_entity,"forecast")[2].condition == 'windy' -%} {{ weather_windy }}
{%- elif state_attr(weather_entity,"forecast")[2].condition == 'windy-variant' -%} {{ weather_windy-variant }}
{%- elif state_attr(weather_entity,"forecast")[2].condition == 'lightning' -%} {{ weather_lightning }}
{%- elif state_attr(weather_entity,"forecast")[2].condition == 'partlycloudy' -%} {{ weather_partlycloudy_day }}
{%- elif state_attr(weather_entity,"forecast")[2].condition == 'lightning-rainy' -%} {{ weather_lightning_rainy_day }}
{%- elif state_attr(weather_entity,"forecast")[2].condition == 'execptional' -%} {{ weather_execptional_day }}
{%- elif state_attr(weather_entity,"forecast")[2].condition == 'clear-night' -%} {{ weather_clear_night }}
{%- endif -%}
##### SET weather PIC on Home Page ####
- service: "{{ command_printf }}"
data:
cmd: weather03.weather_icon.pic={{ weather_icon }}
- delay:
milliseconds: "{{ delay_value }}"
##### SET TEMP MIN ####
- service: "{{ command_text_printf }}"
data:
component: weather03.temp_min ### Temperature MIN ###
message: '{{states(accuweather_realfeel_temperature_min_2d) | round(0)}}°'
- delay:
milliseconds: "{{ delay_value }}"
##### Slash #####
- service: "{{ command_text_printf }}"
data:
component: weather03.slash
message: '/'
- delay:
milliseconds: "{{ delay_value }}"
##### SET TEMP MAX ####
- service: "{{ command_text_printf }}"
data:
component: weather03.temp_max ### Temperature MAX ###
message: '{{states(accuweather_realfeel_temperature_max_2d) | round(0)}}°'
- delay:
milliseconds: "{{ delay_value }}"
##### Day Name #####
- service: "{{ command_text_printf }}"
data:
component: weather03.day
message: "{{ mui[language].in_2_days }}"
- delay:
milliseconds: "{{ delay_value }}"
##### Day Date #####
- service: "{{ command_text_printf }}"
data:
component: weather03.date
message: "{{ mui_weekday_in_2_days }}"
- delay:
milliseconds: "{{ delay_value }}"
##### field 1 #####
- service: "{{ command_text_printf }}"
data:
component: weather03.value01
message: "{{ state_attr(weather_entity,'forecast')[2].precipitation_probability}} %"
- delay:
milliseconds: "{{ delay_value }}"
- service: "{{ command_text_printf }}"
data:
component: weather03.value01_icon
message: "{{ weather_icon_rain }}"
- delay:
milliseconds: "{{ delay_value }}"
##### field 2 #####
- service: "{{ command_text_printf }}"
data:
component: weather03.value02
message: "{{states(accuweather_hours_of_sun_2d) | round(0)}} h"
- delay:
milliseconds: "{{ delay_value }}"
- service: "{{ command_text_printf }}"
data:
component: weather03.value02_icon
message: "{{ weather_icon_sun }}"
- delay:
milliseconds: "{{ delay_value }}"
##### field 3 #####
- service: "{{ command_text_printf }}"
data:
component: weather03.value03
message: "{{state_attr(accuweather_uv_index_2d, 'level')}} {{states(accuweather_uv_index_2d) | round(0)}}"
- delay:
milliseconds: "{{ delay_value }}"
- service: "{{ command_text_printf }}"
data:
component: weather03.value03_icon
message: "{{ weather_icon_protect }}"
- delay:
milliseconds: "{{ delay_value }}"
##### field 4 #####
- service: "{{ command_text_printf }}"
data:
component: weather03.value04
message: "{{states(accuweather_thunderstorm_probability_day_2d) | round(0)}} %"
- delay:
milliseconds: "{{ delay_value }}"
- service: "{{ command_text_printf }}"
data:
component: weather03.value04_icon
message: "{{ weather_icon_lightning }}"
- delay:
milliseconds: "{{ delay_value }}"
##### field 5 #####
- service: "{{ command_text_printf }}"
data:
component: weather03.value05
message: "{{states(accuweather_wind_day_2d) | round(0)}} km/h"
- delay:
milliseconds: "{{ delay_value }}"
- service: "{{ command_text_printf }}"
data:
component: weather03.value05_icon
message: "{{ weather_icon_wind }}"
### DEFAULT ###
default:
- service: "{{ command_printf }}"
data:
cmd: "page {{ page_home }}"
## PAGE WEATHE04 ##
- conditions: '{{ trigger.event.data.new_state.state == page_weather04 }}'
alias: 'weather04 page'
sequence:
- choose:
### DEFAULT - WEATHER ###
- conditions: '{{ weather == "Default" }}'
sequence:
- variables:
# weather PIC
weather_icon: >-
{%- if state_attr(weather_entity,"forecast")[2].condition == 'sunny' -%} {{ weather_sunny }}
{%- elif state_attr(weather_entity,"forecast")[2].condition == 'cloudy' -%} {{ weather_cloudy }}
{%- elif state_attr(weather_entity,"forecast")[2].condition == 'rainy' -%} {{ weather_rainy }}
{%- elif state_attr(weather_entity,"forecast")[2].condition == 'pouring' -%} {{ weather_pouring }}
{%- elif state_attr(weather_entity,"forecast")[2].condition == 'snowy' -%} {{ weather_snowy }}
{%- elif state_attr(weather_entity,"forecast")[2].condition == 'hail' -%} {{ weather_hail }}
{%- elif state_attr(weather_entity,"forecast")[2].condition == 'snowy-rainy' -%} {{ weather_snowy_rainy }}
{%- elif state_attr(weather_entity,"forecast")[2].condition == 'fog' -%} {{ weather_fog }}
{%- elif state_attr(weather_entity,"forecast")[2].condition == 'windy' -%} {{ weather_windy }}
{%- elif state_attr(weather_entity,"forecast")[2].condition == 'windy-variant' -%} {{ weather_windy-variant }}
{%- elif state_attr(weather_entity,"forecast")[2].condition == 'lightning' -%} {{ weather_lightning }}
{%- elif state_attr(weather_entity,"forecast")[2].condition == 'partlycloudy' -%} {{ weather_partlycloudy_day }}
{%- elif state_attr(weather_entity,"forecast")[2].condition == 'lightning-rainy' -%} {{ weather_lightning_rainy_day }}
{%- elif state_attr(weather_entity,"forecast")[2].condition == 'execptional' -%} {{ weather_execptional_day }}
{%- elif state_attr(weather_entity,"forecast")[2].condition == 'clear-night' -%} {{ weather_clear_night }}
{%- endif -%}
##### SET weather PIC on Home Page ####
- service: "{{ command_printf }}"
data:
cmd: weather04.weather_icon.pic={{ weather_icon }}
- delay:
milliseconds: "{{ delay_value }}"
##### SET TEMP MIN ####
- service: "{{ command_text_printf }}"
data:
component: weather04.temp_min ### Temperature MIN ###
message: '{{state_attr(weather_entity,"forecast")[2].templow | round(0)}}°'
- delay:
milliseconds: "{{ delay_value }}"
##### Slash #####
- service: "{{ command_text_printf }}"
data:
component: weather04.slash
message: '/'
- delay:
milliseconds: "{{ delay_value }}"
##### SET TEMP MAX ####
- service: "{{ command_text_printf }}"
data:
component: weather04.temp_max ### Temperature MAX ###
message: '{{state_attr(weather_entity,"forecast")[2].temperature | round(0)}}°'
- delay:
milliseconds: "{{ delay_value }}"
##### Day Name #####
- service: "{{ command_text_printf }}"
data:
component: weather04.day
message: "{{ mui[language].in_3_days }}"
- delay:
milliseconds: "{{ delay_value }}"
##### Day Date #####
- service: "{{ command_text_printf }}"
data:
component: weather04.date
message: "{{ mui_weekday_in_3_days }}"
- delay:
milliseconds: "{{ delay_value }}"
##### field 1 #####
##### field 2 #####
- service: "{{ command_text_printf }}"
data:
component: weather04.value02
message: '{{state_attr(weather_entity,"forecast")[2].precipitation| round(1)}} mm'
- delay:
milliseconds: "{{ delay_value }}"
- service: "{{ command_text_printf }}"
data:
component: weather04.value02_icon
message: "{{ weather_icon_rain }}"
- delay:
milliseconds: "{{ delay_value }}"
##### field 3 #####
- service: "{{ command_text_printf }}"
data:
component: weather04.value03
message: '{{state_attr(weather_entity,"forecast")[2].wind_speed | round(1)}} km/h'
- delay:
milliseconds: "{{ delay_value }}"
- service: "{{ command_text_printf }}"
data:
component: weather04.value03_icon
message: "{{ weather_icon_wind }}"
- delay:
milliseconds: "{{ delay_value }}"
##### field 4 #####
##### field 5 #####
### ACCUWEATHER - WEATHER ###
- conditions: '{{ weather == "AccuWeather" }}'
sequence:
- variables:
# weather PIC
weather_icon: >-
{%- if state_attr(weather_entity,"forecast")[3].condition == 'sunny' -%} {{ weather_sunny }}
{%- elif state_attr(weather_entity,"forecast")[3].condition == 'cloudy' -%} {{ weather_cloudy }}
{%- elif state_attr(weather_entity,"forecast")[3].condition == 'rainy' -%} {{ weather_rainy }}
{%- elif state_attr(weather_entity,"forecast")[3].condition == 'pouring' -%} {{ weather_pouring }}
{%- elif state_attr(weather_entity,"forecast")[3].condition == 'snowy' -%} {{ weather_snowy }}
{%- elif state_attr(weather_entity,"forecast")[3].condition == 'hail' -%} {{ weather_hail }}
{%- elif state_attr(weather_entity,"forecast")[3].condition == 'snowy-rainy' -%} {{ weather_snowy_rainy }}
{%- elif state_attr(weather_entity,"forecast")[3].condition == 'fog' -%} {{ weather_fog }}
{%- elif state_attr(weather_entity,"forecast")[3].condition == 'windy' -%} {{ weather_windy }}
{%- elif state_attr(weather_entity,"forecast")[3].condition == 'windy-variant' -%} {{ weather_windy-variant }}
{%- elif state_attr(weather_entity,"forecast")[3].condition == 'lightning' -%} {{ weather_lightning }}
{%- elif state_attr(weather_entity,"forecast")[3].condition == 'partlycloudy' -%} {{ weather_partlycloudy_day }}
{%- elif state_attr(weather_entity,"forecast")[3].condition == 'lightning-rainy' -%} {{ weather_lightning_rainy_day }}
{%- elif state_attr(weather_entity,"forecast")[3].condition == 'execptional' -%} {{ weather_execptional_day }}
{%- elif state_attr(weather_entity,"forecast")[3].condition == 'clear-night' -%} {{ weather_clear_night }}
{%- endif -%}
##### SET weather PIC on Home Page ####
- service: "{{ command_printf }}"
data:
cmd: weather04.weather_icon.pic={{ weather_icon }}
- delay:
milliseconds: "{{ delay_value }}"
##### SET TEMP MIN ####
- service: "{{ command_text_printf }}"
data:
component: weather04.temp_min ### Temperature MIN ###
message: '{{states(accuweather_realfeel_temperature_min_3d) | round(0)}}°'
- delay:
milliseconds: "{{ delay_value }}"
##### Slash #####
- service: "{{ command_text_printf }}"
data:
component: weather04.slash
message: '/'
- delay:
milliseconds: "{{ delay_value }}"
##### SET TEMP MAX ####
- service: "{{ command_text_printf }}"
data:
component: weather04.temp_max ### Temperature MAX ###
message: '{{states(accuweather_realfeel_temperature_max_3d) | round(0)}}°'
- delay:
milliseconds: "{{ delay_value }}"
##### Day Name #####
- service: "{{ command_text_printf }}"
data:
component: weather04.day
message: "{{ mui[language].in_3_days }}"
- delay:
milliseconds: "{{ delay_value }}"
##### Day Date #####
- service: "{{ command_text_printf }}"
data:
component: weather04.date
message: "{{ mui_weekday_in_3_days }}"
- delay:
milliseconds: "{{ delay_value }}"
##### field 1 #####
- service: "{{ command_text_printf }}"
data:
component: weather04.value01
message: "{{ state_attr(weather_entity,'forecast')[3].precipitation_probability}} %"
- delay:
milliseconds: "{{ delay_value }}"
- service: "{{ command_text_printf }}"
data:
component: weather04.value01_icon
message: "{{ weather_icon_rain }}"
- delay:
milliseconds: "{{ delay_value }}"
##### field 2 #####
- service: "{{ command_text_printf }}"
data:
component: weather04.value02
message: "{{states(accuweather_hours_of_sun_3d) | round(0)}} h"
- delay:
milliseconds: "{{ delay_value }}"
- service: "{{ command_text_printf }}"
data:
component: weather04.value02_icon
message: "{{ weather_icon_sun }}"
- delay:
milliseconds: "{{ delay_value }}"
##### field 3 #####
- service: "{{ command_text_printf }}"
data:
component: weather04.value03
message: "{{state_attr(accuweather_uv_index_3d, 'level')}} {{states(accuweather_uv_index_3d) | round(0)}}"
- delay:
milliseconds: "{{ delay_value }}"
- service: "{{ command_text_printf }}"
data:
component: weather04.value03_icon
message: "{{ weather_icon_protect }}"
- delay:
milliseconds: "{{ delay_value }}"
##### field 4 #####
- service: "{{ command_text_printf }}"
data:
component: weather04.value04
message: "{{states(accuweather_thunderstorm_probability_day_3d) | round(0)}} %"
- delay:
milliseconds: "{{ delay_value }}"
- service: "{{ command_text_printf }}"
data:
component: weather04.value04_icon
message: "{{ weather_icon_lightning }}"
- delay:
milliseconds: "{{ delay_value }}"
##### field 5 #####
- service: "{{ command_text_printf }}"
data:
component: weather04.value05
message: "{{states(accuweather_wind_day_3d) | round(0)}} km/h"
- delay:
milliseconds: "{{ delay_value }}"
- service: "{{ command_text_printf }}"
data:
component: weather04.value05_icon
message: "{{ weather_icon_wind }}"
### DEFAULT ###
default:
- service: "{{ command_printf }}"
data:
cmd: "page {{ page_home }}"
## PAGE WEATHE05 ##
- conditions: '{{ trigger.event.data.new_state.state == page_weather05 }}'
alias: 'weather05 page'
sequence:
- choose:
### DEAFAULT - WEATHER ###
- conditions: '{{ weather == "Default" }}'
sequence:
- variables:
# weather PIC
weather_icon: >-
{%- if state_attr(weather_entity,"forecast")[3].condition == 'sunny' -%} {{ weather_sunny }}
{%- elif state_attr(weather_entity,"forecast")[3].condition == 'cloudy' -%} {{ weather_cloudy }}
{%- elif state_attr(weather_entity,"forecast")[3].condition == 'rainy' -%} {{ weather_rainy }}
{%- elif state_attr(weather_entity,"forecast")[3].condition == 'pouring' -%} {{ weather_pouring }}
{%- elif state_attr(weather_entity,"forecast")[3].condition == 'snowy' -%} {{ weather_snowy }}
{%- elif state_attr(weather_entity,"forecast")[3].condition == 'hail' -%} {{ weather_hail }}
{%- elif state_attr(weather_entity,"forecast")[3].condition == 'snowy-rainy' -%} {{ weather_snowy_rainy }}
{%- elif state_attr(weather_entity,"forecast")[3].condition == 'fog' -%} {{ weather_fog }}
{%- elif state_attr(weather_entity,"forecast")[3].condition == 'windy' -%} {{ weather_windy }}
{%- elif state_attr(weather_entity,"forecast")[3].condition == 'windy-variant' -%} {{ weather_windy-variant }}
{%- elif state_attr(weather_entity,"forecast")[3].condition == 'lightning' -%} {{ weather_lightning }}
{%- elif state_attr(weather_entity,"forecast")[3].condition == 'partlycloudy' -%} {{ weather_partlycloudy_day }}
{%- elif state_attr(weather_entity,"forecast")[3].condition == 'lightning-rainy' -%} {{ weather_lightning_rainy_day }}
{%- elif state_attr(weather_entity,"forecast")[3].condition == 'execptional' -%} {{ weather_execptional_day }}
{%- elif state_attr(weather_entity,"forecast")[3].condition == 'clear-night' -%} {{ weather_clear_night }}
{%- endif -%}
##### SET weather PIC on Home Page ####
- service: "{{ command_printf }}"
data:
cmd: weather05.weather_icon.pic={{ weather_icon }}
- delay:
milliseconds: "{{ delay_value }}"
##### SET TEMP MIN ####
- service: "{{ command_text_printf }}"
data:
component: weather05.temp_min ### Temperature MIN ###
message: '{{state_attr(weather_entity,"forecast")[3].templow | round(0)}}°'
- delay:
milliseconds: "{{ delay_value }}"
##### Slash #####
- service: "{{ command_text_printf }}"
data:
component: weather05.slash
message: '/'
- delay:
milliseconds: "{{ delay_value }}"
##### SET TEMP MAX ####
- service: "{{ command_text_printf }}"
data:
component: weather05.temp_max ### Temperature MAX ###
message: '{{state_attr(weather_entity,"forecast")[3].temperature | round(0)}}°'
- delay:
milliseconds: "{{ delay_value }}"
##### Day Name #####
- service: "{{ command_text_printf }}"
data:
component: weather05.day
message: "{{ mui[language].in_4_days }}"
- delay:
milliseconds: "{{ delay_value }}"
##### Day Date #####
- service: "{{ command_text_printf }}"
data:
component: weather05.date
message: "{{ mui_weekday_in_4_days }}"
- delay:
milliseconds: "{{ delay_value }}"
##### field 1 #####
##### field 2 #####
- service: "{{ command_text_printf }}"
data:
component: weather05.value02
message: '{{state_attr(weather_entity,"forecast")[3].precipitation| round(1)}} mm'
- delay:
milliseconds: "{{ delay_value }}"
- service: "{{ command_text_printf }}"
data:
component: weather05.value02_icon
message: "{{ weather_icon_rain }}"
- delay:
milliseconds: "{{ delay_value }}"
##### field 3 #####
- service: "{{ command_text_printf }}"
data:
component: weather05.value03
message: '{{state_attr(weather_entity,"forecast")[3].wind_speed | round(1)}} km/h'
- delay:
milliseconds: "{{ delay_value }}"
- service: "{{ command_text_printf }}"
data:
component: weather05.value03_icon
message: "{{ weather_icon_wind }}"
- delay:
milliseconds: "{{ delay_value }}"
##### field 4 #####
##### field 5 #####
### ACCUWEATHER - WEATHER ###
- conditions: '{{ weather == "AccuWeather" }}'
sequence:
- variables:
# weather PIC
weather_icon: >-
{%- if state_attr(weather_entity,"forecast")[4].condition == 'sunny' -%} {{ weather_sunny }}
{%- elif state_attr(weather_entity,"forecast")[4].condition == 'cloudy' -%} {{ weather_cloudy }}
{%- elif state_attr(weather_entity,"forecast")[4].condition == 'rainy' -%} {{ weather_rainy }}
{%- elif state_attr(weather_entity,"forecast")[4].condition == 'pouring' -%} {{ weather_pouring }}
{%- elif state_attr(weather_entity,"forecast")[4].condition == 'snowy' -%} {{ weather_snowy }}
{%- elif state_attr(weather_entity,"forecast")[4].condition == 'hail' -%} {{ weather_hail }}
{%- elif state_attr(weather_entity,"forecast")[4].condition == 'snowy-rainy' -%} {{ weather_snowy_rainy }}
{%- elif state_attr(weather_entity,"forecast")[4].condition == 'fog' -%} {{ weather_fog }}
{%- elif state_attr(weather_entity,"forecast")[4].condition == 'windy' -%} {{ weather_windy }}
{%- elif state_attr(weather_entity,"forecast")[4].condition == 'windy-variant' -%} {{ weather_windy-variant }}
{%- elif state_attr(weather_entity,"forecast")[4].condition == 'lightning' -%} {{ weather_lightning }}
{%- elif state_attr(weather_entity,"forecast")[4].condition == 'partlycloudy' -%} {{ weather_partlycloudy_day }}
{%- elif state_attr(weather_entity,"forecast")[4].condition == 'lightning-rainy' -%} {{ weather_lightning_rainy_day }}
{%- elif state_attr(weather_entity,"forecast")[4].condition == 'execptional' -%} {{ weather_execptional_day }}
{%- elif state_attr(weather_entity,"forecast")[4].condition == 'clear-night' -%} {{ weather_clear_night }}
{%- endif -%}
##### SET weather PIC on Home Page ####
- service: "{{ command_printf }}"
data:
cmd: weather05.weather_icon.pic={{ weather_icon }}
- delay:
milliseconds: "{{ delay_value }}"
##### SET TEMP MIN ####
- service: "{{ command_text_printf }}"
data:
component: weather05.temp_min ### Temperature MIN ###
message: '{{states(accuweather_realfeel_temperature_min_4d) | round(0)}}°'
- delay:
milliseconds: "{{ delay_value }}"
##### Slash #####
- service: "{{ command_text_printf }}"
data:
component: weather05.slash
message: '/'
- delay:
milliseconds: "{{ delay_value }}"
##### SET TEMP MAX ####
- service: "{{ command_text_printf }}"
data:
component: weather05.temp_max ### Temperature MAX ###
message: '{{states(accuweather_realfeel_temperature_max_4d) | round(0)}}°'
- delay:
milliseconds: "{{ delay_value }}"
##### Day Name #####
- service: "{{ command_text_printf }}"
data:
component: weather05.day
message: "{{ mui[language].in_4_days }}"
- delay:
milliseconds: "{{ delay_value }}"
##### Day Date #####
- service: "{{ command_text_printf }}"
data:
component: weather05.date
message: "{{ mui_weekday_in_4_days }}"
- delay:
milliseconds: "{{ delay_value }}"
##### field 1 #####
- service: "{{ command_text_printf }}"
data:
component: weather05.value01
message: "{{ state_attr(weather_entity,'forecast')[4].precipitation_probability}} %"
- delay:
milliseconds: "{{ delay_value }}"
- service: "{{ command_text_printf }}"
data:
component: weather05.value01_icon
message: "{{ weather_icon_rain }}"
- delay:
milliseconds: "{{ delay_value }}"
##### field 2 #####
- service: "{{ command_text_printf }}"
data:
component: weather05.value02
message: "{{states(accuweather_hours_of_sun_4d) | round(0)}} h"
- delay:
milliseconds: "{{ delay_value }}"
- service: "{{ command_text_printf }}"
data:
component: weather05.value02_icon
message: "{{ weather_icon_sun }}"
- delay:
milliseconds: "{{ delay_value }}"
##### field 3 #####
- service: "{{ command_text_printf }}"
data:
component: weather05.value03
message: "{{state_attr(accuweather_uv_index_4d, 'level')}} {{states(accuweather_uv_index_4d) | round(0)}}"
- delay:
milliseconds: "{{ delay_value }}"
- service: "{{ command_text_printf }}"
data:
component: weather05.value03_icon
message: "{{ weather_icon_protect }}"
- delay:
milliseconds: "{{ delay_value }}"
##### field 4 #####
- service: "{{ command_text_printf }}"
data:
component: weather05.value04
message: "{{states(accuweather_thunderstorm_probability_day_4d) | round(0)}} %"
- delay:
milliseconds: "{{ delay_value }}"
- service: "{{ command_text_printf }}"
data:
component: weather05.value04_icon
message: "{{ weather_icon_lightning }}"
- delay:
milliseconds: "{{ delay_value }}"
##### field 5 #####
- service: "{{ command_text_printf }}"
data:
component: weather05.value05
message: "{{states(accuweather_wind_day_4d) | round(0)}} km/h"
- delay:
milliseconds: "{{ delay_value }}"
- service: "{{ command_text_printf }}"
data:
component: weather05.value05_icon
message: "{{ weather_icon_wind }}"
### DEFAULT ###
default:
- service: "{{ command_printf }}"
data:
cmd: "page {{ page_home }}"
## PAGE NOTIFICATION ##
- conditions: '{{ trigger.event.data.new_state.state == page_notification }}'
alias: 'notification page'
sequence:
- service: "{{ command_text_printf }}"
data:
component: notification.notifi_text01
message: "{{ states(notification_text) }}"
- delay:
milliseconds: "{{ delay_value }}"
- service: "{{ command_text_printf }}"
data:
component: notification.notifi_label
message: "{{ states(notification_label) }}"
## PAGE QR Code ##
- conditions: '{{ trigger.event.data.new_state.state == page_qrcode }}'
alias: 'qrcode page'
sequence:
- if:
- condition: template
value_template: '{{ qrcode_label |length > 0 }}'
then:
- service: "{{ command_text_printf }}"
data:
component: "qrcode_label"
message: "{{ qrcode_label }}"
- delay:
milliseconds: "{{ delay_value }}"
- service: "{{ command_text_printf }}"
data:
component: "qrcode_value"
message: "{{ qrcode_value }}"
## PAGE SETTINGS ##
- conditions: '{{ trigger.event.data.new_state.state == page_settings }}'
alias: 'settings page'
sequence:
## PAGE BOOT ##
- conditions: '{{ trigger.event.data.new_state.state == page_boot }}'
alias: 'boot page'
sequence:
## PAGE SCREENSAVER ##
- conditions: '{{ trigger.event.data.new_state.state == page_screensaver }}'
alias: 'screensaver page'
sequence:
##### BOOT NSPANEL - automation reload #####
- conditions:
- condition: trigger
id: automation_reloaded
sequence:
- choose:
## PAGE HOME ##
- conditions: '{{ states(current_page) == page_home }}'
sequence: *refresh_page_home
## PAGE BUTTONPAGE01 ##
- conditions: '{{ states(current_page) == page_buttonpage01 }}'
sequence: *refresh_page_buttonpage01
## PAGE BUTTONPAGE02 ##
- conditions: '{{ states(current_page) == page_buttonpage02 }}'
sequence: *refresh_page_buttonpage02
## PAGE BUTTONPAGE03 ##
- conditions: '{{ states(current_page) == page_buttonpage03 }}'
sequence: *refresh_page_buttonpage03
## PAGE BUTTONPAGE04 ##
- conditions: '{{ states(current_page) == page_buttonpage04 }}'
sequence: *refresh_page_buttonpage04
## ENTITY PAGE 01 ##
- conditions: '{{ states(current_page) == page_entitypage01 }}'
sequence: *refresh_page_entitypage01
## ENTITY PAGE 02 ##
- conditions: '{{ states(current_page) == page_entitypage02 }}'
sequence: *refresh_page_entitypage02
## ENTITY PAGE 03 ##
- conditions: '{{ states(current_page) == page_entitypage03 }}'
sequence: *refresh_page_entitypage03
## ENTITY PAGE 04 ##
- conditions: '{{ states(current_page) == page_entitypage04 }}'
sequence: *refresh_page_entitypage04
##### UPDATE BUTTONS AND PAGES - button page / lightsettings page / coversettings page #####
- conditions:
- condition: trigger
id:
- current_state_entity01
- current_state_entity02
- current_state_entity03
- current_state_entity04
- current_state_entity05
- current_state_entity06
- current_state_entity07
- current_state_entity08
- current_state_entity09
- current_state_entity10
- current_state_entity11
- current_state_entity12
- current_state_entity13
- current_state_entity14
- current_state_entity15
- current_state_entity16
- current_state_entity17
- current_state_entity18
- current_state_entity19
- current_state_entity20
- current_state_entity21
- current_state_entity22
- current_state_entity23
- current_state_entity24
- current_state_entity25
- current_state_entity26
- current_state_entity27
- current_state_entity28
- current_state_entity29
- current_state_entity30
- current_state_entity31
- current_state_entity32
- condition: template
value_template: "{{ states(current_page) == page_buttonpage01 or states(current_page) == page_buttonpage02 or states(current_page) == page_buttonpage03 or states(current_page) == page_buttonpage04 and trigger.to_state.state != 'unavailable' }}"
sequence:
##### SET Buttons ####
- alias: "Set variable(s) for entity change"
variables:
buttonpage: '{{ states(current_page) }}'
component_to_update: >-
{%- if trigger.entity_id == entity01 and buttonpage == 'buttonpage01' -%} buttonpage01.button01
{%- elif trigger.entity_id == entity02 and buttonpage == 'buttonpage01' -%} buttonpage01.button02
{%- elif trigger.entity_id == entity03 and buttonpage == 'buttonpage01' -%} buttonpage01.button03
{%- elif trigger.entity_id == entity04 and buttonpage == 'buttonpage01' -%} buttonpage01.button04
{%- elif trigger.entity_id == entity05 and buttonpage == 'buttonpage01' -%} buttonpage01.button05
{%- elif trigger.entity_id == entity06 and buttonpage == 'buttonpage01' -%} buttonpage01.button06
{%- elif trigger.entity_id == entity07 and buttonpage == 'buttonpage01' -%} buttonpage01.button07
{%- elif trigger.entity_id == entity08 and buttonpage == 'buttonpage01' -%} buttonpage01.button08
{%- elif trigger.entity_id == entity09 and buttonpage == 'buttonpage02' -%} buttonpage02.button01
{%- elif trigger.entity_id == entity10 and buttonpage == 'buttonpage02' -%} buttonpage02.button02
{%- elif trigger.entity_id == entity11 and buttonpage == 'buttonpage02' -%} buttonpage02.button03
{%- elif trigger.entity_id == entity12 and buttonpage == 'buttonpage02' -%} buttonpage02.button04
{%- elif trigger.entity_id == entity13 and buttonpage == 'buttonpage02' -%} buttonpage02.button05
{%- elif trigger.entity_id == entity14 and buttonpage == 'buttonpage02' -%} buttonpage02.button06
{%- elif trigger.entity_id == entity15 and buttonpage == 'buttonpage02' -%} buttonpage02.button07
{%- elif trigger.entity_id == entity16 and buttonpage == 'buttonpage02' -%} buttonpage02.button08
{%- elif trigger.entity_id == entity17 and buttonpage == 'buttonpage03' -%} buttonpage03.button01
{%- elif trigger.entity_id == entity18 and buttonpage == 'buttonpage03' -%} buttonpage03.button02
{%- elif trigger.entity_id == entity19 and buttonpage == 'buttonpage03' -%} buttonpage03.button03
{%- elif trigger.entity_id == entity20 and buttonpage == 'buttonpage03' -%} buttonpage03.button04
{%- elif trigger.entity_id == entity21 and buttonpage == 'buttonpage03' -%} buttonpage03.button05
{%- elif trigger.entity_id == entity22 and buttonpage == 'buttonpage03' -%} buttonpage03.button06
{%- elif trigger.entity_id == entity23 and buttonpage == 'buttonpage03' -%} buttonpage03.button07
{%- elif trigger.entity_id == entity24 and buttonpage == 'buttonpage03' -%} buttonpage03.button08
{%- elif trigger.entity_id == entity25 and buttonpage == 'buttonpage04' -%} buttonpage04.button01
{%- elif trigger.entity_id == entity26 and buttonpage == 'buttonpage04' -%} buttonpage04.button02
{%- elif trigger.entity_id == entity27 and buttonpage == 'buttonpage04' -%} buttonpage04.button03
{%- elif trigger.entity_id == entity28 and buttonpage == 'buttonpage04' -%} buttonpage04.button04
{%- elif trigger.entity_id == entity29 and buttonpage == 'buttonpage04' -%} buttonpage04.button05
{%- elif trigger.entity_id == entity30 and buttonpage == 'buttonpage04' -%} buttonpage04.button06
{%- elif trigger.entity_id == entity31 and buttonpage == 'buttonpage04' -%} buttonpage04.button07
{%- elif trigger.entity_id == entity32 and buttonpage == 'buttonpage04' -%} buttonpage04.button08
{%- endif -%}
# Button PIC
btn_pic: >-
{%- if trigger.to_state.entity_id is match "light." and trigger.to_state.state == 'on' -%} {{ button_on }}
{%- elif trigger.to_state.entity_id is match "light." and trigger.to_state.state == 'off' -%} {{ button_off }}
{%- elif trigger.to_state.entity_id is match "switch." and trigger.to_state.state == 'on' -%} {{ button_on }}
{%- elif trigger.to_state.entity_id is match "switch." and trigger.to_state.state == 'off' -%} {{ button_off }}
{%- elif trigger.to_state.entity_id is match "input_boolean." and trigger.to_state.state == 'on' -%} {{ button_on }}
{%- elif trigger.to_state.entity_id is match "input_boolean." and trigger.to_state.state == 'off' -%} {{ button_off }}
{%- elif trigger.to_state.entity_id is match "cover." and trigger.to_state.state == 'open' -%} {{ button_on }}
{%- elif trigger.to_state.entity_id is match "cover." and trigger.to_state.state == 'closed' -%} {{ button_off }}
{%- elif trigger.to_state.entity_id is match "automation." and trigger.to_state.state == 'on' -%} {{ button_on }}
{%- elif trigger.to_state.entity_id is match "automation." and trigger.to_state.state == 'off' -%} {{ button_off }}
{%- elif trigger.to_state.entity_id is match "button." -%} {{ button_on }}
{%- elif trigger.to_state.entity_id is match "input_button." -%} {{ button_on }}
{%- elif trigger.to_state.entity_id is match "scene." -%} {{ button_on }}
{%- elif trigger.to_state.entity_id is match "script." and trigger.to_state.state == 'on' -%} {{ button_on }}
{%- elif trigger.to_state.entity_id is match "script." and trigger.to_state.state == 'off' -%} {{ button_off }}
{%- elif trigger.to_state.entity_id is match "person." and trigger.to_state.state == 'home' -%} {{ button_on }}
{%- elif trigger.to_state.entity_id is match "person." and trigger.to_state.state != 'home' -%} {{ button_off }}
{%- elif trigger.to_state.entity_id is match "binary_sensor." and trigger.to_state.state == 'on' -%} {{ button_on }}
{%- elif trigger.to_state.entity_id is match "binary_sensor." and trigger.to_state.state == 'off' -%} {{ button_off }}
{%- elif trigger.to_state.entity_id is match "fan." and trigger.to_state.state == 'on' -%} {{ button_on }}
{%- elif trigger.to_state.entity_id is match "fan." and trigger.to_state.state == 'off' -%} {{ button_off }}
{%- elif trigger.to_state.entity_id is match "climate." and trigger.to_state.state != 'off' -%} {{ button_on }}
{%- elif trigger.to_state.entity_id is match "climate." and trigger.to_state.state == 'off' -%} {{ button_off }}
{%- endif -%}
# TEXT and BRIGHTNESS and ICON Background
btn_bg: >-
{%- if trigger.to_state.entity_id is match "button." or trigger.to_state.entity_id is match "input_button." or trigger.to_state.entity_id is match "scene." -%} {{ color_01 }}
{%- elif trigger.to_state.state == 'on' or trigger.to_state.state == 'open' -%} {{ color_01 }}
{%- elif trigger.to_state.state == 'off' or trigger.to_state.state == 'closed' -%} {{ color_02 }}
{%- elif trigger.to_state.entity_id is match "person." and trigger.to_state.state == 'home' -%} {{ color_01 }}
{%- elif trigger.to_state.entity_id is match "person." and trigger.to_state.state != 'home' -%} {{ color_02 }}
{%- elif trigger.to_state.entity_id is match "climate." and trigger.to_state.state != 'off' -%} {{ color_01 }}
{%- elif trigger.to_state.entity_id is match "climate." and trigger.to_state.state == 'off' -%} {{ color_02 }}
{%- endif -%}
# ICON Font Color
btn_icon_font: >-
{%- if trigger.entity_id == entity01 and ((trigger.to_state.state == 'on' or trigger.to_state.state == 'open') or (trigger.to_state.entity_id is match "button.") or (trigger.to_state.entity_id is match "input_button.") or (trigger.to_state.entity_id is match "scene.") or (trigger.to_state.entity_id is match "person." and trigger.to_state.state == 'home') or (trigger.to_state.entity_id is match "climate." and trigger.to_state.state != 'off') ) -%} {{ entity01_icon_color }}
{%- elif trigger.entity_id == entity02 and ((trigger.to_state.state == 'on' or trigger.to_state.state == 'open') or (trigger.to_state.entity_id is match "button.") or (trigger.to_state.entity_id is match "input_button.") or (trigger.to_state.entity_id is match "scene.") or (trigger.to_state.entity_id is match "person." and trigger.to_state.state == 'home') or (trigger.to_state.entity_id is match "climate." and trigger.to_state.state != 'off') ) -%} {{ entity02_icon_color }}
{%- elif trigger.entity_id == entity03 and ((trigger.to_state.state == 'on' or trigger.to_state.state == 'open') or (trigger.to_state.entity_id is match "button.") or (trigger.to_state.entity_id is match "input_button.") or (trigger.to_state.entity_id is match "scene.") or (trigger.to_state.entity_id is match "person." and trigger.to_state.state == 'home') or (trigger.to_state.entity_id is match "climate." and trigger.to_state.state != 'off') ) -%} {{ entity03_icon_color }}
{%- elif trigger.entity_id == entity04 and ((trigger.to_state.state == 'on' or trigger.to_state.state == 'open') or (trigger.to_state.entity_id is match "button.") or (trigger.to_state.entity_id is match "input_button.") or (trigger.to_state.entity_id is match "scene.") or (trigger.to_state.entity_id is match "person." and trigger.to_state.state == 'home') or (trigger.to_state.entity_id is match "climate." and trigger.to_state.state != 'off') ) -%} {{ entity04_icon_color }}
{%- elif trigger.entity_id == entity05 and ((trigger.to_state.state == 'on' or trigger.to_state.state == 'open') or (trigger.to_state.entity_id is match "button.") or (trigger.to_state.entity_id is match "input_button.") or (trigger.to_state.entity_id is match "scene.") or (trigger.to_state.entity_id is match "person." and trigger.to_state.state == 'home') or (trigger.to_state.entity_id is match "climate." and trigger.to_state.state != 'off') ) -%} {{ entity05_icon_color }}
{%- elif trigger.entity_id == entity06 and ((trigger.to_state.state == 'on' or trigger.to_state.state == 'open') or (trigger.to_state.entity_id is match "button.") or (trigger.to_state.entity_id is match "input_button.") or (trigger.to_state.entity_id is match "scene.") or (trigger.to_state.entity_id is match "person." and trigger.to_state.state == 'home') or (trigger.to_state.entity_id is match "climate." and trigger.to_state.state != 'off') ) -%} {{ entity06_icon_color }}
{%- elif trigger.entity_id == entity07 and ((trigger.to_state.state == 'on' or trigger.to_state.state == 'open') or (trigger.to_state.entity_id is match "button.") or (trigger.to_state.entity_id is match "input_button.") or (trigger.to_state.entity_id is match "scene.") or (trigger.to_state.entity_id is match "person." and trigger.to_state.state == 'home') or (trigger.to_state.entity_id is match "climate." and trigger.to_state.state != 'off') ) -%} {{ entity07_icon_color }}
{%- elif trigger.entity_id == entity08 and ((trigger.to_state.state == 'on' or trigger.to_state.state == 'open') or (trigger.to_state.entity_id is match "button.") or (trigger.to_state.entity_id is match "input_button.") or (trigger.to_state.entity_id is match "scene.") or (trigger.to_state.entity_id is match "person." and trigger.to_state.state == 'home') or (trigger.to_state.entity_id is match "climate." and trigger.to_state.state != 'off') ) -%} {{ entity08_icon_color }}
{%- elif trigger.entity_id == entity09 and ((trigger.to_state.state == 'on' or trigger.to_state.state == 'open') or (trigger.to_state.entity_id is match "button.") or (trigger.to_state.entity_id is match "input_button.") or (trigger.to_state.entity_id is match "scene.") or (trigger.to_state.entity_id is match "person." and trigger.to_state.state == 'home') or (trigger.to_state.entity_id is match "climate." and trigger.to_state.state != 'off') ) -%} {{ entity09_icon_color }}
{%- elif trigger.entity_id == entity10 and ((trigger.to_state.state == 'on' or trigger.to_state.state == 'open') or (trigger.to_state.entity_id is match "button.") or (trigger.to_state.entity_id is match "input_button.") or (trigger.to_state.entity_id is match "scene.") or (trigger.to_state.entity_id is match "person." and trigger.to_state.state == 'home') or (trigger.to_state.entity_id is match "climate." and trigger.to_state.state != 'off') ) -%} {{ entity10_icon_color }}
{%- elif trigger.entity_id == entity11 and ((trigger.to_state.state == 'on' or trigger.to_state.state == 'open') or (trigger.to_state.entity_id is match "button.") or (trigger.to_state.entity_id is match "input_button.") or (trigger.to_state.entity_id is match "scene.") or (trigger.to_state.entity_id is match "person." and trigger.to_state.state == 'home') or (trigger.to_state.entity_id is match "climate." and trigger.to_state.state != 'off') ) -%} {{ entity11_icon_color }}
{%- elif trigger.entity_id == entity12 and ((trigger.to_state.state == 'on' or trigger.to_state.state == 'open') or (trigger.to_state.entity_id is match "button.") or (trigger.to_state.entity_id is match "input_button.") or (trigger.to_state.entity_id is match "scene.") or (trigger.to_state.entity_id is match "person." and trigger.to_state.state == 'home') or (trigger.to_state.entity_id is match "climate." and trigger.to_state.state != 'off') ) -%} {{ entity12_icon_color }}
{%- elif trigger.entity_id == entity13 and ((trigger.to_state.state == 'on' or trigger.to_state.state == 'open') or (trigger.to_state.entity_id is match "button.") or (trigger.to_state.entity_id is match "input_button.") or (trigger.to_state.entity_id is match "scene.") or (trigger.to_state.entity_id is match "person." and trigger.to_state.state == 'home') or (trigger.to_state.entity_id is match "climate." and trigger.to_state.state != 'off') ) -%} {{ entity13_icon_color }}
{%- elif trigger.entity_id == entity14 and ((trigger.to_state.state == 'on' or trigger.to_state.state == 'open') or (trigger.to_state.entity_id is match "button.") or (trigger.to_state.entity_id is match "input_button.") or (trigger.to_state.entity_id is match "scene.") or (trigger.to_state.entity_id is match "person." and trigger.to_state.state == 'home') or (trigger.to_state.entity_id is match "climate." and trigger.to_state.state != 'off') ) -%} {{ entity14_icon_color }}
{%- elif trigger.entity_id == entity15 and ((trigger.to_state.state == 'on' or trigger.to_state.state == 'open') or (trigger.to_state.entity_id is match "button.") or (trigger.to_state.entity_id is match "input_button.") or (trigger.to_state.entity_id is match "scene.") or (trigger.to_state.entity_id is match "person." and trigger.to_state.state == 'home') or (trigger.to_state.entity_id is match "climate." and trigger.to_state.state != 'off') ) -%} {{ entity15_icon_color }}
{%- elif trigger.entity_id == entity16 and ((trigger.to_state.state == 'on' or trigger.to_state.state == 'open') or (trigger.to_state.entity_id is match "button.") or (trigger.to_state.entity_id is match "input_button.") or (trigger.to_state.entity_id is match "scene.") or (trigger.to_state.entity_id is match "person." and trigger.to_state.state == 'home') or (trigger.to_state.entity_id is match "climate." and trigger.to_state.state != 'off') ) -%} {{ entity16_icon_color }}
{%- elif trigger.entity_id == entity17 and ((trigger.to_state.state == 'on' or trigger.to_state.state == 'open') or (trigger.to_state.entity_id is match "button.") or (trigger.to_state.entity_id is match "input_button.") or (trigger.to_state.entity_id is match "scene.") or (trigger.to_state.entity_id is match "person." and trigger.to_state.state == 'home') or (trigger.to_state.entity_id is match "climate." and trigger.to_state.state != 'off') ) -%} {{ entity17_icon_color }}
{%- elif trigger.entity_id == entity18 and ((trigger.to_state.state == 'on' or trigger.to_state.state == 'open') or (trigger.to_state.entity_id is match "button.") or (trigger.to_state.entity_id is match "input_button.") or (trigger.to_state.entity_id is match "scene.") or (trigger.to_state.entity_id is match "person." and trigger.to_state.state == 'home') or (trigger.to_state.entity_id is match "climate." and trigger.to_state.state != 'off') ) -%} {{ entity18_icon_color }}
{%- elif trigger.entity_id == entity19 and ((trigger.to_state.state == 'on' or trigger.to_state.state == 'open') or (trigger.to_state.entity_id is match "button.") or (trigger.to_state.entity_id is match "input_button.") or (trigger.to_state.entity_id is match "scene.") or (trigger.to_state.entity_id is match "person." and trigger.to_state.state == 'home') or (trigger.to_state.entity_id is match "climate." and trigger.to_state.state != 'off') ) -%} {{ entity19_icon_color }}
{%- elif trigger.entity_id == entity20 and ((trigger.to_state.state == 'on' or trigger.to_state.state == 'open') or (trigger.to_state.entity_id is match "button.") or (trigger.to_state.entity_id is match "input_button.") or (trigger.to_state.entity_id is match "scene.") or (trigger.to_state.entity_id is match "person." and trigger.to_state.state == 'home') or (trigger.to_state.entity_id is match "climate." and trigger.to_state.state != 'off') ) -%} {{ entity20_icon_color }}
{%- elif trigger.entity_id == entity21 and ((trigger.to_state.state == 'on' or trigger.to_state.state == 'open') or (trigger.to_state.entity_id is match "button.") or (trigger.to_state.entity_id is match "input_button.") or (trigger.to_state.entity_id is match "scene.") or (trigger.to_state.entity_id is match "person." and trigger.to_state.state == 'home') or (trigger.to_state.entity_id is match "climate." and trigger.to_state.state != 'off') ) -%} {{ entity21_icon_color }}
{%- elif trigger.entity_id == entity22 and ((trigger.to_state.state == 'on' or trigger.to_state.state == 'open') or (trigger.to_state.entity_id is match "button.") or (trigger.to_state.entity_id is match "input_button.") or (trigger.to_state.entity_id is match "scene.") or (trigger.to_state.entity_id is match "person." and trigger.to_state.state == 'home') or (trigger.to_state.entity_id is match "climate." and trigger.to_state.state != 'off') ) -%} {{ entity22_icon_color }}
{%- elif trigger.entity_id == entity23 and ((trigger.to_state.state == 'on' or trigger.to_state.state == 'open') or (trigger.to_state.entity_id is match "button.") or (trigger.to_state.entity_id is match "input_button.") or (trigger.to_state.entity_id is match "scene.") or (trigger.to_state.entity_id is match "person." and trigger.to_state.state == 'home') or (trigger.to_state.entity_id is match "climate." and trigger.to_state.state != 'off') ) -%} {{ entity23_icon_color }}
{%- elif trigger.entity_id == entity24 and ((trigger.to_state.state == 'on' or trigger.to_state.state == 'open') or (trigger.to_state.entity_id is match "button.") or (trigger.to_state.entity_id is match "input_button.") or (trigger.to_state.entity_id is match "scene.") or (trigger.to_state.entity_id is match "person." and trigger.to_state.state == 'home') or (trigger.to_state.entity_id is match "climate." and trigger.to_state.state != 'off') ) -%} {{ entity24_icon_color }}
{%- elif trigger.entity_id == entity25 and ((trigger.to_state.state == 'on' or trigger.to_state.state == 'open') or (trigger.to_state.entity_id is match "button.") or (trigger.to_state.entity_id is match "input_button.") or (trigger.to_state.entity_id is match "scene.") or (trigger.to_state.entity_id is match "person." and trigger.to_state.state == 'home') or (trigger.to_state.entity_id is match "climate." and trigger.to_state.state != 'off') ) -%} {{ entity25_icon_color }}
{%- elif trigger.entity_id == entity26 and ((trigger.to_state.state == 'on' or trigger.to_state.state == 'open') or (trigger.to_state.entity_id is match "button.") or (trigger.to_state.entity_id is match "input_button.") or (trigger.to_state.entity_id is match "scene.") or (trigger.to_state.entity_id is match "person." and trigger.to_state.state == 'home') or (trigger.to_state.entity_id is match "climate." and trigger.to_state.state != 'off') ) -%} {{ entity26_icon_color }}
{%- elif trigger.entity_id == entity27 and ((trigger.to_state.state == 'on' or trigger.to_state.state == 'open') or (trigger.to_state.entity_id is match "button.") or (trigger.to_state.entity_id is match "input_button.") or (trigger.to_state.entity_id is match "scene.") or (trigger.to_state.entity_id is match "person." and trigger.to_state.state == 'home') or (trigger.to_state.entity_id is match "climate." and trigger.to_state.state != 'off') ) -%} {{ entity27_icon_color }}
{%- elif trigger.entity_id == entity28 and ((trigger.to_state.state == 'on' or trigger.to_state.state == 'open') or (trigger.to_state.entity_id is match "button.") or (trigger.to_state.entity_id is match "input_button.") or (trigger.to_state.entity_id is match "scene.") or (trigger.to_state.entity_id is match "person." and trigger.to_state.state == 'home') or (trigger.to_state.entity_id is match "climate." and trigger.to_state.state != 'off') ) -%} {{ entity28_icon_color }}
{%- elif trigger.entity_id == entity29 and ((trigger.to_state.state == 'on' or trigger.to_state.state == 'open') or (trigger.to_state.entity_id is match "button.") or (trigger.to_state.entity_id is match "input_button.") or (trigger.to_state.entity_id is match "scene.") or (trigger.to_state.entity_id is match "person." and trigger.to_state.state == 'home') or (trigger.to_state.entity_id is match "climate." and trigger.to_state.state != 'off') ) -%} {{ entity29_icon_color }}
{%- elif trigger.entity_id == entity30 and ((trigger.to_state.state == 'on' or trigger.to_state.state == 'open') or (trigger.to_state.entity_id is match "button.") or (trigger.to_state.entity_id is match "input_button.") or (trigger.to_state.entity_id is match "scene.") or (trigger.to_state.entity_id is match "person." and trigger.to_state.state == 'home') or (trigger.to_state.entity_id is match "climate." and trigger.to_state.state != 'off') ) -%} {{ entity30_icon_color }}
{%- elif trigger.entity_id == entity31 and ((trigger.to_state.state == 'on' or trigger.to_state.state == 'open') or (trigger.to_state.entity_id is match "button.") or (trigger.to_state.entity_id is match "input_button.") or (trigger.to_state.entity_id is match "scene.") or (trigger.to_state.entity_id is match "person." and trigger.to_state.state == 'home') or (trigger.to_state.entity_id is match "climate." and trigger.to_state.state != 'off') ) -%} {{ entity31_icon_color }}
{%- elif trigger.entity_id == entity32 and ((trigger.to_state.state == 'on' or trigger.to_state.state == 'open') or (trigger.to_state.entity_id is match "button.") or (trigger.to_state.entity_id is match "input_button.") or (trigger.to_state.entity_id is match "scene.") or (trigger.to_state.entity_id is match "person." and trigger.to_state.state == 'home') or (trigger.to_state.entity_id is match "climate." and trigger.to_state.state != 'off') ) -%} {{ entity32_icon_color }}
{%- elif trigger.to_state.state == 'off' or trigger.to_state.state == 'closed' -%} {{ color_03 }}
{%- elif trigger.to_state.entity_id is match "person." and trigger.to_state.state != 'home' -%} {{ color_03 }}
{%- elif trigger.to_state.entity_id is match "climate." and trigger.to_state.state == 'off' -%} {{ color_03 }}
{%- endif -%}
# LABEL Font Color
btn_txt_font: >-
{%- if trigger.to_state.entity_id is match "button." or trigger.to_state.entity_id is match "input_button." or trigger.to_state.entity_id is match "scene." -%} {{ color_02 }}
{%- elif trigger.to_state.state == 'on' or trigger.to_state.state == 'open' -%} {{ color_02 }}
{%- elif trigger.to_state.state == 'off' or trigger.to_state.state == 'closed' -%} {{ color_01 }}
{%- elif trigger.to_state.entity_id is match "person." and trigger.to_state.state == 'home' -%} {{ color_02 }}
{%- elif trigger.to_state.entity_id is match "person." and trigger.to_state.state != 'home' -%} {{ color_01 }}
{%- elif trigger.to_state.entity_id is match "climate." and trigger.to_state.state != 'off' -%} {{ color_02 }}
{%- elif trigger.to_state.entity_id is match "climate." and trigger.to_state.state == 'off' -%} {{ color_01 }}
{%- endif -%}
# BRIGHTNESS Font Color
btn_bri_font: "{{ color_02 }}"
# BRIGHTNESS Value
btn_bri_txt: >-
{%- if trigger.to_state.entity_id is match "light." and trigger.to_state.state == 'on' and trigger.to_state.attributes.brightness is defined -%} {{ (trigger.to_state.attributes.brightness | int * 100 /255) | round(0) }}%
{%- elif trigger.to_state.entity_id is match "cover." and trigger.to_state.state == 'open' and trigger.to_state.attributes.current_position is defined -%} {{ (trigger.to_state.attributes.current_position | int) | round(0) }}%
{%- elif trigger.to_state.entity_id is match "climate." and trigger.to_state.state != 'off' and trigger.to_state.attributes.current_temperature is defined -%} {{ (trigger.to_state.attributes.current_temperature | int) | round(0) }}°
{%- else -%} 0
{%- endif -%}
##### SET Button PIC
- service: "{{ command_printf }}"
data:
cmd: "{{ component_to_update }}pic.pic={{ btn_pic }}"
##### SET ICON Background #####
- delay:
milliseconds: "{{ delay_value }}"
- service: "{{ command_background_color }}"
data:
component: "{{ component_to_update }}icon"
message: "{{ btn_bg }}"
##### SET LABEL Background #####
- delay:
milliseconds: "{{ delay_value }}"
- service: "{{ command_background_color }}"
data:
component: "{{ component_to_update }}text"
message: "{{ btn_bg }}"
##### SET BRIGHTNESS Background Color #####
- delay:
milliseconds: "{{ delay_value }}"
- service: "{{ command_background_color }}"
data:
component: "{{ component_to_update }}bri"
message: "{{ btn_bg }}"
##### SET ICON Font Color #####
- delay:
milliseconds: "{{ delay_value }}"
- service: "{{ command_font_color }}"
data:
component: "{{ component_to_update }}icon"
message: "{{ btn_icon_font }}"
##### SET LABEL Font Color #####
- delay:
milliseconds: "{{ delay_value }}"
- service: "{{ command_font_color }}"
data:
component: "{{ component_to_update }}text"
message: "{{ btn_txt_font }}"
##### SET BRIGHTNESS Font Color #####
- delay:
milliseconds: "{{ delay_value }}"
- service: "{{ command_font_color }}"
data:
component: "{{ component_to_update }}bri"
message: "{{ btn_bri_font }}"
##### "BRIGHTNESS" Value #####
- if:
- condition: template
value_template: "{{ btn_bri_txt == 0 }}"
then:
- delay:
milliseconds: "{{ delay_value }}"
- service: "{{ command_text_printf }}"
data:
component: "{{ component_to_update }}bri"
message: " "
else:
- delay:
milliseconds: "{{ delay_value }}"
- service: "{{ command_text_printf }}"
data:
component: "{{ component_to_update }}bri"
message: "{{ btn_bri_txt }}"
##### release button/scene (stateless) #####
- if:
- condition: template
value_template: '{{ trigger.to_state.entity_id is match "button." or trigger.to_state.entity_id is match "input_button." or trigger.to_state.entity_id is match "scene." }}'
then:
- delay:
milliseconds: "1000"
- variables:
btn_pic: >-
{%- if trigger.to_state.entity_id is match "button." -%} {{ button_off }}
{%- elif trigger.to_state.entity_id is match "input_button." -%} {{ button_off }}
{%- elif trigger.to_state.entity_id is match "scene." -%} {{ button_off }}
{%- endif -%}
btn_bg: '{{ color_02 }}'
btn_txt_font: '{{ color_01 }}'
##### Button PIC #####
- service: "{{ command_printf }}"
data:
cmd: "{{ component_to_update }}pic.pic={{ btn_pic }}"
##### LABEL Background #####
- delay:
milliseconds: "{{ delay_value }}"
- service: "{{ command_background_color }}"
data:
component: "{{ component_to_update }}text"
message: "{{ btn_bg }}"
##### TEXT Font Color #####
- delay:
milliseconds: "{{ delay_value }}"
- service: "{{ command_font_color }}"
data:
component: "{{ component_to_update }}text"
message: "{{ btn_txt_font }}"
##### BRIGHTNESS Background Color #####
- delay:
milliseconds: "{{ delay_value }}"
- service: "{{ command_background_color }}"
data:
component: "{{ component_to_update }}bri"
message: "{{ btn_bg }}"
# ##### UPDATE LIGHTSETTING / COVERSETTING PAGE
# - choose:
# ##### LIGHTSETTINGS PAGE - LIGHT Entity #####
# - conditions:
# - condition: template
# # value_template: '{{ entity_long is match "light." }}' TODO
# value_template: '{{ states(current_page) == page_lightsettings }}'
# sequence:
# ##### LIGHT ICON - ON / OFF #####
# - variables:
# lightsettings_icon_font: >-
# {%- if entity_long_icon |length > 0 -%} {{ entity_long_icon }}
# {%- else -%} {{ button_icon_light }}
# {%- endif -%}
# lightsettings_icon_font_color: >-
# {%- if states(entity_long) == 'on' -%} {{ entity_long_icon_color }}
# {%- else -%} {{ color_03 }}
# {%- endif -%}
# - delay:
# milliseconds: "{{ delay_value }}"
# - service: "{{ command_text_printf }}"
# data:
# component: lightsettings.icon_state
# message: "{{ lightsettings_icon_font }}"
# - delay:
# milliseconds: "{{ delay_value }}"
# - service: "{{ command_font_color }}"
# data:
# component: lightsettings.icon_state
# message: "{{ lightsettings_icon_font_color }}"
# # ##### LIGHT ON / OFF #####
# # - choose:
# # ##### LIGHT Settings ON #####
# # - conditions:
# # - condition: template
# # value_template: '{{ states(entity_long) == "on" }}'
# # sequence:
# # ##### LIGHT Brightness Slider HA Sync - YES #####
# # - if:
# # - condition: template
# # value_template: '{{ sync_slider_ha == "select_yes" }}'
# # then:
# # - delay:
# # milliseconds: "{{ delay_value }}"
# # - service: "{{ command_value }}"
# # data:
# # component: lightsettings.lightslider
# # message: '{{ (state_attr(entity_long, "brightness") | int ) |round(0) }}'
# # ##### LIGHT Temp Slider HA Sync - YES #####
# # - if:
# # - condition: template
# # value_template: '{{ sync_slider_ha == "select_yes" }}'
# # then:
# # - delay:
# # milliseconds: "{{ delay_value }}"
# # - service: "{{ command_value }}"
# # data:
# # component: lightsettings.tempslider
# # message: '{{ (state_attr(entity_long, "color_temp") | int ) |round(0) }}'
# # ##### LIGHT Brightness Value HA Sync - YES #####
# # - if:
# # - condition: template
# # value_template: '{{ sync_value_ha == "select_yes" }}'
# # then:
# # - delay:
# # milliseconds: "{{ delay_value }}"
# # - service: "{{ command_text_printf }}"
# # data:
# # component: lightsettings.light_value
# # message: '{{ (state_attr(entity_long, "brightness") | int * 100 / 255) |round(0) }}%'
# # - delay:
# # milliseconds: "{{ delay_value }}"
# # - service: "{{ command_text_printf }}"
# # data:
# # component: lightsettings.light_value_2
# # message: '{{ (state_attr(entity_long, "brightness") | int * 100 / 255) |round(0) }}%'
# # ##### LIGHT Temp Value HA Sync - YES #####
# # - if:
# # - condition: template
# # value_template: '{{ sync_value_ha == "select_yes" }}'
# # then:
# # - delay:
# # milliseconds: "{{ delay_value }}"
# # - service: "{{ command_text_printf }}"
# # data:
# # component: lightsettings.temp_value
# # message: '{{ (state_attr(entity_long, "color_temp") | int ) |round(0) }}'
# # - delay:
# # milliseconds: "{{ delay_value }}"
# # - service: "{{ command_text_printf }}"
# # data:
# # component: lightsettings.temp_value_2
# # message: '{{ (state_attr(entity_long, "color_temp") | int ) |round(0) }}'
# # ##### LIGHT SETTINGS - OFF #####
# # - conditions:
# # - condition: template
# # value_template: '{{ states(entity_long) == "off" }}'
# # sequence:
# # ##### LIGHT Brightness Slider HA Sync - YES #####
# # - if:
# # - condition: template
# # value_template: '{{ sync_slider_ha == "select_yes" }}'
# # then:
# # - delay:
# # milliseconds: "{{ delay_value }}"
# # - service: "{{ command_value }}"
# # data:
# # component: lightsettings.lightslider
# # message: '0'
# # ##### LIGHT Brightness Value HA Sync - YES #####
# # - if:
# # - condition: template
# # value_template: '{{ sync_value_ha == "select_yes" }}'
# # then:
# # - delay:
# # milliseconds: "{{ delay_value }}"
# # - service: "{{ command_text_printf }}"
# # data:
# # component: lightsettings.light_value
# # message: '0 %'
# # - delay:
# # milliseconds: "{{ delay_value }}"
# # - service: "{{ command_text_printf }}"
# # data:
# # component: lightsettings.light_value_2
# # message: '0 %'
# ##### COVERSETTINGS PAGE - COVER Entity #####
# - conditions:
# - condition: template
# # value_template: '{{ entity_long is match "cover." }}' TODO
# value_template: '{{ states(current_page) == page_coversettings }}'
# sequence:
# ##### COVER ICON - ON / OFF #####
# - variables:
# coversettings_icon_font: >-
# {%- if entity_long_icon |length > 0 -%} {{ entity_long_icon }}
# {%- else -%} {{ button_icon_cover }}
# {%- endif -%}
# coversettings_icon_font_color: >-
# {%- if states(entity_long) == 'open' -%} {{ entity_long_icon_color }}
# {%- else -%} {{ color_03 }}
# {%- endif -%}
# - delay:
# milliseconds: "{{ delay_value }}"
# - service: "{{ command_text_printf }}"
# data:
# component: coversettings.icon_state
# message: "{{ coversettings_icon_font }}"
# - delay:
# milliseconds: "{{ delay_value }}"
# - service: "{{ command_font_color }}"
# data:
# component: coversettings.icon_state
# message: "{{ coversettings_icon_font_color }}"
# ##### COVER OPEN #####
# - choose:
# - conditions:
# - condition: template
# value_template: '{{ states(entity_long) == "open" }}'
# sequence:
# ##### Cover Slider HA Sync - YES #####
# - if:
# - condition: template
# value_template: '{{ sync_slider_ha == "select_yes" }}'
# then:
# - delay:
# milliseconds: "{{ delay_value }}"
# - service: "{{ command_value }}"
# data:
# component: coversettings.coverslider
# message: '{{ (state_attr(entity_long, "current_position") | int ) |round(0) }}'
# ##### Cover Value HA Sync - YES #####
# - if:
# - condition: template
# value_template: '{{ sync_value_ha == "select_yes" }}'
# then:
# - delay:
# milliseconds: "{{ delay_value }}"
# - service: "{{ command_text_printf }}"
# data:
# component: coversettings.cover_value
# message: '{{ (state_attr(entity_long, "current_position") | int ) |round(0) }} %'
# ##### Cover - Closed #####
# - conditions:
# - condition: template
# value_template: '{{ states(entity_long) == "closed" }}'
# sequence:
# ##### Cover Slider HA Sync - YES #####
# - if:
# - condition: template
# value_template: '{{ sync_slider_ha == "select_yes" }}'
# then:
# - delay:
# milliseconds: "{{ delay_value }}"
# - service: "{{ command_value }}"
# data:
# component: coversettings.coverslider
# message: '0'
# ##### Cover Value HA Sync - YES #####
# - if:
# - condition: template
# value_template: '{{ sync_value_ha == "select_yes" }}'
# then:
# - delay:
# milliseconds: "{{ delay_value }}"
# - service: "{{ command_text_printf }}"
# data:
# component: coversettings.cover_value
# message: '0 %'
##### SHORT PRESS BUTTON PAGE - toggle enities #####
- conditions:
- condition: trigger
id: short_press
- condition: template
value_template: '{{ states(current_page) == page_buttonpage01 or states(current_page) == page_buttonpage02 or states(current_page) == page_buttonpage03 or states(current_page) == page_buttonpage04}}'
sequence:
- 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 }}
{%- endif -%}
entity_confirm: >-
{%- if states(last_click) == "releasebuttonpage01button01" -%} {{ entity01_confirm }}
{%- elif states(last_click) == "releasebuttonpage01button02" -%} {{ entity02_confirm }}
{%- elif states(last_click) == "releasebuttonpage01button03" -%} {{ entity03_confirm }}
{%- elif states(last_click) == "releasebuttonpage01button04" -%} {{ entity04_confirm }}
{%- elif states(last_click) == "releasebuttonpage01button05" -%} {{ entity05_confirm }}
{%- elif states(last_click) == "releasebuttonpage01button06" -%} {{ entity06_confirm }}
{%- elif states(last_click) == "releasebuttonpage01button07" -%} {{ entity07_confirm }}
{%- elif states(last_click) == "releasebuttonpage01button08" -%} {{ entity08_confirm }}
{%- elif states(last_click) == "releasebuttonpage02button01" -%} {{ entity09_confirm }}
{%- elif states(last_click) == "releasebuttonpage02button02" -%} {{ entity10_confirm }}
{%- elif states(last_click) == "releasebuttonpage02button03" -%} {{ entity11_confirm }}
{%- elif states(last_click) == "releasebuttonpage02button04" -%} {{ entity12_confirm }}
{%- elif states(last_click) == "releasebuttonpage02button05" -%} {{ entity13_confirm }}
{%- elif states(last_click) == "releasebuttonpage02button06" -%} {{ entity14_confirm }}
{%- elif states(last_click) == "releasebuttonpage02button07" -%} {{ entity15_confirm }}
{%- elif states(last_click) == "releasebuttonpage02button08" -%} {{ entity16_confirm }}
{%- elif states(last_click) == "releasebuttonpage03button01" -%} {{ entity17_confirm }}
{%- elif states(last_click) == "releasebuttonpage03button02" -%} {{ entity18_confirm }}
{%- elif states(last_click) == "releasebuttonpage03button03" -%} {{ entity19_confirm }}
{%- elif states(last_click) == "releasebuttonpage03button04" -%} {{ entity20_confirm }}
{%- elif states(last_click) == "releasebuttonpage03button05" -%} {{ entity21_confirm }}
{%- elif states(last_click) == "releasebuttonpage03button06" -%} {{ entity22_confirm }}
{%- elif states(last_click) == "releasebuttonpage03button07" -%} {{ entity23_confirm }}
{%- elif states(last_click) == "releasebuttonpage03button08" -%} {{ entity24_confirm }}
{%- elif states(last_click) == "releasebuttonpage04button01" -%} {{ entity25_confirm }}
{%- elif states(last_click) == "releasebuttonpage04button02" -%} {{ entity26_confirm }}
{%- elif states(last_click) == "releasebuttonpage04button03" -%} {{ entity27_confirm }}
{%- elif states(last_click) == "releasebuttonpage04button04" -%} {{ entity28_confirm }}
{%- elif states(last_click) == "releasebuttonpage04button05" -%} {{ entity29_confirm }}
{%- elif states(last_click) == "releasebuttonpage04button06" -%} {{ entity30_confirm }}
{%- elif states(last_click) == "releasebuttonpage04button07" -%} {{ entity31_confirm }}
{%- elif states(last_click) == "releasebuttonpage04button08" -%} {{ entity32_confirm }}
{%- endif -%}
- condition: template
value_template: '{{ entity_short |length > 0 and entity_short is not match "person." and entity_short is not match "binary_sensor." }}'
- if:
- condition: template
value_template: '{{ entity_short is match "climate." }}'
then:
- variables:
entity_long: '{{ entity_short }}'
entity_long_name: >-
{%- if states(entity_short) == 'unavailable' -%} {{ entity_short }}
{%- else -%} {{ state_attr(entity_short, "friendly_name")| default('no name') }}
{%- endif -%}
entity_back: '{{ states(current_page) }}'
- service: '{{ command_set_settings_entity }}'
data:
entity: '{{ entity_long }},{{ entity_back }},{{ entity_long_name }}'
- condition: template
value_template: '{{ entity_short is not match "climate." }}'
- if:
- condition: template
value_template: "{{ entity_confirm }}"
then:
- variables:
buttonpage: '{{ states(current_page) }}'
btn_entity_name: >-
{%- if state_attr(entity_short, "friendly_name") != None -%} {{ state_attr(entity_short, "friendly_name") }}
{%- elif state_attr(entity_short, "name") != None -%} {{ state_attr(entity_short, "name") }}
{%- else -%} "unknown"
{%- endif -%}
#### turn on switch confirmation_message
- service: switch.turn_on
data:
entity_id: '{{ confirmation_message }}'
- service: "{{ command_printf }}"
data:
cmd: "page {{ page_notification }}"
- service: "{{ command_text_printf }}"
data:
component: notification.notifi_text01
message: "{{ btn_entity_name }}"
- delay:
milliseconds: "{{ delay_value }}"
- service: "{{ command_text_printf }}"
data:
component: notification.notifi_label
message: "{{ mui[language].please_confirm }}"
- wait_template: "{{ is_state(last_click, ['notificationacceptrelease','notificationclearrelease','homepage']) }}"
timeout:
seconds: 10
continue_on_timeout: true
- choose:
- conditions: "{{ is_state(last_click, 'notificationacceptrelease') }}"
sequence:
- service: "{{ command_printf }}"
data:
cmd: "page {{ buttonpage }}"
- service: switch.turn_off
data:
entity_id: '{{ confirmation_message }}'
- 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
{% elif entity_short is match 'automation.' %}
automation.toggle
{% elif entity_short is match 'button.' %}
button.press
{% elif entity_short is match 'input_button.' %}
input_button.press
{% elif entity_short is match 'scene.' %}
scene.turn_on
{% elif entity_short is match 'script.' %}
script.turn_on
{% elif entity_short is match 'fan.' %}
fan.toggle
{% endif %}
data:
entity_id: "{{ entity_short }}"
- conditions: "{{ is_state(last_click, 'notificationclearrelease') }}"
sequence:
- service: "{{ command_printf }}"
data:
cmd: "page {{ buttonpage }}"
- service: switch.turn_off
data:
entity_id: '{{ confirmation_message }}'
- conditions: "{{ is_state(last_click, 'homepage') }}"
sequence:
- service: switch.turn_off
data:
entity_id: '{{ confirmation_message }}'
default:
- service: switch.turn_off
data:
entity_id: '{{ confirmation_message }}'
- service: "{{ command_printf }}"
data:
cmd: "page {{ page_home }}"
else:
- 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
{% elif entity_short is match 'automation.' %}
automation.toggle
{% elif entity_short is match 'button.' %}
button.press
{% elif entity_short is match 'input_button.' %}
input_button.press
{% elif entity_short is match 'scene.' %}
scene.turn_on
{% elif entity_short is match 'script.' %}
script.turn_on
{% elif entity_short is match 'fan.' %}
fan.toggle
{% endif %}
data:
entity_id: "{{ entity_short }}"
##### LONG PRESS BUTTON PAGE - save entity for settings pages #####
- conditions:
- condition: trigger
id: long_press
- condition: template
value_template: '{{ states(current_page) == page_buttonpage01 or states(current_page) == page_buttonpage02 or states(current_page) == page_buttonpage03 or states(current_page) == page_buttonpage04}}'
sequence:
- variables:
##### Long Press Entity #####
entity_long: >-
{%- if trigger.to_state.state == "pressbuttonpage01button01" -%} {{ entity01 }}
{%- elif trigger.to_state.state == "pressbuttonpage01button02" -%} {{ entity02 }}
{%- elif trigger.to_state.state == "pressbuttonpage01button03" -%} {{ entity03 }}
{%- elif trigger.to_state.state == "pressbuttonpage01button04" -%} {{ entity04 }}
{%- elif trigger.to_state.state == "pressbuttonpage01button05" -%} {{ entity05 }}
{%- elif trigger.to_state.state == "pressbuttonpage01button06" -%} {{ entity06 }}
{%- elif trigger.to_state.state == "pressbuttonpage01button07" -%} {{ entity07 }}
{%- elif trigger.to_state.state == "pressbuttonpage01button08" -%} {{ entity08 }}
{%- elif trigger.to_state.state == "pressbuttonpage02button01" -%} {{ entity09 }}
{%- elif trigger.to_state.state == "pressbuttonpage02button02" -%} {{ entity10 }}
{%- elif trigger.to_state.state == "pressbuttonpage02button03" -%} {{ entity11 }}
{%- elif trigger.to_state.state == "pressbuttonpage02button04" -%} {{ entity12 }}
{%- elif trigger.to_state.state == "pressbuttonpage02button05" -%} {{ entity13 }}
{%- elif trigger.to_state.state == "pressbuttonpage02button06" -%} {{ entity14 }}
{%- elif trigger.to_state.state == "pressbuttonpage02button07" -%} {{ entity15 }}
{%- elif trigger.to_state.state == "pressbuttonpage02button08" -%} {{ entity16 }}
{%- elif trigger.to_state.state == "pressbuttonpage03button01" -%} {{ entity17 }}
{%- elif trigger.to_state.state == "pressbuttonpage03button02" -%} {{ entity18 }}
{%- elif trigger.to_state.state == "pressbuttonpage03button03" -%} {{ entity19 }}
{%- elif trigger.to_state.state == "pressbuttonpage03button04" -%} {{ entity20 }}
{%- elif trigger.to_state.state == "pressbuttonpage03button05" -%} {{ entity21 }}
{%- elif trigger.to_state.state == "pressbuttonpage03button06" -%} {{ entity22 }}
{%- elif trigger.to_state.state == "pressbuttonpage03button07" -%} {{ entity23 }}
{%- elif trigger.to_state.state == "pressbuttonpage03button08" -%} {{ entity24 }}
{%- elif trigger.to_state.state == "pressbuttonpage04button01" -%} {{ entity25 }}
{%- elif trigger.to_state.state == "pressbuttonpage04button02" -%} {{ entity26 }}
{%- elif trigger.to_state.state == "pressbuttonpage04button03" -%} {{ entity27 }}
{%- elif trigger.to_state.state == "pressbuttonpage04button04" -%} {{ entity28 }}
{%- elif trigger.to_state.state == "pressbuttonpage04button05" -%} {{ entity29 }}
{%- elif trigger.to_state.state == "pressbuttonpage04button06" -%} {{ entity30 }}
{%- elif trigger.to_state.state == "pressbuttonpage04button07" -%} {{ entity31 }}
{%- elif trigger.to_state.state == "pressbuttonpage04button08" -%} {{ entity32 }}
{%- endif -%}
##### Long Press Entity Name #####
entity_long_name: >-
{%- if trigger.to_state.state == "pressbuttonpage01button01" -%} {{ entity01_name }}
{%- elif trigger.to_state.state == "pressbuttonpage01button02" -%} {{ entity02_name }}
{%- elif trigger.to_state.state == "pressbuttonpage01button03" -%} {{ entity03_name }}
{%- elif trigger.to_state.state == "pressbuttonpage01button04" -%} {{ entity04_name }}
{%- elif trigger.to_state.state == "pressbuttonpage01button05" -%} {{ entity05_name }}
{%- elif trigger.to_state.state == "pressbuttonpage01button06" -%} {{ entity06_name }}
{%- elif trigger.to_state.state == "pressbuttonpage01button07" -%} {{ entity07_name }}
{%- elif trigger.to_state.state == "pressbuttonpage01button08" -%} {{ entity08_name }}
{%- elif trigger.to_state.state == "pressbuttonpage02button01" -%} {{ entity09_name }}
{%- elif trigger.to_state.state == "pressbuttonpage02button02" -%} {{ entity10_name }}
{%- elif trigger.to_state.state == "pressbuttonpage02button03" -%} {{ entity11_name }}
{%- elif trigger.to_state.state == "pressbuttonpage02button04" -%} {{ entity12_name }}
{%- elif trigger.to_state.state == "pressbuttonpage02button05" -%} {{ entity13_name }}
{%- elif trigger.to_state.state == "pressbuttonpage02button06" -%} {{ entity14_name }}
{%- elif trigger.to_state.state == "pressbuttonpage02button07" -%} {{ entity15_name }}
{%- elif trigger.to_state.state == "pressbuttonpage02button08" -%} {{ entity16_name }}
{%- elif trigger.to_state.state == "pressbuttonpage03button01" -%} {{ entity17_name }}
{%- elif trigger.to_state.state == "pressbuttonpage03button02" -%} {{ entity18_name }}
{%- elif trigger.to_state.state == "pressbuttonpage03button03" -%} {{ entity19_name }}
{%- elif trigger.to_state.state == "pressbuttonpage03button04" -%} {{ entity20_name }}
{%- elif trigger.to_state.state == "pressbuttonpage03button05" -%} {{ entity21_name }}
{%- elif trigger.to_state.state == "pressbuttonpage03button06" -%} {{ entity22_name }}
{%- elif trigger.to_state.state == "pressbuttonpage03button07" -%} {{ entity23_name }}
{%- elif trigger.to_state.state == "pressbuttonpage03button08" -%} {{ entity24_name }}
{%- elif trigger.to_state.state == "pressbuttonpage04button01" -%} {{ entity25_name }}
{%- elif trigger.to_state.state == "pressbuttonpage04button02" -%} {{ entity26_name }}
{%- elif trigger.to_state.state == "pressbuttonpage04button03" -%} {{ entity27_name }}
{%- elif trigger.to_state.state == "pressbuttonpage04button04" -%} {{ entity28_name }}
{%- elif trigger.to_state.state == "pressbuttonpage04button05" -%} {{ entity29_name }}
{%- elif trigger.to_state.state == "pressbuttonpage04button06" -%} {{ entity30_name }}
{%- elif trigger.to_state.state == "pressbuttonpage04button07" -%} {{ entity31_name }}
{%- elif trigger.to_state.state == "pressbuttonpage04button08" -%} {{ entity32_name }}
{%- endif -%}
##### Long Press Entity Icon #####
entity_long_icon: >-
{%- if trigger.to_state.state == "pressbuttonpage01button01" -%} {{ entity01_icon }}
{%- elif trigger.to_state.state == "pressbuttonpage01button02" -%} {{ entity02_icon }}
{%- elif trigger.to_state.state == "pressbuttonpage01button03" -%} {{ entity03_icon }}
{%- elif trigger.to_state.state == "pressbuttonpage01button04" -%} {{ entity04_icon }}
{%- elif trigger.to_state.state == "pressbuttonpage01button05" -%} {{ entity05_icon }}
{%- elif trigger.to_state.state == "pressbuttonpage01button06" -%} {{ entity06_icon }}
{%- elif trigger.to_state.state == "pressbuttonpage01button07" -%} {{ entity07_icon }}
{%- elif trigger.to_state.state == "pressbuttonpage01button08" -%} {{ entity08_icon }}
{%- elif trigger.to_state.state == "pressbuttonpage02button01" -%} {{ entity09_icon }}
{%- elif trigger.to_state.state == "pressbuttonpage02button02" -%} {{ entity10_icon }}
{%- elif trigger.to_state.state == "pressbuttonpage02button03" -%} {{ entity11_icon }}
{%- elif trigger.to_state.state == "pressbuttonpage02button04" -%} {{ entity12_icon }}
{%- elif trigger.to_state.state == "pressbuttonpage02button05" -%} {{ entity13_icon }}
{%- elif trigger.to_state.state == "pressbuttonpage02button06" -%} {{ entity14_icon }}
{%- elif trigger.to_state.state == "pressbuttonpage02button07" -%} {{ entity15_icon }}
{%- elif trigger.to_state.state == "pressbuttonpage02button08" -%} {{ entity16_icon }}
{%- elif trigger.to_state.state == "pressbuttonpage03button01" -%} {{ entity17_icon }}
{%- elif trigger.to_state.state == "pressbuttonpage03button02" -%} {{ entity18_icon }}
{%- elif trigger.to_state.state == "pressbuttonpage03button03" -%} {{ entity19_icon }}
{%- elif trigger.to_state.state == "pressbuttonpage03button04" -%} {{ entity20_icon }}
{%- elif trigger.to_state.state == "pressbuttonpage03button05" -%} {{ entity21_icon }}
{%- elif trigger.to_state.state == "pressbuttonpage03button06" -%} {{ entity22_icon }}
{%- elif trigger.to_state.state == "pressbuttonpage03button07" -%} {{ entity23_icon }}
{%- elif trigger.to_state.state == "pressbuttonpage03button08" -%} {{ entity24_icon }}
{%- elif trigger.to_state.state == "pressbuttonpage04button01" -%} {{ entity25_icon }}
{%- elif trigger.to_state.state == "pressbuttonpage04button02" -%} {{ entity26_icon }}
{%- elif trigger.to_state.state == "pressbuttonpage04button03" -%} {{ entity27_icon }}
{%- elif trigger.to_state.state == "pressbuttonpage04button04" -%} {{ entity28_icon }}
{%- elif trigger.to_state.state == "pressbuttonpage04button05" -%} {{ entity29_icon }}
{%- elif trigger.to_state.state == "pressbuttonpage04button06" -%} {{ entity30_icon }}
{%- elif trigger.to_state.state == "pressbuttonpage04button07" -%} {{ entity31_icon }}
{%- elif trigger.to_state.state == "pressbuttonpage04button08" -%} {{ entity32_icon }}
{%- endif -%}
##### Long Press Entity Icon Color #####
entity_long_icon_color: >-
{%- if trigger.to_state.state == "pressbuttonpage01button01" -%} {{ entity01_icon_color }}
{%- elif trigger.to_state.state == "pressbuttonpage01button02" -%} {{ entity02_icon_color }}
{%- elif trigger.to_state.state == "pressbuttonpage01button03" -%} {{ entity03_icon_color }}
{%- elif trigger.to_state.state == "pressbuttonpage01button04" -%} {{ entity04_icon_color }}
{%- elif trigger.to_state.state == "pressbuttonpage01button05" -%} {{ entity05_icon_color }}
{%- elif trigger.to_state.state == "pressbuttonpage01button06" -%} {{ entity06_icon_color }}
{%- elif trigger.to_state.state == "pressbuttonpage01button07" -%} {{ entity07_icon_color }}
{%- elif trigger.to_state.state == "pressbuttonpage01button08" -%} {{ entity08_icon_color }}
{%- elif trigger.to_state.state == "pressbuttonpage02button01" -%} {{ entity09_icon_color }}
{%- elif trigger.to_state.state == "pressbuttonpage02button02" -%} {{ entity10_icon_color }}
{%- elif trigger.to_state.state == "pressbuttonpage02button03" -%} {{ entity11_icon_color }}
{%- elif trigger.to_state.state == "pressbuttonpage02button04" -%} {{ entity12_icon_color }}
{%- elif trigger.to_state.state == "pressbuttonpage02button05" -%} {{ entity13_icon_color }}
{%- elif trigger.to_state.state == "pressbuttonpage02button06" -%} {{ entity14_icon_color }}
{%- elif trigger.to_state.state == "pressbuttonpage02button07" -%} {{ entity15_icon_color }}
{%- elif trigger.to_state.state == "pressbuttonpage02button08" -%} {{ entity16_icon_color }}
{%- elif trigger.to_state.state == "pressbuttonpage03button01" -%} {{ entity17_icon_color }}
{%- elif trigger.to_state.state == "pressbuttonpage03button02" -%} {{ entity18_icon_color }}
{%- elif trigger.to_state.state == "pressbuttonpage03button03" -%} {{ entity19_icon_color }}
{%- elif trigger.to_state.state == "pressbuttonpage03button04" -%} {{ entity20_icon_color }}
{%- elif trigger.to_state.state == "pressbuttonpage03button05" -%} {{ entity21_icon_color }}
{%- elif trigger.to_state.state == "pressbuttonpage03button06" -%} {{ entity22_icon_color }}
{%- elif trigger.to_state.state == "pressbuttonpage03button07" -%} {{ entity23_icon_color }}
{%- elif trigger.to_state.state == "pressbuttonpage03button08" -%} {{ entity24_icon_color }}
{%- elif trigger.to_state.state == "pressbuttonpage04button01" -%} {{ entity25_icon_color }}
{%- elif trigger.to_state.state == "pressbuttonpage04button02" -%} {{ entity26_icon_color }}
{%- elif trigger.to_state.state == "pressbuttonpage04button03" -%} {{ entity27_icon_color }}
{%- elif trigger.to_state.state == "pressbuttonpage04button04" -%} {{ entity28_icon_color }}
{%- elif trigger.to_state.state == "pressbuttonpage04button05" -%} {{ entity29_icon_color }}
{%- elif trigger.to_state.state == "pressbuttonpage04button06" -%} {{ entity30_icon_color }}
{%- elif trigger.to_state.state == "pressbuttonpage04button07" -%} {{ entity31_icon_color }}
{%- elif trigger.to_state.state == "pressbuttonpage04button08" -%} {{ entity32_icon_color }}
{%- endif -%}
##### Current Page #####
entity_back: '{{ states(current_page) }}'
- service: '{{ command_set_settings_entity }}'
data:
entity: '{{ entity_long }},{{ entity_back }},{{ entity_long_name }},{{ entity_long_icon }},{{ entity_long_icon_color }}'
##### LASTCLICK_LIGHTSETTINGS - changes on page lightsettings #####
- conditions:
- condition: trigger
id: light_settings
- condition: template
value_template: "{{ states(current_page) == page_lightsettings }}"
sequence:
- choose:
##### Page Lightsettings - Brightness Slider MOVE #####
- conditions:
- condition: template
#value_template: '{{ trigger.event.data.new_state.state is match "brightness\d+" and trigger.event.data.new_state.state == states(last_click_lightsettings) }}'
value_template: '{{ trigger.event.data.new_state.state is match "brightness\d+" }}'
sequence:
- service: light.turn_on
data:
entity_id: "{{ entity_long }}"
brightness: '{{ (trigger.event.data.new_state.state |replace("brightness","") | int / 100 * 255) |round(0) }}'
#### wird nicht mehr benötigt, da es im nextion editor nun direkt gemacht wird
# - delay:
# milliseconds: "{{ delay_value }}"
# - service: "{{ command_text_printf }}"
# data:
# component: lightsettings.light_value
# message: '{{ (trigger.event.data.new_state.state |replace("brightness","") | int * 100 /255) |round(0) }}%'
# - delay:
# milliseconds: "{{ delay_value }}"
# - service: "{{ command_text_printf }}"
# data:
# component: lightsettings.light_value_2
# message: '{{ (trigger.event.data.new_state.state |replace("brightness","") | int * 100 /255) |round(0) }}%'
# value_template: '{{ states(last_click_lightsettings) is match "brightness\d+" }}'
# sequence:
# - service: light.turn_on
# data:
# entity_id: '{{ entity_long }}'
# brightness: '{{ states(last_click_lightsettings) |replace("brightness","") | int }}'
# - service: "{{ command_text_printf }}"
# data:
# component: lightsettings.light_value
# message: '{{ (states(last_click_lightsettings) |replace("brightness","") | int * 100 /255) |round(0) }}'
##### Page Lightsettings - color_Temp Slider MOVE #####
- conditions:
- condition: template
value_template: '{{ trigger.event.data.new_state.state is match "colortemp\d+" and trigger.event.data.new_state.state == states(last_click_lightsettings) }}'
sequence:
- service: light.turn_on
data:
entity_id: "{{ entity_long }}"
color_temp: '{{ trigger.event.data.new_state.state |replace("colortemp","") | int }}'
#### wird nicht mehr benötigt, da es im nextion editor nun direkt gemacht wird
# - delay:
# milliseconds: "{{ delay_value }}"
# - service: "{{ command_text_printf }}"
# data:
# component: lightsettings.temp_value
# message: '{{ trigger.event.data.new_state.state |replace("colortemp","") | int }}'
# - delay:
# milliseconds: "{{ delay_value }}"
# - service: "{{ command_text_printf }}"
# data:
# component: lightsettings.temp_value_2
# message: '{{ trigger.event.data.new_state.state |replace("colortemp","") | int }}'
##### Page Lightsettings - Color RGB Slider MOVE #####
- conditions:
- condition: template
value_template: '{{ trigger.event.data.new_state.state is match "\d+,\d+,\d+" }}'
sequence:
- service: light.turn_on
data:
entity_id: "{{ entity_long }}"
rgb_color: '{{ trigger.event.data.new_state.state.split(",") }}'
##### Page Lightsettings - Close Lightsetting Page #####
- conditions:
- condition: template
value_template: '{{ trigger.event.data.new_state.state == "releaselightsettingsclose" }}'
sequence:
- service: "{{ command_printf }}"
data:
cmd: "page {{ entity_back }}"
##### LASTCLICK_COVERSETTINGS - changes on page coversettings #####
- conditions:
- condition: trigger
id: cover_settings
- condition: template
value_template: "{{ states(current_page) == page_coversettings }}"
sequence:
- choose:
##### Page Coversettings - Cover Slider MOVE #####
- conditions:
- condition: template
#value_template: '{{ trigger.event.data.new_state.state is match "coverposition\d+" and trigger.event.data.new_state.state == states(last_click_coversettings) }}'
value_template: '{{ trigger.event.data.new_state.state is match "coverposition\d+" }}'
sequence:
- service: cover.set_cover_position
data:
entity_id: "{{ entity_long }}"
position: '{{ trigger.event.data.new_state.state |replace("coverposition","") | int }}'
#### wird nicht mehr benötigt, da es im nextion editor nun direkt gemacht wird
# - delay:
# milliseconds: "{{ delay_value }}"
# - service: "{{ command_text_printf }}"
# data:
# component: coversettings.cover_value
# message: '{{ trigger.event.data.new_state.state |replace("coverposition","") | int }} %'
# - delay:
# milliseconds: "{{ delay_value }}"
# - service: "{{ command_text_printf }}"
# data:
# component: coversettings.cover_value_2
# message: '{{ trigger.event.data.new_state.state |replace("coverposition","") | int }} %'
##### Page Coversettings - Cover CLOSE Button #####
- conditions:
- condition: template
value_template: '{{ trigger.event.data.new_state.state == "cover_close_press" }}'
sequence:
- service: cover.close_cover
data:
entity_id: "{{ entity_long }}"
##### Page Coversettings - Cover OPEN Button #####
- conditions:
- condition: template
value_template: '{{ trigger.event.data.new_state.state == "cover_open_press" }}'
sequence:
- service: cover.open_cover
data:
entity_id: "{{ entity_long }}"
##### Page Coversettings - Cover STOP Button #####
- conditions:
- condition: template
value_template: '{{ trigger.event.data.new_state.state == "cover_stop_press" }}'
sequence:
- service: cover.stop_cover
data:
entity_id: "{{ entity_long }}"
##### Page Coversettings - Close Coversettings Page #####
- conditions:
- condition: template
value_template: '{{ trigger.event.data.new_state.state == "releasecoversettingsclose" }}'
sequence:
- service: "{{ command_printf }}"
data:
cmd: "page {{ entity_back }}"
##### LASTCLICK_CLIMATESETTINGS - changes on page climatesettings #####
- conditions:
- condition: trigger
id: climate_settings
- condition: template
value_template: "{{ states(current_page) == page_climate }}"
sequence:
- choose:
##### Page Climatesettings - hotwater #####
- conditions: '{{ trigger.event.data.new_state.state == "releasehotwater" }}'
sequence:
- service: >-
{% if hotwatercharge is match 'switch.' %}
switch.toggle
{% elif hotwatercharge is match 'input_boolean.' %}
input_boolean.toggle
{% endif %}
data:
entity_id: "{{ hotwatercharge }}"
##### Page Climatesettings - heating #####
- conditions: '{{ trigger.event.data.new_state.state == "releaseheating" }}'
sequence:
- if:
- condition: template
value_template: '{{ states(entity_long) == "off" }}'
then:
- service: climate.turn_on ############
data:
entity_id: '{{ entity_long }}'
# - service: climate.set_temperature
# data:
# entity_id: !input climate
# hvac_mode: 'heat'
# temperature: "{{ state_attr(climate, 'temperature') }}"
else:
- service: climate.turn_off ############
data:
entity_id: '{{ entity_long }}'
# - service: climate.set_temperature
# data:
# entity_id: !input climate
# hvac_mode: 'off'
# temperature: "{{ state_attr(climate, 'temperature') }}"
##### Page Climatesettings - decreasetemp #####
- conditions: '{{ trigger.event.data.new_state.state == "releasedecreasetemp" }}'
sequence:
- if:
- condition: template
value_template: '{{ states(entity_long) != "off" }}'
then:
- if:
- condition: template
value_template: '{{ climate_optimistic == true }}' ## TODO - remove from here
then:
- variables:
current_setpoint: "{{states(display_target_temperature) | round(1)}}"
- service: "{{ command_thermostat_cycle }}"
data:
value: "{{ current_setpoint -0.5 }}"
else:
- variables:
current_setpoint: "{{state_attr(entity_long, 'temperature') | round(1)}}"
- service: climate.set_temperature
data:
entity_id: '{{ entity_long }}'
#hvac_mode: 'heat'
temperature: "{{ current_setpoint -0.5 }}"
##### Page Climatesettings - increasetemp #####
- conditions: '{{ trigger.event.data.new_state.state == "releaseincreasetemp" }}'
sequence:
- if:
- condition: template
value_template: '{{ states(entity_long) != "off" }}'
then:
- variables:
current_setpoint: "{{state_attr(entity_long, 'temperature') | round(1)}}"
- if:
- condition: template
value_template: '{{ climate_optimistic == true }}' ## TODO - remove from here
then:
- variables:
current_setpoint: "{{states(display_target_temperature) | round(1)}}"
- service: "{{ command_thermostat_cycle }}"
data:
value: "{{ current_setpoint +0.5 }}"
else:
- variables:
current_setpoint: "{{state_attr(entity_long, 'temperature') | round(1)}}"
- service: climate.set_temperature
data:
entity_id: '{{ entity_long }}'
#hvac_mode: 'heat'
temperature: "{{ current_setpoint +0.5 }}"
##### Page Climatesettings - climateslider #####
- conditions: '{{ trigger.event.data.new_state.state is match "climateslider\d+" and trigger.event.data.new_state.state == states(last_click_climatesettings) }}'
sequence:
- if:
- condition: template
value_template: '{{ states(entity_long) != "off" }}'
then:
- variables:
#climateslider: '{{ trigger.event.data.new_state.state |replace("climateslider","") | int }}'
new_setpoint: >-
{%- if trigger.event.data.new_state.state == "climateslider0" -%} 13.0
{%- elif trigger.event.data.new_state.state == "climateslider1" -%} 13.5
{%- elif trigger.event.data.new_state.state == "climateslider2" -%} 14
{%- elif trigger.event.data.new_state.state == "climateslider3" -%} 14.5
{%- elif trigger.event.data.new_state.state == "climateslider4" -%} 15
{%- elif trigger.event.data.new_state.state == "climateslider5" -%} 15.5
{%- elif trigger.event.data.new_state.state == "climateslider6" -%} 16
{%- elif trigger.event.data.new_state.state == "climateslider7" -%} 16.5
{%- elif trigger.event.data.new_state.state == "climateslider8" -%} 17
{%- elif trigger.event.data.new_state.state == "climateslider9" -%} 17.5
{%- elif trigger.event.data.new_state.state == "climateslider10" -%} 18
{%- elif trigger.event.data.new_state.state == "climateslider11" -%} 18.5
{%- elif trigger.event.data.new_state.state == "climateslider12" -%} 19
{%- elif trigger.event.data.new_state.state == "climateslider13" -%} 19.5
{%- elif trigger.event.data.new_state.state == "climateslider14" -%} 20
{%- elif trigger.event.data.new_state.state == "climateslider15" -%} 20.5
{%- elif trigger.event.data.new_state.state == "climateslider16" -%} 21
{%- elif trigger.event.data.new_state.state == "climateslider17" -%} 21.5
{%- elif trigger.event.data.new_state.state == "climateslider18" -%} 22
{%- elif trigger.event.data.new_state.state == "climateslider19" -%} 22.5
{%- elif trigger.event.data.new_state.state == "climateslider20" -%} 23
{%- elif trigger.event.data.new_state.state == "climateslider21" -%} 23.5
{%- elif trigger.event.data.new_state.state == "climateslider22" -%} 24
{%- elif trigger.event.data.new_state.state == "climateslider23" -%} 24.5
{%- elif trigger.event.data.new_state.state == "climateslider24" -%} 25
{%- elif trigger.event.data.new_state.state == "climateslider25" -%} 25.5
{%- elif trigger.event.data.new_state.state == "climateslider26" -%} 26
{%- elif trigger.event.data.new_state.state == "climateslider27" -%} 26.5
{%- elif trigger.event.data.new_state.state == "climateslider28" -%} 27
{%- endif -%}
- if:
- condition: template
value_template: '{{ climate_optimistic == true }}' ## TODO - remove from here
then:
- service: "{{ command_thermostat_cycle }}"
data:
value: "{{ new_setpoint }}"
else:
- service: climate.set_temperature
data:
entity_id: '{{ entity_long }}'
#hvac_mode: 'heat'
temperature: "{{ new_setpoint }}"
#### Page Climate - Close Climate Page #####
- conditions:
- condition: template
value_template: '{{ trigger.event.data.new_state.state == "releaseclimateclose" }}'
sequence:
- service: "{{ command_printf }}"
data:
cmd: "page {{ entity_back }}"
##### TRIGGER - HOME PAGE ######
##### HOME PAGE - value 01 #####
- conditions:
- condition: trigger
id: home_value01_state
- condition: template
value_template: "{{ states(current_page) == page_home and trigger.event.data.new_state.state != 'unavailable' }}"
sequence:
### ICON Font Color ###
- delay:
milliseconds: "{{ delay_value }}"
- service: "{{ command_font_color }}"
data:
component: home.value01_state
message: "{{ home_value01_label_color }}"
### ICON Font ###
- delay:
milliseconds: "{{ delay_value }}"
- service: "{{ command_text_printf }}"
data:
component: home.value01_state
message: '{{ trigger.event.data.new_state.state |round(1) }}{{ trigger.event.data.new_state.attributes.unit_of_measurement }}'
##### HOME PAGE - value 02 #####
- conditions:
- condition: trigger
id: home_value02_state
- condition: template
value_template: "{{ states(current_page) == page_home and trigger.event.data.new_state.state != 'unavailable' }}"
sequence:
### ICON Font Color ###
- delay:
milliseconds: "{{ delay_value }}"
- service: "{{ command_font_color }}"
data:
component: home.value02_state
message: "{{ home_value02_label_color }}"
### ICON Font ###
- delay:
milliseconds: "{{ delay_value }}"
- service: "{{ command_text_printf }}"
data:
component: home.value02_state
message: '{{ trigger.event.data.new_state.state |round(1) }}{{ trigger.event.data.new_state.attributes.unit_of_measurement }}'
##### HOME PAGE - value 03 #####
- conditions:
- condition: trigger
id: home_value03_state
- condition: template
value_template: "{{ states(current_page) == page_home and trigger.event.data.new_state.state != 'unavailable' }}"
sequence:
### ICON Font Color ###
- delay:
milliseconds: "{{ delay_value }}"
- service: "{{ command_font_color }}"
data:
component: home.value03_state
message: "{{ home_value03_label_color }}"
### ICON Font ###
- delay:
milliseconds: "{{ delay_value }}"
- service: "{{ command_text_printf }}"
data:
component: home.value03_state
message: '{{ trigger.event.data.new_state.state |round(1) }}{{ trigger.event.data.new_state.attributes.unit_of_measurement }}'
##### CHIP RELAY 01 - statusbar 01 #####
- conditions:
- condition: trigger
id: relay01_state
- condition: template
value_template: "{{ states(current_page) == page_home and trigger.event.data.new_state.state != 'unavailable' }}"
sequence:
- variables:
chip_relay01: >-
{%- if trigger.event.data.new_state.state == 'on' -%} {{ relay01_icon }}
{%- else -%} {{ blank_icon }}
{%- endif -%}
### ICON Font Color ###
- delay:
milliseconds: "{{ delay_value }}"
- service: "{{ command_font_color }}"
data:
component: home.icon_top_01
message: "{{ relay01_icon_color }}"
### ICON Font ###
- delay:
milliseconds: "{{ delay_value }}"
- service: "{{ command_text_printf }}"
data:
component: home.icon_top_01
message: "{{ chip_relay01 }}"
##### CHIP RELAY 02 - statusbar 02 #####
- conditions:
- condition: trigger
id: relay02_state
- condition: template
value_template: "{{ states(current_page) == page_home and trigger.event.data.new_state.state != 'unavailable' }}"
sequence:
- variables:
chip_relay02: >-
{%- if trigger.event.data.new_state.state == 'on' -%} {{ relay02_icon }}
{%- else -%} {{ blank_icon }}
{%- endif -%}
### ICON Font Color ###
- delay:
milliseconds: "{{ delay_value }}"
- service: "{{ command_font_color }}"
data:
component: home.icon_top_02
message: "{{ relay02_icon_color }}"
### ICON Font ###
- delay:
milliseconds: "{{ delay_value }}"
- service: "{{ command_text_printf }}"
data:
component: home.icon_top_02
message: "{{ chip_relay02 }}"
##### CHIP HEATING - statusbar 03 #####
- conditions:
- condition: trigger
id: climate_state
- condition: template
value_template: "{{ states(current_page) == page_home and trigger.event.data.new_state.state != 'unavailable' }}"
sequence:
- variables:
chip_climate: >-
{%- if trigger.event.data.new_state.state == "heat" and trigger.event.data.new_state.attributes.hvac_action is defined and trigger.event.data.new_state.attributes.hvac_action == "heating" -%} {{ heat_icon }}
{%- elif trigger.event.data.new_state.state == "heat" -%} {{ thermostat_icon }}
{%- else -%} {{ blank_icon }}
{%- endif -%}
### ICON Font Color ###
- delay:
milliseconds: "{{ delay_value }}"
- service: "{{ command_font_color }}"
data:
component: home.icon_top_03
message: "{{ thermostat_icon_color }}"
### ICON Font ###
- delay:
milliseconds: "{{ delay_value }}"
- service: "{{ command_text_printf }}"
data:
component: home.icon_top_03
message: "{{ chip_climate }}"
##### CHIP 01 - statusbar 04 #####
- conditions:
- condition: trigger
id: chip01_state
- condition: template
value_template: "{{ states(current_page) == page_home and trigger.event.data.new_state.state != 'unavailable' }}"
sequence:
- variables:
chip_icon: >-
{%- if trigger.event.data.new_state.state == 'on' -%} {{ chip01_icon }}
{%- else -%} {{ blank_icon }}
{%- endif -%}
### ICON Font Color ###
- delay:
milliseconds: "{{ delay_value }}"
- service: "{{ command_font_color }}"
data:
component: home.icon_top_04
message: "{{ chip01_icon_color }}"
### ICON Font ###
- delay:
milliseconds: "{{ delay_value }}"
- service: "{{ command_text_printf }}"
data:
component: home.icon_top_04
message: "{{ chip_icon }}"
##### CHIP 02 - statusbar 05 #####
- conditions:
- condition: trigger
id: chip02_state
- condition: template
value_template: "{{ states(current_page) == page_home and trigger.event.data.new_state.state != 'unavailable' }}"
sequence:
- variables:
chip_icon: >-
{%- if trigger.event.data.new_state.state == 'on' -%} {{ chip02_icon }}
{%- else -%} {{ blank_icon }}
{%- endif -%}
### ICON Font Color ###
- delay:
milliseconds: "{{ delay_value }}"
- service: "{{ command_font_color }}"
data:
component: home.icon_top_05
message: "{{ chip02_icon_color }}"
### ICON Font ###
- delay:
milliseconds: "{{ delay_value }}"
- service: "{{ command_text_printf }}"
data:
component: home.icon_top_05
message: "{{ chip_icon }}"
##### CHIP 03 - statusbar 06 #####
- conditions:
- condition: trigger
id: chip03_state
- condition: template
value_template: "{{ states(current_page) == page_home and trigger.event.data.new_state.state != 'unavailable' }}"
sequence:
- variables:
chip_icon: >-
{%- if trigger.event.data.new_state.state == 'on' -%} {{ chip03_icon }}
{%- else -%} {{ blank_icon }}
{%- endif -%}
### ICON Font Color ###
- delay:
milliseconds: "{{ delay_value }}"
- service: "{{ command_font_color }}"
data:
component: home.icon_top_06
message: "{{ chip03_icon_color }}"
### ICON Font ###
- delay:
milliseconds: "{{ delay_value }}"
- service: "{{ command_text_printf }}"
data:
component: home.icon_top_06
message: "{{ chip_icon }}"
##### CHIP 04 - statusbar 07 #####
- conditions:
- condition: trigger
id: chip04_state
- condition: template
value_template: "{{ states(current_page) == page_home and trigger.event.data.new_state.state != 'unavailable' }}"
sequence:
- variables:
chip_icon: >-
{%- if trigger.event.data.new_state.state == 'on' -%} {{ chip04_icon }}
{%- else -%} {{ blank_icon }}
{%- endif -%}
### ICON Font Color ###
- delay:
milliseconds: "{{ delay_value }}"
- service: "{{ command_font_color }}"
data:
component: home.icon_top_07
message: "{{ chip04_icon_color }}"
### ICON Font ###
- delay:
milliseconds: "{{ delay_value }}"
- service: "{{ command_text_printf }}"
data:
component: home.icon_top_07
message: "{{ chip_icon }}"
##### CHIP 05 - statusbar 08 #####
- conditions:
- condition: trigger
id: chip05_state
- condition: template
value_template: "{{ states(current_page) == page_home and trigger.event.data.new_state.state != 'unavailable' }}"
sequence:
- variables:
chip_icon: >-
{%- if trigger.event.data.new_state.state == 'on' -%} {{ chip05_icon }}
{%- else -%} {{ blank_icon }}
{%- endif -%}
### ICON Font Color ###
- delay:
milliseconds: "{{ delay_value }}"
- service: "{{ command_font_color }}"
data:
component: home.icon_top_08
message: "{{ chip05_icon_color }}"
### ICON Font ###
- delay:
milliseconds: "{{ delay_value }}"
- service: "{{ command_text_printf }}"
data:
component: home.icon_top_08
message: "{{ chip_icon }}"
##### CHIP 06 - statusbar 09 #####
- conditions:
- condition: trigger
id: chip06_state
- condition: template
value_template: "{{ states(current_page) == page_home and trigger.event.data.new_state.state != 'unavailable' }}"
sequence:
- variables:
chip_icon: >-
{%- if trigger.event.data.new_state.state == 'on' -%} {{ chip06_icon }}
{%- else -%} {{ blank_icon }}
{%- endif -%}
### ICON Font Color ###
- delay:
milliseconds: "{{ delay_value }}"
- service: "{{ command_font_color }}"
data:
component: home.icon_top_09
message: "{{ chip06_icon_color }}"
### ICON Font ###
- delay:
milliseconds: "{{ delay_value }}"
- service: "{{ command_text_printf }}"
data:
component: home.icon_top_09
message: "{{ chip_icon }}"
##### CHIP 07 - statusbar 10 #####
- conditions:
- condition: trigger
id: chip07_state
- condition: template
value_template: "{{ states(current_page) == page_home and trigger.event.data.new_state.state != 'unavailable' }}"
sequence:
- variables:
chip_icon: >-
{%- if trigger.event.data.new_state.state == 'on' -%} {{ chip07_icon }}
{%- else -%} {{ blank_icon }}
{%- endif -%}
### ICON Font Color ###
- delay:
milliseconds: "{{ delay_value }}"
- service: "{{ command_font_color }}"
data:
component: home.icon_top_10
message: "{{ chip07_icon_color }}"
### ICON Font ###
- delay:
milliseconds: "{{ delay_value }}"
- service: "{{ command_text_printf }}"
data:
component: home.icon_top_10
message: "{{ chip_icon }}"
##### JUMP TO - climate page #####
- conditions:
- condition: trigger
id: open_climate_page
- condition: template
value_template: "{{ states(current_page) == page_home and climate |length > 0 }} "
sequence:
- variables:
entity_long: '{{ climate }}'
entity_long_name: >-
{%- if states(climate) == 'unavailable' -%} {{ climate }}
{%- else -%} {{ state_attr(climate, "friendly_name")| default('no name') }}
{%- endif -%}
entity_back: '{{ page_home }}'
- service: '{{ command_set_settings_entity }}'
data:
entity: '{{ entity_long }},{{ entity_back }},{{ entity_long_name }}'
- service: "{{ command_printf }}"
data:
cmd: "page {{ page_climate }}"
##### JUMP TO - Weather Page #####
- conditions:
- condition: trigger
id: open_weather_page
- condition: template
value_template: "{{ states(current_page) == page_home }}"
sequence:
- service: "{{ command_printf }}"
data:
cmd: "page {{ page_weather01 }}"
##### JUMP TO - QR Code Page #####
- conditions:
- condition: trigger
id: open_qrcode_page
- condition: template
value_template: "{{ states(current_page) == page_home and qrcode_enabled == true }}"
sequence:
- service: "{{ command_printf }}"
data:
cmd: "page {{ page_qrcode }}"
##### JUMP TO - ENTITY Page #####
- conditions:
- condition: trigger
id: open_entity_page
- condition: template
value_template: "{{ states(current_page) == page_home and entitypages_enabled == true }}"
sequence:
- service: "{{ command_printf }}"
data:
cmd: "page {{ page_entitypage01 }}"
##### JUMP TO - notification #####
- conditions:
- condition: trigger
id: open_notification_page
- condition: template
value_template: "{{ states(current_page) == page_home and states(notification_text) |length > 0}}"
sequence:
- service: "{{ command_printf }}"
data:
cmd: "page {{ page_notification }}"
#### SHOW BUTTON - notification ####
- conditions:
- condition: trigger
id:
- notification_text_state
- notification_unread_state
- condition: template
value_template: "{{ states(current_page) == page_home and trigger.event.data.new_state.state != 'unavailable' and trigger.event.data.new_state.state != 'unknown' }}"
sequence:
- alias: "Set notifiy pic"
variables:
set_button04_icon: >-
{%- if is_state(notification_unread, 'on') and states(notification_text) |length > 0 -%} {{ home_button04_icon}}
{%- elif is_state(notification_unread, 'off') and states(notification_text) |length > 0 -%} {{ home_button04_icon }}
{%- else -%} {{ blank_icon }}
{%- endif -%}
set_button04_icon_font: >-
{%- if is_state(notification_unread, 'on') and states(notification_text) |length > 0 -%} {{ home_button04_icon_color01 }}
{%- elif is_state(notification_unread, 'off') and states(notification_text) |length > 0 -%} {{ home_button04_icon_color02 }}
{%- else -%} {{ color_03 }}
{%- endif -%}
##### SET ICON Font - Notify #####
- delay:
milliseconds: "{{ delay_value }}"
- service: "{{ command_text_printf }}"
data:
component: home.button04_icon
message: "{{ set_button04_icon }}"
##### SET ICON Font Color - Notify #####
- delay:
milliseconds: "{{ delay_value }}"
- service: "{{ command_font_color }}"
data:
component: home.button04_icon
message: "{{ set_button04_icon_font }}"
##### SHOW BUTTON - notification clear #####
- conditions:
- condition: trigger
id: btn_notificationclearrelease
- condition: template
value_template: "{{ states(current_page) == page_notification and states(confirmation_message) != 'on'}}"
sequence:
- service: switch.turn_off
data:
entity_id: "{{ notification_unread }}"
- service: "{{ command_printf }}"
data:
cmd: "page {{ page_home }}"
##### SHOW BUTTON - notification accept #####
- conditions:
- condition: trigger
id: btn_notificationacceptrelease
- condition: template
value_template: "{{ states(current_page) == page_notification and states(confirmation_message) != 'on'}}"
sequence:
- service: switch.turn_off
data:
entity_id: "{{ notification_unread }}"
- service: "{{ command_notification_clear }}"
data: {}
- service: "{{ command_printf }}"
data:
cmd: "page {{ page_home }}"
##### LEFT BUTTON - press #####
- conditions:
- condition: trigger
id: left_button_press
sequence:
- wait_template: "{{ is_state(left_button, 'off') }}"
timeout: !input hold_delay
continue_on_timeout: true
- if:
- condition: template
value_template: "{{ not wait.completed }}"
then: # Hold
- choose:
- conditions: '{{ left_button_hold_select == "Default" and left_button_entity |length > 0 }}'
sequence:
- variables:
entity_long: '{{ left_button_entity }}'
entity_long_name: >-
{%- if left_button_name |length > 0 -%} {{ left_button_name }}
{%- elif states(left_button_entity) == 'unavailable' -%} {{ left_button_entity }}
{%- else -%} {{ state_attr(left_button_entity, "friendly_name")| default('no name') }}
{%- endif -%}
entity_back: '{{ page_home }}'
entity_long_icon: >-
{%- if left_button_entity is match "light." -%} {{ button_icon_light }}
{%- elif left_button_entity is match "switch." -%} {{ button_icon_switch }}
{%- elif left_button_entity is match "input_boolean." -%} {{ button_icon_input_boolan }}
{%- elif left_button_entity is match "cover." -%} {{ button_icon_cover }}
{%- elif left_button_entity is match "automation." -%} {{ button_icon_automation }}
{%- elif left_button_entity is match "button." -%} {{ button_icon_button }}
{%- elif left_button_entity is match "input_button." -%} {{ button_icon_input_button }}
{%- elif left_button_entity is match "scene." -%} {{ button_icon_screne }}
{%- elif left_button_entity is match "script." -%} {{ button_icon_script }}
{%- elif left_button_entity is match "person." -%} {{ button_icon_person }}
{%- elif left_button_entity is match "binary_sensor." -%} {{ button_icon_binary_sensor }}
{%- elif left_button_entity is match "fan." -%} {{ button_icon_fan }}
{%- elif left_button_entity is match "climate." -%} {{ button_icon_climate }}
{%- endif -%}
entity_long_icon_color: 1055
- service: '{{ command_set_settings_entity }}'
data:
entity: '{{ entity_long }},{{ entity_back }},{{ entity_long_name }},{{ entity_long_icon }},{{ entity_long_icon_color }}'
- conditions: '{{ left_button_hold_select == "Custom Action" }}'
sequence: !input left_button_hold_custom_action
else: # Single Click
- condition: template
value_template: '{{ left_button_entity |length > 0 }}'
- service: >-
{% if left_button_entity is match 'light.' %}
light.toggle
{% elif left_button_entity is match 'switch.' %}
switch.toggle
{% elif left_button_entity is match 'cover.' %}
cover.toggle
{% elif left_button_entity is match 'input_boolean.' %}
input_boolean.toggle
{% elif left_button_entity is match 'automation.' %}
automation.toggle
{% elif left_button_entity is match 'button.' %}
button.press
{% elif left_button_entity is match 'input_button.' %}
input_button.press
{% elif left_button_entity is match 'scene.' %}
scene.turn_on
{% elif left_button_entity is match 'script.' %}
script.turn_on
{% elif left_button_entity is match 'fan.' %}
fan.toggle
{% endif %}
data:
entity_id: "{{ left_button_entity }}"
##### LEFT BUTTON - state #####
- conditions:
- condition: trigger
id: left_button_state
- condition: template
value_template: "{{ states(current_page) == page_home }}"
sequence:
###### Left Hardware Button PIC #####
- variables:
# Hardware Button PIC
left_hardware_button_state: >-
{%- if trigger.event.data.new_state.state == 'off' -%} {{ hardware_button_pic_off }}
{%- elif trigger.event.data.new_state.state == 'on' -%} {{ hardware_button_pic_on }}
{%- endif -%}
##### SET Right hardware Button PIC on Home Page ####
- service: "{{ command_printf }}"
data:
cmd: home.left_bt_pic.pic={{ left_hardware_button_state }}
##### RIGHT BUTTON - press #####
- conditions:
- condition: trigger
id: right_button_press
sequence:
- wait_template: "{{ is_state(right_button, 'off') }}"
timeout: !input hold_delay
continue_on_timeout: true
- if:
- condition: template
value_template: "{{ not wait.completed }}"
then: # Hold
- choose:
- conditions: '{{ right_button_hold_select == "Default" and right_button_entity |length > 0 }}'
sequence:
- variables:
entity_long: '{{ right_button_entity }}'
entity_long_name: >-
{%- if right_button_name |length > 0 -%} {{ right_button_name }}
{%- elif states(right_button_entity) == 'unavailable' -%} {{ right_button_entity }}
{%- else -%} {{ state_attr(right_button_entity, "friendly_name")| default('no name') }}
{%- endif -%}
entity_back: '{{ page_home }}'
entity_long_icon: >-
{%- if left_button_entity is match "light." -%} {{ button_icon_light }}
{%- elif left_button_entity is match "switch." -%} {{ button_icon_switch }}
{%- elif left_button_entity is match "input_boolean." -%} {{ button_icon_input_boolan }}
{%- elif left_button_entity is match "cover." -%} {{ button_icon_cover }}
{%- elif left_button_entity is match "automation." -%} {{ button_icon_automation }}
{%- elif left_button_entity is match "button." -%} {{ button_icon_button }}
{%- elif left_button_entity is match "input_button." -%} {{ button_icon_input_button }}
{%- elif left_button_entity is match "scene." -%} {{ button_icon_screne }}
{%- elif left_button_entity is match "script." -%} {{ button_icon_script }}
{%- elif left_button_entity is match "person." -%} {{ button_icon_person }}
{%- elif left_button_entity is match "binary_sensor." -%} {{ button_icon_binary_sensor }}
{%- elif left_button_entity is match "fan." -%} {{ button_icon_fan }}
{%- elif left_button_entity is match "climate." -%} {{ button_icon_climate }}
{%- endif -%}
entity_long_icon_color: 1055
- service: '{{ command_set_settings_entity }}'
data:
entity: '{{ entity_long }},{{ entity_back }},{{ entity_long_name }},{{ entity_long_icon }},{{ entity_long_icon_color }}'
- conditions: '{{ right_button_hold_select == "Custom Action" }}'
sequence: !input right_button_hold_custom_action
else: # Single Click
- condition: template
value_template: '{{ right_button_entity |length > 0 }}'
- service: >-
{% if right_button_entity is match 'light.' %}
light.toggle
{% elif right_button_entity is match 'switch.' %}
switch.toggle
{% elif right_button_entity is match 'cover.' %}
cover.toggle
{% elif right_button_entity is match 'input_boolean.' %}
input_boolean.toggle
{% elif right_button_entity is match 'automation.' %}
automation.toggle
{% elif right_button_entity is match 'button.' %}
button.press
{% elif right_button_entity is match 'input_button.' %}
input_button.press
{% elif right_button_entity is match 'scene.' %}
scene.turn_on
{% elif right_button_entity is match 'script.' %}
script.turn_on
{% elif right_button_entity is match 'fan.' %}
fan.toggle
{% endif %}
data:
entity_id: "{{ right_button_entity }}"
##### RIGHT BUTTON - state #####
- conditions:
- condition: trigger
id: right_button_state
- condition: template
value_template: "{{ states(current_page) == page_home }}"
sequence:
###### Left Hardware Button PIC #####
- variables:
# Hardware Button PIC
right_hardware_button_state: >-
{%- if trigger.event.data.new_state.state == 'off' -%} {{ hardware_button_pic_off }}
{%- elif trigger.event.data.new_state.state == 'on' -%} {{ hardware_button_pic_on }}
{%- endif -%}
##### SET Right hardware Button PIC on Home Page ####
- service: "{{ command_printf }}"
data:
cmd: home.right_bt_pic.pic={{ right_hardware_button_state }}
##### DATE AND TIME #####
- conditions:
- condition: trigger
id: time_state
- condition: template
value_template: "{{ states(current_page) == page_home }}"
sequence:
### TIME Font Color ###
- delay:
milliseconds: "{{ delay_value }}"
- service: "{{ command_font_color }}"
data:
component: home.time
message: "{{ time_label_color }}"
### TIME Font ###
- service: "{{ command_text_printf }}"
data:
component: home.time
message: "{{ time }}"
### TIME Meridiem Font Color ###
- delay:
milliseconds: "{{ delay_value }}"
- service: "{{ command_font_color }}"
data:
component: home.meridiem
message: "{{ time_label_color }}"
### TIME Meridiem Font ###
- delay:
milliseconds: "{{ delay_value }}"
- service: "{{ command_text_printf }}"
data:
component: home.meridiem
message: "{{ meridiem }}"
### DATE Font Color ###
- delay:
milliseconds: "{{ delay_value }}"
- service: "{{ command_font_color }}"
data:
component: home.date
message: "{{ date_label_color }}"
### DATE Font ###
- delay:
milliseconds: "{{ delay_value }}"
- service: "{{ command_text_printf }}"
data:
component: home.date
message: "{{ mui_weekday_today }}"
##### OUTDOOR TEMP - entity #####
- conditions:
- condition: trigger
id: outdoortemp_state
- condition: template
value_template: "{{ states(current_page) == page_home and trigger.event.data.new_state.state != 'unavailable' }}"
sequence:
### LABEL Outdoor Temp Font Color ###
- delay:
milliseconds: "{{ delay_value }}"
- service: "{{ command_font_color }}"
data:
component: home.outdoor_temp
message: "{{ home_outdoor_temp_label_color }}"
### LABEL Outdoor Temp Font ###
- delay:
milliseconds: "{{ delay_value }}"
- service: "{{ command_text_printf }}"
data:
component: home.outdoor_temp
message: "{{ trigger.event.data.new_state.state |round(1) }}°"
##### INDOOR TEMP - entity #####
- conditions:
- condition: trigger
id: indoortemp_state
- condition: template
value_template: "{{ states(current_page) == page_home and trigger.event.data.new_state.state != 'unavailable' }}"
sequence:
### LABEL Indoor Temp Font Color ###
- delay:
milliseconds: "{{ delay_value }}"
- service: "{{ command_font_color }}"
data:
component: home.current_temp
message: "{{ home_indoor_temp_label_color }}"
### LABEL Indoor Temp Font ###
- delay:
milliseconds: "{{ delay_value }}"
- service: "{{ command_text_printf }}"
data:
component: home.current_temp
message: "{{ trigger.event.data.new_state.state |round(1) }}°"
##### INDOOR TEMP - nspanel #####
- conditions:
- condition: trigger
id: nspaneltemp_state
- condition: template
value_template: "{{ states(current_page) == page_home and trigger.event.data.new_state.state != 'unavailable' }}"
sequence:
- if:
- condition: template
value_template: '{{ indoortemp is not match "sensor." }}'
then:
### LABEL Indoor Temp Font Color ###
- delay:
milliseconds: "{{ delay_value }}"
- service: "{{ command_font_color }}"
data:
component: home.current_temp
message: "{{ home_indoor_temp_label_color }}"
### LABEL Indoor Temp Font ###
- delay:
milliseconds: "{{ delay_value }}"
- service: "{{ command_text_printf }}"
data:
component: home.current_temp
message: "{{ trigger.event.data.new_state.state |round(1) }}°"
##### WEATHER STATE - change update #####
- conditions:
- condition: trigger
id: weather_state_change
- condition: template
value_template: "{{ states(current_page) == page_home and trigger.event.data.new_state.state != 'unavailable' }}"
sequence:
- if:
- condition: template
value_template: '{{ outdoortemp is not match "sensor." }}'
then:
### LABEL Outdoor Temp Font Color ###
- delay:
milliseconds: "{{ delay_value }}"
- service: "{{ command_font_color }}"
data:
component: home.outdoor_temp
message: "{{ home_outdoor_temp_label_color }}"
### LABEL Outdoor Temp Font ###
- delay:
milliseconds: "{{ delay_value }}"
- service: "{{ command_text_printf }}"
data:
component: home.outdoor_temp
message: '{{trigger.event.data.new_state.attributes.temperature | round(0)}}°'
- service: "{{ command_text_printf }}"
data:
component: climate.outdoor_temp
message: '{{trigger.event.data.new_state.attributes.temperature | round(0)}}°'
- variables:
weather_pic: >-
{%- if trigger.event.data.new_state.state == 'sunny' -%} {{ weather_sunny }}
{%- elif trigger.event.data.new_state.state == 'cloudy' -%} {{ weather_cloudy }}
{%- elif trigger.event.data.new_state.state == 'rainy' -%} {{ weather_rainy }}
{%- elif trigger.event.data.new_state.state == 'pouring' -%} {{ weather_pouring }}
{%- elif trigger.event.data.new_state.state == 'snowy' -%} {{ weather_snowy }}
{%- elif trigger.event.data.new_state.state == 'hail' -%} {{ weather_hail }}
{%- elif trigger.event.data.new_state.state == 'snowy-rainy' -%} {{ weather_snowy_rainy }}
{%- elif trigger.event.data.new_state.state == 'fog' -%} {{ weather_fog }}
{%- elif trigger.event.data.new_state.state == 'windy' -%} {{ weather_windy }}
{%- elif trigger.event.data.new_state.state == 'windy-variant' -%} {{ weather_windy-variant }}
{%- elif trigger.event.data.new_state.state == 'lightning' -%} {{ weather_lightning }}
{%- elif trigger.event.data.new_state.state == 'partlycloudy' and states('sun.sun') == 'above_horizon' -%} {{ weather_partlycloudy_day }}
{%- elif trigger.event.data.new_state.state == 'partlycloudy' and states('sun.sun') == 'below_horizon' -%} {{ weather_partlycloudy_night }}
{%- elif trigger.event.data.new_state.state == 'lightning-rainy' and states('sun.sun') == 'above_horizon' -%} {{ weather_lightning_rainy_day }}
{%- elif trigger.event.data.new_state.state == 'lightning-rainy' and states('sun.sun') == 'below_horizon' -%} {{ weather_lightning_rainy_night }}
{%- elif trigger.event.data.new_state.state == 'execptional' and states('sun.sun') == 'above_horizon' -%} {{ weather_execptional_day }}
{%- elif trigger.event.data.new_state.state == 'execptional' and states('sun.sun') == 'below_horizon' -%} {{ weather_execptional_night }}
{%- elif trigger.event.data.new_state.state == 'clear-night' -%} {{ weather_clear_night }}
{%- endif -%}
- service: "{{ command_printf }}"
data:
cmd: home.weather.pic={{ weather_pic }}
###########################################################################################################
##### Sync Climate ##### -> muss noch in page changed climate wwenn climate page fertig
- conditions:
- condition: trigger
id: climate_state
- condition: template
value_template: "{{ trigger.event.data.new_state.state != 'unavailable' }}"
# - condition: template
# value_template: '{{ states(current_page) == page_climate }}'
# - condition: template
# value_template: '{{ climate_optimistic == false }}'
sequence:
- variables:
heating_state: "{{ mui[language].climate.states.off if trigger.event.data.new_state.state == 'off' else mui[language].climate.states.on }}"
heating_bt_pic: >-
{%- if trigger.event.data.new_state.state == "off" -%} {{ heating_bt_pic_off }}
{%- else -%} {{ heating_bt_pic_on }}
{%- endif -%}
- service: "{{ command_text_printf }}"
data:
component: current_temp
message: "{{ trigger.event.data.new_state.attributes.current_temperature | round(1)}}°"
- service: "{{ command_text_printf }}"
data:
component: heating_state
message: "{{heating_state}}"
- service: "{{ command_printf }}"
data:
cmd: heating_bt_pic.pic={{ heating_bt_pic }}
- if:
- condition: template
value_template: '{{ trigger.event.data.new_state.state != "off" }}' #### TODO AND->OR (not) not optimistic-mode
then:
- service: "{{ command_thermostat_cycle }}"
data:
value: "{{trigger.event.data.new_state.attributes.temperature | round(1)}}"
else:
- service: "{{ command_thermostat_cycle }}"
data:
value: "0"
- service: "{{ command_text_printf }}"
data:
component: target_temp
message: " "
##### Sync Hotwater Charge button-symbol ##### -> kann wenn climate page fertig
- conditions:
- condition: trigger
id: hotwatercharge_state
- condition: template
value_template: "{{ states(current_page) == page_climate }}"
sequence:
- variables:
hotw_bt_pic: >-
{%- if trigger.event.data.new_state.state == 'on' -%} {{ hotw_bt_on }}
{%- elif trigger.event.data.new_state.state == 'off' -%} {{ hotw_bt_off }}
{%- else -%} {{ hotw_bt_blank }}
{%- endif -%}
- service: "{{ command_printf }}"
data:
cmd: hotw_bt_pic.pic={{ hotw_bt_pic }}
##### Hotwater Temp ##### kann raus und wird durch neue value 01 und value 02 ersetzt wenn climate page fertig
- conditions:
- condition: trigger
id: hotwatertemp_state
- condition: template
value_template: "{{ states(current_page) == page_climate and trigger.event.data.new_state.state != 'unavailable' }}"
sequence:
- service: "{{ command_text_printf }}"
data:
component: home.hotwater_temp
message: "{{ trigger.event.data.new_state.state |round(1) }}°"
- delay:
milliseconds: "{{ delay_value }}"
- service: "{{ command_text_printf }}"
data:
component: climate.hotwater_temp
message: "{{ trigger.event.data.new_state.state |round(1) }}°"
- delay:
milliseconds: "{{ delay_value }}"
- service: "{{ command_printf }}"
data:
cmd: home.hotwater_pic.pic={{ hotwater_pic_on }}
#### TFT Upload Automation #####
- conditions:
- condition: trigger
id: tft_upload
sequence:
- delay:
seconds: 2
- service: "{{ tft_upload }}"
data: {}
#############################################################
##### CLOSE - Action #####
#############################################################