Почему перезарядка кнопки через CooldownMapping работает на всех участников?

После нажатия на кнопку КД запускается на всех участников сервера, а не на конкретного юзера. При этом в параметрах указан базис на юзера.

self.cooldown = commands.CooldownMapping.from_cooldown(1, 10, type=commands.BucketType.user)

Также пробовались остальные базисы, но разницы между ними никакой не наблюдалось. Отдельно пробовалось type=commands.BucketType.member - тоже не помогло.

Полный код:

class MyClass(View): 

    def __init__(self, bot: discord.Bot):
        super().__init__(timeout=None)
        self.bot=bot
        self.cooldown = commands.CooldownMapping.from_cooldown(1, 10, type=commands.BucketType.user)
    

    @button(label="Button1", custom_id="button_one", style=discord.ButtonStyle.green)
    async def callback(self, button: discord.ui.Button, Interaction: discord.Interaction):
            
        bucket=self.cooldown.get_bucket(Interaction.message)
        retry = bucket.update_rate_limit()
        if retry:
           return await Interaction.response.send_message('')
    #код дальше

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

Автор решения: nastexe

Извиняюсь за спешный вопрос.

На всякий случай добавлю решение: нужно было добавить условие Interaction.message.author = Interaction.user, чтобы оно работало корректно.

→ Ссылка