discord - 使用 permissionOverwrite 为角色通道赋予特定权限
问题描述
我目前正在开发一个 Ticket Bot,我遇到了我的问题permissionOverwrites
,我想授予我的员工查看和发送消息的权限,但我尝试过的他们的方式无法正常工作。
这是代码:
permissionOverwrites: [
{
id: user.id,
allow: ["SEND_MESSAGES", "VIEW_CHANNEL"]
},
{
id: reaction.message.guild.roles.everyone,
deny: ["VIEW_CHANNEL"]
},
{
id: reaction.message.guild.roles.staff,
allow: ["SEND_MESSAGES", "VIEW_CHANNEL"]
}
],
解决方案
message.channel.createOverwrite(RoleResolvable, {
FLAG: true
})
.then(channel => console.log(channel.permissionOverwrites.get(message.author.id)))
.catch(console.error);
RoleResolvable可以是角色 ID(雪花)或角色,您可以像这样获取角色:
const role = message.guild.roles.find(role => role.name === "Staff");
您可以通过的标志是Bitwise Permission Flags。
推荐阅读
- unit-testing - 我是否需要为没有逻辑的服务方法编写单元测试?
- python-3.x - 如何同时使用不和谐机器人命令和事件?
- postgresql - postgresql:自加入数组
- visual-studio - Visual Studio:Azure 和许可证的多个帐户
- spring-batch - Spring Batch - 一步写入内存
- json - 如何在 JSON ionic3 中使用 id 获取数据
- google-analytics - 退出页面事件性能的 Google 跟踪代码管理器
- r - 将数据框中的所有列乘以单列
- python - 在 Tensorflow 中更改 tf.placeholder 对象的当前图:有可能吗?
- puppet - 如何使 puppetserver 为非 root 用户工作