机器人不接收消息

2023-12-23

我试图让我的机器人回复消息,但它不起作用。有人知道如何解决这个问题吗?

Code:

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

const client = new Discord.Client({ intents: ['GuildMessages', 'GuildMessageReactions', 'GuildMessageTyping', 'MessageContent', ''] })

const prefix = '!';

client.once('ready', () => {
    console.log('MONKE BOT RISES');
});

client.on('messageCreate', message => {
    message.channel.send('pong');
    console.log('hoi');
    if(!message.content.startsWith(prefix) || message.author.bot) return;

    const args = message.content.slice(prefix.length).split(/ +/);
    const command = args.shift().toLowerCase();

    if(command === 'ping'){
        message.channel.send('pong');
    }
});



client.login('<token>');

您需要启用MessageContent网关意图Discord 开发者门户 https://discord.com/developers/applications由于其特权性质。

查看一篇关于此的好文章docs https://discordjs.guide/popular-topics/intents.html#privileged-intents.


我已经测试了你的代码,一切正常。

let message = {
    content: "!ping"
};
const prefix = '!';

const args = message.content.slice(prefix.length).split(/ +/);
const command = args.shift().toLowerCase();

if (command === 'ping') {
    console.log('pong!');
};

因此,此行为只能是由错误分配的意图或客户端实例化期间代码中的错误引起的。

正如我之前所说,请仔细检查MessageContent已在开发门户中启用。然后尝试像这样实例化 Client

const { Client, GatewayIntentBits } = require('discord.js');

const client = new Client({ intents: [GatewayIntentBits.Guilds, GatewayIntentBits.GuildMessages, GatewayIntentBits.MessageContent] });

如果这不起作用,请检查您使用的是最新版本的 Node 和 Discord.js (npm list discord.js, node --version).

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

机器人不接收消息 的相关文章

随机推荐

  • 如何找到位域的哪个子集与另一个位域进行异或?

    我有一个有点数学导向的问题 我有一堆位域 想计算它们的哪个子集要异或在一起以实现某个其他位域 或者如果没有办法做到这一点 就会发现不存在这样的子集 我想使用免费库而不是原始代码来完成此操作 并且我强烈喜欢使用 Python 绑定的东西 使用
  • 如何在 HBase 列中存储原始数据类型、字符串并使用序列化和反序列化检索它们?

    如何在 HBase 列中存储原始数据类型 字符串并检索它们 通常 当我们想要将数据存储在 HBase 表中时 我们会执行以下操作 Configuration conf HBaseConfiguration create HTable tab
  • 为什么 get-process -computername 会返回无法连接到远程计算机错误?

    我可以在特定计算机上执行以下命令 它可以返回多台目标计算机上的进程列表 但在一台计算机上返回 无法连接到远程计算机 错误 获取进程 计算机名 192 168 1 101 目标机器均未安装 powershell 我正在执行 powershel
  • 错误 NETSDK1031:不支持在不指定 RuntimeIdentifier 的情况下构建或发布独立的应用程序

    我正在运行以下命令 使用命令行发布 NET CORE 5 0 Web api 项目Windows 10 盒子 c test Service gt dotnet publish c release Emp sln framework net5
  • 每 20 秒调用一次方法最有效的方法是什么

    我想每 20 秒调用一个传递参数的方法 例如 public void ProcessPerson IPerson 人 我一直在阅读不同的计时器选项 想知道是否有人可以推荐最有效的方法来做到这一点 另外 有没有办法保持参数强类型而不是使用对象
  • 使用 keyPath 绑定 2 个属性(观察)

    我正在尝试创建一个例程来简化将一个属性绑定到另一个属性 这是一种非常常见的操作 我在 Swift 4 和 XCode 9 中使用基于块的 KVO 我希望能够编写以下内容来使用相应的变量绑定两个变量keyPath self bind to B
  • php中使用Dom解析html文档时如何保留
    标签?

    我在 php 中使用 dom 来检索 div 的内容 node gt nodeValue 这个div有很多 br 其内容中包含标签 但是当我将其存储在数据库中并在浏览器中输出后 所有 br 标签更改为空格 我想保留 br 标签 我该如何实现
  • MATLAB - 提取矩阵的行

    a 1 2 3 4 5 6 我想提取第一行和第三行a 所以我有x 1 3 行索引 a x 不起作用 像这样 a 1 3 逗号分隔尺寸 表示 整个范围 方括号构成一个列表
  • 如何减少 if 语句 [关闭]

    Closed 这个问题是无关 help closed questions 目前不接受答案 下面的程序根据需要运行 但如何减少 if 语句的数量 有人告诉我 如果你的函数包含 2 个或更多 if 语句 那么你做错了 有什么建议么 我尝试过使用
  • 对 Oracle 的 JDBC 调用返回 3 个问号

    我使用 JDBCTemplate 调用 Oracle 存储过程 该过程具有 STRUCT 的输入 输出参数 该结构上的字段之一是 VARCHAR 它根据存储过程逻辑进行更新 然而 当从调用返回时 它只包含三个问号 这可能是 Riddler
  • Luhn算法逻辑

    我目前正在学习 Codecademy 的全栈工程师课程 到目前为止 我一直非常适应它 发现新事物 自己解决问题 但这对我的进步来说是一个严重的障碍 因为我似乎无法找出这个逻辑的问题 我并不是想质疑卢恩的算法 但说真的 我需要对此进行一些澄清
  • 如何在 TwiML 中生成半秒暂停?

    我正在尝试使用 Twilio 的 docs api twiml say动词 用于清楚地发音数字序列 我发现很难在每个数字之间产生自然的 半秒 停顿 我该如何正确地做到这一点 xml 命令仅采用以秒为单位的整数值 因此它太长而无法使用 从这里
  • 排序数组的紧凑数据结构

    我有一个表格 其中包含排序后的数字 例如 1 320102 2 5200100 3 92010023 4 112010202 5 332020201 6 332020411 5000000000 3833240522044511 50000
  • 如何清除 Silverlight/Windows Phone 7 中的导航历史记录?

    我正在制作一个具有登录 注销语义 对 Web 应用程序进行身份验证 的 Windows Phone 7 应用程序 当用户注销时 我导航回登录屏幕并忘记会话身份验证 这样做时 我还想清除导航历史记录 以便无法返回到期望它们已经经过身份验证的页
  • 安装 gdata 失败(在 64 位 Linux 上)

    我正在开发一个 R 脚本 它使用 gplots 库 因此在脚本的某个时刻 library gplots 叫做 使用 32 位 Linux 系统 Linux 3 2 0 33 generic pae 52 Ubuntu SMP i686 GN
  • 如何使用 Python 只保留 Pandas 数据框中的连续值

    我有一个看起来像这样的数据框 我想只保留每组中的连续年份 如下图 A组中的2005年和B组中的2009年和2011年被删除 我使用以下方法创建了年份差异列df year diff df groupby group Year diff 然后只
  • 无法打开 mysql 数据库中的文件

    我从github下载了员工数据库 在其网站上推荐mysql 但导入时出现错误 我该如何修复它 我不认为它是损坏的数据库 错误是 ERROR Failed to open file load salaries1 dump error 2 ER
  • ApolloGraphql FileNotFoundException: source/apollo/ generatedIR/debug/src (是一个目录)

    我正在尝试将 ApolloGraphql 添加到我的 android 项目中 但是当我尝试重建项目时 我得到 org gradle api UncheckedIOException java io FileNotFoundException
  • IE 11 和 IE Edge 获取 file.type 失败

    change btn file file getfileinfo getfileinfo function e var fileInput document getElementById fileupload var file fileIn
  • 机器人不接收消息

    我试图让我的机器人回复消息 但它不起作用 有人知道如何解决这个问题吗 Code const Discord require discord js const client new Discord Client intents GuildMe