@smartyyy

Как сделать кнопку назад в телебот пайтон?

import telebot
from telebot import types

bot = telebot.TeleBot('')

@bot.message_handler(commands=['start'])
def start(message):
    markup = types.InlineKeyboardMarkup(row_width=2)
    btn2 = types.InlineKeyboardButton('Ні', callback_data='no')
    btn1 = types.InlineKeyboardButton('Так', callback_data='yes')
    btn3 = types.InlineKeyboardButton('Контакти', callback_data='contact')
    btn4 = types.InlineKeyboardButton('Залишити відгук', callback_data='review')
    markup.add(btn1, btn2, btn3, btn4)

    bot.send_message(message.chat.id, f'Вітаю,<em> {message.from_user.first_name}</em>! Бажаєте покращити Ваше авто?', parse_mode='html', reply_markup=markup)




@bot.callback_query_handler(func=lambda call: True)
def callback_query(call):
    ans = types.InlineKeyboardMarkup(row_width=1)
    ans1 = types.InlineKeyboardButton('Назад', callback_data='back')
    ans.add(ans1)
        if call.data == 'contact':
            bot.edit_message_text(chat_id=call.message.chat.id, message_id=call.message.id, text= ' Номер телефону: +380977735584 \n  Сайт: auto-repair-shop-10715.business.site \n  Робочий час: Понеділок - Субота / 08:00 - 18:00', reply_markup=ans)
        elif call.data == 'no':
            bot.edit_message_text(chat_id=call.message.chat.id, message_id=call.message.id, text='Виникли питання? - Технічна підтримка @rebirthofdev. \nЧас роботи - 08.00 - 23.00', reply_markup=ans)
        elif call.data == 'back':
            


bot.polling(none_stop=True)
  • Вопрос задан
  • 105 просмотров
Пригласить эксперта
Ответы на вопрос 1
@twistfire92
Python backend developer
1. вынести создание клавиатуры главного меню в отдельную функцию
2. удалить ненужное условие if call.message:
3. добавить условие на call.data == "back", где получите клавиатуру вызовом функции из п.1 и отредактируете сообщение с нужным текстом и этой клавиатурой
Ответ написан
Ваш ответ на вопрос

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

Войти через центр авторизации
Похожие вопросы