Вопрос про асинхронность в Телеграм боте на aiogram

Я создаю бота который выдаёт тесты нужно чтоб он брал и выдавал по одному вопросу и ждал ответа, но из за асинхронности он выводит все вопросы до их ответов

    @dp.message_handler(lambda message: message.text == "Начать Тест")
async def history_test_command(message: types.Message):
    lst_questions = random_questions()
    await message.reply("Начинается тест из 30 вопросов", reply_markup=answers_options_kb)
    for i in range(0, len(lst_questions)):
        question, answer, full_answer = [i for i in get_question(lst_questions[i])]
        await message.reply(f"{question}", reply_markup=answers_options_kb)

        @dp.message_handler()
        async def get_answer_message(message: types.Message):
            result = 0
            if message.text.lower() == answer.lower():
                await message.reply("Верный ответ, идем дальше\n", reply_markup=answers_options_kb)
                result += 3.33
            else:
                await message.reply(f"неверный ответ\nВерный:\n{full_answer}\nИдем дальше",
                            reply_markup=answers_options_kb)

еще хотелось бы узнать почему он примерно 20-30 секунд отвечает на команды "История" и "Начать тест" есть подозрения на на эту строку

@dp.message_handler(lambda message: message.text == "Начать Тест")

но я не находил других способов обрабатывать сообщения с определенным текстом


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