В классе Bot вызов декоратора не отрабатывается по условию

Почему в классе Bot, activate_message if not mess.commands не заходит в @self.bot.callback_query_handler(func=lambda call: call)

import telebot
from telebot import types

class Bot:
    def __init__(self, token):
        self.bot = telebot.TeleBot(token)
        self.messages = []
        self.chat_id = 0

    def add_message(self, mess):
        self.messages.append(mess)

    def activate_message(self, mess):
        if not mess.commands:
            if mess.keyboard:
                self.bot.send_message(self.chat_id, text=mess.text, reply_markup=mess.keyboard)

                @self.bot.callback_query_handler(func=lambda call: call)
                def callback_workers(call):
                    for i in mess.buttons:
                        if i.clb == call.data:
                            self.add_message(i.mess_send)
                            self.activate_message(i.mess_send)
            else:
                self.bot.send_message(self.chat_id, mess.text)
        elif mess.keyboard:
            @self.bot.message_handler(commands=mess.commands)
            def ans(message):
                self.bot.send_message(message.from_user.id, text=mess.text, reply_markup=mess.keyboard)
                self.chat_id = message.chat.id

            @self.bot.callback_query_handler(func=lambda call: True)
            def callback_worker(call):
                for i in mess.buttons:
                    if i.clb == call.data:
                        self.add_message(i.mess_send)
                        self.activate_message(i.mess_send)
        else:
            @self.bot.message_handler(commands=mess.commands)
            def chat(message):
                self.bot.send_message(message.chat.id, mess.text)
                self.chat_id = message.chat.id


class Message:
    def __init__(self, text, buttons, commands):
        self.text = text
        self.buttons = buttons
        self.commands = commands
        if self.buttons:
            self.keyboard = types.InlineKeyboardMarkup()
            for i in self.buttons:
                self.keyboard.add(types.InlineKeyboardButton(text=i.text, callback_data=i.clb))
        else:
            self.keyboard = False

    def text_edit(self, new_text):
        self.text = new_text

    def buttons_edit(self, new_buttons):
        self.buttons = new_buttons

    def commands_edit(self, new_commands):
        self.commands = new_commands


class Button:
    def __init__(self, text, mess_send):
        self.text = text
        self.clb = text
        self.mess_send = mess_send

Не получается, код прерывается в моменте когда на вторую кнопку нажимаю

from telegram_creator import *

bot = Bot('6977925867:AAGre8LZICg0squJ5oZL37zDSQyt6TqZyQY')
burt = Button("sdfsf", Message("glora", False, False))
buton = Button('YJhvbr', Message('glory', [burt], False))
message = Message('Hello', [buton], ['start'])
bot.add_message(message)
bot.activate_message(message)
bot.bot.polling()

Ответы (0 шт):