telebot inline buttons
Я новичок и у меня есть вопрос. Мне нужно, чтобы после нажатия на встроенную кнопку осуществлялся переход в новый блок с новой встроенной кнопкой и... Вот мой код. Проблема в том, что обработчик не работает при нажатии на вторую кнопку, которую я создал в первом обработчике...
import telebot
from telebot import types
TOKEN = ''
bot = telebot.TeleBot(TOKEN)
@bot.message_handler(commands=['start'])
def send_welcome(message):
kb = types.InlineKeyboardMarkup(row_width=1)
btn_types = types.InlineKeyboardButton(text='label1', callback_data='btn_types')
kb.add(btn_types)
bot.send_message(message.chat.id, "text",
reply_markup=kb)
@bot.callback_query_handler(func=lambda callback: True)
def check_callback_data(callback):
if callback.message:
if callback.data == 'btn_types':
file = open('photo1.jpg', 'rb')
kb = types.InlineKeyboardMarkup(row_width=1)
btn_types1 = types.InlineKeyboardButton(text='label1', callback_data='btn_types1')
kb.add(btn_types1)
bot.send_photo(callback.message.chat.id, file,'text',reply_markup=kb)
@bot.callback_query_handler(func=lambda callback: True)
def check_callback1_data(callback):
if callback.message:
if callback.data == 'btn_types1':
file = open('photo2.jpg', 'rb')
kb = types.InlineKeyboardMarkup(row_width=1)
btn_types2 = types.InlineKeyboardButton(text='label2', callback_data='btn_types2')
kb.add(btn_types2)
bot.send_photo(callback.message.chat.id, file,'text',
reply_markup=kb)
bot.infinity_polling()
Источник: Stack Overflow на русском