thermoprint-homework/print_tasks.py
2026-02-01 20:32:28 +01:00

37 lines
969 B
Python

#!/usr/bin/env python3
import time
import argparse
from print_server import get_printer
from jobs.tasks import TasksJob
def main():
parser = argparse.ArgumentParser(description="Print daily tasks schedule.")
parser.add_argument("--days", type=int, default=1, help="Number of days to print (default: 1)")
args = parser.parse_args()
print("Initializing printer...")
p = get_printer()
if not p:
print("Failed to connect to printer.")
return
print(f"Fetching and printing tasks for {args.days} day(s)...")
job = TasksJob()
job.days_to_print = args.days
try:
# Run the job
job.run(p)
print("Done.")
except Exception as e:
print(f"Error during print job: {e}")
finally:
# Ensure connection is closed cleanly
if hasattr(p, 'close'):
time.sleep(0.5)
p.close()
if __name__ == "__main__":
print(" == Tasks Printer ==")
main()