如何将斜杠命令隐藏到特定用户或频道 Discord.js v13
Posted
技术标签:
【中文标题】如何将斜杠命令隐藏到特定用户或频道 Discord.js v13【英文标题】:How to hide slash command to specific user or channel Discord.js v13 【发布时间】:2021-11-11 06:37:01 【问题描述】:是否可以在 discord.js v13.1.0 中隐藏斜杠命令? 我试图添加一些权限,但我发现没有什么能像
" command.permissions.add( "权限数组" ) "
如果有办法做到这一点,那就太棒了
我看到支持人员发现了这个问题,但您知道他们何时会添加此功能吗?
【问题讨论】:
【参考方案1】:根据discordjs guide,需要使用ApplicationCommandPermissionsManager#set()
或ApplicationCommandPermissionsManager#add()
:
使用 set()
const fullPermissions = [
id: '123456789012345678',
permissions: [
id: '224617799434108928',
type: 'USER',
permission: false,
],
,
id: '876543210987654321',
permissions: [
id: '464464090157416448',
type: 'ROLE',
permission: true,
],
,
];
await client.guilds.cache.get('123456789012345678')?.commands.permissions.set( fullPermissions );
使用 add()
if (!client.application?.owner) await client.application?.fetch();
const command = await client.guilds.cache.get('123456789012345678')?.commands.fetch('876543210987654321');
const permissions = [
id: '224617799434108928',
type: 'USER',
permission: false,
,
];
await command.permissions.add( permissions );
【讨论】:
我已经看到了,但是 add 方法不起作用 即使这样,集合中使用的第一个 id 是什么 据我所知,您不能像那样为您的机器人“隐藏”斜杠命令。权限系统为指定的用户/角色禁用斜线命令,使其无法使用。您可以从频道或角色设置中禁用斜杠命令,这将隐藏频道中除系统命令之外的所有斜杠命令。 但是这种方式在获得许可的情况下对我不起作用,我真的不明白我可以在哪里或如何使用它 可能是因为你有“管理员”之类的?你检查过吗??以上是关于如何将斜杠命令隐藏到特定用户或频道 Discord.js v13的主要内容,如果未能解决你的问题,请参考以下文章
Discord with Python:将嵌入发送到用户指定的特定频道