是否可以使用 discord.js 将成员自行静音?
Is it possible to selft mute a member with discord.js?
最近因为冠状病毒,学校被取消了,所以我为我的 class 创建了一个不和谐的服务器。人们对 Discord 不是很熟悉,所以我想要一个可以自我静音的命令,以便课程可以开始。我希望每个人都可以在想向老师提问时取消静音,因此是自我静音而不是服务器静音。
我试过这段代码,但它不起作用,因为 .selfmute(true) 是为机器人制作的。
const Discord = require('discord.js');
const client = new Discord.Client();
const config = require("./config.json");
const prefix = "!";
client.on("message", (message) => {
if (!message.content.startsWith(prefix)) return;
if (message.content.startsWith(prefix + "mute")) {
let channel = message.member.voice.channel;
for (let member of channel.members) {
member[1].voice.setSelfMute(true);
}
}
});
client.login(config.token);
有人知道怎么做吗?感谢您的帮助。
PS:对不起我的英语,这不是我的母语。
遗憾的是,您不能将客户用户以外的用户自我静音或自我聋。
documentation for setSelfMute
说:
Self-mutes/unmutes the bot for this voice state.
此外,如果您尝试将不是客户端用户的用户自行静音,您将收到此错误:
Error [VOICE_STATE_NOT_OWN]: You cannot self-deafen/mute on VoiceStates that do not belong to the ClientUser.
或者,您可以将它们正常静音,然后使用命令将它们取消静音。
所以方法setSelfMute
仅适用于机器人,文档可以找到here!
为了让用户发生这种情况,还有一个关于 here! I will edit the message with the code as soonest as possible. It will include 2 ways: 1. Regular Command with prefix, 2. Slash Command (Will come later... - Documentation here)
的文档
最近因为冠状病毒,学校被取消了,所以我为我的 class 创建了一个不和谐的服务器。人们对 Discord 不是很熟悉,所以我想要一个可以自我静音的命令,以便课程可以开始。我希望每个人都可以在想向老师提问时取消静音,因此是自我静音而不是服务器静音。 我试过这段代码,但它不起作用,因为 .selfmute(true) 是为机器人制作的。
const Discord = require('discord.js');
const client = new Discord.Client();
const config = require("./config.json");
const prefix = "!";
client.on("message", (message) => {
if (!message.content.startsWith(prefix)) return;
if (message.content.startsWith(prefix + "mute")) {
let channel = message.member.voice.channel;
for (let member of channel.members) {
member[1].voice.setSelfMute(true);
}
}
});
client.login(config.token);
有人知道怎么做吗?感谢您的帮助。
PS:对不起我的英语,这不是我的母语。
遗憾的是,您不能将客户用户以外的用户自我静音或自我聋。
documentation for setSelfMute
说:
Self-mutes/unmutes the bot for this voice state.
此外,如果您尝试将不是客户端用户的用户自行静音,您将收到此错误:
Error [VOICE_STATE_NOT_OWN]: You cannot self-deafen/mute on VoiceStates that do not belong to the ClientUser.
或者,您可以将它们正常静音,然后使用命令将它们取消静音。
所以方法setSelfMute
仅适用于机器人,文档可以找到here!
为了让用户发生这种情况,还有一个关于 here! I will edit the message with the code as soonest as possible. It will include 2 ways: 1. Regular Command with prefix, 2. Slash Command (Will come later... - Documentation here)