Exemple #1
0
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)
Exemple #2
0
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, 'Ответ необходимо дать на сообщение с номером заявки!')
Exemple #3
0
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))
Exemple #4
0
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
Exemple #5
0
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)
Exemple #7
0
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)