Python. Telegram bot. Не работает кнопка
Пытаюсь реализовать механизм реакции бота на нажатие кнопки. К сожалению, бот не выдает ожидаемый результат. В чем ошибка?
import logging
from telegram import KeyboardButton, ReplyKeyboardMarkup, Update
from telegram.ext import Updater, CommandHandler, CallbackQueryHandler
logging.basicConfig(
format='%(asctime)s - %(name)s - %(levelname)s - %(message)s', level=logging.INFO
)
logger = logging.getLogger(__name__)
start_button = 'Начать'
start_text = '''
Для старта, нажмите "Начать" \U0001F447
'''
def start(update, _):
keyboard = [
[
KeyboardButton(start_button, callback_data='1'),
],
]
reply_markup = ReplyKeyboardMarkup(keyboard, resize_keyboard=True)
update.message.reply_text(start_text, reply_markup=reply_markup)
def button(update, _):
query = update.callback_query
variant = query.data
query.answer()
query.edit_message_text(text=f"Нажата кнопка: {variant}")
def help_command(update, _):
update.message.reply_text("Используйте `/start` для запуска бота.")
if __name__ == '__main__':
updater = Updater("TOKEN")
updater.dispatcher.add_handler(CommandHandler('start', start))
updater.dispatcher.add_handler(CallbackQueryHandler(button))
updater.dispatcher.add_handler(CommandHandler('help', help_command))
updater.start_polling()
updater.idle()