Skip to content

Commit

Permalink
Refactor relay timer on logic and logging
Browse files Browse the repository at this point in the history
  • Loading branch information
theyosh committed Mar 8, 2024
1 parent 068c2c4 commit 4669d5f
Showing 1 changed file with 9 additions and 6 deletions.
15 changes: 9 additions & 6 deletions terrariumArea.py
Original file line number Diff line number Diff line change
Expand Up @@ -861,12 +861,8 @@ def update(self, read_only=False):
self.state[period]["alarm_count"] += 1
continue

self.relays_toggle(period, True)
self.state[period]["alarm_count"] = 0

if self.setup[period]["power_on_time"] > 0.0:
self.state[period]["timer_on"] = True
threading.Timer(self.setup[period]["power_on_time"], self.relays_toggle, [period, False]).start()
self.relays_toggle(period, True)

elif (
toggle_relay is False
Expand Down Expand Up @@ -944,7 +940,14 @@ def relays_state(self, part, state=True):
return new_state

def relays_toggle(self, part, on):
logger.info(f'Toggle the relays for area {self} part {part} to state {("on" if on else "off")}.')
log_line = f'Toggle the relays for area {self} part {part} to state {("on" if on else "off")}'
power_on_time = self.setup[part].get("power_on_time", 0.0)
if on and power_on_time > 0.0:
log_line += f' and switch back after {power_on_time} seconds'
self.state[part]["timer_on"] = True
threading.Timer(power_on_time, self.relays_toggle, [part, False]).start()

logger.info(f'{log_line}.')

relays = []
with orm.db_session():
Expand Down

0 comments on commit 4669d5f

Please sign in to comment.