首页 > 解决方案 > Discord.js 机器人使用斜杠命令回复

问题描述

我有一个有效的斜杠命令,这很棒。我可以使用带有一个输入参数的命令,例如/command string,它将执行该命令。但是,我希望设置一个 Discord 机器人,每隔 5 分钟左右在频道中使用该命令。我似乎无法让机器人使用该命令,关于如何让它工作的任何想法?

它只是在频道中显示字符串,但机器人不执行命令。

bot.on('messageCreate', async (msg) => {
    if (msg.content === "!loop") {
        interval = setInterval (function () {
            msg.channel.send("/command string")
        }, 3 * 1000);
    }
})

标签: javascriptnode.jseventsdiscorddiscord.js

解决方案


机器人只能接收应用程序命令交互,不能创建它们。这意味着您的机器人将无法运行其他机器人的斜线命令、单击它们的按钮或使用它们的下拉菜单。

但是,如果您可以控制其他机器人的代码,则可以将其设置为侦听来自第二个机器人的消息(而不是交互),并相应地运行代码。

但请注意:正如 MegaMix 在他们的评论中提到的,如果您想要控制的机器人不是您的,您可能无法做到这一点,因为最好的做法是忽略来自其他机器人的消息以防止滥用和无限循环。


推荐阅读