如何创建新的私人文本频道并向其中添加 2 个人?

Lam*_*010 5 python discord discord.py

我正在创建一个不和谐的机器人,用户将向机器人发送消息并

  1. 机器人将创建一个新的私人文本通道;最好与机器人位于同一服务器上
  2. 机器人只会将消息传递用户和管理员添加到频道

我已经能够以这个问题为指导创建一个新频道。我无法创建私人文本频道或找到允许我这样做的命令。有谁知道如何在discord.py中创建一个私人文本频道并向其添加2个人(消息用户和管理员)?

Pat*_*ugh 5

您可以用来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),
        member: discord.PermissionOverwrite(read_messages=True),
        admin_role: discord.PermissionOverwrite(read_messages=True)
    }
    channel = await guild.create_text_channel('secret', overwrites=overwrites)
Run Code Online (Sandbox Code Playgroud)