好的,所以基本上我做了一个运行良好的机器人,但我犯了一个巨大的错误,将所有内容都放在index.js中。所以我决定启动另一个机器人,并将所有内容与 index.js 分开。在我没有安装 discord.js-command 之前,我在这个机器人上使用了它。从那时起,我的机器人正确执行每个命令并完成工作,但一段时间后它离线,除了控制台中的(node:9072) DeprecationWarning: Collection#filterArray: use Collection#filter instead
之外,没有报告任何内容。
我尝试添加自动重新连接,但没有成功。还是同样的问题。
同样在我没有更改机器人状态之前,我使用以下代码添加了它:
bot.on("ready" , () => {
bot.user.setStatus("dnd")
console.log('Ready!');
setInterval(() => {
bot.user.setStatus('dnd')
bot.user.setActivity(`with MEMBERS`, {type: 'PLAYING'});
}, 1);
});
bot.on('ready', () => {
bot.user.setStatus('dnd')
setInterval(() => {
bot.user.setActivity(`lawliet#0599`, {type: 'WATCHING'});
}, 2);
});
我认为这是问题所在,但我不确定这一事实。
我没有将机器人连接到任何托管平台。它只在我的计算机上,我希望它从我在控制台中node .
到我在终端中使用 Ctrl+c 或完全关闭它的那一刻都能工作。 相反,它只是联机,我可以在脱机之前使用一些命令。 之后,我必须手动重新连接它。
如果有人知道如何解决此问题,请花点时间。谢谢。
您可能因为发送了太多请求而被 discord 服务器断开连接。
我没有对 API 进行过多的研究,但是您的两个setInterval
语句每隔几毫秒(1 和 2(调用一次bot.user.setActivity
。我不知道你想用它实现什么,但这可能不是想要的行为。