node.js - Discord.js - guildMemberUpdate 不会被调用,除非机器人用户发生更改

标签 node.js azure visual-studio-code discord discord.js

使用以下代码,guildMemberUpdate 事件根本不会调用除机器人用户之外的任何用户修改。是什么导致了这种变化?我该如何解决这个问题?

VSC 带有最新的 npm 安装的discord.js。也在 Discord 上启用了网关意图。

client.on('guildMemberUpdate', (oldMember, newMember) => {
  // Fire if user has a role
  if (newMember.roles.cache.some(r => r.name === "TEST_ROLE")) {
    try {
      // stuff
    } catch(err) {
      // stuff
    }
  }
})

最佳答案

您似乎没有启用公会成员意图! 要启用,请转至: https://discord.com/developers/applications

现在单击您的机器人应用程序。

Location of left panel

点击左侧面板上的“机器人”。

向下滚动,直到看到“特权网关意图”。

下面有两个切换开关。

切换“公会成员意图”并保存。

希望这对您有帮助!

进一步阅读:https://discord.com/developers/docs/topics/gateway

关于node.js - Discord.js - guildMemberUpdate 不会被调用,除非机器人用户发生更改,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/66175307/

相关文章:

javascript - 使用正则表达式提取电子邮件字段

node.js - 升级到 node.js 4.1 后 Gulp 不再工作

azure - 确保服务总线安全

asp.net-mvc - 如何获取 Azure 自动化客户端的证书

python - VS Code 上的调试器无法在输出为 : DAP Server launched with command: conda run -n MyEnvironment --no-capture-output 的 Python 上运行

python - 在 Visual Studio 代码调试器中隐藏终端选项卡

javascript - 如何在 x64 MacOS X 10.7 上检查 `node --prof` 的结果?

node.js - 使用 mongodb 和 nodejs 解决 promise

azure - 为什么我在为 Runbook 创建 Webhook 时收到授权失败异常?

visual-studio-code - 我无法连接到 Visual Studio Code 的扩展市场