Можно ли в таком коде сделать автоматическое удаление предыдущего меню?
На работе попросили сделать бота, а я в этом совсем ничего не понимаю. Из разного кода на просторах интернета собрал своего монстра Франклинштейна и он работает. Как сделать так чтобы каждый раз когда пользователь нажимает на кнопку предыдущее меню исчезало, а на его месте возникало новое? Я и кнопки "назад" добавил. Вот мой код:
@bot.message_handler(commands=["start"])
def inline(massege):
mainmenu = types.InlineKeyboardMarkup()
catalog = types.InlineKeyboardButton(text="Каталог", callback_data="Catalog")
help = types.InlineKeyboardButton(text="Поддержка", callback_data="help")
mainmenu.add(catalog, help)
bot.send_message(massege.chat.id, "ВЫБЕРИТЕ КНОПКУ", reply_markup=mainmenu)
@bot.callback_query_handler(func=lambda a:True)
def inline_a(a):
if a.data == 'Catalog' or a.data == "menucatalog": #!
menucatalog = types.InlineKeyboardMarkup()
but1 = types.InlineKeyboardButton(text="Позвонить на горячую линию", callback_data="but1")
but2 = types.InlineKeyboardButton("Перейти на сайт", url='https://vk.com')
but3 = types.InlineKeyboardButton(text="Позвонить психологу", callback_data="but3")
but4 = types.InlineKeyboardButton(text="Меры поддержки семей", callback_data="but4")
but5 = types.InlineKeyboardButton(text="Задать вопрос", callback_data="but5")
but6 = types.InlineKeyboardButton(text="Отправить предложение", callback_data="but6")
but7 = types.InlineKeyboardButton(text="Видеосоветы психолога", callback_data="but7")
backinmainmenuforcatalog = types.InlineKeyboardButton(text="Назад", callback_data="backinmainmenu")
menucatalog.add(but1)
menucatalog.add(but2)
menucatalog.add(but3)
menucatalog.add(but4)
menucatalog.add(but5)
menucatalog.add(but6)
menucatalog.add(but7)
menucatalog.add(backinmainmenuforcatalog)
bot.send_message(a.message.chat.id, 'Каталог', reply_markup=menucatalog)
elif a.data =='but1':
kurs1 = types.InlineKeyboardMarkup()
backincatalog = types.InlineKeyboardButton(text="Назад", callback_data="menucatalog")
kurs1.add(backincatalog)
bot.send_message(a.message.chat.id, '8945', reply_markup=kurs1)
elif a.data =='but2':
kurs1 = types.InlineKeyboardMarkup()
backincatalog = types.InlineKeyboardButton(text="Назад", callback_data="menucatalog")
kurs1.add(backincatalog)
bot.send_message(a.message.chat.id, 'vk.com', reply_markup=kurs1)
elif a.data =='but3':
kurs1 = types.InlineKeyboardMarkup()
backincatalog = types.InlineKeyboardButton(text="Назад", callback_data="menucatalog")
kurs1.add(backincatalog)
bot.send_message(a.message.chat.id, 'Вик1', reply_markup=kurs1)
elif a.data == 'but4':
kurs1 = types.InlineKeyboardMarkup()
callback_data="paykurs10")
paykurs11 = types.InlineKeyboardButton(text="Юридическая консультация",
callback_data="paykurs11")
backincatalog = types.InlineKeyboardButton(text="Назад", callback_data="menucatalog")
kurs1.add(paykurs1)
kurs1.add(backincatalog)
bot.send_message(a.message.chat.id, 'Курс 1', reply_markup=kurs1)
elif a.data == "paykurs1":
kurs1 = types.InlineKeyboardMarkup()
backincatalog = types.InlineKeyboardButton(text="Назад", callback_data="but4")
kurs1.add(backincatalog)
bot.send_message(a.message.chat.id,
'Ежемесячная выплата в РФ»',
reply_markup=kurs1)
elif a.data == "paykurs2":
kurs1 = types.InlineKeyboardMarkup()
backincatalog = types.InlineKeyboardButton(text="Назад", callback_data="but4")
kurs1.add(backincatalog)
bot.send_message(a.message.chat.id,
'Единовременная материальная помощь»',
reply_markup=kurs1)
elif a.data == "paykurs3":
kurs1 = types.InlineKeyboardMarkup()
backincatalog = types.InlineKeyboardButton(text="Назад", callback_data="but4")
kurs1.add(backincatalog)
bot.send_message(a.message.chat.id,
'Единовременная материальная помощь»',
reply_markup=kurs1)
elif a.data == "paykurs4":
kurs1 = types.InlineKeyboardMarkup()
backincatalog = types.InlineKeyboardButton(text="Назад", callback_data="but4")
kurs1.add(backincatalog)
bot.send_message(a.message.chat.id,
'Освобождение от начисления пеней',
reply_markup=kurs1)
elif a.data == "paykurs5":
kurs1 = types.InlineKeyboardMarkup()
backincatalog = types.InlineKeyboardButton(text="Назад", callback_data="but4")
kurs1.add(backincatalog)
bot.send_message(a.message.chat.id,
'Возможность на льготных (безвозмездных) условиях посещать учреждения культуры',
reply_markup=kurs1)
elif a.data == "paykurs6":
elif a.data == 'but5':
kurs1 = types.InlineKeyboardMarkup()
aboutkurs1 = types.InlineKeyboardButton(text="О курсе", callback_data="aboutkurs1")
paykurs1 = types.InlineKeyboardButton(text="Оплата", callback_data="paykurs1")
backincatalog = types.InlineKeyboardButton(text="Назад", callback_data="menucatalog")
kurs1.add(aboutkurs1, paykurs1, backincatalog)
bot.send_message(a.message.chat.id, 'Курс 1', reply_markup=kurs1)
elif a.data == 'but6':
kurs1 = types.InlineKeyboardMarkup()
aboutkurs1 = types.InlineKeyboardButton(text="О курсе", callback_data="aboutkurs1")
paykurs1 = types.InlineKeyboardButton(text="Оплата", callback_data="paykurs1")
backincatalog = types.InlineKeyboardButton(text="Назад", callback_data="menucatalog")
kurs1.add(aboutkurs1, paykurs1, backincatalog)
bot.send_message(a.message.chat.id, 'Курс 1', reply_markup=kurs1)
elif a.data == 'but7':
kurs1 = types.InlineKeyboardMarkup()
aboutkurs1 = types.InlineKeyboardButton(text="О курсе", callback_data="aboutkurs1")
paykurs1 = types.InlineKeyboardButton(text="Оплата", callback_data="paykurs1")
backincatalog = types.InlineKeyboardButton(text="Назад", callback_data="menucatalog")
kurs1.add(aboutkurs1, paykurs1, backincatalog)
bot.send_message(a.message.chat.id, 'Курс 1', reply_markup=kurs1)
elif a.data == 'help':
menuhelp = types.InlineKeyboardMarkup()
helper = types.InlineKeyboardButton(text="Связь с нами", callback_data="helper")
backinmainmenu = types.InlineKeyboardButton(text="Назад", callback_data="backinmainmenu")
menuhelp.add(helper, backinmainmenu)
bot.send_message(a.message.chat.id, 'Выберите действие', reply_markup=menuhelp)
elif a.data == "helper":
bot.send_message(a.message.chat.id, 'Это кнопка 2')
elif a.data == 'backinmainmenu':
return inline(a.message)
#elif a.data == 'menucatalog': #!
# return inline(a.message) #!
elif a.data == 'backinmainmenu':
return inline(a.message)
bot.polling(none_stop=True, interval=0)```