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 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)