как редактировать разрешения ролей с помощью discord.py rewrite? - PullRequest
0 голосов
/ 08 мая 2020

У меня небольшая проблема. Я хочу, чтобы мой бот создавал роль «Без звука» при подключении к серверу. Для этого я написал следующий код:

@client.event
async def on_guild_join(guild):
        with open('prefixes.json', 'r') as f:
                prefixes = json.load(f)


        prefixes[str(guild.id)] = "b!"

        with open("prefixes.json", "w") as f:
                json.dump(prefixes, f, indent=4)

        await guild.create_role(name="Muted")
        for role in guild.roles:
                if role.name == "Muted":
                        await role.edit(reason = None, colour = discord.Colour.orange(), read_messages = True, read_message_history = True, connect = True, speak = True, send_messages = False)

Этот код правильно создает роль и правильно устанавливает цвет. Однако он не установил никаких разрешений для роли.

Может ли кто-нибудь помочь мне с этой проблемой?

1 Ответ

0 голосов
/ 08 мая 2020

Вам необходимо передать аргумент Permissions аргументу permissions для edit

perms = Permissions()
perms.update(read_messages = True, read_message_history = True, connect = True, speak = True, send_messages = False)
await role.edit(reason = None, colour = discord.Colour.orange(), permissions=perms)
...