【问题标题】:Set Permissions of created channel Discord.PY设置已创建频道 Discord.PY 的权限
【发布时间】:2021-07-07 02:56:12
【问题描述】:

所以我想向我的机器人添加一个错误报告命令,这是我的代码:

@client.command()
async def bug(ctx):
    guild = ctx.message.guild
    BugChannel = await guild.create_text_channel(f'bugreport {ctx.author.name}')
    await ctx.send(f'{ctx.author.mention} Describe your Bug in <#{BugChannel.id}>')

我希望只有作者和具有特定角色的人才能查看 BugChannel

【问题讨论】:

标签: python permissions discord


【解决方案1】:

您可以创建具有权限字典的文本频道。
您可以在Docs 中了解更多信息。

对于您的示例,它将是:

overwrites = {
    guild.default_role: discord.PermissionOverwrite(view_channel=False),
    ctx.author: discord.PermissionOverwrite(view_channel=True),
    your_role: discord.PermissionOverwrite(view_channel=True)
}
channel = await ctx.guild.create_text_channel(f'bugreport {ctx.author.name}', overwrites=overwrites)

所以字典的键是RoleUser,值是PermissionOverwrite

你也应该只使用ctx.guild insetad of ctx.message.guild

【讨论】:

    猜你喜欢
    • 2021-09-01
    • 2020-10-29
    • 1970-01-01
    • 1970-01-01
    • 2022-07-16
    • 2021-05-02
    • 2020-11-05
    • 2019-10-21
    • 1970-01-01
    相关资源
    最近更新 更多