Код: Выделить всё
bot = telebot.TeleBot(TOKEN)
@bot.message_handler(commands=['start'])
def main(message):
markup = types.InlineKeyboardMarkup()
buy_btn = types.InlineKeyboardButton("Buy",
callback_data="buy")
purchases_btn = types.InlineKeyboardButton("Purchases",
callback_data="show_purchases")
markup.row(buy_btn, purchases_btn)
settings_btn = types.InlineKeyboardButton("Settings",
callback_data="show_settings")
markup.row(settings_btn)
bot.reply_to(message, "Choose one:", reply_markup=markup)
@bot.callback_query_handler(func=lambda callback: callback.data)
def callbacks(callback):
print(f"Callback data received: {callback.data}")
if callback.data == "buy":
bot.send_message(callback.message.chat.id, "Buy")
if __name__ == '__main__':
bot.polling(none_stop=True)
Я изучаю телебот по обучающим видеороликам и попробовал перепроверить свой код. несколько раз. Все условия для работы соблюдены. Я просмотрел официальную документацию по обработке обратных вызовов, но там было то же самое.
Я ожидаю, что функция обратных вызовов хотя бы распечатает хотя бы некоторые из полученных обратных вызовов.
Подробнее здесь: https://stackoverflow.com/questions/791 ... s-not-work
Мобильная версия