Задать вопрос
  • Почему callback_query_handler в telebot не работает?

    @MCfun Автор вопроса
    Возможно я не совсем корректно задал вопрос. У меня в callback_query_handler даже print(1) не работает. А насчет message: Message, я просто уже несколько способов перепробовал, что в гайдах, что у ии спрашивал, все без толку.

    Upd 1. Крч, я смог это сделать. Первый вариант обратки хендлера у меня был верный:

    @bot.callback_query_handler(func=lambda callback: True)
    def callback_query_handler(callback):
        if callback.data == 'show_anom':
            bot.send_message(callback.message.chat.id, 'Список аномалий: ...')
        elif callback.data == 'show_empl':
            bot.send_message(callback.message.chat.id, 'Список сотрудников: ...')
        elif callback.data == 'show_items':
            bot.send_message(callback.message.chat.id, 'Список предметов: ...')
        bot.answer_callback_query(callback.id)

    А ошибка была в bot.infinity_polling, что у меня в конце кода. К нему надо было добавить это:
    bot.infinity_polling(
        allowed_updates=['message', 'callback_query']
    )

    И все заработает. Хвала китайскому ии!
    Ответ написан