checking the light state with each adjustment
This commit is contained in:
@@ -176,5 +176,15 @@ class ControllerDaylight(ControllerBase):
|
||||
self.cancel_timer(self.adjustment_handle)
|
||||
|
||||
def ongoing_adjustment(self, kwargs):
|
||||
self.log(f'Adjusting {self.friendly_name(kwargs["entity"])} with {self.adjuster.current_settings}')
|
||||
settings = self.adjuster.current_settings
|
||||
|
||||
state = self.get_state(entity_id=kwargs['entity'], attribute='all')['attributes']
|
||||
state = {s: state[s] for s in settings.keys()}
|
||||
|
||||
valid = all((state[s] == val) for s, val in settings.items())
|
||||
if not valid:
|
||||
self.log(f'Current state: {state}')
|
||||
self.turn_on(entity_id=kwargs['entity'], **settings)
|
||||
self.log(f'Adjusted {self.friendly_name(kwargs["entity"])} with {settings}')
|
||||
else:
|
||||
self.log(f'Already valid')
|
||||
|
||||
Reference in New Issue
Block a user