#!/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()