Можно ли отключить звук члена с раздором. js? - PullRequest
0 голосов
/ 14 марта 2020

Недавно с коронавирусом школу отменили, поэтому я создал дискорд-сервер для своего класса. Люди не очень знакомы с 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: извините за мой английский sh, это не мой родной язык.

1 Ответ

0 голосов
/ 15 марта 2020

К сожалению, вы не можете самостоятельно отключить или отключить звук для пользователя, кроме пользователя клиента.

Документация для setSelfMute гласит:

Включает / отключает звук бота для этого состояния голоса.

Кроме того, если вы попытаетесь отключить звук для пользователя, который не является клиентом, вы получите эту ошибку:

Error [VOICE_STATE_NOT_OWN]: You cannot self-deafen/mute on VoiceStates that do not belong to the ClientUser.

Кроме того, вы можете отключить их в обычном режиме, а затем получить команду на их включение.

...