def alert_if_needed(printer): if alert_suppressed(printer): return last_acknowledged = printer.current_print.alert_acknowledged_at or datetime.fromtimestamp(1, timezone.utc) last_alerted = printer.current_print.alerted_at or datetime.fromtimestamp(0, timezone.utc) if last_alerted > last_acknowledged: return printer.set_alert() send_failure_alert(printer, is_warning=True, print_paused=False)
def alert_if_needed(printer): last_acknowledge = printer.alert_acknowledged_at or datetime.fromtimestamp(0, timezone.utc) if printer.current_print_alerted_at \ or (timezone.now() - last_acknowledge).total_seconds() < ALERT_COOLDOWN_SECONDS: return printer.set_alert() pause_print = printer.action_on_failure == Printer.PAUSE if pause_print: printer.pause_print() send_failure_alert(printer, pause_print)
def pause_if_needed(printer): if alert_suppressed(printer): return last_acknowledged = printer.current_print.alert_acknowledged_at or datetime.fromtimestamp(1, timezone.utc) last_alerted = printer.current_print.alerted_at or datetime.fromtimestamp(0, timezone.utc) if printer.action_on_failure == Printer.PAUSE and not printer.current_print.paused_at: printer.pause_print() printer.set_alert() send_failure_alert(printer, is_warning=False, print_paused=True) elif not last_alerted > last_acknowledged: printer.set_alert() send_failure_alert(printer, is_warning=False, print_paused=False)