Как получить message.text или предложите как лучше сделать python telebot?

Я пишу код телеграм бота в python

Я хочу после того как пользователь написал текст (допустим картошка), в свойстах стоит inlinekeyboard кнопки (допустим почистить и помыть) и если пользователь нажимает одну из них бот запоминает предыдущее сообщение и переходит выполнять функцию исходя из данных отправленных боту.

Сейчас отправлю пример:

elif message.text.lower() == 'овощи или фрукты':
        msg = bot.send_message(chat_id, text="отправьте фрукт или овощ",
        parse_mode='markdown')
        bot.register_next_step_handler(msg, ovoshifructs)

def ovoshifructs(message):
        bot.reply_to(message, 
                     text= "Что хотите сделать?",
                     parse_mode='Markdown',
                     reply_markup=menu.choosecountry) #тут 2 Inline кнопки почистить или помыть

Затем бот принимает данные в @bot.callback_query_handler

@bot.callback_query_handler(func=lambda call: True)
    def handler_call(call):
        chat_id = call.message.chat.id
        message_id = call.message.message_id

        if call.data == 'pochistit':
            dict = func.savetext(chat_id) #class savetext
            savetext_dict[chat_id] = dict #dict savetext

            dict = savetext_dict[chat_id]
            msg = dict.text = message.text #error
            bot.register_next_step_handler(msg, handle_fructs_ovochi)

И вот под конец оно не знает что такое message.text. Возможно у вас есть варианты как можно сократить код, а не перекидывать каждый раз или сделать его компактнее. А в целом проблема была в том что в call нет message то-есть сохранить отправленный текст после нажатия inline кнопки нельзя

То-есть мне надо сохранить слово картошка и запустить ту функцию которую юзер выбрал на inline кнопках


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