Python 如何在discord.py中更改频道权限?

Python 如何在discord.py中更改频道权限?,python,discord,discord.py,Python,Discord,Discord.py,我希望bot在调用命令时切换“仅发送消息”权限。 代码: 这可以工作,它会将默认角色的“发送消息”权限更改为false,但也会影响其他权限,它会将它们设置为中性(默认)。我不希望这样,我希望它只是切换发送消息并保持一切不变。用于获取角色的当前权限,然后将其拥有的权限设置为False @commands.command() @commands.has_权限(manage_channels=True) 异步def锁(自身,ctx): perms=ctx.channel.overwrite\u for

我希望bot在调用命令时切换“仅发送消息”权限。 代码:

这可以工作,它会将默认角色的“发送消息”权限更改为false,但也会影响其他权限,它会将它们设置为中性(默认)。我不希望这样,我希望它只是切换发送消息并保持一切不变。

用于获取角色的当前权限,然后将其拥有的权限设置为False

@commands.command()
@commands.has_权限(manage_channels=True)
异步def锁(自身,ctx):
perms=ctx.channel.overwrite\u for(ctx.guild.default\u角色)
perms.send_messages=False
等待ctx.channel.set_权限(ctx.guild.default_角色,overwrite=perms)
    @commands.command()
    @commands.has_permissions(manage_channels=True)
    async def lock(self,ctx):
        await ctx.channel.set_permissions(ctx.guild.default_role, send_messages=False)