Делаю так:
scheduler = AsyncIOScheduler(timezone=str(tzlocal.get_localzone()))
worker = Worker(cnf)
scheduler.add_job(worker.run, 'interval', minutes=0, id="worker_first_start")
scheduler.add_job(worker.run, 'interval', minutes=config.interval_min+randint(0, 5), id="worker_interval_start")
scheduler.start()
await asyncio.sleep(10)
scheduler.remove_job('worker_first_start')
То есть добавляю job с интервалом в 0, жду 10 секунд (без этого она не запускается), затем удаляю job.
Но в реальности она запускается дважды, т.е. один раз отработала, потом запускается ещё раз и только потом отрабатывает
scheduler.remove_job('worker_first_start')
Хотелось бы запустить её только один раз, а затем уже и интервалом.
Заодно: как можно исключить запуск вот этого таска
scheduler.add_job(worker.run, 'interval', minutes=config.interval_min+randint(0, 5), id="worker_interval_start")
в указанный диапазон времени? Например, я не хочу, чтоб она по ночам работала.