消息.awaitReactions不检测我的反应



我有一个需要反应的不和命令。但是当我对消息作出反应时,它根本不做任何事情,当它结束时,它记录Collected 0 items

代码:

const msg = await message.reply("React to this message as quickly as you can.").catch(console.error);
const filter = (reaction, user) => {
return reaction.emoji.name && user.id === message.author.id;
};

const collector = msg.createReactionCollector({ filter, time: 15000 });

collector.on('collect', (reaction, user) => {
console.log(`Collected ${reaction.emoji.name} from ${user.tag}`);
});

collector.on('end', collected => {
console.log(`Collected ${collected.size} items`);
});

收集器需要intent。你必须确保你有公会消息意图和公会消息反应意图。您还必须确保消息已被缓存。

const client = new Client({
intents: [
Intents.FLAGS.GUILDS,
Intents.FLAGS.GUILD_MESSAGES,
Intents.FLAGS.GUILD_MESSAGE_REACTIONS
]
})

相关内容

  • 没有找到相关文章

最新更新