Почему тг бот не реагирует на сообщения?

Написал бота, но на сообщение "Попросить подсказку" вообще не реагирует.

Код:

@bot.message_handler(commands=['start'])
def send_welcome(message):
    bot.reply_to(message, "Привет, введи номер задачи для тренеровки")
    types.ReplyKeyboardRemove()


@bot.message_handler(func=lambda message: True)
def echo_message(message):
    tasknum = message.text
    if tasknum == '1':
        randomnum = random.randint(1, 3)
        with open('tasks.txt', 'r', encoding='utf-8') as f:
            list = (f.readlines())
        for i in list:
            if '*' + str(randomnum) in i: task = i
        with open('answers.txt', 'r', encoding='utf-8') as f:
            list = (f.readlines())
        for i in list:
            if '*' + str(randomnum) in i: answer = i
        with open('hint.txt', 'r', encoding='utf-8') as f:
            list = (f.readlines())
        for i in list:
            if '*' + str(randomnum) in i: hint = i
        print(task, answer, hint)
        def commandt(message):
            if (tasknum == "Попросить подсказку"):
                print("1")
                bot.send_message(message.chat.id, text=hint)
            elif (tasknum == answer):
                bot.send_message(message.chat.id, text='Молодец, ответ правильный')
            elif (tasknum == "Пропустить"):
                bot.send_message(message.chat.id, text="Введи номер задачи для тренеровки")


bot.polling(none_stop=True)

Ответы (1 шт):

Автор решения: KonneR
@bot.message_handler(commands=['start'])
def send_welcome(message):
    bot.reply_to(message, "Привет, введи номер задачи для тренеровки")

@bot.message_handler(func=lambda message: True)
def echo_message(message):
    if message.text == "Попросить подсказку":
        return  # Если нажата кнопка "Попросить подсказку", то не перезапрашиваем номер задачи

    tasknum = message.text

    if tasknum.isdigit():
        tasknum = int(tasknum)
        with open('tasks.txt', 'r', encoding='utf-8') as f:
            tasks = f.readlines()
        with open('answers.txt', 'r', encoding='utf-8') as f:
            answers = f.readlines()
        with open('hint.txt', 'r', encoding='utf-8') as f:
            hints = f.readlines()

        if 1 <= tasknum <= len(tasks):
            task = tasks[tasknum - 1]
            answer = answers[tasknum - 1]
            hint = hints[tasknum - 1]

            markup = telebot.types.ReplyKeyboardMarkup(resize_keyboard=True)
            hint_button = telebot.types.KeyboardButton("Попросить подсказку")
            skip_button = telebot.types.KeyboardButton("Пропустить")
            markup.add(hint_button, skip_button)

            bot.send_message(message.chat.id, text=task, reply_markup=markup)

            @bot.message_handler(func=lambda message: message.text == "Попросить подсказку")
            def send_hint(message):
                bot.send_message(message.chat.id, text=hint)

            @bot.message_handler(func=lambda message: message.text == answer)
            def check_answer(message):
                bot.send_message(message.chat.id, text='Молодец, ответ правильный')

            @bot.message_handler(func=lambda message: message.text == "Пропустить")
            def skip_task(message):
                bot.send_message(message.chat.id, text="Введи номер задачи для тренеровки")
        else:
            bot.send_message(message.chat.id, text="Неверный номер задачи")
    else:
        bot.send_message(message.chat.id, text="Введите номер задачи")

bot.polling(none_stop=True)

Должно заработать, сделал логику для кнопок и добавил проверку на номер введенной задачи

→ Ссылка