From fdefd2a3c4a93a8e7b570a4bcc2b7a49ccd5e243 Mon Sep 17 00:00:00 2001 From: fmk17 <fmk17@inf.ufpr.br> Date: Thu, 10 Feb 2022 10:51:08 -0300 Subject: [PATCH] Round current datetime instead of calculating --- main.py | 12 +++++++----- 1 file changed, 7 insertions(+), 5 deletions(-) diff --git a/main.py b/main.py index a7e3737..758e2b8 100644 --- a/main.py +++ b/main.py @@ -249,7 +249,9 @@ def invalid_button(update: Update, context: CallbackContext) -> None: update.callback_query.answer(text="Essa mensagem não é mais válida", show_alert=True) def send_scheduled(context: CallbackContext) -> None: - time = context.job.next_t.astimezone() - timedelta(minutes=EVERY_X_MINUTES) + time = datetime.now() + time += datetime.timedelta(minutes=EVERY_X_MINUTES) + time -= datetime.timedelta(minutes=time.minute % EVERY_X_MINUTES, seconds=time.second, microseconds=time.microsecond) logging.info(f"Getting schedules matching {time}") schedules = get_schedules_matching_time(time) for schedule in schedules: @@ -286,10 +288,10 @@ def main() -> None: updater.dispatcher.add_handler(CallbackQueryHandler(agendar_callback, pattern=Agendar)) updater.dispatcher.add_handler(CallbackQueryHandler(agendar_antes_abertura, pattern=AgendarAntesAbertura)) updater.dispatcher.add_handler(CallbackQueryHandler(invalid_button, pattern=InvalidCallbackData)) - tm = datetime.now() - tm = tm - timedelta(minutes=tm.minute % EVERY_X_MINUTES, seconds=tm.second, microseconds=tm.microsecond) - tm = tm + timedelta(minutes=EVERY_X_MINUTES) - updater.dispatcher.job_queue.run_repeating(send_scheduled, timedelta(minutes=EVERY_X_MINUTES), first=tm) + time = datetime.now() + time -= timedelta(minutes=time.minute % EVERY_X_MINUTES, seconds=time.second, microseconds=time.microsecond) + time += timedelta(minutes=EVERY_X_MINUTES) + updater.dispatcher.job_queue.run_repeating(send_scheduled, timedelta(minutes=EVERY_X_MINUTES), first=time) updater.start_polling() logger.info("Connected") updater.idle() -- GitLab