pyTelegramBotAPI - Как создать сообщение, которое обновляется кнопками?
Недавно я попытался создать сообщение, которое обновляется при нажатии кнопки на встроенной клавиатуре, но безуспешно.
Я использую pyTelegramBotAPI, я могу заставить бота отправлять сообщение с клавиатуры, но не могу заставить работать различные кнопки.
Вы можете помочь мне? :<
1 ответ
Чтобы создать несколько вариантов выбора (например, кнопки), вы используете
InlineKeyboardButton
объект
options = []
# buttons
options.append(InlineKeyboardButton('One', callback_data='1'))
options.append(InlineKeyboardButton('Two', callback_data='2'))
options.append(InlineKeyboardButton('Three', callback_data='3'))
reply_markup = InlineKeyboardMarkup([options])
update.message.reply_text(response.message, reply_markup=reply_markup)
Обязательно установите соответствующий
CallbackQueryHandler
обработать выбор пользователя
updater.dispatcher.add_handler(CallbackQueryHandler(main_handler, pass_chat_data=True, pass_user_data=True))
В приведенном выше примере метод
main_handler(update, context)
будет нести ответственность за обработку пользовательского ввода.
Не стесняйтесь проверить репозиторий TelegramBotDemo на GitHub, чтобы увидеть полную реализацию