使用 Discord.js 使用 Discord Bot 将语音频道中的所有人静音
Posted
技术标签:
【中文标题】使用 Discord.js 使用 Discord Bot 将语音频道中的所有人静音【英文标题】:Mute everyone in a voice channel with a Discord Bot with Discord.js 【发布时间】:2019-07-31 13:21:53 【问题描述】:我希望在我的机器人 discord 中添加一个功能,以便在我启动订单时对语音休息室中的每个人进行变异,但我不知道如何操作。我的机器人是使用 Node.js 和 discord.js 编写的。有人能帮我吗?谢谢你:)
我的代码:
const Discord = require("discord.js");
module.exports.run = async (client, message, args) =>
if(!message.member.hasPermission("MANAGE_MESSAGES")) return message.channel.send("Vous n'\avez pas les permissions pour utiliser cette commande !");
let voiceChannel = message.guild.channels
.filter(function (channel) return channel.id === '540093524570406912' )
.first()
voiceChannel
.join()
.then(function (connection)
connection.members.setMute(true);
)
module.exports.help =
name:"start"
问候,
昆汀 S
【问题讨论】:
【参考方案1】:setMute
client.on('message', (message) =>
if (message.content == '/muteAll')
let channel = message.member.voiceChannel;
for (let member of channel.members)
member[1].setMute(true)
);
【讨论】:
【参考方案2】:setMute
现在是GuildMember.voice
(VoiceState
) 上的一个方法。 Documentation
client.on('message', (message) =>
const channel = message.channel
const members = channel.members
if (message.content.startsWith("/muteall"))
members.forEach(member =>
member.voice.setMute(true)
member.voice.setDeaf(true)
);
message.channel.send('Server muted');
else if (message.content.startsWith("/unmuteall"))
members.forEach(member =>
member.voice.setMute(false)
member.voice.setDeaf(false)
);
message.channel.send('Server unmuted');
);
我已经为此https://github.com/Roshanjossey/discord-mute-voice-channel-bot创建了这个机器人
【讨论】:
以上是关于使用 Discord.js 使用 Discord Bot 将语音频道中的所有人静音的主要内容,如果未能解决你的问题,请参考以下文章
如何使用 discord.js 使用 discord 机器人发送 DM
使用 Discord.js 使用 Discord Bot 将语音频道中的所有人静音
Discord Bot 使用 Discord.js 在 X 秒后离开 VC