def users_callback_handler(message): bot.send_chat_action(message.chat.id, "typing") bot.forward_message(ids["my"], message.chat.id, message.message_id) bot.send_message(message.chat.id, "Записал", reply_markup=main_keyboard, reply_to_message_id=message.message_id)
def reply(message): if re.search(r'^#TASK', message.reply_to_message.text): reply_to_text = message.reply_to_message.text task_id = re.sub('#TASK', '', reply_to_text) chat_id = int(re.search(r'^\d+', task_id).group()) text = re.sub(r'\+\d+$', '', reply_to_text) msg = bot.send_message(chat_id, f'Ответ на заявку:\n{text}') bot.forward_message(chat_id, message.chat.id, message.message_id) bot.reply_to(message, 'Ответ успешно доставлен') dump_data(message.from_user, msg.chat, message.text, ptype='TASK REPLY') else: bot.reply_to(message, 'Ответ необходимо дать на сообщение с номером заявки!')
def submission_message_list_view(user, submission, task): student = Student.get(submission.student_id) text = f"Выполненное задание: *{task.name}*. Ученик: _{student.fullname}_" if \ user.language_code == 'ru' else f"Submission: *{task.name}*. Student: _{student.fullname}_" bot.send_message(user.id, text, parse_mode='Markdown') ru_text = "Нажмите, чтобы исправить ошибки 👇🏻" en_text = "Tap to review 👇🏻" text = ru_text if user.language_code == 'ru' else en_text for submission_message in submission.messages: message = bot.forward_message(user.id, submission_message.student_id, submission_message.message_id) if type(user) is Teacher and message.photo: bot.delete_message(message.chat.id, message.message_id) message_with_button = bot.send_photo( user.id, message.photo[-1].file_id, ) bot.send_message(user.id, text, reply_markup=get_drawer_markup( message.photo[-1].file_id, user, message_with_button.message_id, submission.id))
def remind_users(last_remind_utc): now_utc = datetime.strptime(datetime.utcnow().strftime("%Y-%m-%d %H:%M"), "%Y-%m-%d %H:%M") # TODO Нужно исправить reminders = execute_database_command( '''SELECT user_id, mid FROM reminders WHERE datetime_utc <= %s AND datetime_utc > %s; ''', (now_utc, last_remind_utc)) for reminder in reminders: user_id, mid = reminder user = User.get(user_id) bot.send_message( user_id, 'Ты просил напомнить' if user.language_code == 'ru' else 'You asked to remind you') bot.forward_message(user_id, mid) return now_utc
def submission_review_result_view(user, submission, task): ru_text = f"Задание: *{task.name}*\nОценка: *{submission.assessment}*\n\n" \ f"Комментарии учителя 👇🏻" en_text = f"Task: *{task.name}*\nRate: *{submission.assessment}*\n\n" \ f"Teacher's comments 👇🏻" text = ru_text if user.language_code == 'ru' else en_text bot.send_message(user.id, text, parse_mode='Markdown') review_messages = submission.review_messages if review_messages: for review_message in review_messages: bot.forward_message(user.id, review_message.teacher_id, message_id=review_message.message_id) else: bot.send_message( user.id, "Нет комментария" if user.language_code == 'ru' else "No comment")
def answer_message(message): if message.text[:1] == "/": bot.send_message(message.chat.id, "Такой команды нет") else: bot.forward_message("252048575", message.chat.id, message.message_id)
def task_message_list_view(user, task): text = f"Содержание задания: *{task.name}*" if user.language_code == 'ru' else f"Content of the task: *{task.name}*" bot.send_message(user.id, text, parse_mode='Markdown') for task_message in task.messages: bot.forward_message(user.id, task_message.teacher_id, task_message.message_id)