Как мне создать новый частный текстовый канал и добавить к нему 2 человек? - PullRequest
0 голосов
/ 21 мая 2019

Я создаю несогласного бота, где пользователь отправит сообщение боту и

  1. бот создаст новый ЧАСТНЫЙ текстовый канал; желательно на том же сервере, что и бот
  2. бот добавит к каналу только пользователя сообщений и администратора

Мне удалось создать новый канал, используя этот вопрос в качестве руководства. Мне не удалось создать личный текстовый канал или найти команду, которая позволила бы мне это сделать. Кто-нибудь знает, как создать приватный текстовый канал в discord.py и добавить к нему 2 человека (пользователь сообщений и администратор)?

1 Ответ

1 голос
/ 21 мая 2019

Вы можете использовать Guild.create_text_channel для создания текстового канала с перезаписью определенных разрешений. Ниже показано, как создать канал, который виден только абоненту, боту и участникам с ролью «Администратор» (вам нужно изменить это на роль, подходящую для вашего сервера)

from discord.utils import get

@bot.command()
async def make_channel(ctx):
    guild = ctx.guild
    member = ctx.author
    admin_role = get(guild.roles, name="Admin")
    overwrites = {
        guild.default_role: discord.PermissionOverwrite(read_messages=False),
        guild.me: discord.PermissionOverwrite(read_messages=True),
        admin_role: discord.PermissionOverwrite(read_messages=True)
    }
    channel = await guild.create_text_channel('secret', overwrites=overwrites)
...