Ошибка при работе с inline клавиатурой

Рейтинг: 0Ответов: 1Опубликовано: 24.05.2023

нужна помощь! Выходит при запуске кода такая ошибка:

aiogram.utils.exceptions.BadRequest: Can't parse reply keyboard markup json object

Работает исправно все, кроме клавиатуры, при сообщении от пользователя 'Открой клавиатуру', бот перестает работать.. Помогите, пожалуйста!

@dp.message_handler(content_types='text')
    async def send_photo(message: types.Message):
        if message.text == 'Вышли фото':
            photo = open('image.jpg', 'rb')
            await bot.send_photo(chat_id=message.chat.id, photo=photo)
    
        elif message.text == 'Открой клавиатуру':
            await bot.send_message(message.chat.id, text='lalala', reply_markup=markups.showStrategies())
    
        else:
            await bot.send_message(message.chat.id, text='❗️Такой команты нет')
    
    
@dp.callback_query_handler(lambda call: call.data == 'btn1')
def but1_pressed(call: types.CallbackQuery):
    bot.send_message(chat_id=call.message.chat.id, text='Результат')

Ответы

▲ 0

Начнем с ошибки: aiogram.utils.exceptions.BadRequest: Can't parse reply keyboard markup json object

Бот завершает работу по причине того, что не может спарсить данную клавиатуру для вывода пользователю.

Ошибка в данной строчке:

await bot.send_message(message.chat.id, text='lalala', reply_markup=markups.showStrategies())

markups.showStrategies() - вообще не понятно для чего нужна данная строчка

Решение.

Заменить данную строчку на название вашей клавиатуры. Например:

await bot.send_message(message.chat.id, text='lalala', reply_markup=kb.markups())