Задать вопрос
@Azapro0

Не работает callback функция в telebot. Как исправить?

Мой код:
@bot.message_handler(commands=['menu'])
def menu(msg):
    if not check(msg.chat.id):
        bot.send_message(msg.chat.id, 'Ты кто?')
        markup = types.InlineKeyboardMarkup()
        markup.add(types.InlineKeyboardButton('Кнопка', callback_data='btn')
	bot.send_message(msg.chat.id, 'Меню', reply_markup=markup)

@bot.callback_query_handler(func=lambda callback: True)
def callback_message(callback):
    if callback.data == 'btn':
        bot.send_message(callback.message.chat.id, 'Hello')
  • Вопрос задан
  • 283 просмотра
Подписаться 1 Простой Комментировать
Решения вопроса 1
febday
@febday
Ну во-первых: У вас не закрытая скобка (не знаю, так запланировано или это вы так скопировали сюда, но факт остаётся фактом)
Странно, что вам не выдало ошибку, либо вы нам о ней не сказали
Строка где ошибка (как есть сейчас):
markup.add(types.InlineKeyboardButton('Кнопка', callback_data='btn')

Как должно быть:
markup.add(types.InlineKeyboardButton('Кнопка', callback_data='btn'))


Во-вторых: Попробуйте обновить токен бота, возможно починится само (лично у меня не приходили апдейты, пока я токен не обновил)
Ответ написан
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы
SpectrumData Екатеринбург
от 200 000 до 300 000 ₽
Akronix Санкт-Петербург
от 150 000 до 200 000 ₽
AST Москва
До 350 000 ₽
18 янв. 2025, в 13:29
6000 руб./за проект
18 янв. 2025, в 13:29
20000 руб./за проект
18 янв. 2025, в 12:47
4000 руб./за проект