from apscheduler.executors.pool import ThreadPoolExecutor, ProcessPoolExecutor from apscheduler.schedulers.blocking import BlockingScheduler from src.mail.mail_reader import read_mails def start_check_mail_job(sched): # sched.add_job(start_book_appointment, 'cron', day_of_week='mon-sat', hour='10', # minute='30', # misfire_grace_time=10, # second='0', timezone='Europe/Paris', max_instances=1) sched.add_job(read_mails, 'cron', day_of_week='mon-sat', hour='11', minute='30', misfire_grace_time=10, second='0', timezone='Europe/Paris', max_instances=1) sched.add_job(read_mails, 'cron', day_of_week='mon-sat', hour='12', minute='30', misfire_grace_time=10, second='0', timezone='Europe/Paris', max_instances=1) sched.add_job(read_mails, 'cron', day_of_week='mon-sat', hour='14', minute='30', misfire_grace_time=10, second='0', timezone='Europe/Paris', max_instances=1) sched.add_job(read_mails, 'cron', day_of_week='mon-sat', hour='17', minute='30', misfire_grace_time=10, second='0', timezone='Europe/Paris', max_instances=1) def config_and_start_jobs(): executors = { 'default': ThreadPoolExecutor(30), 'processpool': ProcessPoolExecutor(12) } sched = BlockingScheduler(executors=executors) # start_waiting_sms_job(sched) start_check_mail_job(sched) sched.print_jobs() sched.start() if __name__ == '__main__': config_and_start_jobs()