Как на 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}')