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

Как исправить ошибку TeleBot.add_callback_query_handler() got an unexpected keyword argument 'func'?

import telebot
from telebot import types

bot = telebot.TeleBot('-----')

@bot.message_handler(commands=['start'])
def button(message):
    markup = types.InlineKeyboardMarkup(row_width=2)
    item = types.InlineKeyboardButton('start', callback_data='start')
    item2 = types.InlineKeyboardButton('sixes', callback_data='sixes')
    item3 = types.InlineKeyboardButton('info', callback_data='info')
    item4 = types.InlineKeyboardButton('creator', callback_data='creator')
    markup.add(item, item2, item3, item4)

    bot.send_message(message.chat.id, '------', reply_markup=markup)


@bot.add_callback_query_handler(func=lambda call:True)
def callback(call):
    if call.message:
        if call.data == 'start':
            bot.send_message(call.message.caht.id, '-------')


bot.polling(none_stop=True)
  • Вопрос задан
  • 248 просмотров
Подписаться 1 Простой Комментировать
Пригласить эксперта
Ответы на вопрос 1
Lord_of_Rings
@Lord_of_Rings
Дунадан - северный странник. Злой, но очень добрый
В документации читаем

add_callback_query_handler(handler_dict)

Adds a callback request handler Note that you should use register_callback_query_handler to add callback_query_handler to the bot.

PARAMETERS
handler_dict –

RETURNS


Поэтому ваш код будет выглядеть так
import telebot
from telebot import types

bot = telebot.TeleBot('-----')

@bot.message_handler(commands=['start'])
def button(message):
    markup = types.InlineKeyboardMarkup(row_width=2)
    item = types.InlineKeyboardButton('start', callback_data='start')
    item2 = types.InlineKeyboardButton('sixes', callback_data='sixes')
    item3 = types.InlineKeyboardButton('info', callback_data='info')
    item4 = types.InlineKeyboardButton('creator', callback_data='creator')
    markup.add(item, item2, item3, item4)

    bot.send_message(message.chat.id, '------', reply_markup=markup)


@bot.callback_query_handler(func=lambda call:True)
def callback(call):
    if call.message:
        if call.data == 'start':
            bot.send_message(call.message.caht.id, '-------')


bot.polling(none_stop=True)
Ответ написан
Комментировать
Ваш ответ на вопрос

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

Похожие вопросы