mirror of
https://github.com/joBr99/nspanel-lovelace-ui.git
synced 2025-12-23 07:54:25 +01:00
Enable sleepOverride
This commit is contained in:
@@ -68,6 +68,7 @@ class LuiBackendConfig(object):
|
||||
'sleepTimeout': 20,
|
||||
'sleepBrightness': 20,
|
||||
'sleepTracking': None,
|
||||
'sleepOverride': None,
|
||||
'locale': "en_US",
|
||||
'timeFormat': "%H:%M",
|
||||
'dateFormatBabel': "full",
|
||||
|
||||
@@ -43,6 +43,11 @@ class LuiController(object):
|
||||
if bst is not None and self._ha_api.entity_exists(bst):
|
||||
self._ha_api.listen_state(self.update_screensaver_brightness_state_callback, entity_id=bst)
|
||||
|
||||
# call update_screensaver_brightness on entity configured in sleepOverride
|
||||
sleepOverride = self._config.get("sleepOverride")
|
||||
if sleepOverride is not None and sleepOverride["entity"] is not None and sleepOverride["brightness"] is not None and self._ha_api.entity_exists(sleepOverride["entity"]):
|
||||
self._ha_api.listen_state(self.update_screensaver_brightness_state_callback, entity_id=sleepOverride["entity"])
|
||||
|
||||
# register callback for state changes on tracked value
|
||||
sleep_brightness_config = self._config.get("sleepBrightness")
|
||||
if type(sleep_brightness_config) == str and self._ha_api.entity_exists(sleep_brightness_config):
|
||||
@@ -72,9 +77,15 @@ class LuiController(object):
|
||||
|
||||
def update_screensaver_brightness(self, kwargs):
|
||||
bst = self._config.get("sleepTracking")
|
||||
sleepOverride = self._config.get("sleepOverride")
|
||||
|
||||
brightness = 0
|
||||
if bst is not None and self._ha_api.entity_exists(bst) and self._ha_api.get_entity(bst).state in ["not_home", "off"]:
|
||||
brightness = 0
|
||||
|
||||
elif sleepOverride is not None and sleepOverride["entity"] is not None and sleepOverride["brightness"] is not None and self._ha_api.entity_exists(sleepOverride["entity"]) and self._ha_api.get_entity(sleepOverride["entity"]) in ["on", "true", "home"]:
|
||||
brightness = sleepOverride["brightness"]
|
||||
|
||||
else:
|
||||
self.current_screensaver_brightness = kwargs['value']
|
||||
brightness = kwargs['value']
|
||||
|
||||
Reference in New Issue
Block a user