diff --git a/apps/controller.py b/apps/controller.py index 63a14e7..323822b 100644 --- a/apps/controller.py +++ b/apps/controller.py @@ -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')