Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- def set_meeting_job(bot, update, chat_data, job_queue):
- logger.info("[set_meeting_job] Setting cron job of meeting.")
- if update.callback_query.data == CANCEL:
- update.callback_query.answer(text='')
- update.effective_message.edit_text('Meeting cancelada ⛔️')
- logger.info("Conversation ended.")
- return ConversationHandler.END
- period_key = update.callback_query.data.split('_')[-1]
- time_delta = time_delta_map[period_key]
- frequency_friendly_name = friendly_name[period_key]
- # Feature: manage jobs in db to survive bot shutdown
- job_queue.run_repeating(
- send_notification,
- interval=time_delta,
- first=chat_data['datetime_utc'],
- context=chat_data
- )
- logger.info("[set_meeting_job] Meeting set with datetime %s. Bs As: %s, and timedelta %s.",
- chat_data['datetime_utc'], chat_data['date_buenos_aires'], time_delta)
- # Save meeting to db
- try:
- save_meeting(chat_data['name'], chat_data['datetime_utc'])
- except Exception:
- logger.exception("Meeting could not be saved")
- update.callback_query.answer(text='Meeting saved')
- update.callback_query.message.edit_text(
- f"✅ Listo. La reunión `{chat_data['name']}` quedó seteada para el `{chat_data['date_buenos_aires'].capitalize()}` "
- f"y se repetirá `{frequency_friendly_name}`",
- parse_mode='markdown',
- reply_markup=None
- )
- logger.info("Conversation has ended.")
- return ConversationHandler.END
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement