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,
|
'sleepTimeout': 20,
|
||||||
'sleepBrightness': 20,
|
'sleepBrightness': 20,
|
||||||
'sleepTracking': None,
|
'sleepTracking': None,
|
||||||
|
'sleepOverride': None,
|
||||||
'locale': "en_US",
|
'locale': "en_US",
|
||||||
'timeFormat': "%H:%M",
|
'timeFormat': "%H:%M",
|
||||||
'dateFormatBabel': "full",
|
'dateFormatBabel': "full",
|
||||||
|
|||||||
@@ -43,6 +43,11 @@ class LuiController(object):
|
|||||||
if bst is not None and self._ha_api.entity_exists(bst):
|
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)
|
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
|
# register callback for state changes on tracked value
|
||||||
sleep_brightness_config = self._config.get("sleepBrightness")
|
sleep_brightness_config = self._config.get("sleepBrightness")
|
||||||
if type(sleep_brightness_config) == str and self._ha_api.entity_exists(sleep_brightness_config):
|
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):
|
def update_screensaver_brightness(self, kwargs):
|
||||||
bst = self._config.get("sleepTracking")
|
bst = self._config.get("sleepTracking")
|
||||||
|
sleepOverride = self._config.get("sleepOverride")
|
||||||
|
|
||||||
brightness = 0
|
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"]:
|
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
|
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:
|
else:
|
||||||
self.current_screensaver_brightness = kwargs['value']
|
self.current_screensaver_brightness = kwargs['value']
|
||||||
brightness = kwargs['value']
|
brightness = kwargs['value']
|
||||||
|
|||||||
Reference in New Issue
Block a user