Отправка сообщения после команды ban / kick - PullRequest
0 голосов
/ 01 июня 2019

Я настраиваю бот-диск, и я хочу, чтобы бот отправлял подтверждение или сообщение об ошибке после команд "ban" и "kick", кто-нибудь может помочь?

Я попытался создать еще одну отдельную команду с теми же аргументами, за исключением того, что она просто отправила ожидаемое сообщение.

@client.event
async def on_ready():
    print('Bot is ready!')

@client.event
async def on_member_join(ctx, member):
    print(f'{member} has joined {ctx.guild.name}.')

@client.event
async def on_member_remove(ctx, member):
    print(f'{member} has left {ctx.guild.name}.')

@client.event
async def on_member_join(member):
    role = discord.utils.get(member.server.roles, name="Member")
    await client.add_roles(member, role)

@client.command()
async def ping(ctx):
    await ctx.send(f'Pong! :ping_pong: **{round(client.latency * 1000)}ms** ')

@client.command()
async def purge(ctx, amount):
    await ctx.channel.purge(limit=amount)
    await ctx.send(f'{member.display_name} has been kicked.')

@client.command()
async def kick(ctx, member : discord.Member, *, reason=None):
    await member.kick(reason=reason)
    await ctx.send(f'{member.display_name} has been kicked.'')

@client.command()
async def ban(ctx, member : discord.Member, *, reason=None):
    await member.ban(reason=reason)
    await ctx.send(f'The Ban Hammer has Spoken! {member.display_name} has been banned!')

@client.command()
async def pardon(ctx, *, member):
    banned_users = await ctx.guild.bans()
    member_name, member_discriminator = member.split('#')

    for ban_entry in banned_users:
        user = ban_entry.banned_users

        if (user.name, user.discriminator) == (member_name, member_discriminator):
            await ctx.guild.unban(user)
            await ctx.send(f'Unbanned {member.display_name}')

На самом деле, я думаю, это было бы здорово, потому что они конфликтуют сдруг друга и, вероятно, отправит сообщение, но оно пошло не так.

...