Discord.py. Бот не выводит сообщение в чат при использовании команды пользователем без нужных для этой команды прав

Подскажите пожалуйста, почему бот не выводит сообщение в чат при написании команды от лица пользователя без нужных прав. При этом ошибки не возникает.

Пробовал писать MissingPermissions вместо PermissionsError, как итог получал ошибку.

@bot.command()
@commands.has_permissions(manage_messages=True)
async def delete(ctx, amount:int):
    await ctx.channel.purge(limit=amount + 1)
    await ctx.send(f'*Успешная аннигиляция {amount} сообщений!*', delete_after=3)

@delete.error
async def delete_error(ctx, error):
    if isinstance(error, PermissionError):
        await ctx.send('у вас нет доступа к этой команде!')

Ошибка появляется в результате написания команды в чат юзером без необходимых для команды прав. Сама ошибка ниже:

Traceback (most recent call last):
  File "C:\Users\Katerina\Desktop\proj\venv\lib\site-packages\discord\ext\commands\core.py", line 71, in wrapped
    ret = await coro(*args, **kwargs)
  File "C:\Users\Katerina\Desktop\proj\bot\botrun.py", line 77, in delete_error
    if isinstance(error, MissingPermissions):
NameError: name 'MissingPermissions' is not defined

The above exception was the direct cause of the following exception:

Traceback (most recent call last):
  File "C:\Users\Katerina\Desktop\proj\venv\lib\site-packages\discord\client.py", line 343, in _run_event
    await coro(*args, **kwargs)
  File "C:\Users\Katerina\Desktop\proj\bot\botrun.py", line 27, in on_message
    await bot.process_commands(message)
  File "C:\Users\Katerina\Desktop\proj\venv\lib\site-packages\discord\ext\commands\bot.py", line 976, in process_commands
    await self.invoke(ctx)
  File "C:\Users\Katerina\Desktop\proj\venv\lib\site-packages\discord\ext\commands\bot.py", line 943, in invoke
    await ctx.command.dispatch_error(ctx, exc)
  File "C:\Users\Katerina\Desktop\proj\venv\lib\site-packages\discord\ext\commands\core.py", line 424, in dispatch_error
    await injected(ctx, error)
  File "C:\Users\Katerina\Desktop\proj\venv\lib\site-packages\discord\ext\commands\core.py", line 77, in wrapped
    raise CommandInvokeError(exc) from exc
discord.ext.commands.errors.CommandInvokeError: Command raised an exception: NameError: name 'MissingPermissions' is not defined

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

Автор решения: Black Fxx

Не долго покопавшись в коде днем, была найдена причина проблемы.

import discord
from discord.ext import commands 
from discord.ext.commands import has_permissions, MissingPermissions #забыл добавить MissingPermissions

#Декоратор события
@bot.event
async def on_message(message):
    if message.author == bot.user:
        return
    await bot.process_commands(message)


#сама команда
@bot.command()
@commands.has_permissions(manage_messages=True)
async def delete(ctx, amount:int):
    await ctx.channel.purge(limit=amount + 1)
    await ctx.send(f'*Успешная аннигиляция {amount} сообщений!*', delete_after=3)


#ошибка в случае если у пользователя нет прав на определенную команду
@delete.error
async def delete_error(ctx, error):
    if isinstance(error, MissingPermissions):
        await ctx.send('у вас нет доступа к этой команде!')
→ Ссылка