我正在尝试在用户DM中使用.awaitMessages()
。不幸的是,不管我尝试什么,它总是说.awaitMessages()
是未定义的。我需要它才能在DM中获取消息,但不能在频道中。这可能吗?
我已经尝试了以下方法
let member = message.mentions.users.first();
member.user.dmChannel.awaitMessages
和其他几个变体,但没有一个起作用。我在任何地方都找不到在线答案(可以解决我遇到的问题)。
答案 0 :(得分:2)
欢迎使用堆栈溢出。希望我们能帮助您解决此问题。
我注意到您实际上是在将member
声明为用户。 awaitMessages
也不是属性,而是方法。使用此修改后的代码:
let user = message.mentions.users.first();
if (!user.dmChannel) return console.log('No active DM channel');
let filter = m => m.author.id === user.id;
user.dmChannel.awaitMessages(filter, { max: 1, time: 60000, errors: ['time'] })
.then(collected => {
...
})
.catch(collected => {
if (collected.size === 0) return console.log('Failed to send a message');
});