Как на discord.py написать команду по которой бот будет кикать определённого человека?

Нужно что бы при вводе команды kickm бот кикал человека с сервера, но ничего не происходит. В чем ошибка?

mistik = [294519237072912386] #ID пользователя которого должно кикать

@bot.command
async def on_message(message):
  if message.author.id not in whiteList:
    async def kickm(ctx,member:discord.mistik):
      await member.kick(mistik) 

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

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

Во-первых, on_message - это ивент, который выполняется при отправке сообщений, его декоратор должен выглядеть так:

@bot.event или @bot.Cog.listener()

Во-вторых, как уже сказали в комментариях, в вашем коде функция "kickm" не выполнится, т.к вы её не вызвали. Также, вместо "discord.mistik", нужно было написать "discord.Member".

И вот как должно примерно быть:

from discord import Member

@bot.command()
async def kickm(ctx):
    # ID пользователя
    member_id = 255236215612236
    member: Member = ctx.guild.get_member(member_id)

    await member.kick(reason=f'{ctx.author} Выгнал {member}')
→ Ссылка