21 lines
538 B
Python
21 lines
538 B
Python
import asyncio
|
|
|
|
from apscheduler.schedulers.asyncio import AsyncIOScheduler
|
|
|
|
|
|
async def scan_due_reminders() -> None:
|
|
# Reminder delivery is implemented in phase 2. Keeping the scheduler isolated
|
|
# ensures API restarts never own reminder timing.
|
|
return None
|
|
|
|
|
|
async def main() -> None:
|
|
scheduler = AsyncIOScheduler(timezone="UTC")
|
|
scheduler.add_job(scan_due_reminders, "interval", seconds=30, max_instances=1)
|
|
scheduler.start()
|
|
await asyncio.Event().wait()
|
|
|
|
|
|
if __name__ == "__main__":
|
|
asyncio.run(main())
|