logging state changes

This commit is contained in:
John Lancaster
2023-04-15 16:10:14 -05:00
parent e301c6838f
commit c5cc1df425

View File

@@ -160,15 +160,21 @@ class ControllerDaylight(ControllerBase):
resolution=500 resolution=500
) )
self.log(self.adjuster) self.log(self.adjuster)
self.listen_state(callback=self.adjust, entity_id=[e.entity_id for e in self.entities]) self.listen_state(callback=self.handle_state_change, entity_id=[e.entity_id for e in self.entities])
self.log(f'Listening for state {[e.friendly_name for e in self.entities]}') self.log(f'Listening for state {[e.friendly_name for e in self.entities]}')
def adjust(self, entity, attribute, old, new, kwargs): def handle_state_change(self, entity, attribute, old, new, kwargs):
if new == 'on': if new == 'on':
self.adjustment_handle = self.run_every(callback=self.ongoing_adjustment, start='now', interval=10, entity=entity) self.adjustment_handle = self.run_every(
callback=self.ongoing_adjustment,
start='now',
interval=10,
entity=entity
)
else: else:
self.log(f'Cancelling adjustments') self.log(f'Cancelling adjustments')
self.cancel_timer(self.adjustment_handle) self.cancel_timer(self.adjustment_handle)
def ongoing_adjustment(self, kwargs): def ongoing_adjustment(self, kwargs):
self.log(f'Adjusting {self.friendly_name(kwargs["entity"])}') self.log(f'Adjusting {self.friendly_name(kwargs["entity"])} with {self.adjuster.current_settings}')