首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >Discord.js: GuildMember的setMute命令不起作用?

Discord.js: GuildMember的setMute命令不起作用?
EN

Stack Overflow用户
提问于 2019-04-19 06:46:14
回答 1查看 1.9K关注 0票数 0

我目前正在尝试将静音功能编程到一个不和谐的机器人上。它启用了“静音成员”的服务器权限。

这是每当我调用mute命令时运行的代码:

代码语言:javascript
复制
if(!receiverG.mute) { 
                            message.channel.send(`${receiver} muted by ${sender}.`)
                            receiverG.setMute(true, remaining); 
                        } 
else {
                            message.channel.send(`${receiver} unmuted by ${sender}.`)
                            receiverG.setMute(false, remaining); 
}
message.channel.send(receiverG.mute); 

因此,连续调用此代码应切换为静音,但message.channel.send.(receiverG.mute)每次都会发送"false“,表示该成员从未静音。我不清楚静音功能是如何处理不一致的。我在某处读到它是基于角色的-如果是这样,那么setMute()命令的意义是什么?

文档:https://discord.js.org/#/docs/main/stable/class/GuildMember?scrollTo=setMute

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2019-04-19 06:56:01

setMute()返回一个promise。因此,您必须等待其完成,然后才能发送成员的状态。

代码语言:javascript
复制
await receiverG.setMute(true, remaining);

记住,await只能在异步函数中使用。如果promise被拒绝(.catch()try...catch),也要确保捕获并处理错误。

至于setMute()的功能,应该等同于右键单击语音通道中的成员并选择Server Mute

票数 3
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/55754584

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档