Задать вопрос
@antinatalismmm

Как правильно написать кнопочный бот в Телеграм на Python?

Понимаю, как задать варианты кнопок и включить бота, но дальнейшие действия после использования последней кнопки не понятны.
блок-схема
5eee2170208f0530372858.jpeg

код
import telebot

bot = telebot.TeleBot('мой токен')
keyboard1 = telebot.types.ReplyKeyboardMarkup(True, True)
keyboard2 = telebot.types.ReplyKeyboardMarkup(True, True)
keyboard1.row('А','Б')
keyboard2.row('1,'2')

@bot.message_handler(commands=['start'])
def start_message(message):
    bot.send_message(message.chat.id, 'Привет. А или Б?',reply_markup=keyboard1)

@bot.message_handler(content_types=['text'])
def send_text(message):
    if message.text.lower() == 'А':
        bot.send_message(message.chat.id, '1 или 2?', reply_markup=keyboard2)
    elif message.text.lower() == 'Б':
        bot.send_message(message.chat.id, '1 или 2?',reply_markup=keyboard2)
        bot.register_next_step_handler(message,data);

??

bot.polling()
  • Вопрос задан
  • 219 просмотров
Подписаться 2 Средний Комментировать
Решения вопроса 1
@del4pp
Как вариант
if message.text == 'A':
bot.register_next_step_hendler(message, функция1)
elif message.text == 'B':
bot.register_next_step_hendler(message, функция2)

И т.д

Ещё вы используете .lower() что приводит строку в нижний регистр, и потом сравнтваете с буквой верхнего регистра.
Так делать не хорошо.
Ответ написан
Комментировать
Пригласить эксперта
Ваш ответ на вопрос

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

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