mirror of
https://github.com/joBr99/nspanel-lovelace-ui.git
synced 2025-12-19 22:24:15 +01:00
added config for screensaver brightness
This commit is contained in:
@@ -5,10 +5,16 @@ nspanel:
|
|||||||
config:
|
config:
|
||||||
panelRecvTopic: "tele/tasmota_NsPanelTerrasse/RESULT"
|
panelRecvTopic: "tele/tasmota_NsPanelTerrasse/RESULT"
|
||||||
panelSendTopic: "cmnd/tasmota_NsPanelTerrasse/CustomSend"
|
panelSendTopic: "cmnd/tasmota_NsPanelTerrasse/CustomSend"
|
||||||
timeoutScreensaver: 15000 # value in ms, must be between 50 and 65535
|
|
||||||
locale: "de_DE"
|
locale: "de_DE"
|
||||||
timeFormat: "%H : %M"
|
timeFormat: "%H : %M"
|
||||||
dateFormat: "%A, %d. %B %Y"
|
dateFormat: "%A, %d. %B %Y"
|
||||||
|
timeoutScreensaver: 15000 # value in ms, must be between 50 and 65535
|
||||||
|
#brightnessScreensaver: 10
|
||||||
|
brightnessScreensaver:
|
||||||
|
- time: "7:00:00"
|
||||||
|
value: 10
|
||||||
|
- time: "23:00:00"
|
||||||
|
value: 0
|
||||||
pages:
|
pages:
|
||||||
- type: cardEntities
|
- type: cardEntities
|
||||||
heading: TestPage1
|
heading: TestPage1
|
||||||
|
|||||||
@@ -15,6 +15,7 @@ class NsPanelLovelanceUI:
|
|||||||
self.api = api
|
self.api = api
|
||||||
self.config = config
|
self.config = config
|
||||||
self.current_page_nr = 0
|
self.current_page_nr = 0
|
||||||
|
self.current_screensaver_brightness = 10
|
||||||
|
|
||||||
# Setup, mqtt subscription and callback
|
# Setup, mqtt subscription and callback
|
||||||
self.mqtt = self.api.get_plugin_api("MQTT")
|
self.mqtt = self.api.get_plugin_api("MQTT")
|
||||||
@@ -30,9 +31,20 @@ class NsPanelLovelanceUI:
|
|||||||
self.api.run_daily(self.update_date, time)
|
self.api.run_daily(self.update_date, time)
|
||||||
self.update_date("")
|
self.update_date("")
|
||||||
|
|
||||||
|
# set brightness of screensaver
|
||||||
|
if type(self.config["brightnessScreensaver"]) == int:
|
||||||
|
self.current_screensaver_brightness = self.config["brightnessScreensaver"]
|
||||||
|
elif type(self.config["brightnessScreensaver"]) == list:
|
||||||
|
for timeset in self.config["brightnessScreensaver"]:
|
||||||
|
self.api.run_daily(self.update_screensaver_brightness, timeset["time"], value=timeset["value"])
|
||||||
|
|
||||||
# register callbacks
|
# register callbacks
|
||||||
self.register_callbacks()
|
self.register_callbacks()
|
||||||
|
|
||||||
|
def update_screensaver_brightness(self, kwargs):
|
||||||
|
self.current_screensaver_brightness = kwargs['value']
|
||||||
|
self.send_mqtt_msg(f"dimmode,{self.current_screensaver_brightness}")
|
||||||
|
|
||||||
def scale(self, val, src, dst):
|
def scale(self, val, src, dst):
|
||||||
"""
|
"""
|
||||||
Scale the given value from the scale of src to the scale of dst.
|
Scale the given value from the scale of src to the scale of dst.
|
||||||
@@ -71,6 +83,9 @@ class NsPanelLovelanceUI:
|
|||||||
timeout = 50
|
timeout = 50
|
||||||
self.send_mqtt_msg("timeout,{0}".format(timeout))
|
self.send_mqtt_msg("timeout,{0}".format(timeout))
|
||||||
|
|
||||||
|
# send screensaver brightness
|
||||||
|
self.update_screensaver_brightness()
|
||||||
|
|
||||||
# send messages for current page
|
# send messages for current page
|
||||||
page_type = self.config["pages"][self.current_page_nr]["type"]
|
page_type = self.config["pages"][self.current_page_nr]["type"]
|
||||||
self.generate_page(self.current_page_nr, page_type)
|
self.generate_page(self.current_page_nr, page_type)
|
||||||
|
|||||||
Reference in New Issue
Block a user