Discord.py rewrite 如何在discord.py中设置暂停的原因和持续时间?

Discord.py rewrite 如何在discord.py中设置暂停的原因和持续时间?,discord.py-rewrite,Discord.py Rewrite,我有一个工作暂停命令,但不能让机器人重复原因和持续时间,然后删除触发器。我也不知道如何使机器人自动解除后暂停时间。这是我的密码: @bot.command(pass_ctx=True) @commands.has_any_role('✪ Commissioner ✪', '✪ Vice Commissioner ✪', '✪ Board of Directors ✪') async def suspend(ctx, *, member:discord.Member): guild = bot.

我有一个工作暂停命令,但不能让机器人重复原因和持续时间,然后删除触发器。我也不知道如何使机器人自动解除后暂停时间。这是我的密码:

@bot.command(pass_ctx=True)
@commands.has_any_role('✪ Commissioner ✪', '✪ Vice Commissioner ✪', '✪ Board of Directors ✪')
async def suspend(ctx, *, member:discord.Member):
 guild = bot.get_guild(766292887914151949)
 role_name = 'Suspended'
 role = discord.utils.get(guild.roles, name='Suspended')
 embed = discord.Embed(
 colour = discord.Colour.red())
 [
   embed.add_field(name='<a:CheckMark:768095274949935146> **Success!**', value=f'{member.mention} has been successfully suspended.')]
 await ctx.send(embed=embed)
 await member.add_roles(role)
@bot.command(pass\u ctx=True)
@commands.have_任何_角色('✪ 委员✪', '✪ 副专员✪', '✪ 董事会✪')
异步定义挂起(ctx,*,成员:discord.member):
帮会=bot.get_帮会(766292887914151949)
角色名称='Suspended'
role=discord.utils.get(guild.roles,name='Suspended')
嵌入=不和谐。嵌入(
color=discord.color.red())
[
embed.add_字段(name='**Success!**',value=f'{member.notice}已成功挂起。“)]
等待ctx.send(嵌入=嵌入)
等待成员。添加_角色(角色)

一种方法是使用asyncio模块。您可以将当前代码替换为:

import asyncio

@bot.command(pass_ctx=True)
@commands.has_any_role('✪ Commissioner ✪', '✪ Vice Commissioner ✪', '✪ Board of Directors ✪')
async def suspend(ctx, time, *, member:discord.Member):
    guild = bot.get_guild(766292887914151949)
    role_name = 'Suspended'
    role = discord.utils.get(guild.roles, name='Suspended')
    embed = discord.Embed(colour = discord.Colour.red())
    [
      embed.add_field(name='<a:CheckMark:768095274949935146> **Success!**', value=f'{member.mention} has been successfully suspended.')]

    await ctx.send(embed=embed)
    await member.add_roles(role)

    # Using asyncio module to wait
    await asycio.sleep(time)
    await member.remove_roles(role)
@bot.command(pass_ctx=True)
@commands.has_any_role('✪ Commissioner ✪', '✪ Vice Commissioner ✪', '✪ Board of Directors ✪')
async def suspend(ctx, time, *, member:discord.Member):
    guild = bot.get_guild(766292887914151949)
    role_name = 'Suspended'
    role = discord.utils.get(guild.roles, name='Suspended')
    embed = discord.Embed(colour = discord.Colour.red())
    [
      embed.add_field(name='<a:CheckMark:768095274949935146> **Success!**', value=f'{member.mention} has been successfully suspended.')]
    
    # Defile the "role" variable
    role = ctx.guild.get_role(roleID)

    await ctx.send(embed=embed)
    await member.add_roles(role)

    # Using asyncio module to wait
    await asycio.sleep(time)
    await member.remove_roles(role)