我不想使用静音角色,而是希望能够创建权限覆盖来更改服务器中每个通道中用户的权限,使其不能说任何话。但是,我不知道如何执行此操作,因此有人知道创建权限替代的方法,以便可以使用discord.py机器人使用户静音吗?
上面是NotSoBot这样做的一个示例,它使用户静音,我该如何复制呢?
答案 0 :(得分:0)
您可以明确拒绝发送消息的权限给分配给它的用户/角色。仅在其他角色中明确接受了“发送消息”权限时,此方法才有效。我目前使用的代码会检查您是否有规则__muted__
,如果有则删除您的消息:
@client.event
async def on_message(message):
if message.guild:
if '__muted__' in [role.name for role in message.author.roles]:
try:
await message.delete()
await message.author.send(f'\u274c You are muted in **{message.guild.name}**!')
return
except discord.errors.Forbidden:
pass