微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

DiscordJS:确定反应已被人移除

如何解决DiscordJS:确定反应已被人移除

我有一个不和谐的机器人,当收到一定数量的反应时,它会阻止更多用户做出反应。这是执行此操作的事件监听器:

set.seed(7)
vals <- sample(c(1:20,NA,NA),20)
sample <- matrix(vals,ncol = 5)

# Select columns 1,3,4

cols <- c(1,4)
rowcnts <- apply(sample[,cols],1,function(x) length(x[!is.na(x)]))
sample <- cbind(sample,rowcnts)

> sample
                    rowcnts
[1,] 10 15 16 NA 12       2
[2,] 19  8 14 18  9       3
[3,]  7 17  6  4  1       3
[4,]  2  3 13 NA  5       2

但是,这稍后会触发我的bot.on("messageReactionAdd",(reaction,user) => { if ( reaction.emoji.name === "?️‍♂️" && reaction.message.author.bot && user.id !== "773710233977618464" ) { const spotsLeft = reaction.message.embeds[0].fields[1].value; if (spotsLeft == 0) { return reaction.users.remove(user.id); } ... } 事件,我不想触发该事件。我试图用以下方法将其过滤掉:

MessageReactionRemove

我已经尝试过!user.bot和其他一些东西,但是每次我从控制台上输入日志时,都可以看出响应消除是来自用户的。我bot.on("messageReactionRemove",user) => { if ( reaction.emoji.name === "?️‍♂️" && reaction.message.author.bot && user.id !== "773710233977618464" ) { ... ,是删除了反应的人ID。

如何告诉Di​​scordJS“如果这是由Javascript或机器人触发的,则什么也不做”?

解决方法

此问题已通过启用部分“ USER”,“ GUILD_MEMBER”和“ REACTIONS”来解决。此处的其他内容:enter link description here

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。