Я пытаюсь сделать команду tempmute в discord.py. Я сделал настоящую команду, но я хочу иметь возможность использовать 1 с в течение одной секунды, 1 м в течение одной минуты, 1 ч в течение одного часа и 1 д в течение одного дня.
В настоящее время я могу использовать только аргумент времени в секундах. Как мне сделать так, как я уже говорил?
Вот мой код:
@client.command()
@commands.has_any_role(569518553112510475, 641312393447866398, 673530318166294550, 670694992314105927, 680137747822018560, 689135000414715980, 677844825004834827, 677848974224392192)
async def tempmute(ctx, member : discord.Member, time=0, reason=None):
if not member or time == 0 or time == str:
await ctx.channel.send(embed=commanderror)
return
elif reason == None:
reason = "No Reason Provided"
muteRole = discord.utils.get(ctx.guild.roles, id=663076470180151339)
await member.add_roles(muteRole)
tempMuteEmbed = discord.Embed(colour=embedcolour, description=f"**Reason:** {reason}")
tempMuteEmbed.set_author(name=f"{member} Has Been Muted", icon_url=f"{member.avatar_url}")
tempMuteEmbed.set_footer(text=embedfooter)
await ctx.channel.send(embed=tempMuteEmbed)
tempMuteModLogEmbed = discord.Embed(color=embedcolour)
tempMuteModLogEmbed.set_author(name=f"[MUTE] {member}", icon_url=f"{member.avatar_url}")
tempMuteModLogEmbed.add_field(name="User", value=f"{member.mention}")
tempMuteModLogEmbed.add_field(name="Moderator", value=f"{ctx.message.author}")
tempMuteModLogEmbed.add_field(name="Reason", value=f"{reason}")
tempMuteModLogEmbed.add_field(name="Duration", value=f"{str(time)}")
tempMuteModLogEmbed.set_footer(text=embedfooter)
modlog = client.get_channel(638783464438759464)
await modlog.send(embed=tempMuteModLogEmbed)
tempMuteDM = discord.Embed(color=embedcolour, title="Mute Notification", description="You Were Muted In **The Official Vanmanyo Discord Server**")
tempMuteDM.set_footer(text=embedfooter)
tempMuteDM.add_field(name="Reason", value=f"{reason}")
tempMuteDM.add_field(name="Duration", value=f"{time}")
userToDM = client.get_user(member.id)
await userToDM.send(embed=tempMuteDM)
await asyncio.sleep(time)
await member.remove_roles(muteRole)
unMuteModLogEmbed = discord.Embed(color=embedcolour)
unMuteModLogEmbed.set_author(name=f"[UNMUTE] {member}", icon_url=f"{member.avatar_url}")
unMuteModLogEmbed.add_field(name="User", value=f"{member.mention}")
unMuteModLogEmbed.set_footer(text=embedfooter)
modlog = client.get_channel(638783464438759464)
await modlog.send(embed=unMuteModLogEmbed)