簡體   English   中英

如何在discord.js的discord語音通道中靜音/取消靜音?

[英]How to mute/unmute all in discord voice channel for discord.js?

我正在嘗試創建一個機器人,通過向他們添加角色“TempMute”來使當前在語音頻道中的每個人靜音。 然后當我發送 /unmuteAll 時,我希望每個擁有“TempMute”標簽的人都刪除該標簽。 我嘗試了幾種不同的方法,但都沒有成功。 我正在使用 discord.js 版本 12.2.0。

const Discord = require('discord.js');


voiceChatChannelId="123456789"

bot.on('message', (message) => {
    var vc = bot.channels.cache.get(voiceChatChannelId);

    if (message.content == '/muteAll') {
        for (let member of vc.members){
            //add members all to "TempMute" role
        }
    }

    else if (message.content == '/unmuteAll') {
        for (let member of vc.members){
            //remove ALL members from role "TempMute"
        }
    }
});

由於您已經擁有GuildMember您可以使用GuildMember.roles .addGuildMember.roles .remove方法來添加或刪除角色。


bot.on('message', (message) => {
    var vc = bot.channels.cache.get(voiceChatChannelId);

    if (message.content == '/muteAll') {
        for (let member of vc.members.array()){
            //add members all to "TempMute" role
             member.roles.add("RoleID")
        }
    }

    else if (message.content == '/unmuteAll') {
        for (let member of vc.members.array()){
            //remove ALL members from role "TempMute"
             member.roles.remove("RoleID")
        }
    }
});

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM