如何回复发送给机器人的任何DM?

时间:2018-07-31 13:39:58

标签: discord discord.js

我正试图使我的机器人回复发送给它的任何DM。

所以我目前有这个:

client.on('msg', () => {
  if (msg.channel.DMChannel) {
    msg.reply("You are DMing me now!");
  }
});

但不幸的是,它没有回复任何DM。

我尝试将msg.channel.DMChannel替换为msg.channel.type == 'dm',但这没用。

我还尝试将msg.reply替换为msg.author.sendmsg.channel.send,但它们都不起作用。

任何帮助将不胜感激。

谢谢!

2 个答案:

答案 0 :(得分:5)

official documentation上,我只看到client.on('message')上没有提到事件client.on('msg')
顺便说一句:

client.on('message', msg => {
  if (msg.channel.type == "dm") {
    msg.author.send("You are DMing me now!");
    return;
  }
});

只需尝试一下,即可正常工作。

答案 1 :(得分:1)

您的函数未收到正确的“ msg”对象,请尝试以下操作:

client.on('message', async message => {
    if (message.channel.type == 'dm') {
        message.reply("You are DMing me now!");
    }
});

编辑:我引用示例代码here得出了这一结论。也许此链接将来会对您有所帮助。祝你好运!