【问题标题】:How to create discord category with permissions using discord.js?如何使用 discord.js 创建具有权限的不和谐类别?
【发布时间】:2020-07-02 06:04:06
【问题描述】:

我对 discord.js 有疑问。我想创建一个具有多个权限和多个角色的新类别。我在这样做时遇到了问题。

我尝试了很多方法,但没有奏效。

这里是代码:

function makeChannel(message){
    var server = message.guild;
    server.createChannel('test', {
        type: 'category',
        permissionOverwrites: [{
            id: '671725307836891166',
            deny: ['PRIORITY_SPEAKER'],
            allow: [{
                ['CREATE_INSTANT_INVITE'],
                ['MANAGE_CHANNELS'],
                ['MANAGE_ROLES'],
                ['MANAGE_WEBHOOKS'],
                ['VIEW_CHANNEL'],
                ['SEND_MESSAGES'],
                ['SEND_TTS_MESSAGES'],
                ['MANAGE_MESSAGES'],
                ['EMBED_LINKS'],
                ['ATTACH_FILES'],
                ['READ_MESSAGE_HISTORY'],
                ['MENTION_EVERYONE'],
                ['USE_EXTERNAL_EMOJIS'],
                ['ADD_REACTIONS'],
                ['CONNECT'],
                ['SPEAK'],
                ['MUTE_MEMBERS'],
                ['DEAFEN_MEMBERS'],
                ['MOVE_MEMBERS'],
                ['USE_VAD'],
                ['STREAM']
            }]
        }]
    })
  .then(console.log)
  .catch(console.error);
}

使用上面的代码,我收到以下错误:

https://i.imgur.com/6HFHgnt.png

我尝试了使用以下值的允许参数,但仍然抛出错误:

allow: 'permission', 'permission', 'permission'

allow: [{ 'permission', 'permission', 'permission' }]

allow: ['permission'], ['permission'], ['permission']

我认为它只允许指定 1 个允许和 1 个拒绝权限。但我想做更多。

或者您知道如何为创建的类别设置这些权限?

我希望你明白我想要做什么。

谢谢。 :)

【问题讨论】:

  • 我不熟悉 discord API,但您的代码中似乎存在语法错误。 allow 参数的值不是有效值,因此它会引发您在图像中附加的错误。您发布的错误与不和谐无关。
  • 我知道这是语法错误。但我认为“允许”行只能允许使用 1 个权限。我需要帮助以不同的方式同时为类别设置更多权限。 (感谢编辑我的主题。:))

标签: javascript node.js discord discord.js


【解决方案1】:

使用这个:

allow: [
  'CREATE_INSTANT_INVITE',
  'MANAGE_CHANNELS',
  'MANAGE_ROLES',
  'MANAGE_WEBHOOKS',
  'VIEW_CHANNEL',
  'SEND_MESSAGES',
  'SEND_TTS_MESSAGES',
  'MANAGE_MESSAGES',
  'EMBED_LINKS',
  'ATTACH_FILES',
  'READ_MESSAGE_HISTORY',
  'MENTION_EVERYONE',
  'USE_EXTERNAL_EMOJIS',
  'ADD_REACTIONS',
  'CONNECT',
  'SPEAK',
  'MUTE_MEMBERS',
  'DEAFEN_MEMBERS',
  'MOVE_MEMBERS',
  'USE_VAD',
  'STREAM'
]

您也不需要将'PRIORITY_SPEAKER' 放入数组中,因此这可以是您的权限覆盖:

{
  id: '671725307836891166',
  deny: 'PRIORITY_SPEAKER',
  allow: [
    'CREATE_INSTANT_INVITE',
    'MANAGE_CHANNELS',
    'MANAGE_ROLES',
    'MANAGE_WEBHOOKS',
    'VIEW_CHANNEL',
    'SEND_MESSAGES',
    'SEND_TTS_MESSAGES',
    'MANAGE_MESSAGES',
    'EMBED_LINKS',
    'ATTACH_FILES',
    'READ_MESSAGE_HISTORY',
    'MENTION_EVERYONE',
    'USE_EXTERNAL_EMOJIS',
    'ADD_REACTIONS',
    'CONNECT',
    'SPEAK',
    'MUTE_MEMBERS',
    'DEAFEN_MEMBERS',
    'MOVE_MEMBERS',
    'USE_VAD',
    'STREAM'
  ]
}

【讨论】:

    猜你喜欢
    • 2021-08-19
    • 2018-12-29
    • 1970-01-01
    • 2018-03-04
    • 2021-09-19
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2021-02-01
    相关资源
    最近更新 更多