Как заставить бота выдавать сообщение после нажатия второй кнопки?

Где находится проблема в моем коде? Я никогда не изучал Python и пишу бота для себя.
  • 17 декабря 2023 г. 11:27
Ответы на вопрос 2
Чтобы бот выдавал сообщение после нажатия второй кнопки, вам нужно добавить обработчик нажатия второй кнопки и указать, какое сообщение должно быть отправлено. Вот пример, который показывает, как это можно сделать:

```python
from telebot import TeleBot, types

bot = TeleBot('YOUR_TOKEN')  # Вставьте сюда свой токен

@bot.message_handler(commands=['start'])
def start(message):
    markup = types.ReplyKeyboardMarkup(row_width=2)
    button1 = types.KeyboardButton('Кнопка 1')
    button2 = types.KeyboardButton('Кнопка 2')
    markup.add(button1, button2)
    bot.send_message(message.chat.id, 'Выберите кнопку:', reply_markup=markup)

@bot.message_handler(func=lambda message: True)
def handle_buttons(message):
    if message.text == 'Кнопка 1':
        bot.send_message(message.chat.id, 'Вы нажали на кнопку 1')
    elif message.text == 'Кнопка 2':
        bot.send_message(message.chat.id, 'Вы нажали на кнопку 2')
        bot.send_message(message.chat.id, 'Сообщение после нажатия второй кнопки')

bot.polling()
```

В этом примере, после нажатия второй кнопки "Кнопка 2", бот отправит два сообщения: одно с текстом "Вы нажали на кнопку 2", а затем с текстом "Сообщение после нажатия второй кнопки". Вы можете модифицировать текст и добавить любую другую логику в обработчике нажатия второй кнопки, для выполнения нужных действий.
Делов в том что при получении любого текста происходит изначально проверка условия: 


Если текст не равен этому то дальше код не выполняется, для решения проблемы, используете elif message.text == "Any".

Вот как примерно должно выглядеть:

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