Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- def set_schedule_flow(context: CallbackContext) -> None:
- #update_schedule()
- try:
- parity = week_even()
- day = datetime.datetime.today().weekday()
- day_list = context.bot_data["schedule"][parity][day]
- except (IndexError):
- return
- subjects = []
- for count, i in enumerate(day_list):
- name = str(i['name'])
- if name == "None":
- continue
- else:
- subjects.append(
- {
- "start": context.bot_data["timetable_list"][count][0],
- "end": context.bot_data["timetable_list"][count][1],
- "name": name,
- "type": str(i['type']),
- "classroom": str(i['classroom'])
- }
- )
- if not subjects:
- return
- for index, i in enumerate(subjects):
- if index == 0:
- jobtime = datetime.datetime.combine(datetime.datetime.now().date(), datetime.datetime.strptime(i["start"], "%H:%M").time()) - datetime.timedelta(minutes=10)
- else:
- jobtime = datetime.datetime.combine(datetime.datetime.now().date(), datetime.datetime.strptime(subjects[index - 1], "%H:%M").time())
- context.job_queue.run_once(
- when = jobtime,
- callback = send_subject_schedule,
- context = i
- )
- def send_subject_schedule(context: CallbackContext) -> None:
- subject_data = context.job.context
- message_id = context.bot.send_message(
- chat_id = context.bot_data["chat_id"],
- text = "Сейчас будет пара по \"{subject_name}\" {classroom}. Начало: {beginning_time}".format(
- subject_name = context.job.context["name"],
- classroom = "в аудитории "+subject_data["classroom"] if subject_data["classroom"].upper() != "Д" else "дистанционно",
- beginning_time = subject_data["start"]
- )
- ).message_id
- context.job_queue.run_once(
- when = 90, #можно и другое время указать, главное чат не засорять
- callback = delete_message_by_id,
- context = message_id
- )
- def delete_message_by_id(context: CallbackContext) -> None:
- context.bot.delete_message(
- chat_id = context.bot_data["chat_id"],
- message_id = context.job.context
- )
Advertisement
Add Comment
Please, Sign In to add comment