@Sintax

Как сделать возвращение назад телеграмм бот?

Добрый день, у меня такой вопрос. Например выбрал поды зашел в марку да, а как вернуться назад к ассортименту?
def lalala(message):
    chatId = message.chat.id
    if message.chat.type == 'private':
        if message.text == 'Ассортимент':

            # keyboard (Создание кнопок под текстом)
            markup = types.InlineKeyboardMarkup(row_width=2)
            item1 = types.InlineKeyboardButton("POD-Системы", callback_data='1')
            item2 = types.InlineKeyboardButton("Одноразовые сигареты", callback_data='2')
            item3 = types.InlineKeyboardButton("Кальяны", callback_data='3')
            item4 = types.InlineKeyboardButton("Табак", callback_data='4')
            item5 = types.InlineKeyboardButton("Аксессуары для кальяна", callback_data='akskal')
            item6 = types.InlineKeyboardButton("Комплектующие к под-системам", callback_data='podkom')
            item7 = types.InlineKeyboardButton("Жидкость", callback_data='liquid')
           # item6 = types.InlineKeyboardButton("Испаритель", callback_data='isparic')
           # item8 = types.InlineKeyboardButton("Катридж", callback_data='katrid')

            markup.add(item1, item2, item3, item4, item5,item6, item7)

            bot.send_message(message.chat.id, 'Что вам нужно?', reply_markup=markup)


        # elif message.text == ' '
        elif message.text == "О нас":
            bot.send_message(message.chat.id, "Астраханский магазин GothamShop")



        elif message.text == "Контактные данные":
            bot.send_message(message.chat.id, "+7 (8512) 20-05-35")


        else:
            bot.send_message(message.chat.id, 'Не знаю такую команду')


# ---------------------------------------------------------------------------


@bot.callback_query_handler(func=lambda call: True)
def callback_inline(call):


    try:
        if call.message:

            # keyboard (Работа с кнопками под текстом)
            if call.data == '1':
                    keyboard = types.InlineKeyboardMarkup()
                    item1 = types.InlineKeyboardButton(text="Smoant", callback_data='smoant')
                    item2 = types.InlineKeyboardButton(text="Vaporesso", callback_data='vappor')
                    item3 = types.InlineKeyboardButton(text="GeekVape", callback_data='gekv')
                    item4 = types.InlineKeyboardButton(text="Smok", callback_data='smokn')
                    item5 = types.InlineKeyboardButton(text="Brusko", callback_data='bruskom')
                    item7 = types.InlineKeyboardButton(text="Rincoe", callback_data='rincoe')
                    item6 = types.InlineKeyboardButton(text="Voopoo", callback_data='voopm')
                    item8 = types.InlineKeyboardButton(text="IJOY", callback_data="ijoym")
                    item9 = types.InlineKeyboardButton(text="Назад", callback_data="1")

                    keyboard.add(item1, item2, item3, item4, item5, item6, item7, item8, item9)
                    bot.edit_message_text(chat_id=call.message.chat.id, message_id=call.message.message_id,
                                          text="Какой марки POD-Системы вы хотите?", reply_markup=keyboard)

Тоесть кнопка назад у меня есть item9 = types.InlineKeyboardButton(text="Назад", callback_data="1"), а как сделать такую же кнопку но только чтобы она выводила меня на ассортимент: Вот сюда
def lalala(message):
    chatId = message.chat.id
    if message.chat.type == 'private':
        if message.text == 'Ассортимент':

            # keyboard (Создание кнопок под текстом)
            markup = types.InlineKeyboardMarkup(row_width=2)
            item1 = types.InlineKeyboardButton("POD-Системы", callback_data='1')
            item2 = types.InlineKeyboardButton("Одноразовые сигареты", callback_data='2')
            item3 = types.InlineKeyboardButton("Кальяны", callback_data='3')
            item4 = types.InlineKeyboardButton("Табак", callback_data='4')
            item5 = types.InlineKeyboardButton("Аксессуары для кальяна", callback_data='akskal')
            item6 = types.InlineKeyboardButton("Комплектующие к под-системам", callback_data='podkom')
            item7 = types.InlineKeyboardButton("Жидкость", callback_data='liquid')
           # item6 = types.InlineKeyboardButton("Испаритель", callback_data='isparic')
           # item8 = types.InlineKeyboardButton("Катридж", callback_data='katrid')

            markup.add(item1, item2, item3, item4, item5,item6, item7)

            bot.send_message(message.chat.id, 'Что вам нужно?', reply_markup=markup)
  • Вопрос задан
  • 175 просмотров
Решения вопроса 1
@Vin_roman
Здравствуйте, для этого делается специальный алгоритм. Какими-то командами это сделать нельзя, но можно сделать самому:
def lalala(message):
chatId = message.chat.id
if message.chat.type == 'private':
if message.text == 'Ассортимент':
markup = types.InlineKeyboardMarkup(row_width=2)
item1 = types.InlineKeyboardButton("POD-Системы", callback_data='1')
item2 = types.InlineKeyboardButton("Одноразовые сигареты", callback_data='2')
item3 = types.InlineKeyboardButton("Кальяны", callback_data='3')
item4 = types.InlineKeyboardButton("Табак", callback_data='4')
item5 = types.InlineKeyboardButton("Аксессуары для кальяна", callback_data='akskal')
item6 = types.InlineKeyboardButton("Комплектующие к под-системам", callback_data='podkom')
item7 = types.InlineKeyboardButton("Жидкость", callback_data='liquid')
# item6 = types.InlineKeyboardButton("Испаритель", callback_data='isparic')
# item8 = types.InlineKeyboardButton("Катридж", callback_data='katrid')
markup.add(item1, item2, item3, item4, item5,item6, item7)
bot.send_message(message.chat.id, 'Что вам нужно?', reply_markup=markup)


@bot.callback_query_handler(func=lambda call: True)
def callback_inline(call):

try:
if call.message:
if call.data == '1':
keyboard = types.InlineKeyboardMarkup()
item1 = types.InlineKeyboardButton(text="Smoant", callback_data='smoant')
item2 = types.InlineKeyboardButton(text="Vaporesso", callback_data='vappor')
item3 = types.InlineKeyboardButton(text="GeekVape", callback_data='gekv')
item4 = types.InlineKeyboardButton(text="Smok", callback_data='smokn')
item5 = types.InlineKeyboardButton(text="Brusko", callback_data='bruskom')
item7 = types.InlineKeyboardButton(text="Rincoe", callback_data='rincoe')
item6 = types.InlineKeyboardButton(text="Voopoo", callback_data='voopm')
item8 = types.InlineKeyboardButton(text="IJOY", callback_data="ijoym")
item9 = types.InlineKeyboardButton(text="Назад", callback_data="back")
keyboard.add(item1, item2, item3, item4, item5, item6, item7, item8, item9)
bot.edit_message_text(chat_id=call.message.chat.id, message_id=call.message.message_id,
text="Какой марки POD-Системы вы хотите?", reply_markup=keyboard)
if call.data == 'back':
markup = types.InlineKeyboardMarkup(row_width=2)
item11 = types.InlineKeyboardButton("POD-Системы", callback_data='1')
item22 = types.InlineKeyboardButton("Одноразовые сигареты", callback_data='2')
item33 = types.InlineKeyboardButton("Кальяны", callback_data='3')
item44 = types.InlineKeyboardButton("Табак", callback_data='4')
item55 = types.InlineKeyboardButton("Аксессуары для кальяна", callback_data='akskal')
item66 = types.InlineKeyboardButton("Комплектующие к под-системам", callback_data='podkom')
item77 = types.InlineKeyboardButton("Жидкость", callback_data='liquid')
# item6 = types.InlineKeyboardButton("Испаритель", callback_data='isparic')
# item8 = types.InlineKeyboardButton("Катридж", callback_data='katrid')
markup.add(item11, item22, item33, item44, item55,item66, item77)
bot.send_message(message.chat.id, 'Что вам нужно?', reply_markup=markup)
Ответ написан
Комментировать
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы