首页 > 解决方案 > discord.js 通过反应获取 channelid

问题描述

有没有办法通过对我想要获取频道 ID 的频道中的消息做出反应来获取频道 ID?

示例:我在频道中按下反应,机器人会记录我在控制台中对 msg 做出反应的频道的频道 ID。

标签: javascriptnode.jsdiscorddiscord.js

解决方案


您可以使用 awaitReactions 方法,但您必须为该方法提供超时参数,我不建议将其设置为较大的值。

message.awaitReactions((reaction, user) => (reaction.emoji.name == ''), {
    max: 1,
    time: 30000
}).then(collected => {
    // Collected is an array of emojis.
    console.log('Thumbs up emoji detected in: ', message.channel.id)
}).catch(() => {
    message.reply('No reaction after 30 seconds, operation canceled');
});

这是关于等待消息和表情符号的完整文章:https ://maah.gitbooks.io/discord-bots/content/getting-started/awaiting-messages-and-reactions.html


推荐阅读