4225 lines
206 KiB
YAML
4225 lines
206 KiB
YAML
#############################################################
|
|
##### START - INPUT #####
|
|
#############################################################
|
|
|
|
blueprint:
|
|
name: NSPanel Configuration
|
|
description: v2.0.0 - Configuration and synchronization NSpanele via Blueprint
|
|
domain: automation
|
|
input:
|
|
nspanel_name:
|
|
name: NSPanel Name
|
|
description: Name NSPanel. Esphome Dive Name is "Nspanel Buero" then HA make it the entity name "nspanel_buero". So nspanel_buero must be entered here. The correct name can also be found if you search for "last_click" under Entities -> sensor.nspanel_buero_last_click
|
|
selector:
|
|
text: {}
|
|
language:
|
|
name: Language for NSPanel (coming soon)
|
|
description: select your language for the values on the NSPanel display
|
|
selector:
|
|
select:
|
|
options:
|
|
- DE
|
|
- EN
|
|
tft_path:
|
|
name: Nextion TFT File Folder for the service Folder Watcher
|
|
description: 'TFT Path where the Nextion TFT File is stored (same NSPanel as **"last click"**) Example *"/config/www/nspanel/buero/nspanel_buero.tft"*'
|
|
default: /config/www/nspanel/buero/nspanel_buero.tft
|
|
selector:
|
|
text: {}
|
|
delay:
|
|
name: Delay to avoid sync problems (coming soon)
|
|
description: When switching pages, synchronization problems may occur due to the network / WLAN. To avoid this problem enter your value for the delay (milliseconds)
|
|
default: []
|
|
selector:
|
|
text: {}
|
|
sync_value_ha:
|
|
name: Synchronization of the values in the Light Settings and Cover Settings submenus
|
|
description: This means that if the Light Settings or Cover Settings submenu is open and the state is changed via HA - the changes to the Brightness and Tempcolor values are changed immediately. -> Causes numbers jumps
|
|
default: 'No'
|
|
selector:
|
|
select:
|
|
options:
|
|
- label: 'No'
|
|
value: select_no
|
|
- label: 'Yes'
|
|
value: select_yes
|
|
sync_slider_ha:
|
|
name: Synchronization of the Slider in the Light Settings and Cover Settings submenus
|
|
description: This means that if the Light Settings or Cover Settings submenu is open and the state is changed via HA - the changes to the Brightness and Tempcolor sliders are changed immediately. -> Causes flickering on the slider
|
|
default: 'No'
|
|
selector:
|
|
select:
|
|
options:
|
|
- label: 'No'
|
|
value: select_no
|
|
- label: 'Yes'
|
|
value: select_yes
|
|
weather:
|
|
name: Weather Integration (coming soon)
|
|
description: select our Weather Integration
|
|
selector:
|
|
select:
|
|
options:
|
|
- Default
|
|
- AccuWeather
|
|
accuweather:
|
|
name: Name assigned to the AccuWeather Integration (Optional)
|
|
description: Name assigned to the AccuWeather Integration. For Example - Accuweather Intergations name is Home Weather -> Then please write * home_weather * in it. You can find the needed value in your entities
|
|
default: []
|
|
selector:
|
|
text: {}
|
|
outdoortemp:
|
|
name: Outdoor Temperature Sensor (Optional)
|
|
description: select the Temperature Sensor. If no outdoor sensor available write "default" or "accuweather" to use the outdoor temperature of the selected Weather Integration. This value is displayed on the Home Page an Thermostat Page
|
|
default: []
|
|
selector:
|
|
entity:
|
|
domain:
|
|
- sensor
|
|
humidity:
|
|
name: Humidity Sensor (Optional)
|
|
description: select the humidity Sensor. This value is displayed on the Home Page
|
|
default: []
|
|
selector:
|
|
entity:
|
|
domain:
|
|
- sensor
|
|
hotwatertemp:
|
|
name: Hot Water Temperature Sensor (Optional)
|
|
description: select the hot water Sensor. This value is displayed on the Home Page an Thermostat Page
|
|
default: []
|
|
selector:
|
|
entity:
|
|
domain:
|
|
- sensor
|
|
left_button_entity:
|
|
name: Left Button (Optional)
|
|
description: Left Hardware Button - Select the entity that should be switched
|
|
default: []
|
|
selector:
|
|
entity:
|
|
domain:
|
|
- light
|
|
- switch
|
|
- input_boolean
|
|
- cover
|
|
right_button_entity:
|
|
name: Right Button (Optional)
|
|
description: Right Hardware Button - Select the entity that should be switched
|
|
default: []
|
|
selector:
|
|
entity:
|
|
domain:
|
|
- light
|
|
- switch
|
|
- input_boolean
|
|
- cover
|
|
|
|
##### Button #####
|
|
entity01:
|
|
name: Button 01 (Optional)
|
|
description: Nextion Editor - *buttonpage01.button01* **(ONLY light | switch | cover | input_boolean)**
|
|
default: []
|
|
selector:
|
|
entity:
|
|
domain:
|
|
- light
|
|
- switch
|
|
- cover
|
|
- input_boolean
|
|
entity01_name:
|
|
name: Name "Button 01" (Optional)
|
|
description: Button label - 10 characters are supported
|
|
default: []
|
|
selector:
|
|
text: {}
|
|
entity02:
|
|
name: Button 02 (Optional)
|
|
description: Nextion Editor - *buttonpage01.button02* **(ONLY light | switch | cover | input_boolean)**
|
|
default: []
|
|
selector:
|
|
entity:
|
|
domain:
|
|
- light
|
|
- switch
|
|
- cover
|
|
- input_boolean
|
|
entity02_name:
|
|
name: Name "Button 02" (Optional)
|
|
description: Button label - 10 characters are supported
|
|
default: []
|
|
selector:
|
|
text: {}
|
|
entity03:
|
|
name: Button 03 (Optional)
|
|
description: Nextion Editor - *buttonpage01.button03* **(ONLY light | switch | cover | input_boolean)**
|
|
default: []
|
|
selector:
|
|
entity:
|
|
domain:
|
|
- light
|
|
- switch
|
|
- cover
|
|
- input_boolean
|
|
entity03_name:
|
|
name: Name "Button 03" (Optional)
|
|
description: Button label - 10 characters are supported
|
|
default: []
|
|
selector:
|
|
text: {}
|
|
entity04:
|
|
name: Button 04 (Optional)
|
|
description: Nextion Editor - *buttonpage01.button04* **(ONLY light | switch | cover | input_boolean)**
|
|
default: []
|
|
selector:
|
|
entity:
|
|
domain:
|
|
- light
|
|
- switch
|
|
- cover
|
|
- input_boolean
|
|
entity04_name:
|
|
name: Name "Button 04" (Optional)
|
|
description: Button label - 10 characters are supported
|
|
default: []
|
|
selector:
|
|
text: {}
|
|
entity05:
|
|
name: Button 05 (Optional)
|
|
description: Nextion Editor - *buttonpage01.button05* **(ONLY light | switch | cover | input_boolean)**
|
|
default: []
|
|
selector:
|
|
entity:
|
|
domain:
|
|
- light
|
|
- switch
|
|
- cover
|
|
- input_boolean
|
|
entity05_name:
|
|
name: Name "Button 05" (Optional)
|
|
description: Button label - 10 characters are supported
|
|
default: []
|
|
selector:
|
|
text: {}
|
|
entity06:
|
|
name: Button 06 (Optional)
|
|
description: Nextion Editor - *buttonpage01.button06* **(ONLY light | switch | cover | input_boolean)**
|
|
default: []
|
|
selector:
|
|
entity:
|
|
domain:
|
|
- light
|
|
- switch
|
|
- cover
|
|
- input_boolean
|
|
entity06_name:
|
|
name: Name "Button 06" (Optional)
|
|
description: Button label - 10 characters are supported
|
|
default: []
|
|
selector:
|
|
text: {}
|
|
entity07:
|
|
name: Button 07 (Optional)
|
|
description: Nextion Editor - *buttonpage01.button07* **(ONLY light | switch | cover | input_boolean)**
|
|
default: []
|
|
selector:
|
|
entity:
|
|
domain:
|
|
- light
|
|
- switch
|
|
- cover
|
|
- input_boolean
|
|
entity07_name:
|
|
name: Name "Button 07" (Optional)
|
|
description: Button label - 10 characters are supported
|
|
default: []
|
|
selector:
|
|
text: {}
|
|
entity08:
|
|
name: Button 08 (Optional)
|
|
description: Nextion Editor - *buttonpage01.button08* **(ONLY light | switch | cover | input_boolean)**
|
|
default: []
|
|
selector:
|
|
entity:
|
|
domain:
|
|
- light
|
|
- switch
|
|
- cover
|
|
- input_boolean
|
|
entity08_name:
|
|
name: Name "Button 08" (Optional)
|
|
description: Button label - 10 characters are supported
|
|
default: []
|
|
selector:
|
|
text: {}
|
|
entity09:
|
|
name: Button 09 (Optional)
|
|
description: Nextion Editor - *buttonpage02.button01* **(ONLY light | switch | cover | input_boolean)**
|
|
default: []
|
|
selector:
|
|
entity:
|
|
domain:
|
|
- light
|
|
- switch
|
|
- cover
|
|
- input_boolean
|
|
entity09_name:
|
|
name: Name "Button 09" (Optional)
|
|
description: Button label - 10 characters are supported
|
|
default: []
|
|
selector:
|
|
text: {}
|
|
entity10:
|
|
name: Button 10 (Optional)
|
|
description: Nextion Editor - *buttonpage02.button02* **(ONLY light | switch | cover | input_boolean)**
|
|
default: []
|
|
selector:
|
|
entity:
|
|
domain:
|
|
- light
|
|
- switch
|
|
- cover
|
|
- input_boolean
|
|
entity10_name:
|
|
name: Name "Button 10" (Optional)
|
|
description: Button label - 10 characters are supported
|
|
default: []
|
|
selector:
|
|
text: {}
|
|
entity11:
|
|
name: Button 11 (Optional)
|
|
description: Nextion Editor - *buttonpage02.button03* **(ONLY light | switch | cover | input_boolean)**
|
|
default: []
|
|
selector:
|
|
entity:
|
|
domain:
|
|
- light
|
|
- switch
|
|
- cover
|
|
- input_boolean
|
|
entity11_name:
|
|
name: Name "Button 11" (Optional)
|
|
description: Button label - 10 characters are supported
|
|
default: []
|
|
selector:
|
|
text: {}
|
|
entity12:
|
|
name: Button 12 (Optional)
|
|
description: Nextion Editor - *buttonpage02.button04* **(ONLY light | switch | cover | input_boolean)**
|
|
default: []
|
|
selector:
|
|
entity:
|
|
domain:
|
|
- light
|
|
- switch
|
|
- cover
|
|
- input_boolean
|
|
entity12_name:
|
|
name: Name "Button 12" (Optional)
|
|
description: Button label - 10 characters are supported
|
|
default: []
|
|
selector:
|
|
text: {}
|
|
entity13:
|
|
name: Button 13 (Optional)
|
|
description: Nextion Editor - *buttonpage01.button05* **(ONLY light | switch | cover | input_boolean)**
|
|
default: []
|
|
selector:
|
|
entity:
|
|
domain:
|
|
- light
|
|
- switch
|
|
- cover
|
|
- input_boolean
|
|
entity13_name:
|
|
name: Name "Button 13" (Optional)
|
|
description: Button label - 10 characters are supported
|
|
default: []
|
|
selector:
|
|
text: {}
|
|
entity14:
|
|
name: Button 14 (Optional)
|
|
description: Nextion Editor - *buttonpage02.button06* **(ONLY light | switch | cover | input_boolean)**
|
|
default: []
|
|
selector:
|
|
entity:
|
|
domain:
|
|
- light
|
|
- switch
|
|
- cover
|
|
- input_boolean
|
|
entity14_name:
|
|
name: Name "Button 14" (Optional)
|
|
description: Button label - 10 characters are supported
|
|
default: []
|
|
selector:
|
|
text: {}
|
|
entity15:
|
|
name: Button 15 (Optional)
|
|
description: Nextion Editor - *buttonpage02.button07* **(ONLY light | switch | cover | input_boolean)**
|
|
default: []
|
|
selector:
|
|
entity:
|
|
domain:
|
|
- light
|
|
- switch
|
|
- cover
|
|
- input_boolean
|
|
entity15_name:
|
|
name: Name "Button 15" (Optional)
|
|
description: Button label - 10 characters are supported
|
|
default: []
|
|
selector:
|
|
text: {}
|
|
entity16:
|
|
name: Button 16 (Optional)
|
|
description: Nextion Editor - *buttonpage02.button08* **(ONLY light | switch | cover | input_boolean)**
|
|
default: []
|
|
selector:
|
|
entity:
|
|
domain:
|
|
- light
|
|
- switch
|
|
- cover
|
|
- input_boolean
|
|
entity16_name:
|
|
name: Name "Button 16" (Optional)
|
|
description: Button label - 10 characters are supported
|
|
default: []
|
|
selector:
|
|
text: {}
|
|
entity17:
|
|
name: Button 17 (Optional)
|
|
description: Nextion Editor - *buttonpage03.button01* **(ONLY light | switch | cover | input_boolean)**
|
|
default: []
|
|
selector:
|
|
entity:
|
|
domain:
|
|
- light
|
|
- switch
|
|
- cover
|
|
- input_boolean
|
|
entity17_name:
|
|
name: Name "Button 17" (Optional)
|
|
description: Button label - 10 characters are supported
|
|
default: []
|
|
selector:
|
|
text: {}
|
|
entity18:
|
|
name: Button 18 (Optional)
|
|
description: Nextion Editor - *buttonpage03.button02* **(ONLY light | switch | cover | input_boolean)**
|
|
default: []
|
|
selector:
|
|
entity:
|
|
domain:
|
|
- light
|
|
- switch
|
|
- cover
|
|
- input_boolean
|
|
entity18_name:
|
|
name: Name "Button 18" (Optional)
|
|
description: Button label - 10 characters are supported
|
|
default: []
|
|
selector:
|
|
text: {}
|
|
entity19:
|
|
name: Button 19 (Optional)
|
|
description: Nextion Editor - *buttonpage03.button03* **(ONLY light | switch | cover | input_boolean)**
|
|
default: []
|
|
selector:
|
|
entity:
|
|
domain:
|
|
- light
|
|
- switch
|
|
- cover
|
|
- input_boolean
|
|
entity19_name:
|
|
name: Name "Button 19" (Optional)
|
|
description: Button label - 10 characters are supported
|
|
default: []
|
|
selector:
|
|
text: {}
|
|
entity20:
|
|
name: Button 20 (Optional)
|
|
description: Nextion Editor - *buttonpage03.button04* **(ONLY light | switch | cover | input_boolean)**
|
|
default: []
|
|
selector:
|
|
entity:
|
|
domain:
|
|
- light
|
|
- switch
|
|
- cover
|
|
- input_boolean
|
|
entity20_name:
|
|
name: Name "Button 20" (Optional)
|
|
description: Button label - 10 characters are supported
|
|
default: []
|
|
selector:
|
|
text: {}
|
|
entity21:
|
|
name: Button 21 (Optional)
|
|
description: Nextion Editor - *buttonpage03.button05* **(ONLY light | switch | cover | input_boolean)**
|
|
default: []
|
|
selector:
|
|
entity:
|
|
domain:
|
|
- light
|
|
- switch
|
|
- cover
|
|
- input_boolean
|
|
entity21_name:
|
|
name: Name "Button 21" (Optional)
|
|
description: Button label - 10 characters are supported
|
|
default: []
|
|
selector:
|
|
text: {}
|
|
entity22:
|
|
name: Button 22 (Optional)
|
|
description: Nextion Editor - *buttonpage03.button06* **(ONLY light | switch | cover | input_boolean)**
|
|
default: []
|
|
selector:
|
|
entity:
|
|
domain:
|
|
- light
|
|
- switch
|
|
- cover
|
|
- input_boolean
|
|
entity22_name:
|
|
name: Name "Button 22" (Optional)
|
|
description: Button label - 10 characters are supported
|
|
default: []
|
|
selector:
|
|
text: {}
|
|
entity23:
|
|
name: Button 23 (Optional)
|
|
description: Nextion Editor - *buttonpage03.button07* **(ONLY light | switch | cover | input_boolean)**
|
|
default: []
|
|
selector:
|
|
entity:
|
|
domain:
|
|
- light
|
|
- switch
|
|
- cover
|
|
- input_boolean
|
|
entity23_name:
|
|
name: Name "Button 23" (Optional)
|
|
description: Button label - 10 characters are supported
|
|
default: []
|
|
selector:
|
|
text: {}
|
|
entity24:
|
|
name: Button 24 (Optional)
|
|
description: Nextion Editor - *buttonpage03.button08* **(ONLY light | switch | cover | input_boolean)**
|
|
default: []
|
|
selector:
|
|
entity:
|
|
domain:
|
|
- light
|
|
- switch
|
|
- cover
|
|
- input_boolean
|
|
entity24_name:
|
|
name: Name "Button 24" (Optional)
|
|
description: Button label - 10 characters are supported
|
|
default: []
|
|
selector:
|
|
text: {}
|
|
entity25:
|
|
name: Button 25 (Optional)
|
|
description: Nextion Editor - *buttonpage04.button01* **(ONLY light | switch | cover | input_boolean)**
|
|
default: []
|
|
selector:
|
|
entity:
|
|
domain:
|
|
- light
|
|
- switch
|
|
- cover
|
|
- input_boolean
|
|
entity25_name:
|
|
name: Name "Button 25" (Optional)
|
|
description: Button label - 10 characters are supported
|
|
default: []
|
|
selector:
|
|
text: {}
|
|
entity26:
|
|
name: Button 26 (Optional)
|
|
description: Nextion Editor - *buttonpage04.button02* **(ONLY light | switch | cover | input_boolean)**
|
|
default: []
|
|
selector:
|
|
entity:
|
|
domain:
|
|
- light
|
|
- switch
|
|
- cover
|
|
- input_boolean
|
|
entity26_name:
|
|
name: Name "Button 26" (Optional)
|
|
description: Button label - 10 characters are supported
|
|
default: []
|
|
selector:
|
|
text: {}
|
|
entity27:
|
|
name: Button 27 (Optional)
|
|
description: Nextion Editor - *buttonpage04.button03* **(ONLY light | switch | cover | input_boolean)**
|
|
default: []
|
|
selector:
|
|
entity:
|
|
domain:
|
|
- light
|
|
- switch
|
|
- cover
|
|
- input_boolean
|
|
entity27_name:
|
|
name: Name "Button 27" (Optional)
|
|
description: Button label - 10 characters are supported
|
|
default: []
|
|
selector:
|
|
text: {}
|
|
entity28:
|
|
name: Button 28 (Optional)
|
|
description: Nextion Editor - *buttonpage04.button04* **(ONLY light | switch | cover | input_boolean)**
|
|
default: []
|
|
selector:
|
|
entity:
|
|
domain:
|
|
- light
|
|
- switch
|
|
- cover
|
|
- input_boolean
|
|
entity28_name:
|
|
name: Name "Button 28" (Optional)
|
|
description: Button label - 10 characters are supported
|
|
default: []
|
|
selector:
|
|
text: {}
|
|
entity29:
|
|
name: Button 29 (Optional)
|
|
description: Nextion Editor - *buttonpage04.button05* **(ONLY light | switch | cover | input_boolean)**
|
|
default: []
|
|
selector:
|
|
entity:
|
|
domain:
|
|
- light
|
|
- switch
|
|
- cover
|
|
- input_boolean
|
|
entity29_name:
|
|
name: Name "Button 29" (Optional)
|
|
description: Button label - 10 characters are supported
|
|
default: []
|
|
selector:
|
|
text: {}
|
|
entity30:
|
|
name: Button 30 (Optional)
|
|
description: Nextion Editor - *buttonpage04.button06* **(ONLY light | switch | cover | input_boolean)**
|
|
default: []
|
|
selector:
|
|
entity:
|
|
domain:
|
|
- light
|
|
- switch
|
|
- cover
|
|
- input_boolean
|
|
entity30_name:
|
|
name: Name "Button 30" (Optional)
|
|
description: Button label - 10 characters are supported
|
|
default: []
|
|
selector:
|
|
text: {}
|
|
entity31:
|
|
name: Button 31 (Optional)
|
|
description: Nextion Editor - *buttonpage04.button07* **(ONLY light | switch | cover | input_boolean)**
|
|
default: []
|
|
selector:
|
|
entity:
|
|
domain:
|
|
- light
|
|
- switch
|
|
- cover
|
|
- input_boolean
|
|
entity31_name:
|
|
name: Name "Button 31" (Optional)
|
|
description: Button label - 10 characters are supported
|
|
default: []
|
|
selector:
|
|
text: {}
|
|
entity32:
|
|
name: Button 32 (Optional)
|
|
description: Nextion Editor - *buttonpage04.button08* **(ONLY light | switch | cover | input_boolean)**
|
|
default: []
|
|
selector:
|
|
entity:
|
|
domain:
|
|
- light
|
|
- switch
|
|
- cover
|
|
- input_boolean
|
|
entity32_name:
|
|
name: Name "Button 32" (Optional)
|
|
description: Button label - 10 characters are supported
|
|
default: []
|
|
selector:
|
|
text: {}
|
|
|
|
mode: parallel
|
|
max: 5000
|
|
|
|
#############################################################
|
|
##### CLOSE - INPUT #####
|
|
#############################################################
|
|
|
|
|
|
#############################################################
|
|
##### START - Variables #####
|
|
#############################################################
|
|
|
|
trigger_variables:
|
|
nspanel_name_trigger: !input "nspanel_name"
|
|
last_click: "sensor.{{ nspanel_name_trigger }}_last_click"
|
|
last_click_lightsettings: "sensor.{{ nspanel_name_trigger }}_last_click_lightsettings"
|
|
last_click_coversettings: "sensor.{{ nspanel_name_trigger }}_last_click_coversettings"
|
|
last_click_weathersettings: "sensor.{{ nspanel_name_trigger }}_last_click_weathersettings"
|
|
left_button: "binary_sensor.{{ nspanel_name_trigger }}_left_button"
|
|
right_button: "binary_sensor.{{ nspanel_name_trigger }}_right_button"
|
|
weather_forcast_button: "binary_sensor.{{ nspanel_name_trigger }}_weather_forcast"
|
|
nextion_inited_trigger: "switch.{{ nspanel_name_trigger }}_nextion_inited"
|
|
entity_long_trigger: "{{ entity_long }}"
|
|
|
|
variables:
|
|
nspanel_name: !input "nspanel_name"
|
|
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"
|
|
tft_upload: "esphome.{{ nspanel_name }}_upload_tft"
|
|
tft_path: !input "tft_path"
|
|
humidity: !input "humidity"
|
|
hotwatertemp: !input "hotwatertemp"
|
|
outdoortemp: !input "outdoortemp"
|
|
time: "{{ (as_timestamp(now()) | timestamp_custom('%H:%M')) }}"
|
|
weather: !input "weather"
|
|
language: !input "language"
|
|
left_button_entity: !input "left_button_entity"
|
|
right_button_entity: !input "right_button_entity"
|
|
|
|
# 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"
|
|
|
|
|
|
# Icons Mapping
|
|
cover_pic_closed: "106"
|
|
cover_pic_open: "107"
|
|
battery_icon: "108"
|
|
light_pic_off: "125"
|
|
light_pic_on: "126"
|
|
|
|
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"
|
|
|
|
weather_icon_blank: "53"
|
|
weather_icon_rain: "59"
|
|
weather_icon_sun: "60"
|
|
weather_icon_protect: "61"
|
|
weather_icon_lightning: "62"
|
|
weather_icon_wind: "63"
|
|
|
|
# color for buttons
|
|
button_light_off: "90"
|
|
button_light_on: "91"
|
|
button_switch_off: "92"
|
|
button_switch_on: "93"
|
|
button_cover_off: "94"
|
|
button_cover_on: "95"
|
|
button_color_1: "65535"
|
|
button_color_2: "10597"
|
|
|
|
##### Date - DE #####
|
|
date01_de: "{{ ((as_timestamp(now())) | timestamp_custom('%a %d.%m' )) | replace('Mon', 'Montag,')| replace('Tue', 'Dienstag,')| replace('Wed', 'Mittwoch,')| replace('Thu', 'Donnerstag,')| replace('Fri', 'Freitag,')| replace('Sat', 'Samstag,')| replace('Sun', 'Sonntag,') }}"
|
|
date02_de: "{{ ((as_timestamp(now()) + 86400) | timestamp_custom('%a %d.%m' )) | replace('Mon', 'Montag,')| replace('Tue', 'Dienstag,')| replace('Wed', 'Mittwoch,')| replace('Thu', 'Donnerstag,')| replace('Fri', 'Freitag,')| replace('Sat', 'Samstag,')| replace('Sun', 'Sonntag,') }}"
|
|
date03_de: "{{ ((as_timestamp(now()) + 172800) | timestamp_custom('%a %d.%m' )) | replace('Mon', 'Montag,')| replace('Tue', 'Dienstag,')| replace('Wed', 'Mittwoch,')| replace('Thu', 'Donnerstag,')| replace('Fri', 'Freitag,')| replace('Sat', 'Samstag,')| replace('Sun', 'Sonntag,') }}"
|
|
date04_de: "{{ ((as_timestamp(now()) + 259200) | timestamp_custom('%a %d.%m' )) | replace('Mon', 'Montag,')| replace('Tue', 'Dienstag,')| replace('Wed', 'Mittwoch,')| replace('Thu', 'Donnerstag,')| replace('Fri', 'Freitag,')| replace('Sat', 'Samstag,')| replace('Sun', 'Sonntag,') }}"
|
|
date05_de: "{{ ((as_timestamp(now()) + 345600) | timestamp_custom('%a %d.%m' )) | replace('Mon', 'Montag,')| replace('Tue', 'Dienstag,')| replace('Wed', 'Mittwoch,')| replace('Thu', 'Donnerstag,')| replace('Fri', 'Freitag,')| replace('Sat', 'Samstag,')| replace('Sun', 'Sonntag,') }}"
|
|
|
|
##### Date - EN #####
|
|
date01_en: "{{ ((as_timestamp(now())) | timestamp_custom('%a %d.%m' )) | replace('Mon', 'Monday,')| replace('Tue', 'Tuesday,')| replace('Wed', 'Wednesday,')| replace('Thu', 'Thursday,')| replace('Fri', 'Friday,')| replace('Sat', 'Saturday,')| replace('Sun', 'Sunday,') }}"
|
|
date02_en: "{{ ((as_timestamp(now()) + 86400) | timestamp_custom('%a %d.%m' )) | replace('Mon', 'Monday,')| replace('Tue', 'Tuesday,')| replace('Wed', 'Wednesday,')| replace('Thu', 'Thursday,')| replace('Fri', 'Friday,')| replace('Sat', 'Saturday,')| replace('Sun', 'Sunday,') }}"
|
|
date03_en: "{{ ((as_timestamp(now()) + 172800) | timestamp_custom('%a %d.%m' )) | replace('Mon', 'Monday,')| replace('Tue', 'Tuesday,')| replace('Wed', 'Wednesday,')| replace('Thu', 'Thursday,')| replace('Fri', 'Friday,')| replace('Sat', 'Saturday,')| replace('Sun', 'Sunday,') }}"
|
|
date04_en: "{{ ((as_timestamp(now()) + 259200) | timestamp_custom('%a %d.%m' )) | replace('Mon', 'Monday,')| replace('Tue', 'Tuesday,')| replace('Wed', 'Wednesday,')| replace('Thu', 'Thursday,')| replace('Fri', 'Friday,')| replace('Sat', 'Saturday,')| replace('Sun', 'Sunday,') }}"
|
|
date05_en: "{{ ((as_timestamp(now()) + 345600) | timestamp_custom('%a %d.%m' )) | replace('Mon', 'Monday,')| replace('Tue', 'Tuesday,')| replace('Wed', 'Wednesday,')| replace('Thu', 'Thursday,')| replace('Fri', 'Friday,')| replace('Sat', 'Saturday,')| replace('Sun', 'Sunday,') }}"
|
|
|
|
##### Day - DE #####
|
|
day01_de: "Heute"
|
|
day02_de: "Morgen"
|
|
day03_de: "in 2 Tagen"
|
|
day04_de: "in 3 Tagen"
|
|
day05_de: "in 4 tagen"
|
|
|
|
##### Day - EN #####
|
|
day01_en: "Today"
|
|
day02_en: "Tomorrow"
|
|
day03_en: "in 2 Days"
|
|
day04_en: "in 3 Days"
|
|
day05_en: "in 4 Days"
|
|
|
|
##### Meteorologisk HA Default #####
|
|
ha_weather: "weather.home"
|
|
|
|
##### AccuWeather #####
|
|
accuweather: !input "accuweather"
|
|
accuweather_value: "weather.{{ accuweather }}"
|
|
|
|
##### Forcast Day 0 Accuweather #####
|
|
accuweather_realfeel_temperature_min_0d: "sensor.{{ accuweather }}_realfeel_temperature_min_0d"
|
|
accuweather_realfeel_temperature_max_0d: "sensor.{{ accuweather }}_realfeel_temperature_max_0d"
|
|
accuweather_hours_of_sun_0d: "sensor.{{ accuweather }}_hours_of_sun_0d"
|
|
accuweather_uv_index_0d: "sensor.{{ accuweather }}_uv_index_0d"
|
|
accuweather_thunderstorm_probability_day_0d: "sensor.{{ accuweather }}_thunderstorm_probability_day_0d"
|
|
accuweather_thunderstorm_probability_night_0d: "sensor.{{ accuweather }}_thunderstorm_probability_night_0d"
|
|
accuweather_wind_day_0d: "sensor.{{ accuweather }}_wind_day_0d"
|
|
accuweather_wind_night_0d: "sensor.{{ accuweather }}_wind_night_0d"
|
|
##### Forcast Day 1 AccuWeather #####
|
|
accuweather_realfeel_temperature_min_1d: "sensor.{{ accuweather }}_realfeel_temperature_min_1d"
|
|
accuweather_realfeel_temperature_max_1d: "sensor.{{ accuweather }}_realfeel_temperature_max_1d"
|
|
accuweather_hours_of_sun_1d: "sensor.{{ accuweather }}_hours_of_sun_1d"
|
|
accuweather_uv_index_1d: "sensor.{{ accuweather }}_uv_index_1d"
|
|
accuweather_thunderstorm_probability_day_1d: "sensor.{{ accuweather }}_thunderstorm_probability_day_1d"
|
|
accuweather_thunderstorm_probability_night_1d: "sensor.{{ accuweather }}_thunderstorm_probability_night_1d"
|
|
accuweather_wind_day_1d: "sensor.{{ accuweather }}_wind_day_1d"
|
|
accuweather_wind_night_1d: "sensor.{{ accuweather }}_wind_night_1d"
|
|
##### Forcast Day 2 AccuWeather #####
|
|
accuweather_realfeel_temperature_min_2d: "sensor.{{ accuweather }}_realfeel_temperature_min_2d"
|
|
accuweather_realfeel_temperature_max_2d: "sensor.{{ accuweather }}_realfeel_temperature_max_2d"
|
|
accuweather_hours_of_sun_2d: "sensor.{{ accuweather }}_hours_of_sun_2d"
|
|
accuweather_uv_index_2d: "sensor.{{ accuweather }}_uv_index_2d"
|
|
accuweather_thunderstorm_probability_day_2d: "sensor.{{ accuweather }}_thunderstorm_probability_day_2d"
|
|
accuweather_thunderstorm_probability_night_2d: "sensor.{{ accuweather }}_thunderstorm_probability_night_2d"
|
|
accuweather_wind_day_2d: "sensor.{{ accuweather }}_wind_day_2d"
|
|
accuweather_wind_night_2d: "sensor.{{ accuweather }}_wind_night_2d"
|
|
##### Forcast Day 3 AccuWeather #####
|
|
accuweather_realfeel_temperature_min_3d: "sensor.{{ accuweather }}_realfeel_temperature_min_3d"
|
|
accuweather_realfeel_temperature_max_3d: "sensor.{{ accuweather }}_realfeel_temperature_max_3d"
|
|
accuweather_hours_of_sun_3d: "sensor.{{ accuweather }}_hours_of_sun_3d"
|
|
accuweather_uv_index_3d: "sensor.{{ accuweather }}_uv_index_3d"
|
|
accuweather_thunderstorm_probability_day_3d: "sensor.{{ accuweather }}_thunderstorm_probability_day_3d"
|
|
accuweather_thunderstorm_probability_night_3d: "sensor.{{ accuweather }}_thunderstorm_probability_night_3d"
|
|
accuweather_wind_day_3d: "sensor.{{ accuweather }}_wind_day_3d"
|
|
accuweather_wind_night_3d: "sensor.{{ accuweather }}_wind_night_3d"
|
|
##### Forcast Day 4 AccuWeather #####
|
|
accuweather_realfeel_temperature_min_4d: "sensor.{{ accuweather }}_realfeel_temperature_min_4d"
|
|
accuweather_realfeel_temperature_max_4d: "sensor.{{ accuweather }}_realfeel_temperature_max_4d"
|
|
accuweather_hours_of_sun_4d: "sensor.{{ accuweather }}_hours_of_sun_4d"
|
|
accuweather_uv_index_4d: "sensor.{{ accuweather }}_uv_index_4d"
|
|
accuweather_thunderstorm_probability_day_4d: "sensor.{{ accuweather }}_thunderstorm_probability_day_4d"
|
|
accuweather_thunderstorm_probability_night_4d: "sensor.{{ accuweather }}_thunderstorm_probability_night_4d"
|
|
accuweather_wind_day_4d: "sensor.{{ accuweather }}_wind_day_4d"
|
|
accuweather_wind_night_4d: "sensor.{{ accuweather }}_wind_night_4d"
|
|
|
|
##### Buttons #####
|
|
entity01: !input "entity01"
|
|
entity01_name: !input "entity01_name"
|
|
entity02: !input "entity02"
|
|
entity02_name: !input "entity02_name"
|
|
entity03: !input "entity03"
|
|
entity03_name: !input "entity03_name"
|
|
entity04: !input "entity04"
|
|
entity04_name: !input "entity04_name"
|
|
entity05: !input "entity05"
|
|
entity05_name: !input "entity05_name"
|
|
entity06: !input "entity06"
|
|
entity06_name: !input "entity06_name"
|
|
entity07: !input "entity07"
|
|
entity07_name: !input "entity07_name"
|
|
entity08: !input "entity08"
|
|
entity08_name: !input "entity08_name"
|
|
entity09: !input "entity09"
|
|
entity09_name: !input "entity09_name"
|
|
entity10: !input "entity10"
|
|
entity10_name: !input "entity10_name"
|
|
entity11: !input "entity11"
|
|
entity11_name: !input "entity11_name"
|
|
entity12: !input "entity12"
|
|
entity12_name: !input "entity12_name"
|
|
entity13: !input "entity13"
|
|
entity13_name: !input "entity13_name"
|
|
entity14: !input "entity14"
|
|
entity14_name: !input "entity14_name"
|
|
entity15: !input "entity15"
|
|
entity15_name: !input "entity15_name"
|
|
entity16: !input "entity16"
|
|
entity16_name: !input "entity16_name"
|
|
entity17: !input "entity17"
|
|
entity17_name: !input "entity17_name"
|
|
entity18: !input "entity18"
|
|
entity18_name: !input "entity18_name"
|
|
entity19: !input "entity19"
|
|
entity19_name: !input "entity19_name"
|
|
entity20: !input "entity20"
|
|
entity20_name: !input "entity20_name"
|
|
entity21: !input "entity21"
|
|
entity21_name: !input "entity21_name"
|
|
entity22: !input "entity22"
|
|
entity22_name: !input "entity22_name"
|
|
entity23: !input "entity23"
|
|
entity23_name: !input "entity23_name"
|
|
entity24: !input "entity24"
|
|
entity24_name: !input "entity24_name"
|
|
entity25: !input "entity25"
|
|
entity25_name: !input "entity25_name"
|
|
entity26: !input "entity26"
|
|
entity26_name: !input "entity26_name"
|
|
entity27: !input "entity27"
|
|
entity27_name: !input "entity27_name"
|
|
entity28: !input "entity28"
|
|
entity28_name: !input "entity28_name"
|
|
entity29: !input "entity29"
|
|
entity29_name: !input "entity29_name"
|
|
entity30: !input "entity30"
|
|
entity30_name: !input "entity30_name"
|
|
entity31: !input "entity31"
|
|
entity31_name: !input "entity31_name"
|
|
entity32: !input "entity32"
|
|
entity32_name: !input "entity32_name"
|
|
|
|
#############################################################
|
|
##### 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" }}'
|
|
id: nspanel_boot_init
|
|
|
|
##### 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 Temp - Trigger "weather_temp_state" ####
|
|
- platform: time_pattern
|
|
minutes: "10"
|
|
id: weather_temp_state
|
|
|
|
#### Weather State - Trigger "weather_update_state" ####
|
|
- platform: template
|
|
value_template: '{{ states(last_click) is match "weather" }}'
|
|
id: weather_update_state
|
|
|
|
#### Weather Time - Trigger "weather_update_time" #### -> kann gelöscht werden nah weather umbau
|
|
- platform: time_pattern
|
|
minutes: "10"
|
|
id: weather_update_time
|
|
|
|
##### Humidity - Trigger "humidity_state" #####
|
|
- platform: event
|
|
event_type: state_changed
|
|
event_data:
|
|
entity_id: !input "humidity"
|
|
id: humidity_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
|
|
|
|
##### 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
|
|
|
|
|
|
|
|
|
|
##### Trigger - Button General #################################################################################################################
|
|
|
|
##### Page Button - Trigger "short_press" - SHORT Press via "last_click" #####
|
|
- platform: event
|
|
event_type: state_changed
|
|
event_data:
|
|
entity_id: "{{ last_click }}"
|
|
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 Weather Forcast - Trigger "weather_settings" - Changes Weather Page via "last_click_weathersettings" #####
|
|
- platform: event
|
|
event_type: state_changed
|
|
event_data:
|
|
entity_id: "{{ last_click_weathersettings }}"
|
|
id: weather_settings
|
|
|
|
##### 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 #####
|
|
#############################################################
|
|
|
|
action:
|
|
- variables:
|
|
##### Entity - Page Button - Toggle Entity #####
|
|
entity_short: >-
|
|
{%- if states(last_click) == "releasebuttonpage01button01" -%} {{ entity01 }}
|
|
{%- elif states(last_click) == "releasebuttonpage01button02" -%} {{ entity02 }}
|
|
{%- elif states(last_click) == "releasebuttonpage01button03" -%} {{ entity03 }}
|
|
{%- elif states(last_click) == "releasebuttonpage01button04" -%} {{ entity04 }}
|
|
{%- elif states(last_click) == "releasebuttonpage01button05" -%} {{ entity05 }}
|
|
{%- elif states(last_click) == "releasebuttonpage01button06" -%} {{ entity06 }}
|
|
{%- elif states(last_click) == "releasebuttonpage01button07" -%} {{ entity07 }}
|
|
{%- elif states(last_click) == "releasebuttonpage01button08" -%} {{ entity08 }}
|
|
{%- elif states(last_click) == "releasebuttonpage02button01" -%} {{ entity09 }}
|
|
{%- elif states(last_click) == "releasebuttonpage02button02" -%} {{ entity10 }}
|
|
{%- elif states(last_click) == "releasebuttonpage02button03" -%} {{ entity11 }}
|
|
{%- elif states(last_click) == "releasebuttonpage02button04" -%} {{ entity12 }}
|
|
{%- elif states(last_click) == "releasebuttonpage02button05" -%} {{ entity13 }}
|
|
{%- elif states(last_click) == "releasebuttonpage02button06" -%} {{ entity14 }}
|
|
{%- elif states(last_click) == "releasebuttonpage02button07" -%} {{ entity15 }}
|
|
{%- elif states(last_click) == "releasebuttonpage02button08" -%} {{ entity16 }}
|
|
{%- elif states(last_click) == "releasebuttonpage03button01" -%} {{ entity17 }}
|
|
{%- elif states(last_click) == "releasebuttonpage03button02" -%} {{ entity18 }}
|
|
{%- elif states(last_click) == "releasebuttonpage03button03" -%} {{ entity19 }}
|
|
{%- elif states(last_click) == "releasebuttonpage03button04" -%} {{ entity20 }}
|
|
{%- elif states(last_click) == "releasebuttonpage03button05" -%} {{ entity21 }}
|
|
{%- elif states(last_click) == "releasebuttonpage03button06" -%} {{ entity22 }}
|
|
{%- elif states(last_click) == "releasebuttonpage03button07" -%} {{ entity23 }}
|
|
{%- elif states(last_click) == "releasebuttonpage03button08" -%} {{ entity24 }}
|
|
{%- elif states(last_click) == "releasebuttonpage04button01" -%} {{ entity25 }}
|
|
{%- elif states(last_click) == "releasebuttonpage04button02" -%} {{ entity26 }}
|
|
{%- elif states(last_click) == "releasebuttonpage04button03" -%} {{ entity27 }}
|
|
{%- elif states(last_click) == "releasebuttonpage04button04" -%} {{ entity28 }}
|
|
{%- elif states(last_click) == "releasebuttonpage04button05" -%} {{ entity29 }}
|
|
{%- elif states(last_click) == "releasebuttonpage04button06" -%} {{ entity30 }}
|
|
{%- elif states(last_click) == "releasebuttonpage04button07" -%} {{ entity31 }}
|
|
{%- elif states(last_click) == "releasebuttonpage04button08" -%} {{ entity32 }}
|
|
{%- endif -%}
|
|
|
|
##### Entity - Page Lightsettings #####
|
|
entity_long: >-
|
|
{%- if states(last_click) == "pressbuttonpage01button01" -%} {{ entity01 }}
|
|
{%- elif states(last_click) == "pressbuttonpage01button02" -%} {{ entity02 }}
|
|
{%- elif states(last_click) == "pressbuttonpage01button03" -%} {{ entity03 }}
|
|
{%- elif states(last_click) == "pressbuttonpage01button04" -%} {{ entity04 }}
|
|
{%- elif states(last_click) == "pressbuttonpage01button05" -%} {{ entity05 }}
|
|
{%- elif states(last_click) == "pressbuttonpage01button06" -%} {{ entity06 }}
|
|
{%- elif states(last_click) == "pressbuttonpage01button07" -%} {{ entity07 }}
|
|
{%- elif states(last_click) == "pressbuttonpage01button08" -%} {{ entity08 }}
|
|
{%- elif states(last_click) == "pressbuttonpage02button01" -%} {{ entity09 }}
|
|
{%- elif states(last_click) == "pressbuttonpage02button02" -%} {{ entity10 }}
|
|
{%- elif states(last_click) == "pressbuttonpage02button03" -%} {{ entity11 }}
|
|
{%- elif states(last_click) == "pressbuttonpage02button04" -%} {{ entity12 }}
|
|
{%- elif states(last_click) == "pressbuttonpage02button05" -%} {{ entity13 }}
|
|
{%- elif states(last_click) == "pressbuttonpage02button06" -%} {{ entity14 }}
|
|
{%- elif states(last_click) == "pressbuttonpage02button07" -%} {{ entity15 }}
|
|
{%- elif states(last_click) == "pressbuttonpage02button08" -%} {{ entity16 }}
|
|
{%- elif states(last_click) == "pressbuttonpage03button01" -%} {{ entity17 }}
|
|
{%- elif states(last_click) == "pressbuttonpage03button02" -%} {{ entity18 }}
|
|
{%- elif states(last_click) == "pressbuttonpage03button03" -%} {{ entity19 }}
|
|
{%- elif states(last_click) == "pressbuttonpage03button04" -%} {{ entity20 }}
|
|
{%- elif states(last_click) == "pressbuttonpage03button05" -%} {{ entity21 }}
|
|
{%- elif states(last_click) == "pressbuttonpage03button06" -%} {{ entity22 }}
|
|
{%- elif states(last_click) == "pressbuttonpage03button07" -%} {{ entity23 }}
|
|
{%- elif states(last_click) == "pressbuttonpage03button08" -%} {{ entity24 }}
|
|
{%- elif states(last_click) == "pressbuttonpage04button01" -%} {{ entity25 }}
|
|
{%- elif states(last_click) == "pressbuttonpage04button02" -%} {{ entity26 }}
|
|
{%- elif states(last_click) == "pressbuttonpage04button03" -%} {{ entity27 }}
|
|
{%- elif states(last_click) == "pressbuttonpage04button04" -%} {{ entity28 }}
|
|
{%- elif states(last_click) == "pressbuttonpage04button05" -%} {{ entity29 }}
|
|
{%- elif states(last_click) == "pressbuttonpage04button06" -%} {{ entity30 }}
|
|
{%- elif states(last_click) == "pressbuttonpage04button07" -%} {{ entity31 }}
|
|
{%- elif states(last_click) == "pressbuttonpage04button08" -%} {{ entity32 }}
|
|
{%- endif -%}
|
|
|
|
##### Entity Name - Page Lightsettings #####
|
|
entity_long_name: >-
|
|
{%- if states(last_click) == "pressbuttonpage01button01" -%} {{ entity01_name }}
|
|
{%- elif states(last_click) == "pressbuttonpage01button02" -%} {{ entity02_name }}
|
|
{%- elif states(last_click) == "pressbuttonpage01button03" -%} {{ entity03_name }}
|
|
{%- elif states(last_click) == "pressbuttonpage01button04" -%} {{ entity04_name }}
|
|
{%- elif states(last_click) == "pressbuttonpage01button05" -%} {{ entity05_name }}
|
|
{%- elif states(last_click) == "pressbuttonpage01button06" -%} {{ entity06_name }}
|
|
{%- elif states(last_click) == "pressbuttonpage01button07" -%} {{ entity07_name }}
|
|
{%- elif states(last_click) == "pressbuttonpage01button08" -%} {{ entity08_name }}
|
|
{%- elif states(last_click) == "pressbuttonpage02button01" -%} {{ entity09_name }}
|
|
{%- elif states(last_click) == "pressbuttonpage02button02" -%} {{ entity10_name }}
|
|
{%- elif states(last_click) == "pressbuttonpage02button03" -%} {{ entity11_name }}
|
|
{%- elif states(last_click) == "pressbuttonpage02button04" -%} {{ entity12_name }}
|
|
{%- elif states(last_click) == "pressbuttonpage02button05" -%} {{ entity13_name }}
|
|
{%- elif states(last_click) == "pressbuttonpage02button06" -%} {{ entity14_name }}
|
|
{%- elif states(last_click) == "pressbuttonpage02button07" -%} {{ entity15_name }}
|
|
{%- elif states(last_click) == "pressbuttonpage02button08" -%} {{ entity16_name }}
|
|
{%- elif states(last_click) == "pressbuttonpage03button01" -%} {{ entity17_name }}
|
|
{%- elif states(last_click) == "pressbuttonpage03button02" -%} {{ entity18_name }}
|
|
{%- elif states(last_click) == "pressbuttonpage03button03" -%} {{ entity19_name }}
|
|
{%- elif states(last_click) == "pressbuttonpage03button04" -%} {{ entity20_name }}
|
|
{%- elif states(last_click) == "pressbuttonpage03button05" -%} {{ entity21_name }}
|
|
{%- elif states(last_click) == "pressbuttonpage03button06" -%} {{ entity22_name }}
|
|
{%- elif states(last_click) == "pressbuttonpage03button07" -%} {{ entity23_name }}
|
|
{%- elif states(last_click) == "pressbuttonpage03button08" -%} {{ entity24_name }}
|
|
{%- elif states(last_click) == "pressbuttonpage04button01" -%} {{ entity25_name }}
|
|
{%- elif states(last_click) == "pressbuttonpage04button02" -%} {{ entity26_name }}
|
|
{%- elif states(last_click) == "pressbuttonpage04button03" -%} {{ entity27_name }}
|
|
{%- elif states(last_click) == "pressbuttonpage04button04" -%} {{ entity28_name }}
|
|
{%- elif states(last_click) == "pressbuttonpage04button05" -%} {{ entity29_name}}
|
|
{%- elif states(last_click) == "pressbuttonpage04button06" -%} {{ entity30_name }}
|
|
{%- elif states(last_click) == "pressbuttonpage04button07" -%} {{ entity31_name }}
|
|
{%- elif states(last_click) == "pressbuttonpage04button08" -%} {{ entity32_name }}
|
|
{%- endif -%}
|
|
|
|
##### Entity - Page Lightsettings - Skip Back #####
|
|
entity_back: >-
|
|
{%- if states(last_click) == "pressbuttonpage01button01" -%} {{ "page buttonpage01" }}
|
|
{%- elif states(last_click) == "pressbuttonpage01button02" -%} {{ "page buttonpage01" }}
|
|
{%- elif states(last_click) == "pressbuttonpage01button03" -%} {{ "page buttonpage01" }}
|
|
{%- elif states(last_click) == "pressbuttonpage01button04" -%} {{ "page buttonpage01" }}
|
|
{%- elif states(last_click) == "pressbuttonpage01button05" -%} {{ "page buttonpage01" }}
|
|
{%- elif states(last_click) == "pressbuttonpage01button06" -%} {{ "page buttonpage01" }}
|
|
{%- elif states(last_click) == "pressbuttonpage01button07" -%} {{ "page buttonpage01" }}
|
|
{%- elif states(last_click) == "pressbuttonpage01button08" -%} {{ "page buttonpage01" }}
|
|
{%- elif states(last_click) == "pressbuttonpage02button01" -%} {{ "page buttonpage02" }}
|
|
{%- elif states(last_click) == "pressbuttonpage02button02" -%} {{ "page buttonpage02" }}
|
|
{%- elif states(last_click) == "pressbuttonpage02button03" -%} {{ "page buttonpage02" }}
|
|
{%- elif states(last_click) == "pressbuttonpage02button04" -%} {{ "page buttonpage02" }}
|
|
{%- elif states(last_click) == "pressbuttonpage02button05" -%} {{ "page buttonpage02" }}
|
|
{%- elif states(last_click) == "pressbuttonpage02button06" -%} {{ "page buttonpage02" }}
|
|
{%- elif states(last_click) == "pressbuttonpage02button07" -%} {{ "page buttonpage02" }}
|
|
{%- elif states(last_click) == "pressbuttonpage02button08" -%} {{ "page buttonpage02" }}
|
|
{%- elif states(last_click) == "pressbuttonpage03button01" -%} {{ "page buttonpage03" }}
|
|
{%- elif states(last_click) == "pressbuttonpage03button02" -%} {{ "page buttonpage03" }}
|
|
{%- elif states(last_click) == "pressbuttonpage03button03" -%} {{ "page buttonpage03" }}
|
|
{%- elif states(last_click) == "pressbuttonpage03button04" -%} {{ "page buttonpage03" }}
|
|
{%- elif states(last_click) == "pressbuttonpage03button05" -%} {{ "page buttonpage03" }}
|
|
{%- elif states(last_click) == "pressbuttonpage03button06" -%} {{ "page buttonpage03" }}
|
|
{%- elif states(last_click) == "pressbuttonpage03button07" -%} {{ "page buttonpage03" }}
|
|
{%- elif states(last_click) == "pressbuttonpage03button08" -%} {{ "page buttonpage03" }}
|
|
{%- elif states(last_click) == "pressbuttonpage04button01" -%} {{ "page buttonpage04" }}
|
|
{%- elif states(last_click) == "pressbuttonpage04button02" -%} {{ "page buttonpage04" }}
|
|
{%- elif states(last_click) == "pressbuttonpage04button03" -%} {{ "page buttonpage04" }}
|
|
{%- elif states(last_click) == "pressbuttonpage04button04" -%} {{ "page buttonpage04" }}
|
|
{%- elif states(last_click) == "pressbuttonpage04button05" -%} {{ "page buttonpage04" }}
|
|
{%- elif states(last_click) == "pressbuttonpage04button06" -%} {{ "page buttonpage04" }}
|
|
{%- elif states(last_click) == "pressbuttonpage04button07" -%} {{ "page buttonpage04" }}
|
|
{%- elif states(last_click) == "pressbuttonpage04button08" -%} {{ "page buttonpage04" }}
|
|
{%- endif -%}
|
|
|
|
########################################################################################################################
|
|
|
|
# main - alias: "choose alias (name) - NEW VERSION"
|
|
- choose:
|
|
|
|
##### NSPanel boot init ##### DONE
|
|
- conditions:
|
|
- condition: trigger
|
|
id: nspanel_boot_init
|
|
sequence:
|
|
|
|
##### NSPanel boot init start #####
|
|
- delay:
|
|
milliseconds: 100
|
|
- service: "{{ command_text_printf }}"
|
|
data:
|
|
component: home.loading
|
|
message: "Loading - PLS WAIT!"
|
|
|
|
##### NSPanel boot init language #####
|
|
- delay:
|
|
milliseconds: "{{ delay_value }}"
|
|
- choose:
|
|
##### NSPanel boot init language DE ##### DONE
|
|
- conditions:
|
|
- condition: template
|
|
value_template: '{{ language == "DE" }}'
|
|
sequence:
|
|
####### Date #####
|
|
- service: "{{ command_text_printf }}"
|
|
data:
|
|
component: home.a02
|
|
message: "{{ date01_de }}"
|
|
- delay:
|
|
milliseconds: "{{ delay_value }}"
|
|
- service: "{{ command_text_printf }}"
|
|
data:
|
|
component: weather01.a02
|
|
message: "{{ date01_de }}"
|
|
- delay:
|
|
milliseconds: "{{ delay_value }}"
|
|
- service: "{{ command_text_printf }}"
|
|
data:
|
|
component: weather02.a02
|
|
message: "{{ date02_de }}"
|
|
- delay:
|
|
milliseconds: "{{ delay_value }}"
|
|
- service: "{{ command_text_printf }}"
|
|
data:
|
|
component: weather03.a02
|
|
message: "{{ date03_de }}"
|
|
- delay:
|
|
milliseconds: "{{ delay_value }}"
|
|
- service: "{{ command_text_printf }}"
|
|
data:
|
|
component: weather04.a02
|
|
message: "{{ date04_de }}"
|
|
- delay:
|
|
milliseconds: "{{ delay_value }}"
|
|
- service: "{{ command_text_printf }}"
|
|
data:
|
|
component: weather05.a02
|
|
message: "{{ date05_de }}"
|
|
|
|
##### NSPanel boot init language EN ##### DONE
|
|
- conditions:
|
|
- condition: template
|
|
value_template: '{{ language == "EN" }}'
|
|
sequence:
|
|
##### Date #####
|
|
- service: "{{ command_text_printf }}"
|
|
data:
|
|
component: home.a02
|
|
message: "{{ date01_en }}"
|
|
- delay:
|
|
milliseconds: "{{ delay_value }}"
|
|
- service: "{{ command_text_printf }}"
|
|
data:
|
|
component: weather01.a02
|
|
message: "{{ date01_en }}"
|
|
- delay:
|
|
milliseconds: "{{ delay_value }}"
|
|
- service: "{{ command_text_printf }}"
|
|
data:
|
|
component: weather02.a02
|
|
message: "{{ date02_en }}"
|
|
- delay:
|
|
milliseconds: "{{ delay_value }}"
|
|
- service: "{{ command_text_printf }}"
|
|
data:
|
|
component: weather03.a02
|
|
message: "{{ date03_en }}"
|
|
- delay:
|
|
milliseconds: "{{ delay_value }}"
|
|
- service: "{{ command_text_printf }}"
|
|
data:
|
|
component: weather04.a02
|
|
message: "{{ date04_en }}"
|
|
- delay:
|
|
milliseconds: "{{ delay_value }}"
|
|
- service: "{{ command_text_printf }}"
|
|
data:
|
|
component: weather05.a02
|
|
message: "{{ date05_de }}"
|
|
|
|
##### NSPanel boot init buttons #####
|
|
- delay:
|
|
milliseconds: "{{ delay_value }}"
|
|
- repeat:
|
|
for_each:
|
|
- entity: "{{ entity01 }}"
|
|
button_label: "{{ entity01_name }}"
|
|
button: buttonpage01.button01
|
|
- entity: "{{ entity02 }}"
|
|
button_label: "{{ entity02_name }}"
|
|
button: buttonpage01.button02
|
|
- entity: "{{ entity03 }}"
|
|
button_label: "{{ entity03_name }}"
|
|
button: buttonpage01.button03
|
|
- entity: "{{ entity04 }}"
|
|
button_label: "{{ entity04_name }}"
|
|
button: buttonpage01.button04
|
|
- entity: "{{ entity05 }}"
|
|
button_label: "{{ entity05_name }}"
|
|
button: buttonpage01.button05
|
|
- entity: "{{ entity06 }}"
|
|
button_label: "{{ entity06_name }}"
|
|
button: buttonpage01.button06
|
|
- entity: "{{ entity07 }}"
|
|
button_label: "{{ entity07_name }}"
|
|
button: buttonpage01.button07
|
|
- entity: "{{ entity08 }}"
|
|
button_label: "{{ entity08_name }}"
|
|
button: buttonpage01.button08
|
|
- entity: "{{ entity09 }}"
|
|
button_label: "{{ entity09_name }}"
|
|
button: buttonpage02.button01
|
|
- entity: "{{ entity10 }}"
|
|
button_label: "{{ entity10_name }}"
|
|
button: buttonpage02.button02
|
|
- entity: "{{ entity11 }}"
|
|
button_label: "{{ entity11_name }}"
|
|
button: buttonpage02.button03
|
|
- entity: "{{ entity12 }}"
|
|
button_label: "{{ entity12_name }}"
|
|
button: buttonpage02.button04
|
|
- entity: "{{ entity13 }}"
|
|
button_label: "{{ entity13_name }}"
|
|
button: buttonpage02.button05
|
|
- entity: "{{ entity14 }}"
|
|
button_label: "{{ entity14_name }}"
|
|
button: buttonpage02.button06
|
|
- entity: "{{ entity15 }}"
|
|
button_label: "{{ entity15_name }}"
|
|
button: buttonpage02.button07
|
|
- entity: "{{ entity16 }}"
|
|
button_label: "{{ entity16_name }}"
|
|
button: buttonpage02.button08
|
|
- entity: "{{ entity17 }}"
|
|
button_label: "{{ entity17_name }}"
|
|
button: buttonpage03.button01
|
|
- entity: "{{ entity18 }}"
|
|
button_label: "{{ entity18_name }}"
|
|
button: buttonpage03.button02
|
|
- entity: "{{ entity19 }}"
|
|
button_label: "{{ entity19_name }}"
|
|
button: buttonpage03.button03
|
|
- entity: "{{ entity20 }}"
|
|
button_label: "{{ entity20_name }}"
|
|
button: buttonpage03.button04
|
|
- entity: "{{ entity21 }}"
|
|
button_label: "{{ entity21_name }}"
|
|
button: buttonpage03.button05
|
|
- entity: "{{ entity22 }}"
|
|
button_label: "{{ entity22_name }}"
|
|
button: buttonpage03.button06
|
|
- entity: "{{ entity23 }}"
|
|
button_label: "{{ entity23_name }}"
|
|
button: buttonpage03.button07
|
|
- entity: "{{ entity24 }}"
|
|
button_label: "{{ entity24_name }}"
|
|
button: buttonpage03.button08
|
|
- entity: "{{ entity25 }}"
|
|
button_label: "{{ entity17_name }}"
|
|
button: buttonpage04.button01
|
|
- entity: "{{ entity26 }}"
|
|
button_label: "{{ entity26_name }}"
|
|
button: buttonpage04.button02
|
|
- entity: "{{ entity27 }}"
|
|
button_label: "{{ entity27_name }}"
|
|
button: buttonpage04.button03
|
|
- entity: "{{ entity28 }}"
|
|
button_label: "{{ entity28_name }}"
|
|
button: buttonpage04.button04
|
|
- entity: "{{ entity29 }}"
|
|
button_label: "{{ entity29_name }}"
|
|
button: buttonpage04.button05
|
|
- entity: "{{ entity30 }}"
|
|
button_label: "{{ entity30_name }}"
|
|
button: buttonpage04.button06
|
|
- entity: "{{ entity31 }}"
|
|
button_label: "{{ entity31_name }}"
|
|
button: buttonpage04.button07
|
|
- entity: "{{ entity32 }}"
|
|
button_label: "{{ entity32_name }}"
|
|
button: buttonpage04.button08
|
|
sequence:
|
|
- if:
|
|
- condition: template
|
|
value_template: '{{ repeat.item.entity|length > 0 }}'
|
|
then:
|
|
- variables:
|
|
component_to_update: "{{ repeat.item.button }}"
|
|
# Button PIC
|
|
btn_pic: >-
|
|
{%- if repeat.item.entity is match "light." and states[repeat.item.entity].state == 'on' -%} {{ button_light_on }}
|
|
{%- elif repeat.item.entity is match "light." and states[repeat.item.entity].state == 'off' -%} {{ button_light_off }}
|
|
{%- elif repeat.item.entity is match "switch." and states[repeat.item.entity].state == 'on' -%} {{ button_switch_on }}
|
|
{%- elif repeat.item.entity is match "switch." and states[repeat.item.entity].state == 'off' -%} {{ button_switch_off }}
|
|
{%- elif repeat.item.entity is match "input_boolean." and states[repeat.item.entity].state == 'on' -%} {{ button_switch_on }}
|
|
{%- elif repeat.item.entity is match "input_boolean." and states[repeat.item.entity].state == 'off' -%} {{ button_switch_off }}
|
|
{%- elif repeat.item.entity is match "cover." and states[repeat.item.entity].state == 'open' -%} {{ button_cover_on }}
|
|
{%- elif repeat.item.entity is match "cover." and states[repeat.item.entity].state == 'closed' -%} {{ button_cover_off }}
|
|
{%- endif -%}
|
|
# TEXT and BRIGHTNESS Background
|
|
btn_bg: >-
|
|
{%- if states[repeat.item.entity].state == 'on' or states[repeat.item.entity].state == 'open' -%} {{ button_color_1 }}
|
|
{%- elif states[repeat.item.entity].state == 'off' or states[repeat.item.entity].state == 'closed' -%} {{ button_color_2 }}
|
|
{%- endif -%}
|
|
# TEXT Font
|
|
btn_txt_font: >-
|
|
{%- if states[repeat.item.entity].state == 'on' or states[repeat.item.entity].state == 'open' -%} {{ button_color_2 }}
|
|
{%- elif states[repeat.item.entity].state == 'off' or states[repeat.item.entity].state == 'closed' -%} {{ button_color_1 }}
|
|
{%- endif -%}
|
|
# BRIGHTNESS Font
|
|
btn_bri_font: "{{ button_color_2 }}"
|
|
# BTN Label
|
|
btn_label: "{{ repeat.item.button_label }}"
|
|
btn_bri_txt: >-
|
|
{%- if repeat.item.entity is match "light." and states(repeat.item.entity) == '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 states(repeat.item.entity) == 'open' and state_attr(repeat.item.entity, "current_position") != None -%} {{ (state_attr(repeat.item.entity, "current_position") | int(100)) | round(0) }}%
|
|
{%- else -%} 0
|
|
{%- endif -%}
|
|
|
|
##### SET Buttons ####
|
|
#
|
|
##### Button PIC #####
|
|
- service: "{{ command_printf }}"
|
|
data:
|
|
cmd: "{{ component_to_update }}pic.pic={{ btn_pic }}"
|
|
##### TEXT 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 }}"
|
|
##### BRIGHTNESS Font Color #####
|
|
- delay:
|
|
milliseconds: "{{ delay_value }}"
|
|
- service: "{{ command_font_color }}"
|
|
data:
|
|
component: "{{ component_to_update }}bri"
|
|
message: "{{ btn_bri_font }}"
|
|
##### "TEXT" Label #####
|
|
- delay:
|
|
milliseconds: "{{ delay_value }}"
|
|
- service: "{{ command_text_printf }}"
|
|
data:
|
|
component: "{{ component_to_update }}text"
|
|
message: "{{ btn_label }}"
|
|
##### "BRIGHTNESS" Text #####
|
|
- delay:
|
|
milliseconds: "{{ delay_value }}"
|
|
- if:
|
|
- condition: template
|
|
value_template: "{{ btn_bri_txt == 0 }}"
|
|
then:
|
|
- service: "{{ command_text_printf }}"
|
|
data:
|
|
component: "{{ component_to_update }}bri"
|
|
message: " "
|
|
else:
|
|
- service: "{{ command_text_printf }}"
|
|
data:
|
|
component: "{{ component_to_update }}bri"
|
|
message: "{{ btn_bri_txt }}"
|
|
|
|
##### NSPanel boot init - Time #####
|
|
- delay:
|
|
milliseconds: "{{ delay_value }}"
|
|
- service: "{{ command_text_printf }}"
|
|
data:
|
|
component: home.a01
|
|
message: "{{ time }}"
|
|
|
|
##### NSPanel boot init - Humidity #####
|
|
- delay:
|
|
milliseconds: "{{ delay_value }}"
|
|
- service: "{{ command_text_printf }}"
|
|
data:
|
|
component: home.a04
|
|
message: "{{ states(humidity) |round(0) }}%"
|
|
|
|
##### NSPanel boot init - Hotwater #####
|
|
- if:
|
|
- condition: template
|
|
value_template: '{{ hotwatertemp is match "sensor." }}'
|
|
then:
|
|
- delay:
|
|
milliseconds: "{{ delay_value }}"
|
|
- service: "{{ command_printf }}"
|
|
data:
|
|
cmd: home.p01.pic=68
|
|
- delay:
|
|
milliseconds: "{{ delay_value }}"
|
|
- service: "{{ command_text_printf }}"
|
|
data:
|
|
component: home.a07
|
|
message: "{{ states(hotwatertemp) |round(1) }}°"
|
|
- delay:
|
|
milliseconds: "{{ delay_value }}"
|
|
- service: "{{ command_text_printf }}"
|
|
data:
|
|
component: thermostat.a08
|
|
message: "{{ states(hotwatertemp) |round(1) }}°"
|
|
|
|
##### NSPanel boot init - Outdoor Temp #####
|
|
- choose:
|
|
##### Outdoor Temp Entity #####
|
|
- conditions:
|
|
- condition: template
|
|
value_template: '{{ outdoortemp is match "sensor." }}'
|
|
sequence:
|
|
- delay:
|
|
milliseconds: "{{ delay_value }}"
|
|
- service: "{{ command_text_printf }}"
|
|
data:
|
|
component: home.a06
|
|
message: "{{ states(outdoortemp) |round(0) }}°"
|
|
- delay:
|
|
milliseconds: "{{ delay_value }}"
|
|
- service: "{{ command_text_printf }}"
|
|
data:
|
|
component: thermostat.a07
|
|
message: "{{ states(outdoortemp) |round(0) }}°"
|
|
|
|
##### Outdoor Temp Default #####
|
|
- conditions:
|
|
- condition: template
|
|
value_template: '{{ outdoortemp != "sensor." and weather == "Default" }}'
|
|
sequence:
|
|
##### Outdoor Temp Default #####
|
|
- delay:
|
|
milliseconds: "{{ delay_value }}"
|
|
- service: "{{ command_text_printf }}"
|
|
data:
|
|
component: home.a06
|
|
message: '{{state_attr(ha_weather,"temperature") | round(0)}}°'
|
|
- delay:
|
|
milliseconds: "{{ delay_value }}"
|
|
- service: "{{ command_text_printf }}"
|
|
data:
|
|
component: thermostat.a07
|
|
message: '{{state_attr(ha_weather,"temperature") | round(0)}}°'
|
|
|
|
##### Outdoor TempAccuweather #####
|
|
- conditions:
|
|
- condition: template
|
|
value_template: '{{ outdoortemp != "sensor." and weather == "AccuWeather" }}'
|
|
sequence:
|
|
### Outdoor TempAccuweather
|
|
- delay:
|
|
milliseconds: "{{ delay_value }}"
|
|
- service: "{{ command_text_printf }}"
|
|
data:
|
|
component: home.a06
|
|
message: "{{states(accuweather_realfeel_temperature_max_0d) | round(0)}}°"
|
|
- delay:
|
|
milliseconds: "{{ delay_value }}"
|
|
- service: "{{ command_text_printf }}"
|
|
data:
|
|
component: thermostat.a07
|
|
message: "{{states(accuweather_realfeel_temperature_max_0d) | round(0)}}°"
|
|
|
|
##### Weather Icon Home Page
|
|
- choose:
|
|
##### Weather PIC - DEFAULT HA #####
|
|
- conditions:
|
|
- condition: template
|
|
value_template: '{{ weather == "Default" }}'
|
|
sequence:
|
|
- variables:
|
|
# weather PIC
|
|
weather_pic: >-
|
|
{%- if states(ha_weather) == 'sunny' -%} {{ weather_sunny }}
|
|
{%- elif states(ha_weather) == 'cloudy' -%} {{ weather_cloudy }}
|
|
{%- elif states(ha_weather) == 'rainy' -%} {{ weather_rainy }}
|
|
{%- elif states(ha_weather) == 'pouring' -%} {{ weather_pouring }}
|
|
{%- elif states(ha_weather) == 'snowy' -%} {{ weather_snowy }}
|
|
{%- elif states(ha_weather) == 'hail' -%} {{ weather_hail }}
|
|
{%- elif states(ha_weather) == 'snowy-rainy' -%} {{ weather_snowy_rainy }}
|
|
{%- elif states(ha_weather) == 'fog' -%} {{ weather_fog }}
|
|
{%- elif states(ha_weather) == 'windy' -%} {{ weather_windy }}
|
|
{%- elif states(ha_weather) == 'windy-variant' -%} {{ weather_windy-variant }}
|
|
{%- elif states(ha_weather) == 'lightning' -%} {{ weather_lightning }}
|
|
{%- elif states(ha_weather) == 'partlycloudy' and states('sun.sun') == 'above_horizon' -%} {{ weather_partlycloudy_day }}
|
|
{%- elif states(ha_weather) == 'partlycloudy' and states('sun.sun') == 'below_horizon' -%} {{ weather_partlycloudy_night }}
|
|
{%- elif states(ha_weather) == 'lightning-rainy' and states('sun.sun') == 'above_horizon' -%} {{ weather_lightning_rainy_day }}
|
|
{%- elif states(ha_weather) == 'lightning-rainy' and states('sun.sun') == 'below_horizon' -%} {{ weather_lightning_rainy_night }}
|
|
{%- elif states(ha_weather) == 'execptional' and states('sun.sun') == 'above_horizon' -%} {{ weather_execptional_day }}
|
|
{%- elif states(ha_weather) == 'execptional' and states('sun.sun') == 'below_horizon' -%} {{ weather_execptional_night }}
|
|
{%- elif states(ha_weather) == 'clear-night' -%} {{ weather_clear_night }}
|
|
{%- endif -%}
|
|
|
|
##### SET weather PIC on Home Page ####
|
|
- delay:
|
|
milliseconds: "{{ delay_value }}"
|
|
- service: "{{ command_printf }}"
|
|
data:
|
|
cmd: home.a05.pic={{ weather_pic }}
|
|
|
|
##### Weather PIC - ACCUWEATHER #####
|
|
- conditions:
|
|
- condition: template
|
|
value_template: '{{ weather == "AccuWeather" }}'
|
|
sequence:
|
|
- variables:
|
|
# weather PIC
|
|
weather_pic: >-
|
|
{%- if states(accuweather_value) == 'sunny' -%} {{ weather_sunny }}
|
|
{%- elif states(accuweather_value) == 'cloudy' -%} {{ weather_cloudy }}
|
|
{%- elif states(accuweather_value) == 'rainy' -%} {{ weather_rainy }}
|
|
{%- elif states(accuweather_value) == 'pouring' -%} {{ weather_pouring }}
|
|
{%- elif states(accuweather_value) == 'snowy' -%} {{ weather_snowy }}
|
|
{%- elif states(accuweather_value) == 'hail' -%} {{ weather_hail }}
|
|
{%- elif states(accuweather_value) == 'snowy-rainy' -%} {{ weather_snowy_rainy }}
|
|
{%- elif states(accuweather_value) == 'fog' -%} {{ weather_fog }}
|
|
{%- elif states(accuweather_value) == 'windy' -%} {{ weather_windy }}
|
|
{%- elif states(accuweather_value) == 'windy-variant' -%} {{ weather_windy-variant }}
|
|
{%- elif states(accuweather_value) == 'lightning' -%} {{ weather_lightning }}
|
|
{%- elif states(accuweather_value) == 'partlycloudy' and states('sun.sun') == 'above_horizon' -%} {{ weather_partlycloudy_day }}
|
|
{%- elif states(accuweather_value) == 'partlycloudy' and states('sun.sun') == 'below_horizon' -%} {{ weather_partlycloudy_night }}
|
|
{%- elif states(accuweather_value) == 'lightning-rainy' and states('sun.sun') == 'above_horizon' -%} {{ weather_lightning_rainy_day }}
|
|
{%- elif states(accuweather_value) == 'lightning-rainy' and states('sun.sun') == 'below_horizon' -%} {{ weather_lightning_rainy_night }}
|
|
{%- elif states(accuweather_value) == 'execptional' and states('sun.sun') == 'above_horizon' -%} {{ weather_execptional_day }}
|
|
{%- elif states(accuweather_value) == 'execptional' and states('sun.sun') == 'below_horizon' -%} {{ weather_execptional_night }}
|
|
{%- elif states(accuweather_value) == 'clear-night' -%} {{ weather_clear_night }}
|
|
{%- endif -%}
|
|
|
|
##### SET weather PIC on Home Page ####
|
|
- delay:
|
|
milliseconds: "{{ delay_value }}"
|
|
- service: "{{ command_printf }}"
|
|
data:
|
|
cmd: home.a05.pic={{ weather_pic }}
|
|
|
|
##### NSPanel boot init finished #####
|
|
- delay:
|
|
milliseconds: "{{ delay_value }}"
|
|
- service: "{{ command_text_printf }}"
|
|
data:
|
|
component: home.loading
|
|
message: " "
|
|
|
|
|
|
#### TFT Upload Automation ##### DONE
|
|
- conditions:
|
|
- condition: trigger
|
|
id: tft_upload
|
|
sequence:
|
|
- delay:
|
|
seconds: 2
|
|
- service: "{{ tft_upload }}"
|
|
data: {}
|
|
|
|
|
|
|
|
##### Update Button Page and Lightsettings / Coversettings Page ##### DONE
|
|
- 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
|
|
sequence:
|
|
- alias: "Set variable(s) for entity change"
|
|
variables:
|
|
component_to_update: >-
|
|
{%- if trigger.entity_id == entity01 -%} buttonpage01.button01
|
|
{%- elif trigger.entity_id == entity02 -%} buttonpage01.button02
|
|
{%- elif trigger.entity_id == entity03 -%} buttonpage01.button03
|
|
{%- elif trigger.entity_id == entity04 -%} buttonpage01.button04
|
|
{%- elif trigger.entity_id == entity05 -%} buttonpage01.button05
|
|
{%- elif trigger.entity_id == entity06 -%} buttonpage01.button06
|
|
{%- elif trigger.entity_id == entity07 -%} buttonpage01.button07
|
|
{%- elif trigger.entity_id == entity08 -%} buttonpage01.button08
|
|
{%- elif trigger.entity_id == entity09 -%} buttonpage02.button01
|
|
{%- elif trigger.entity_id == entity10 -%} buttonpage02.button02
|
|
{%- elif trigger.entity_id == entity11 -%} buttonpage02.button03
|
|
{%- elif trigger.entity_id == entity12 -%} buttonpage02.button04
|
|
{%- elif trigger.entity_id == entity13 -%} buttonpage02.button05
|
|
{%- elif trigger.entity_id == entity14 -%} buttonpage02.button06
|
|
{%- elif trigger.entity_id == entity15 -%} buttonpage02.button07
|
|
{%- elif trigger.entity_id == entity16 -%} buttonpage02.button08
|
|
{%- elif trigger.entity_id == entity17 -%} buttonpage03.button01
|
|
{%- elif trigger.entity_id == entity18 -%} buttonpage03.button02
|
|
{%- elif trigger.entity_id == entity19 -%} buttonpage03.button03
|
|
{%- elif trigger.entity_id == entity20 -%} buttonpage03.button04
|
|
{%- elif trigger.entity_id == entity21 -%} buttonpage03.button05
|
|
{%- elif trigger.entity_id == entity22 -%} buttonpage03.button06
|
|
{%- elif trigger.entity_id == entity23 -%} buttonpage03.button07
|
|
{%- elif trigger.entity_id == entity24 -%} buttonpage03.button08
|
|
{%- elif trigger.entity_id == entity25 -%} buttonpage04.button01
|
|
{%- elif trigger.entity_id == entity26 -%} buttonpage04.button02
|
|
{%- elif trigger.entity_id == entity27 -%} buttonpage04.button03
|
|
{%- elif trigger.entity_id == entity28 -%} buttonpage04.button04
|
|
{%- elif trigger.entity_id == entity29 -%} buttonpage04.button05
|
|
{%- elif trigger.entity_id == entity30 -%} buttonpage04.button06
|
|
{%- elif trigger.entity_id == entity31 -%} buttonpage04.button07
|
|
{%- elif trigger.entity_id == entity32 -%} buttonpage04.button08
|
|
{%- endif -%}
|
|
# Button PIC
|
|
btn_pic: >-
|
|
{%- if trigger.to_state.entity_id is match "light." and trigger.to_state.state == 'on' -%} {{ button_light_on }}
|
|
{%- elif trigger.to_state.entity_id is match "light." and trigger.to_state.state == 'off' -%} {{ button_light_off }}
|
|
{%- elif trigger.to_state.entity_id is match "switch." and trigger.to_state.state == 'on' -%} {{ button_switch_on }}
|
|
{%- elif trigger.to_state.entity_id is match "switch." and trigger.to_state.state == 'off' -%} {{ button_switch_off }}
|
|
{%- elif trigger.to_state.entity_id is match "input_boolean." and trigger.to_state.state == 'on' -%} {{ button_switch_on }}
|
|
{%- elif trigger.to_state.entity_id is match "input_boolean." and trigger.to_state.state == 'off' -%} {{ button_switch_off }}
|
|
{%- elif trigger.to_state.entity_id is match "cover." and trigger.to_state.state == 'open' -%} {{ button_cover_on }}
|
|
{%- elif trigger.to_state.entity_id is match "cover." and trigger.to_state.state == 'closed' -%} {{ button_cover_off }}
|
|
{%- endif -%}
|
|
# TEXT and BRIGHTNESS Background
|
|
btn_bg: >-
|
|
{%- if trigger.to_state.state == 'on' or trigger.to_state.state == 'open' -%} {{ button_color_1 }}
|
|
{%- elif trigger.to_state.state == 'off' or trigger.to_state.state == 'closed' -%} {{ button_color_2 }}
|
|
{%- endif -%}
|
|
# TEXT Font
|
|
btn_txt_font: >-
|
|
{%- if trigger.to_state.state == 'on' or trigger.to_state.state == 'open' -%} {{ button_color_2 }}
|
|
{%- elif trigger.to_state.state == 'off' or trigger.to_state.state == 'closed' -%} {{ button_color_1 }}
|
|
{%- endif -%}
|
|
# BRIGHTNESS Font
|
|
btn_bri_font: "{{ button_color_2 }}"
|
|
# BTN Label
|
|
btn_label: >-
|
|
{%- if trigger.entity_id == entity01 -%} {{ entity01_name }}
|
|
{%- elif trigger.entity_id == entity02 -%} {{ entity02_name }}
|
|
{%- elif trigger.entity_id == entity03 -%} {{ entity03_name }}
|
|
{%- elif trigger.entity_id == entity04 -%} {{ entity04_name }}
|
|
{%- elif trigger.entity_id == entity05 -%} {{ entity05_name }}
|
|
{%- elif trigger.entity_id == entity06 -%} {{ entity06_name }}
|
|
{%- elif trigger.entity_id == entity07 -%} {{ entity07_name }}
|
|
{%- elif trigger.entity_id == entity08 -%} {{ entity08_name }}
|
|
{%- elif trigger.entity_id == entity09 -%} {{ entity09_name }}
|
|
{%- elif trigger.entity_id == entity10 -%} {{ entity10_name }}
|
|
{%- elif trigger.entity_id == entity11 -%} {{ entity11_name }}
|
|
{%- elif trigger.entity_id == entity12 -%} {{ entity12_name }}
|
|
{%- elif trigger.entity_id == entity13 -%} {{ entity13_name }}
|
|
{%- elif trigger.entity_id == entity14 -%} {{ entity14_name }}
|
|
{%- elif trigger.entity_id == entity15 -%} {{ entity15_name }}
|
|
{%- elif trigger.entity_id == entity16 -%} {{ entity16_name }}
|
|
{%- elif trigger.entity_id == entity17 -%} {{ entity17_name }}
|
|
{%- elif trigger.entity_id == entity18 -%} {{ entity18_name }}
|
|
{%- elif trigger.entity_id == entity19 -%} {{ entity19_name }}
|
|
{%- elif trigger.entity_id == entity20 -%} {{ entity20_name }}
|
|
{%- elif trigger.entity_id == entity21 -%} {{ entity21_name }}
|
|
{%- elif trigger.entity_id == entity22 -%} {{ entity22_name }}
|
|
{%- elif trigger.entity_id == entity23 -%} {{ entity23_name }}
|
|
{%- elif trigger.entity_id == entity24 -%} {{ entity24_name }}
|
|
{%- elif trigger.entity_id == entity25 -%} {{ entity25_name }}
|
|
{%- elif trigger.entity_id == entity26 -%} {{ entity26_name }}
|
|
{%- elif trigger.entity_id == entity27 -%} {{ entity27_name }}
|
|
{%- elif trigger.entity_id == entity28 -%} {{ entity28_name }}
|
|
{%- elif trigger.entity_id == entity29 -%} {{ entity29_name }}
|
|
{%- elif trigger.entity_id == entity30 -%} {{ entity30_name }}
|
|
{%- elif trigger.entity_id == entity31 -%} {{ entity31_name }}
|
|
{%- elif trigger.entity_id == entity32 -%} {{ entity32_name }}
|
|
{%- endif -%}
|
|
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) }}%
|
|
{%- else -%} 0
|
|
{%- endif -%}
|
|
|
|
##### Button PIC #####
|
|
- service: "{{ command_printf }}"
|
|
data:
|
|
cmd: "{{ component_to_update }}pic.pic={{ btn_pic }}"
|
|
|
|
##### TEXT 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 }}"
|
|
|
|
##### BRIGHTNESS Font Color #####
|
|
- delay:
|
|
milliseconds: "{{ delay_value }}"
|
|
- service: "{{ command_font_color }}"
|
|
data:
|
|
component: "{{ component_to_update }}bri"
|
|
message: "{{ btn_bri_font }}"
|
|
|
|
##### "TEXT" Label #####
|
|
- delay:
|
|
milliseconds: "{{ delay_value }}"
|
|
- service: "{{ command_text_printf }}"
|
|
data:
|
|
component: "{{ component_to_update }}text"
|
|
message: "{{ btn_label }}"
|
|
|
|
##### "BRIGHTNESS" Text #####
|
|
- 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 }}"
|
|
|
|
##### UPDATE LIGHTSETTING / COVERSETTING PAGE
|
|
- choose:
|
|
##### LIGHTSETTINGS PAGE - LIGHT Entity #####
|
|
- conditions:
|
|
- condition: template
|
|
value_template: '{{ entity_long is match "light." }}'
|
|
sequence:
|
|
- choose:
|
|
##### LIGHT ON / OFF
|
|
- conditions:
|
|
- condition: template
|
|
value_template: '{{ states(entity_long) == "on" }}'
|
|
sequence:
|
|
##### LIGHT PIC - ON #####
|
|
- delay:
|
|
milliseconds: "{{ delay_value }}"
|
|
- service: "{{ command_printf }}"
|
|
data:
|
|
cmd: lightsettings.light_status.pic={{ light_pic_on }}
|
|
|
|
##### 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 - OFF #####
|
|
- conditions:
|
|
- condition: template
|
|
value_template: '{{ states(entity_long) == "off" }}'
|
|
sequence:
|
|
##### LIGHT PIC - OFF #####
|
|
- delay:
|
|
milliseconds: "{{ delay_value }}"
|
|
- service: "{{ command_printf }}"
|
|
data:
|
|
cmd: lightsettings.light_status.pic={{ light_pic_off }}
|
|
|
|
##### 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." }}'
|
|
sequence:
|
|
##### COVER OPEN #####
|
|
- choose:
|
|
##### Cover PIC - OPEN #####
|
|
- conditions:
|
|
- condition: template
|
|
value_template: '{{ states(entity_long) == "open" }}'
|
|
sequence:
|
|
##### COVER PIC - OPEN
|
|
- delay:
|
|
milliseconds: "{{ delay_value }}"
|
|
- service: "{{ command_printf }}"
|
|
data:
|
|
cmd: coversettings.cover_status.pic={{ cover_pic_open }}
|
|
|
|
##### 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 PIC - CLOSED
|
|
- delay:
|
|
milliseconds: "{{ delay_value }}"
|
|
- service: "{{ command_printf }}"
|
|
data:
|
|
cmd: coversettings.cover_status.pic={{ cover_pic_closed }}
|
|
|
|
##### 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 %'
|
|
|
|
|
|
|
|
##### Page Button - SHORT Press - Toggle Enities ##### DONE
|
|
- conditions:
|
|
- condition: trigger
|
|
id: short_press
|
|
sequence:
|
|
- service: >-
|
|
{% if entity_short is match 'light.' %}
|
|
light.toggle
|
|
{% elif entity_short is match 'switch.' %}
|
|
switch.toggle
|
|
{% elif entity_short is match 'cover.' %}
|
|
cover.toggle
|
|
{% elif entity_short is match 'input_boolean.' %}
|
|
input_boolean.toggle
|
|
{% endif %}
|
|
data:
|
|
entity_id: "{{ entity_short }}"
|
|
|
|
|
|
|
|
##### Page Button - LONG Press - JUMP to Page Lightsettings / Coversettings ##### DONE
|
|
- conditions:
|
|
- condition: trigger
|
|
id: long_press
|
|
sequence:
|
|
- choose:
|
|
##### LONG Press - LIGHT Entity #####
|
|
- conditions:
|
|
- condition: template
|
|
value_template: '{{ entity_long is match "light." }}'
|
|
sequence:
|
|
##### LIGHT Generel Values #####
|
|
- service: "{{ command_printf }}"
|
|
data:
|
|
cmd: page lightsettings
|
|
- delay:
|
|
milliseconds: "{{ delay_value }}"
|
|
- service: "{{ command_text_printf }}"
|
|
data:
|
|
component: lightsettings.light_name
|
|
message: '{{ entity_long_name }}'
|
|
- 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 ) |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) }}'
|
|
|
|
##### LIGHT ON / OFF #####
|
|
- choose:
|
|
##### LIGHT PIC - ON #####
|
|
- conditions:
|
|
- condition: template
|
|
value_template: '{{ states(entity_long) == "on" }}'
|
|
sequence:
|
|
- delay:
|
|
milliseconds: "{{ delay_value }}"
|
|
- service: "{{ command_printf }}"
|
|
data:
|
|
cmd: lightsettings.light_status.pic={{ light_pic_on }}
|
|
|
|
##### LIGHT PIC - OFF #####
|
|
- conditions:
|
|
- condition: template
|
|
value_template: '{{ states(entity_long) == "off" }}'
|
|
sequence:
|
|
- delay:
|
|
milliseconds: "{{ delay_value }}"
|
|
- service: "{{ command_printf }}"
|
|
data:
|
|
cmd: lightsettings.light_status.pic={{ light_pic_off }}
|
|
|
|
##### LONG Press - COVER Entity #####
|
|
- conditions:
|
|
- condition: template
|
|
value_template: '{{ entity_long is match "cover." }}'
|
|
sequence:
|
|
##### COVER Generel Values #####
|
|
- service: "{{ command_printf }}"
|
|
data:
|
|
cmd: page coversettings
|
|
- delay:
|
|
milliseconds: "{{ delay_value }}"
|
|
- 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) }} %'
|
|
- delay:
|
|
milliseconds: "{{ delay_value }}"
|
|
- service: "{{ command_text_printf }}"
|
|
data:
|
|
component: coversettings.cover_name
|
|
message: '{{ entity_long_name }}'
|
|
|
|
##### 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) }} %'
|
|
- delay:
|
|
milliseconds: "{{ delay_value }}"
|
|
- service: "{{ command_printf }}"
|
|
data:
|
|
cmd: coversettings.battery_icon.pic={{ battery_icon }}
|
|
|
|
##### COVER OPEN / CLOSE
|
|
- choose:
|
|
##### COVER PIC - open #####
|
|
- conditions:
|
|
- condition: template
|
|
value_template: '{{ states(entity_long) == "open" }}'
|
|
sequence:
|
|
- delay:
|
|
milliseconds: "{{ delay_value }}"
|
|
- service: "{{ command_printf }}"
|
|
data:
|
|
cmd: coversettings.cover_status.pic={{ cover_pic_open }}
|
|
|
|
##### COVER PIC - Closed
|
|
- conditions:
|
|
- condition: template
|
|
value_template: '{{ states(entity_long) == "closed" }}'
|
|
sequence:
|
|
- delay:
|
|
milliseconds: "{{ delay_value }}"
|
|
- service: "{{ command_printf }}"
|
|
data:
|
|
cmd: coversettings.cover_status.pic={{ cover_pic_closed }}
|
|
|
|
|
|
|
|
##### LAST_CLICK_LIGHTSETTINGS - Changes on page Light-Settings ##### DONE
|
|
- conditions:
|
|
- condition: trigger
|
|
id: light_settings
|
|
sequence:
|
|
- choose:
|
|
##### Page Lightsettings - Brightness Slider MOVE #####
|
|
- conditions:
|
|
- condition: template
|
|
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 }}'
|
|
- delay:
|
|
milliseconds: "{{ delay_value }}"
|
|
- service: "{{ command_text_printf }}"
|
|
data:
|
|
component: lightsettings.light_value
|
|
message: '{{ (states(last_click_lightsettings) |replace("brightness","") | int * 100 /255) |round(0) }}%'
|
|
- delay:
|
|
milliseconds: "{{ delay_value }}"
|
|
- service: "{{ command_text_printf }}"
|
|
data:
|
|
component: lightsettings.light_value_2
|
|
message: '{{ (states(last_click_lightsettings) |replace("brightness","") | int * 100 /255) |round(0) }}%'
|
|
|
|
##### Page Lightsettings - color_Temp Slider MOVE #####
|
|
- conditions:
|
|
- condition: template
|
|
value_template: '{{ states(last_click_lightsettings) is match "colortemp\d+" }}'
|
|
sequence:
|
|
- service: light.turn_on
|
|
data:
|
|
entity_id: "{{ entity_long }}"
|
|
color_temp: '{{ states(last_click_lightsettings) |replace("colortemp","") | int }}'
|
|
- delay:
|
|
milliseconds: "{{ delay_value }}"
|
|
- service: "{{ command_text_printf }}"
|
|
data:
|
|
component: lightsettings.temp_value
|
|
message: '{{ states(last_click_lightsettings) |replace("colortemp","") | int }}'
|
|
- delay:
|
|
milliseconds: "{{ delay_value }}"
|
|
- service: "{{ command_text_printf }}"
|
|
data:
|
|
component: lightsettings.temp_value_2
|
|
message: '{{ states(last_click_lightsettings) |replace("colortemp","") | int }}'
|
|
|
|
##### Page Lightsettings - Color RGB Slider MOVE #####
|
|
- conditions:
|
|
- condition: template
|
|
value_template: '{{ states(last_click_lightsettings) is match "\d+,\d+,\d+" }}'
|
|
sequence:
|
|
- service: light.turn_on
|
|
data:
|
|
entity_id: "{{ entity_long }}"
|
|
rgb_color: '{{ states(last_click_lightsettings).split(",") }}'
|
|
|
|
##### Page Lightsettings - Close Lightsetting Page #####
|
|
- conditions:
|
|
- condition: template
|
|
value_template: '{{ states(last_click_lightsettings) == "releaselightsettingsclose" }}'
|
|
sequence:
|
|
- service: "{{ command_printf }}"
|
|
data:
|
|
cmd: "{{ entity_back }}"
|
|
|
|
|
|
|
|
##### LAST_CLICK_COVERSETTINGS - Changes on page Cover-Settings ##### DONE
|
|
- conditions:
|
|
- condition: trigger
|
|
id: cover_settings
|
|
sequence:
|
|
- choose:
|
|
##### Page Coversettings - Cover Slider MOVE #####
|
|
- conditions:
|
|
- condition: template
|
|
value_template: '{{ states(last_click_coversettings) is match "coverposition\d+" }}'
|
|
sequence:
|
|
- service: cover.set_cover_position
|
|
data:
|
|
entity_id: "{{ entity_long }}"
|
|
position: '{{ states(last_click_coversettings) |replace("coverposition","") | int }}'
|
|
- delay:
|
|
milliseconds: "{{ delay_value }}"
|
|
- service: "{{ command_text_printf }}"
|
|
data:
|
|
component: coversettings.cover_value
|
|
message: '{{ states(last_click_coversettings) |replace("coverposition","") | int }} %'
|
|
- delay:
|
|
milliseconds: "{{ delay_value }}"
|
|
- service: "{{ command_text_printf }}"
|
|
data:
|
|
component: coversettings.cover_value_2
|
|
message: '{{ states(last_click_coversettings) |replace("coverposition","") | int }} %'
|
|
|
|
##### Page Coversettings - Cover CLOSE Button #####
|
|
- conditions:
|
|
- condition: template
|
|
value_template: '{{ states(last_click_coversettings) == "cover_close_press" }}'
|
|
sequence:
|
|
- service: cover.close_cover
|
|
data:
|
|
entity_id: "{{ entity_long }}"
|
|
|
|
##### Page Coversettings - Cover OPEN Button #####
|
|
- conditions:
|
|
- condition: template
|
|
value_template: '{{ states(last_click_coversettings) == "cover_open_press" }}'
|
|
sequence:
|
|
- service: cover.open_cover
|
|
data:
|
|
entity_id: "{{ entity_long }}"
|
|
|
|
##### Page Coversettings - Cover STOP Button #####
|
|
- conditions:
|
|
- condition: template
|
|
value_template: '{{ states(last_click_coversettings) == "cover_stop_press" }}'
|
|
sequence:
|
|
- service: cover.stop_cover
|
|
data:
|
|
entity_id: "{{ entity_long }}"
|
|
|
|
##### Page Coversettings - Close Coversettings Page #####
|
|
- conditions:
|
|
- condition: template
|
|
value_template: '{{ states(last_click_coversettings) == "releasecoversettingsclose" }}'
|
|
sequence:
|
|
- service: "{{ command_printf }}"
|
|
data:
|
|
cmd: "{{ entity_back }}"
|
|
|
|
|
|
##### Left button press ##### DONE
|
|
- conditions:
|
|
- condition: trigger
|
|
id: left_button_press
|
|
sequence:
|
|
- 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
|
|
{% endif %}
|
|
data:
|
|
entity_id: "{{ left_button_entity }}"
|
|
|
|
|
|
|
|
##### Right button press ##### DONE
|
|
- conditions:
|
|
- condition: trigger
|
|
id: right_button_press
|
|
sequence:
|
|
- 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
|
|
{% endif %}
|
|
data:
|
|
entity_id: "{{ right_button_entity }}"
|
|
|
|
|
|
|
|
##### Date and Time Home Page ##### DONE
|
|
- conditions:
|
|
- condition: trigger
|
|
id: time_state
|
|
sequence:
|
|
##### Time Home Page #####
|
|
- service: "{{ command_text_printf }}"
|
|
data:
|
|
component: home.a01
|
|
message: "{{ time }}"
|
|
|
|
- choose:
|
|
##### Date Home Page + Forcast DE #####
|
|
- conditions:
|
|
- condition: template
|
|
value_template: '{{ language == "DE" }}'
|
|
sequence:
|
|
- delay:
|
|
milliseconds: "{{ delay_value }}"
|
|
- service: "{{ command_text_printf }}"
|
|
data:
|
|
component: home.a02
|
|
message: "{{ date01_de }}"
|
|
|
|
##### Date Home Page + Forcast EN #####
|
|
- conditions:
|
|
- condition: template
|
|
value_template: '{{ language == "EN" }}'
|
|
sequence:
|
|
- delay:
|
|
milliseconds: "{{ delay_value }}"
|
|
- service: "{{ command_text_printf }}"
|
|
data:
|
|
component: home.a02
|
|
message: "{{ date0_en }}"
|
|
|
|
|
|
|
|
##### Humidity ##### DONE
|
|
- conditions:
|
|
- condition: trigger
|
|
id: humidity_state
|
|
sequence:
|
|
- service: "{{ command_text_printf }}"
|
|
data:
|
|
component: home.a04
|
|
message: "{{ states(humidity) |round(0) }}%"
|
|
|
|
|
|
|
|
##### Hotwater Temp ##### DONE
|
|
- conditions:
|
|
- condition: trigger
|
|
id: hotwatertemp_state
|
|
sequence:
|
|
- service: "{{ command_text_printf }}"
|
|
data:
|
|
component: home.a07
|
|
message: "{{ states(hotwatertemp) |round(1) }}°"
|
|
- delay:
|
|
milliseconds: "{{ delay_value }}"
|
|
- service: "{{ command_text_printf }}"
|
|
data:
|
|
component: thermostat.a08
|
|
message: "{{ states(hotwatertemp) |round(1) }}°"
|
|
- delay:
|
|
milliseconds: "{{ delay_value }}"
|
|
- service: "{{ command_printf }}"
|
|
data:
|
|
cmd: home.p01.pic=68
|
|
|
|
|
|
|
|
##### Outdoor Temp Entity ##### DONE
|
|
- conditions:
|
|
- condition: trigger
|
|
id: outdoortemp_state
|
|
sequence:
|
|
- service: "{{ command_text_printf }}"
|
|
data:
|
|
component: home.a06
|
|
message: "{{ states(outdoortemp) |round(0) }}°"
|
|
- delay:
|
|
milliseconds: "{{ delay_value }}"
|
|
- service: "{{ command_text_printf }}"
|
|
data:
|
|
component: thermostat.a07
|
|
message: "{{ states(outdoortemp) |round(0) }}°"
|
|
|
|
|
|
##### Outdoor Temp Weather Integration ##### DONE
|
|
- conditions:
|
|
- condition: trigger
|
|
id: weather_temp_time
|
|
sequence:
|
|
- choose:
|
|
- conditions:
|
|
##### Outdoor Temp Default #####
|
|
- condition: template
|
|
value_template: '{{ outdoortemp != "sensor." and weather == "Default" }}'
|
|
sequence:
|
|
- service: "{{ command_text_printf }}"
|
|
data:
|
|
component: home.a06
|
|
message: '{{state_attr(ha_weather,"temperature") | round(0)}}°'
|
|
- delay:
|
|
milliseconds: "{{ delay_value }}"
|
|
- service: "{{ command_text_printf }}"
|
|
data:
|
|
component: thermostat.a07
|
|
message: '{{state_attr(ha_weather,"temperature") | round(0)}}°'
|
|
|
|
##### Outdoor Temp Accuweather #####
|
|
- conditions:
|
|
- condition: template
|
|
value_template: '{{ outdoortemp != "sensor." and weather == "AccuWeather" }}'
|
|
sequence:
|
|
- service: "{{ command_text_printf }}"
|
|
data:
|
|
component: home.a06
|
|
message: "{{states(accuweather_realfeel_temperature_max_0d) | round(0)}}°"
|
|
- delay:
|
|
milliseconds: "{{ delay_value }}"
|
|
- service: "{{ command_text_printf }}"
|
|
data:
|
|
component: thermostat.a07
|
|
message: "{{states(accuweather_realfeel_temperature_max_0d) | round(0)}}°"
|
|
|
|
|
|
|
|
##### Weather Forcast #####
|
|
- conditions:
|
|
- condition: trigger
|
|
id: weather_settings
|
|
sequence:
|
|
- choose:
|
|
##### Weather - DEFAULT HA #####
|
|
- conditions:
|
|
- condition: template
|
|
value_template: '{{ weather == "Default" }}'
|
|
sequence:
|
|
- choose:
|
|
##### Weather Page - 01 - HA DEFAULT #####
|
|
- conditions:
|
|
- condition: template
|
|
value_template: '{{ states(last_click_weathersettings) == "weather01" }}'
|
|
sequence:
|
|
- variables:
|
|
# weather PIC
|
|
weather_icon: >-
|
|
{%- if states(ha_weather) == 'sunny' -%} {{ weather_sunny }}
|
|
{%- elif states(ha_weather) == 'cloudy' -%} {{ weather_cloudy }}
|
|
{%- elif states(ha_weather) == 'rainy' -%} {{ weather_rainy }}
|
|
{%- elif states(ha_weather) == 'pouring' -%} {{ weather_pouring }}
|
|
{%- elif states(ha_weather) == 'snowy' -%} {{ weather_snowy }}
|
|
{%- elif states(ha_weather) == 'hail' -%} {{ weather_hail }}
|
|
{%- elif states(ha_weather) == 'snowy-rainy' -%} {{ weather_snowy_rainy }}
|
|
{%- elif states(ha_weather) == 'fog' -%} {{ weather_fog }}
|
|
{%- elif states(ha_weather) == 'windy' -%} {{ weather_windy }}
|
|
{%- elif states(ha_weather) == 'windy-variant' -%} {{ weather_windy-variant }}
|
|
{%- elif states(ha_weather) == 'lightning' -%} {{ weather_lightning }}
|
|
{%- elif states(ha_weather) == 'partlycloudy' and states('sun.sun') == 'above_horizon' -%} {{ weather_partlycloudy_day }}
|
|
{%- elif states(ha_weather) == 'partlycloudy' and states('sun.sun') == 'below_horizon' -%} {{ weather_partlycloudy_night }}
|
|
{%- elif states(ha_weather) == 'lightning-rainy' and states('sun.sun') == 'above_horizon' -%} {{ weather_lightning_rainy_day }}
|
|
{%- elif states(ha_weather) == 'lightning-rainy' and states('sun.sun') == 'below_horizon' -%} {{ weather_lightning_rainy_night }}
|
|
{%- elif states(ha_weather) == 'execptional' and states('sun.sun') == 'above_horizon' -%} {{ weather_execptional_day }}
|
|
{%- elif states(ha_weather) == 'execptional' and states('sun.sun') == 'below_horizon' -%} {{ weather_execptional_night }}
|
|
{%- elif states(ha_weather) == '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(ha_weather,"temperature") | round(0)}}°'
|
|
- delay:
|
|
milliseconds: "{{ delay_value }}"
|
|
|
|
##### SET Language DE / EN #####
|
|
- choose:
|
|
##### Language DE for Day Name and Date #####
|
|
- conditions:
|
|
- condition: template
|
|
value_template: '{{ language == "DE" }}'
|
|
sequence:
|
|
##### Day Name #####
|
|
- service: "{{ command_text_printf }}"
|
|
data:
|
|
component: weather01.day
|
|
message: "{{ day01_de }}"
|
|
- delay:
|
|
milliseconds: "{{ delay_value }}"
|
|
|
|
##### Day Date #####
|
|
- service: "{{ command_text_printf }}"
|
|
data:
|
|
component: weather01.date
|
|
message: "{{ date01_de }}"
|
|
- delay:
|
|
milliseconds: "{{ delay_value }}"
|
|
|
|
##### Language EN for Day Name and Date #####
|
|
- conditions:
|
|
- condition: template
|
|
value_template: '{{ language == "EN" }}'
|
|
sequence:
|
|
##### Day Name #####
|
|
- service: "{{ command_text_printf }}"
|
|
data:
|
|
component: weather01.day
|
|
message: "{{ day01_de }}"
|
|
- delay:
|
|
milliseconds: "{{ delay_value }}"
|
|
|
|
##### Day Date #####
|
|
- service: "{{ command_text_printf }}"
|
|
data:
|
|
component: weather01.date
|
|
message: "{{ date01_en }}"
|
|
- delay:
|
|
milliseconds: "{{ delay_value }}"
|
|
|
|
##### field 1 #####
|
|
|
|
##### field 2 #####
|
|
|
|
##### field 3 #####
|
|
- service: "{{ command_text_printf }}"
|
|
data:
|
|
component: weather01.value03
|
|
message: '{{state_attr(ha_weather,"wind_speed") | round(0)}} km/h'
|
|
- delay:
|
|
milliseconds: "{{ delay_value }}"
|
|
- service: "{{ command_printf }}"
|
|
data:
|
|
cmd: weather01.value03_pic.pic={{ weather_icon_wind }}
|
|
- delay:
|
|
milliseconds: "{{ delay_value }}"
|
|
|
|
##### field 4 #####
|
|
|
|
##### field 5 #####
|
|
|
|
##### Weather Page - 02 - HA DEFAULT #####
|
|
- conditions:
|
|
- condition: template
|
|
value_template: '{{ states(last_click_weathersettings) == "weather02" }}'
|
|
sequence:
|
|
- variables:
|
|
# weather PIC
|
|
weather_icon: >-
|
|
{%- if state_attr(ha_weather,"forecast")[0].condition == 'sunny' -%} {{ weather_sunny }}
|
|
{%- elif state_attr(ha_weather,"forecast")[0].condition == 'cloudy' -%} {{ weather_cloudy }}
|
|
{%- elif state_attr(ha_weather,"forecast")[0].condition == 'rainy' -%} {{ weather_rainy }}
|
|
{%- elif state_attr(ha_weather,"forecast")[0].condition == 'pouring' -%} {{ weather_pouring }}
|
|
{%- elif state_attr(ha_weather,"forecast")[0].condition == 'snowy' -%} {{ weather_snowy }}
|
|
{%- elif state_attr(ha_weather,"forecast")[0].condition == 'hail' -%} {{ weather_hail }}
|
|
{%- elif state_attr(ha_weather,"forecast")[0].condition == 'snowy-rainy' -%} {{ weather_snowy_rainy }}
|
|
{%- elif state_attr(ha_weather,"forecast")[0].condition == 'fog' -%} {{ weather_fog }}
|
|
{%- elif state_attr(ha_weather,"forecast")[0].condition == 'windy' -%} {{ weather_windy }}
|
|
{%- elif state_attr(ha_weather,"forecast")[0].condition == 'windy-variant' -%} {{ weather_windy-variant }}
|
|
{%- elif state_attr(ha_weather,"forecast")[0].condition == 'lightning' -%} {{ weather_lightning }}
|
|
{%- elif state_attr(ha_weather,"forecast")[0].condition == 'partlycloudy' -%} {{ weather_partlycloudy_day }}
|
|
{%- elif state_attr(ha_weather,"forecast")[0].condition == 'lightning-rainy' -%} {{ weather_lightning_rainy_day }}
|
|
{%- elif state_attr(ha_weather,"forecast")[0].condition == 'execptional' -%} {{ weather_execptional_day }}
|
|
{%- elif state_attr(ha_weather,"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(ha_weather,"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(ha_weather,"forecast")[0].temperature | round(0)}}°'
|
|
- delay:
|
|
milliseconds: "{{ delay_value }}"
|
|
|
|
##### SET Language DE / EN #####
|
|
- choose:
|
|
##### Language DE for Day Name and Date #####
|
|
- conditions:
|
|
- condition: template
|
|
value_template: '{{ language == "DE" }}'
|
|
sequence:
|
|
##### Day Name #####
|
|
- service: "{{ command_text_printf }}"
|
|
data:
|
|
component: weather02.day
|
|
message: "{{ day02_de }}"
|
|
- delay:
|
|
milliseconds: "{{ delay_value }}"
|
|
|
|
##### Day Date #####
|
|
- service: "{{ command_text_printf }}"
|
|
data:
|
|
component: weather02.date
|
|
message: "{{ date02_de }}"
|
|
- delay:
|
|
milliseconds: "{{ delay_value }}"
|
|
|
|
##### Language EN for Day Name and Date #####
|
|
- conditions:
|
|
- condition: template
|
|
value_template: '{{ language == "EN" }}'
|
|
sequence:
|
|
##### Day Name #####
|
|
- service: "{{ command_text_printf }}"
|
|
data:
|
|
component: weather02.day
|
|
message: "{{ day02_de }}"
|
|
- delay:
|
|
milliseconds: "{{ delay_value }}"
|
|
|
|
##### Day Date #####
|
|
- service: "{{ command_text_printf }}"
|
|
data:
|
|
component: weather02.date
|
|
message: "{{ date02_en }}"
|
|
- delay:
|
|
milliseconds: "{{ delay_value }}"
|
|
|
|
##### field 1 #####
|
|
|
|
##### field 2 #####
|
|
- service: "{{ command_text_printf }}"
|
|
data:
|
|
component: weather02.value02
|
|
message: '{{state_attr(ha_weather,"forecast")[0].precipitation| round(1)}} mm'
|
|
- delay:
|
|
milliseconds: "{{ delay_value }}"
|
|
- service: "{{ command_printf }}"
|
|
data:
|
|
cmd: weather02.value02_pic.pic={{ weather_icon_rain }}
|
|
- delay:
|
|
milliseconds: "{{ delay_value }}"
|
|
|
|
##### field 3 #####
|
|
- service: "{{ command_text_printf }}"
|
|
data:
|
|
component: weather02.value03
|
|
message: '{{state_attr(ha_weather,"forecast")[0].wind_speed | round(1)}} km/h'
|
|
- delay:
|
|
milliseconds: "{{ delay_value }}"
|
|
- service: "{{ command_printf }}"
|
|
data:
|
|
cmd: weather02.value03_pic.pic={{ weather_icon_wind }}
|
|
- delay:
|
|
milliseconds: "{{ delay_value }}"
|
|
|
|
##### field 4 #####
|
|
|
|
##### field 5 #####
|
|
|
|
##### Weather Page - 03 - HA DEFAULT #####
|
|
- conditions:
|
|
- condition: template
|
|
value_template: '{{ states(last_click_weathersettings) == "weather03" }}'
|
|
sequence:
|
|
- variables:
|
|
# weather PIC
|
|
weather_icon: >-
|
|
{%- if state_attr(ha_weather,"forecast")[1].condition == 'sunny' -%} {{ weather_sunny }}
|
|
{%- elif state_attr(ha_weather,"forecast")[1].condition == 'cloudy' -%} {{ weather_cloudy }}
|
|
{%- elif state_attr(ha_weather,"forecast")[1].condition == 'rainy' -%} {{ weather_rainy }}
|
|
{%- elif state_attr(ha_weather,"forecast")[1].condition == 'pouring' -%} {{ weather_pouring }}
|
|
{%- elif state_attr(ha_weather,"forecast")[1].condition == 'snowy' -%} {{ weather_snowy }}
|
|
{%- elif state_attr(ha_weather,"forecast")[1].condition == 'hail' -%} {{ weather_hail }}
|
|
{%- elif state_attr(ha_weather,"forecast")[1].condition == 'snowy-rainy' -%} {{ weather_snowy_rainy }}
|
|
{%- elif state_attr(ha_weather,"forecast")[1].condition == 'fog' -%} {{ weather_fog }}
|
|
{%- elif state_attr(ha_weather,"forecast")[1].condition == 'windy' -%} {{ weather_windy }}
|
|
{%- elif state_attr(ha_weather,"forecast")[1].condition == 'windy-variant' -%} {{ weather_windy-variant }}
|
|
{%- elif state_attr(ha_weather,"forecast")[1].condition == 'lightning' -%} {{ weather_lightning }}
|
|
{%- elif state_attr(ha_weather,"forecast")[1].condition == 'partlycloudy' -%} {{ weather_partlycloudy_day }}
|
|
{%- elif state_attr(ha_weather,"forecast")[1].condition == 'lightning-rainy' -%} {{ weather_lightning_rainy_day }}
|
|
{%- elif state_attr(ha_weather,"forecast")[1].condition == 'execptional' -%} {{ weather_execptional_day }}
|
|
{%- elif state_attr(ha_weather,"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(ha_weather,"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(ha_weather,"forecast")[1].temperature | round(0)}}°'
|
|
- delay:
|
|
milliseconds: "{{ delay_value }}"
|
|
|
|
##### SET Language DE / EN #####
|
|
- choose:
|
|
##### Language DE for Day Name and Date #####
|
|
- conditions:
|
|
- condition: template
|
|
value_template: '{{ language == "DE" }}'
|
|
sequence:
|
|
##### Day Name #####
|
|
- service: "{{ command_text_printf }}"
|
|
data:
|
|
component: weather03.day
|
|
message: "{{ day03_de }}"
|
|
- delay:
|
|
milliseconds: "{{ delay_value }}"
|
|
|
|
##### Day Date #####
|
|
- service: "{{ command_text_printf }}"
|
|
data:
|
|
component: weather03.date
|
|
message: "{{ date03_de }}"
|
|
- delay:
|
|
milliseconds: "{{ delay_value }}"
|
|
|
|
##### Language EN for Day Name and Date #####
|
|
- conditions:
|
|
- condition: template
|
|
value_template: '{{ language == "EN" }}'
|
|
sequence:
|
|
##### Day Name #####
|
|
- service: "{{ command_text_printf }}"
|
|
data:
|
|
component: weather03.day
|
|
message: "{{ day03_de }}"
|
|
- delay:
|
|
milliseconds: "{{ delay_value }}"
|
|
|
|
##### Day Date #####
|
|
- service: "{{ command_text_printf }}"
|
|
data:
|
|
component: weather03.date
|
|
message: "{{ date03_en }}"
|
|
- delay:
|
|
milliseconds: "{{ delay_value }}"
|
|
|
|
##### field 1 #####
|
|
|
|
##### field 2 #####
|
|
- service: "{{ command_text_printf }}"
|
|
data:
|
|
component: weather03.value02
|
|
message: '{{state_attr(ha_weather,"forecast")[1].precipitation| round(1)}} mm'
|
|
- delay:
|
|
milliseconds: "{{ delay_value }}"
|
|
- service: "{{ command_printf }}"
|
|
data:
|
|
cmd: weather03.value02_pic.pic={{ weather_icon_rain }}
|
|
- delay:
|
|
milliseconds: "{{ delay_value }}"
|
|
|
|
##### field 3 #####
|
|
- service: "{{ command_text_printf }}"
|
|
data:
|
|
component: weather03.value03
|
|
message: '{{state_attr(ha_weather,"forecast")[1].wind_speed | round(1)}} km/h'
|
|
- delay:
|
|
milliseconds: "{{ delay_value }}"
|
|
- service: "{{ command_printf }}"
|
|
data:
|
|
cmd: weather03.value03_pic.pic={{ weather_icon_wind }}
|
|
- delay:
|
|
milliseconds: "{{ delay_value }}"
|
|
|
|
##### field 4 #####
|
|
|
|
##### field 5 #####
|
|
|
|
##### Weather Page - 04 - HA DEFAULT #####
|
|
- conditions:
|
|
- condition: template
|
|
value_template: '{{ states(last_click_weathersettings) == "weather04" }}'
|
|
sequence:
|
|
- variables:
|
|
# weather PIC
|
|
weather_icon: >-
|
|
{%- if state_attr(ha_weather,"forecast")[2].condition == 'sunny' -%} {{ weather_sunny }}
|
|
{%- elif state_attr(ha_weather,"forecast")[2].condition == 'cloudy' -%} {{ weather_cloudy }}
|
|
{%- elif state_attr(ha_weather,"forecast")[2].condition == 'rainy' -%} {{ weather_rainy }}
|
|
{%- elif state_attr(ha_weather,"forecast")[2].condition == 'pouring' -%} {{ weather_pouring }}
|
|
{%- elif state_attr(ha_weather,"forecast")[2].condition == 'snowy' -%} {{ weather_snowy }}
|
|
{%- elif state_attr(ha_weather,"forecast")[2].condition == 'hail' -%} {{ weather_hail }}
|
|
{%- elif state_attr(ha_weather,"forecast")[2].condition == 'snowy-rainy' -%} {{ weather_snowy_rainy }}
|
|
{%- elif state_attr(ha_weather,"forecast")[2].condition == 'fog' -%} {{ weather_fog }}
|
|
{%- elif state_attr(ha_weather,"forecast")[2].condition == 'windy' -%} {{ weather_windy }}
|
|
{%- elif state_attr(ha_weather,"forecast")[2].condition == 'windy-variant' -%} {{ weather_windy-variant }}
|
|
{%- elif state_attr(ha_weather,"forecast")[2].condition == 'lightning' -%} {{ weather_lightning }}
|
|
{%- elif state_attr(ha_weather,"forecast")[2].condition == 'partlycloudy' -%} {{ weather_partlycloudy_day }}
|
|
{%- elif state_attr(ha_weather,"forecast")[2].condition == 'lightning-rainy' -%} {{ weather_lightning_rainy_day }}
|
|
{%- elif state_attr(ha_weather,"forecast")[2].condition == 'execptional' -%} {{ weather_execptional_day }}
|
|
{%- elif state_attr(ha_weather,"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(ha_weather,"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(ha_weather,"forecast")[2].temperature | round(0)}}°'
|
|
- delay:
|
|
milliseconds: "{{ delay_value }}"
|
|
|
|
##### SET Language DE / EN #####
|
|
- choose:
|
|
##### Language DE for Day Name and Date #####
|
|
- conditions:
|
|
- condition: template
|
|
value_template: '{{ language == "DE" }}'
|
|
sequence:
|
|
##### Day Name #####
|
|
- service: "{{ command_text_printf }}"
|
|
data:
|
|
component: weather04.day
|
|
message: "{{ day04_de }}"
|
|
- delay:
|
|
milliseconds: "{{ delay_value }}"
|
|
|
|
##### Day Date #####
|
|
- service: "{{ command_text_printf }}"
|
|
data:
|
|
component: weather04.date
|
|
message: "{{ date04_de }}"
|
|
- delay:
|
|
milliseconds: "{{ delay_value }}"
|
|
|
|
##### Language EN for Day Name and Date #####
|
|
- conditions:
|
|
- condition: template
|
|
value_template: '{{ language == "EN" }}'
|
|
sequence:
|
|
##### Day Name #####
|
|
- service: "{{ command_text_printf }}"
|
|
data:
|
|
component: weather04.day
|
|
message: "{{ day04_de }}"
|
|
- delay:
|
|
milliseconds: "{{ delay_value }}"
|
|
|
|
##### Day Date #####
|
|
- service: "{{ command_text_printf }}"
|
|
data:
|
|
component: weather04.date
|
|
message: "{{ date04_en }}"
|
|
- delay:
|
|
milliseconds: "{{ delay_value }}"
|
|
|
|
##### field 1 #####
|
|
|
|
##### field 2 #####
|
|
- service: "{{ command_text_printf }}"
|
|
data:
|
|
component: weather04.value02
|
|
message: '{{state_attr(ha_weather,"forecast")[2].precipitation| round(1)}} mm'
|
|
- delay:
|
|
milliseconds: "{{ delay_value }}"
|
|
- service: "{{ command_printf }}"
|
|
data:
|
|
cmd: weather04.value02_pic.pic={{ weather_icon_rain }}
|
|
- delay:
|
|
milliseconds: "{{ delay_value }}"
|
|
|
|
##### field 3 #####
|
|
- service: "{{ command_text_printf }}"
|
|
data:
|
|
component: weather04.value03
|
|
message: '{{state_attr(ha_weather,"forecast")[2].wind_speed | round(1)}} km/h'
|
|
- delay:
|
|
milliseconds: "{{ delay_value }}"
|
|
- service: "{{ command_printf }}"
|
|
data:
|
|
cmd: weather04.value03_pic.pic={{ weather_icon_wind }}
|
|
- delay:
|
|
milliseconds: "{{ delay_value }}"
|
|
|
|
##### field 4 #####
|
|
|
|
##### field 5 #####
|
|
|
|
##### Weather Page - 05 - HA DEFAULT #####
|
|
- conditions:
|
|
- condition: template
|
|
value_template: '{{ states(last_click_weathersettings) == "weather05" }}'
|
|
sequence:
|
|
- variables:
|
|
# weather PIC
|
|
weather_icon: >-
|
|
{%- if state_attr(ha_weather,"forecast")[3].condition == 'sunny' -%} {{ weather_sunny }}
|
|
{%- elif state_attr(ha_weather,"forecast")[3].condition == 'cloudy' -%} {{ weather_cloudy }}
|
|
{%- elif state_attr(ha_weather,"forecast")[3].condition == 'rainy' -%} {{ weather_rainy }}
|
|
{%- elif state_attr(ha_weather,"forecast")[3].condition == 'pouring' -%} {{ weather_pouring }}
|
|
{%- elif state_attr(ha_weather,"forecast")[3].condition == 'snowy' -%} {{ weather_snowy }}
|
|
{%- elif state_attr(ha_weather,"forecast")[3].condition == 'hail' -%} {{ weather_hail }}
|
|
{%- elif state_attr(ha_weather,"forecast")[3].condition == 'snowy-rainy' -%} {{ weather_snowy_rainy }}
|
|
{%- elif state_attr(ha_weather,"forecast")[3].condition == 'fog' -%} {{ weather_fog }}
|
|
{%- elif state_attr(ha_weather,"forecast")[3].condition == 'windy' -%} {{ weather_windy }}
|
|
{%- elif state_attr(ha_weather,"forecast")[3].condition == 'windy-variant' -%} {{ weather_windy-variant }}
|
|
{%- elif state_attr(ha_weather,"forecast")[3].condition == 'lightning' -%} {{ weather_lightning }}
|
|
{%- elif state_attr(ha_weather,"forecast")[3].condition == 'partlycloudy' -%} {{ weather_partlycloudy_day }}
|
|
{%- elif state_attr(ha_weather,"forecast")[3].condition == 'lightning-rainy' -%} {{ weather_lightning_rainy_day }}
|
|
{%- elif state_attr(ha_weather,"forecast")[3].condition == 'execptional' -%} {{ weather_execptional_day }}
|
|
{%- elif state_attr(ha_weather,"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(ha_weather,"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(ha_weather,"forecast")[3].temperature | round(0)}}°'
|
|
- delay:
|
|
milliseconds: "{{ delay_value }}"
|
|
|
|
##### SET Language DE / EN #####
|
|
- choose:
|
|
##### Language DE for Day Name and Date #####
|
|
- conditions:
|
|
- condition: template
|
|
value_template: '{{ language == "DE" }}'
|
|
sequence:
|
|
##### Day Name #####
|
|
- service: "{{ command_text_printf }}"
|
|
data:
|
|
component: weather05.day
|
|
message: "{{ day05_de }}"
|
|
- delay:
|
|
milliseconds: "{{ delay_value }}"
|
|
|
|
##### Day Date #####
|
|
- service: "{{ command_text_printf }}"
|
|
data:
|
|
component: weather05.date
|
|
message: "{{ date05_de }}"
|
|
- delay:
|
|
milliseconds: "{{ delay_value }}"
|
|
|
|
##### Language EN for Day Name and Date #####
|
|
- conditions:
|
|
- condition: template
|
|
value_template: '{{ language == "EN" }}'
|
|
sequence:
|
|
##### Day Name #####
|
|
- service: "{{ command_text_printf }}"
|
|
data:
|
|
component: weather05.day
|
|
message: "{{ day05_de }}"
|
|
- delay:
|
|
milliseconds: "{{ delay_value }}"
|
|
|
|
##### Day Date #####
|
|
- service: "{{ command_text_printf }}"
|
|
data:
|
|
component: weather05.date
|
|
message: "{{ date05_en }}"
|
|
- delay:
|
|
milliseconds: "{{ delay_value }}"
|
|
|
|
##### field 1 #####
|
|
|
|
##### field 2 #####
|
|
- service: "{{ command_text_printf }}"
|
|
data:
|
|
component: weather05.value02
|
|
message: '{{state_attr(ha_weather,"forecast")[3].precipitation| round(1)}} mm'
|
|
- delay:
|
|
milliseconds: "{{ delay_value }}"
|
|
- service: "{{ command_printf }}"
|
|
data:
|
|
cmd: weather05.value02_pic.pic={{ weather_icon_rain }}
|
|
- delay:
|
|
milliseconds: "{{ delay_value }}"
|
|
|
|
##### field 3 #####
|
|
- service: "{{ command_text_printf }}"
|
|
data:
|
|
component: weather05.value03
|
|
message: '{{state_attr(ha_weather,"forecast")[3].wind_speed | round(1)}} km/h'
|
|
- delay:
|
|
milliseconds: "{{ delay_value }}"
|
|
- service: "{{ command_printf }}"
|
|
data:
|
|
cmd: weather05.value03_pic.pic={{ weather_icon_wind }}
|
|
- delay:
|
|
milliseconds: "{{ delay_value }}"
|
|
|
|
##### field 4 #####
|
|
|
|
##### field 5 #####
|
|
|
|
##### Weather - Accuweather #####
|
|
- conditions:
|
|
- condition: template
|
|
value_template: '{{ weather == "AccuWeather" }}'
|
|
sequence:
|
|
- choose:
|
|
##### Weather Page - 01 - ACCUWEATHER #####
|
|
- conditions:
|
|
- condition: template
|
|
value_template: '{{ states(last_click_weathersettings) == "weather01" }}'
|
|
sequence:
|
|
- variables:
|
|
# weather PIC
|
|
weather_icon: >-
|
|
{%- if state_attr(accuweather_value,"forecast")[0].condition == 'sunny' -%} {{ weather_sunny }}
|
|
{%- elif state_attr(accuweather_value,"forecast")[0].condition == 'cloudy' -%} {{ weather_cloudy }}
|
|
{%- elif state_attr(accuweather_value,"forecast")[0].condition == 'rainy' -%} {{ weather_rainy }}
|
|
{%- elif state_attr(accuweather_value,"forecast")[0].condition == 'pouring' -%} {{ weather_pouring }}
|
|
{%- elif state_attr(accuweather_value,"forecast")[0].condition == 'snowy' -%} {{ weather_snowy }}
|
|
{%- elif state_attr(accuweather_value,"forecast")[0].condition == 'hail' -%} {{ weather_hail }}
|
|
{%- elif state_attr(accuweather_value,"forecast")[0].condition == 'snowy-rainy' -%} {{ weather_snowy_rainy }}
|
|
{%- elif state_attr(accuweather_value,"forecast")[0].condition == 'fog' -%} {{ weather_fog }}
|
|
{%- elif state_attr(accuweather_value,"forecast")[0].condition == 'windy' -%} {{ weather_windy }}
|
|
{%- elif state_attr(accuweather_value,"forecast")[0].condition == 'windy-variant' -%} {{ weather_windy-variant }}
|
|
{%- elif state_attr(accuweather_value,"forecast")[0].condition == 'lightning' -%} {{ weather_lightning }}
|
|
{%- elif state_attr(accuweather_value,"forecast")[0].condition == 'partlycloudy' -%} {{ weather_partlycloudy_day }}
|
|
{%- elif state_attr(accuweather_value,"forecast")[0].condition == 'lightning-rainy' -%} {{ weather_lightning_rainy_day }}
|
|
{%- elif state_attr(accuweather_value,"forecast")[0].condition == 'execptional' -%} {{ weather_execptional_day }}
|
|
{%- elif state_attr(accuweather_value,"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 }}"
|
|
|
|
##### SET Language DE / EN #####
|
|
- choose:
|
|
##### Language DE for Day Name and Date #####
|
|
- conditions:
|
|
- condition: template
|
|
value_template: '{{ language == "DE" }}'
|
|
sequence:
|
|
##### Day Name #####
|
|
- service: "{{ command_text_printf }}"
|
|
data:
|
|
component: weather01.day
|
|
message: "{{ day01_de }}"
|
|
- delay:
|
|
milliseconds: "{{ delay_value }}"
|
|
|
|
##### Day Date #####
|
|
- service: "{{ command_text_printf }}"
|
|
data:
|
|
component: weather01.date
|
|
message: "{{ date01_de }}"
|
|
- delay:
|
|
milliseconds: "{{ delay_value }}"
|
|
|
|
##### Language EN for Day Name and Date #####
|
|
- conditions:
|
|
- condition: template
|
|
value_template: '{{ language == "EN" }}'
|
|
sequence:
|
|
##### Day Name #####
|
|
- service: "{{ command_text_printf }}"
|
|
data:
|
|
component: weather01.day
|
|
message: "{{ day01_de }}"
|
|
- delay:
|
|
milliseconds: "{{ delay_value }}"
|
|
|
|
##### Day Date #####
|
|
- service: "{{ command_text_printf }}"
|
|
data:
|
|
component: weather01.date
|
|
message: "{{ date01_en }}"
|
|
- delay:
|
|
milliseconds: "{{ delay_value }}"
|
|
|
|
##### field 1 #####
|
|
- service: "{{ command_text_printf }}"
|
|
data:
|
|
component: weather01.value01
|
|
message: "{{ state_attr(accuweather_value,'forecast')[0].precipitation_probability}} %"
|
|
- delay:
|
|
milliseconds: "{{ delay_value }}"
|
|
- service: "{{ command_printf }}"
|
|
data:
|
|
cmd: weather01.value01_pic.pic={{ 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_printf }}"
|
|
data:
|
|
cmd: weather01.value02_pic.pic={{ 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_printf }}"
|
|
data:
|
|
cmd: weather01.value03_pic.pic={{ 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_printf }}"
|
|
data:
|
|
cmd: weather01.value04_pic.pic={{ 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_printf }}"
|
|
data:
|
|
cmd: weather01.value05_pic.pic={{ weather_icon_wind }}
|
|
|
|
##### Weather Page - 02 - ACCUWEATHER #####
|
|
- conditions:
|
|
- condition: template
|
|
value_template: '{{ states(last_click_weathersettings) == "weather02" }}'
|
|
sequence:
|
|
- variables:
|
|
# weather PIC
|
|
weather_icon: >-
|
|
{%- if state_attr(accuweather_value,"forecast")[1].condition == 'sunny' -%} {{ weather_sunny }}
|
|
{%- elif state_attr(accuweather_value,"forecast")[1].condition == 'cloudy' -%} {{ weather_cloudy }}
|
|
{%- elif state_attr(accuweather_value,"forecast")[1].condition == 'rainy' -%} {{ weather_rainy }}
|
|
{%- elif state_attr(accuweather_value,"forecast")[1].condition == 'pouring' -%} {{ weather_pouring }}
|
|
{%- elif state_attr(accuweather_value,"forecast")[1].condition == 'snowy' -%} {{ weather_snowy }}
|
|
{%- elif state_attr(accuweather_value,"forecast")[1].condition == 'hail' -%} {{ weather_hail }}
|
|
{%- elif state_attr(accuweather_value,"forecast")[1].condition == 'snowy-rainy' -%} {{ weather_snowy_rainy }}
|
|
{%- elif state_attr(accuweather_value,"forecast")[1].condition == 'fog' -%} {{ weather_fog }}
|
|
{%- elif state_attr(accuweather_value,"forecast")[1].condition == 'windy' -%} {{ weather_windy }}
|
|
{%- elif state_attr(accuweather_value,"forecast")[1].condition == 'windy-variant' -%} {{ weather_windy-variant }}
|
|
{%- elif state_attr(accuweather_value,"forecast")[1].condition == 'lightning' -%} {{ weather_lightning }}
|
|
{%- elif state_attr(accuweather_value,"forecast")[1].condition == 'partlycloudy' -%} {{ weather_partlycloudy_day }}
|
|
{%- elif state_attr(accuweather_value,"forecast")[1].condition == 'lightning-rainy' -%} {{ weather_lightning_rainy_day }}
|
|
{%- elif state_attr(accuweather_value,"forecast")[1].condition == 'execptional' -%} {{ weather_execptional_day }}
|
|
{%- elif state_attr(accuweather_value,"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 }}"
|
|
|
|
##### SET Language DE / EN #####
|
|
- choose:
|
|
##### Language DE for Day Name and Date #####
|
|
- conditions:
|
|
- condition: template
|
|
value_template: '{{ language == "DE" }}'
|
|
sequence:
|
|
##### Day Name #####
|
|
- service: "{{ command_text_printf }}"
|
|
data:
|
|
component: weather02.day
|
|
message: "{{ day02_de }}"
|
|
- delay:
|
|
milliseconds: "{{ delay_value }}"
|
|
|
|
##### Day Date #####
|
|
- service: "{{ command_text_printf }}"
|
|
data:
|
|
component: weather02.date
|
|
message: "{{ date02_de }}"
|
|
- delay:
|
|
milliseconds: "{{ delay_value }}"
|
|
|
|
##### Language EN for Day Name and Date #####
|
|
- conditions:
|
|
- condition: template
|
|
value_template: '{{ language == "EN" }}'
|
|
sequence:
|
|
##### Day Name #####
|
|
- service: "{{ command_text_printf }}"
|
|
data:
|
|
component: weather02.day
|
|
message: "{{ day02_de }}"
|
|
- delay:
|
|
milliseconds: "{{ delay_value }}"
|
|
|
|
##### Day Date #####
|
|
- service: "{{ command_text_printf }}"
|
|
data:
|
|
component: weather02.date
|
|
message: "{{ date02_en }}"
|
|
- delay:
|
|
milliseconds: "{{ delay_value }}"
|
|
|
|
##### field 1 #####
|
|
- service: "{{ command_text_printf }}"
|
|
data:
|
|
component: weather02.value01
|
|
message: "{{ state_attr(accuweather_value,'forecast')[1].precipitation_probability}} %"
|
|
- delay:
|
|
milliseconds: "{{ delay_value }}"
|
|
- service: "{{ command_printf }}"
|
|
data:
|
|
cmd: weather02.value01_pic.pic={{ 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_printf }}"
|
|
data:
|
|
cmd: weather02.value02_pic.pic={{ 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_printf }}"
|
|
data:
|
|
cmd: weather02.value03_pic.pic={{ 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_printf }}"
|
|
data:
|
|
cmd: weather02.value04_pic.pic={{ 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_printf }}"
|
|
data:
|
|
cmd: weather02.value05_pic.pic={{ weather_icon_wind }}
|
|
|
|
##### Weather Page - 03 - ACCUWEATHER #####
|
|
- conditions:
|
|
- condition: template
|
|
value_template: '{{ states(last_click_weathersettings) == "weather03" }}'
|
|
sequence:
|
|
- variables:
|
|
# weather PIC
|
|
weather_icon: >-
|
|
{%- if state_attr(accuweather_value,"forecast")[2].condition == 'sunny' -%} {{ weather_sunny }}
|
|
{%- elif state_attr(accuweather_value,"forecast")[2].condition == 'cloudy' -%} {{ weather_cloudy }}
|
|
{%- elif state_attr(accuweather_value,"forecast")[2].condition == 'rainy' -%} {{ weather_rainy }}
|
|
{%- elif state_attr(accuweather_value,"forecast")[2].condition == 'pouring' -%} {{ weather_pouring }}
|
|
{%- elif state_attr(accuweather_value,"forecast")[2].condition == 'snowy' -%} {{ weather_snowy }}
|
|
{%- elif state_attr(accuweather_value,"forecast")[2].condition == 'hail' -%} {{ weather_hail }}
|
|
{%- elif state_attr(accuweather_value,"forecast")[2].condition == 'snowy-rainy' -%} {{ weather_snowy_rainy }}
|
|
{%- elif state_attr(accuweather_value,"forecast")[2].condition == 'fog' -%} {{ weather_fog }}
|
|
{%- elif state_attr(accuweather_value,"forecast")[2].condition == 'windy' -%} {{ weather_windy }}
|
|
{%- elif state_attr(accuweather_value,"forecast")[2].condition == 'windy-variant' -%} {{ weather_windy-variant }}
|
|
{%- elif state_attr(accuweather_value,"forecast")[2].condition == 'lightning' -%} {{ weather_lightning }}
|
|
{%- elif state_attr(accuweather_value,"forecast")[2].condition == 'partlycloudy' -%} {{ weather_partlycloudy_day }}
|
|
{%- elif state_attr(accuweather_value,"forecast")[2].condition == 'lightning-rainy' -%} {{ weather_lightning_rainy_day }}
|
|
{%- elif state_attr(accuweather_value,"forecast")[2].condition == 'execptional' -%} {{ weather_execptional_day }}
|
|
{%- elif state_attr(accuweather_value,"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 }}"
|
|
|
|
##### SET Language DE / EN #####
|
|
- choose:
|
|
##### Language DE for Day Name and Date #####
|
|
- conditions:
|
|
- condition: template
|
|
value_template: '{{ language == "DE" }}'
|
|
sequence:
|
|
##### Day Name #####
|
|
- service: "{{ command_text_printf }}"
|
|
data:
|
|
component: weather03.day
|
|
message: "{{ day03_de }}"
|
|
- delay:
|
|
milliseconds: "{{ delay_value }}"
|
|
|
|
##### Day Date #####
|
|
- service: "{{ command_text_printf }}"
|
|
data:
|
|
component: weather03.date
|
|
message: "{{ date03_de }}"
|
|
- delay:
|
|
milliseconds: "{{ delay_value }}"
|
|
|
|
##### Language EN for Day Name and Date #####
|
|
- conditions:
|
|
- condition: template
|
|
value_template: '{{ language == "EN" }}'
|
|
sequence:
|
|
##### Day Name #####
|
|
- service: "{{ command_text_printf }}"
|
|
data:
|
|
component: weather03.day
|
|
message: "{{ day03_de }}"
|
|
- delay:
|
|
milliseconds: "{{ delay_value }}"
|
|
|
|
##### Day Date #####
|
|
- service: "{{ command_text_printf }}"
|
|
data:
|
|
component: weather03.date
|
|
message: "{{ date03_en }}"
|
|
- delay:
|
|
milliseconds: "{{ delay_value }}"
|
|
|
|
##### field 1 #####
|
|
- service: "{{ command_text_printf }}"
|
|
data:
|
|
component: weather03.value01
|
|
message: "{{ state_attr(accuweather_value,'forecast')[2].precipitation_probability}} %"
|
|
- delay:
|
|
milliseconds: "{{ delay_value }}"
|
|
- service: "{{ command_printf }}"
|
|
data:
|
|
cmd: weather03.value01_pic.pic={{ 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_printf }}"
|
|
data:
|
|
cmd: weather03.value02_pic.pic={{ 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_printf }}"
|
|
data:
|
|
cmd: weather03.value03_pic.pic={{ 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_printf }}"
|
|
data:
|
|
cmd: weather03.value04_pic.pic={{ 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_printf }}"
|
|
data:
|
|
cmd: weather03.value05_pic.pic={{ weather_icon_wind }}
|
|
|
|
##### Weather Page - 04 - ACCUWEATHER #####
|
|
- conditions:
|
|
- condition: template
|
|
value_template: '{{ states(last_click_weathersettings) == "weather04" }}'
|
|
sequence:
|
|
- variables:
|
|
# weather PIC
|
|
weather_icon: >-
|
|
{%- if state_attr(accuweather_value,"forecast")[3].condition == 'sunny' -%} {{ weather_sunny }}
|
|
{%- elif state_attr(accuweather_value,"forecast")[3].condition == 'cloudy' -%} {{ weather_cloudy }}
|
|
{%- elif state_attr(accuweather_value,"forecast")[3].condition == 'rainy' -%} {{ weather_rainy }}
|
|
{%- elif state_attr(accuweather_value,"forecast")[3].condition == 'pouring' -%} {{ weather_pouring }}
|
|
{%- elif state_attr(accuweather_value,"forecast")[3].condition == 'snowy' -%} {{ weather_snowy }}
|
|
{%- elif state_attr(accuweather_value,"forecast")[3].condition == 'hail' -%} {{ weather_hail }}
|
|
{%- elif state_attr(accuweather_value,"forecast")[3].condition == 'snowy-rainy' -%} {{ weather_snowy_rainy }}
|
|
{%- elif state_attr(accuweather_value,"forecast")[3].condition == 'fog' -%} {{ weather_fog }}
|
|
{%- elif state_attr(accuweather_value,"forecast")[3].condition == 'windy' -%} {{ weather_windy }}
|
|
{%- elif state_attr(accuweather_value,"forecast")[3].condition == 'windy-variant' -%} {{ weather_windy-variant }}
|
|
{%- elif state_attr(accuweather_value,"forecast")[3].condition == 'lightning' -%} {{ weather_lightning }}
|
|
{%- elif state_attr(accuweather_value,"forecast")[3].condition == 'partlycloudy' -%} {{ weather_partlycloudy_day }}
|
|
{%- elif state_attr(accuweather_value,"forecast")[3].condition == 'lightning-rainy' -%} {{ weather_lightning_rainy_day }}
|
|
{%- elif state_attr(accuweather_value,"forecast")[3].condition == 'execptional' -%} {{ weather_execptional_day }}
|
|
{%- elif state_attr(accuweather_value,"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 }}"
|
|
|
|
##### SET Language DE / EN #####
|
|
- choose:
|
|
##### Language DE for Day Name and Date #####
|
|
- conditions:
|
|
- condition: template
|
|
value_template: '{{ language == "DE" }}'
|
|
sequence:
|
|
##### Day Name #####
|
|
- service: "{{ command_text_printf }}"
|
|
data:
|
|
component: weather04.day
|
|
message: "{{ day04_de }}"
|
|
- delay:
|
|
milliseconds: "{{ delay_value }}"
|
|
|
|
##### Day Date #####
|
|
- service: "{{ command_text_printf }}"
|
|
data:
|
|
component: weather04.date
|
|
message: "{{ date04_de }}"
|
|
- delay:
|
|
milliseconds: "{{ delay_value }}"
|
|
|
|
##### Language EN for Day Name and Date #####
|
|
- conditions:
|
|
- condition: template
|
|
value_template: '{{ language == "EN" }}'
|
|
sequence:
|
|
##### Day Name #####
|
|
- service: "{{ command_text_printf }}"
|
|
data:
|
|
component: weather04.day
|
|
message: "{{ day04_de }}"
|
|
- delay:
|
|
milliseconds: "{{ delay_value }}"
|
|
|
|
##### Day Date #####
|
|
- service: "{{ command_text_printf }}"
|
|
data:
|
|
component: weather04.date
|
|
message: "{{ date04_en }}"
|
|
- delay:
|
|
milliseconds: "{{ delay_value }}"
|
|
|
|
##### field 1 #####
|
|
- service: "{{ command_text_printf }}"
|
|
data:
|
|
component: weather04.value01
|
|
message: "{{ state_attr(accuweather_value,'forecast')[3].precipitation_probability}} %"
|
|
- delay:
|
|
milliseconds: "{{ delay_value }}"
|
|
- service: "{{ command_printf }}"
|
|
data:
|
|
cmd: weather04.value01_pic.pic={{ 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_printf }}"
|
|
data:
|
|
cmd: weather04.value02_pic.pic={{ 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_printf }}"
|
|
data:
|
|
cmd: weather04.value03_pic.pic={{ 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_printf }}"
|
|
data:
|
|
cmd: weather04.value04_pic.pic={{ 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_printf }}"
|
|
data:
|
|
cmd: weather04.value05_pic.pic={{ weather_icon_wind }}
|
|
|
|
##### Weather Page - 05 - ACCUWEATHER #####
|
|
- conditions:
|
|
- condition: template
|
|
value_template: '{{ states(last_click_weathersettings) == "weather05" }}'
|
|
sequence:
|
|
- variables:
|
|
# weather PIC
|
|
weather_icon: >-
|
|
{%- if state_attr(accuweather_value,"forecast")[4].condition == 'sunny' -%} {{ weather_sunny }}
|
|
{%- elif state_attr(accuweather_value,"forecast")[4].condition == 'cloudy' -%} {{ weather_cloudy }}
|
|
{%- elif state_attr(accuweather_value,"forecast")[4].condition == 'rainy' -%} {{ weather_rainy }}
|
|
{%- elif state_attr(accuweather_value,"forecast")[4].condition == 'pouring' -%} {{ weather_pouring }}
|
|
{%- elif state_attr(accuweather_value,"forecast")[4].condition == 'snowy' -%} {{ weather_snowy }}
|
|
{%- elif state_attr(accuweather_value,"forecast")[4].condition == 'hail' -%} {{ weather_hail }}
|
|
{%- elif state_attr(accuweather_value,"forecast")[4].condition == 'snowy-rainy' -%} {{ weather_snowy_rainy }}
|
|
{%- elif state_attr(accuweather_value,"forecast")[4].condition == 'fog' -%} {{ weather_fog }}
|
|
{%- elif state_attr(accuweather_value,"forecast")[4].condition == 'windy' -%} {{ weather_windy }}
|
|
{%- elif state_attr(accuweather_value,"forecast")[4].condition == 'windy-variant' -%} {{ weather_windy-variant }}
|
|
{%- elif state_attr(accuweather_value,"forecast")[4].condition == 'lightning' -%} {{ weather_lightning }}
|
|
{%- elif state_attr(accuweather_value,"forecast")[4].condition == 'partlycloudy' -%} {{ weather_partlycloudy_day }}
|
|
{%- elif state_attr(accuweather_value,"forecast")[4].condition == 'lightning-rainy' -%} {{ weather_lightning_rainy_day }}
|
|
{%- elif state_attr(accuweather_value,"forecast")[4].condition == 'execptional' -%} {{ weather_execptional_day }}
|
|
{%- elif state_attr(accuweather_value,"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 }}"
|
|
|
|
##### SET Language DE / EN #####
|
|
- choose:
|
|
##### Language DE for Day Name and Date #####
|
|
- conditions:
|
|
- condition: template
|
|
value_template: '{{ language == "DE" }}'
|
|
sequence:
|
|
##### Day Name #####
|
|
- service: "{{ command_text_printf }}"
|
|
data:
|
|
component: weather05.day
|
|
message: "{{ day05_de }}"
|
|
- delay:
|
|
milliseconds: "{{ delay_value }}"
|
|
|
|
##### Day Date #####
|
|
- service: "{{ command_text_printf }}"
|
|
data:
|
|
component: weather05.date
|
|
message: "{{ date05_de }}"
|
|
- delay:
|
|
milliseconds: "{{ delay_value }}"
|
|
|
|
##### Language EN for Day Name and Date #####
|
|
- conditions:
|
|
- condition: template
|
|
value_template: '{{ language == "EN" }}'
|
|
sequence:
|
|
##### Day Name #####
|
|
- service: "{{ command_text_printf }}"
|
|
data:
|
|
component: weather05.day
|
|
message: "{{ day05_de }}"
|
|
- delay:
|
|
milliseconds: "{{ delay_value }}"
|
|
|
|
##### Day Date #####
|
|
- service: "{{ command_text_printf }}"
|
|
data:
|
|
component: weather05.date
|
|
message: "{{ date05_en }}"
|
|
- delay:
|
|
milliseconds: "{{ delay_value }}"
|
|
|
|
##### field 1 #####
|
|
- service: "{{ command_text_printf }}"
|
|
data:
|
|
component: weather05.value01
|
|
message: "{{ state_attr(accuweather_value,'forecast')[4].precipitation_probability}} %"
|
|
- delay:
|
|
milliseconds: "{{ delay_value }}"
|
|
- service: "{{ command_printf }}"
|
|
data:
|
|
cmd: weather05.value01_pic.pic={{ 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_printf }}"
|
|
data:
|
|
cmd: weather05.value02_pic.pic={{ 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_printf }}"
|
|
data:
|
|
cmd: weather05.value03_pic.pic={{ 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_printf }}"
|
|
data:
|
|
cmd: weather05.value04_pic.pic={{ 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_printf }}"
|
|
data:
|
|
cmd: weather05.value05_pic.pic={{ weather_icon_wind }}
|
|
|
|
#############################################################
|
|
##### CLOSE - Action #####
|
|
############################################################# |