javascript - 如何使机器人不响应自身,但仍然响应其他机器人?

标签 javascript node.js discord discord.js

我又开始与 this 一起工作了discord bot ,此时,我已经非常喜欢她了,所以我决定为她制作几个伴侣机器人,这样她就可以在简短的对话中来回回复!问题是,为了让她能够与其他机器人交谈,我只是删除了这行代码......

if (message.author.bot) return;

...事实证明,这产生了一些我可能应该预料到的影响,当我提出她的 rei!help 命令时,它启动了她的每一个其他命令...

我可以使用上面的代码的任何替代方案,以便她只不回复自己的消息吗?我见过使用 (message.userID === bot.userID),但对于我的机器人来说,如果我复制粘贴该代码,它只会锁定并且不会响应任何内容。它也不会显示错误消息...

感谢任何帮助,谢谢!

编辑:澄清此处代码行周围的内容!

///constants and dependencies above here

//console log
bot.on('ready',() => {
   console.log('Up and running!!!');
});

//set 'playing' to
bot.on('ready', () => {
 bot.user.setActivity('hehe clairvoyance time')
});

//bot stuff
bot.on('message', message => {
  // heres the stuff so reibot doesnt go ham every time someone does rei!help
  if (message.author.bot) return;

///all commands below here

最佳答案

您可以检查作者的ID是否是客户的ID。这样,它将忽略它自己(并且仅它自己)发送的任何消息。

if (message.author.id === client.user.id) return;

关于javascript - 如何使机器人不响应自身,但仍然响应其他机器人?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/56621974/

相关文章:

javascript - 如何成为 javaScript 中未定义的 div id?

javascript - 如何在悬停时将下拉内容放置在左侧导航的右侧

javascript - 如何在 AngularJs 中的自定义指令上设置 .focus()?

javascript - 在 Discord 上设置应用程序命令权限时出现 403 错误

javascript - 可以在 Discord.js 中嵌入按钮吗?

python - Discord 机器人踢命令

javascript - 向下滚动到页面底部 imacros/javascript 时遇到问题

node.js - Node 异步调用返回数据作为响应

mysql - Typeorm 列类型依赖于数据库

node.js - 在 Node js 应用程序中使用 Passport 进行身份验证