Как отслеживать реакции на уже добавленном сообщение?
let guild = bot.guilds.cache.get('747786905399197757')
addRole.addRole(bot, guild)
Я это уже делал, но при отправке определённого сообщения, помещал туда messageData = message.id
И так далее, но сейчас выдаёт постоянно ошибку:
TypeError: Cannot read property 'cache' of undefined
at Client.<anonymous> (C:\Users\liter\Desktop\botdiscord\functions\addRole.js:17:48)
at processTicksAndRejections (internal/process/task_queues.js:93:5)
И вот функция на которой он застревает:
bot.on('raw', async (event) => {
try {
if (!events.hasOwnProperty(event.t)) return
const {d: data} = event
const user = bot.users.cache.get(data.user_id)
const channel = bot.channels.cache.get(data.channel_id) || (await user.createDM())
if (channel.messages.cache.has(data.message_id)) return
const message = await channel.fetch(data.message_id)
const emojiKey = data.emoji.id ? `${data.emoji.name}:${data.emoji.id}` : data.emoji.name
const reaction = message.reactions.cache.get(emojiKey)
bot.emit(events[event.t], reaction, user)
} catch (err) {
console.error(err)
}
})
Не понимаю в чём проблема, ведь при таком формате всё работает корректно:
let guild = bot.guilds.cache.get('747786905399197757')
let channel = guild.channels.cache.find(c => c.id === '761102042491781130')
channel.send(new Discord.MessageEmbed().setColor('#c998e6').setDescription(`Zxc`))
.then((message) => {
message.react(message.client.emojis.cache.get('751472529033658509'))
message.react(message.client.emojis.cache.get('751472529205493791'))
addRole.addRole(bot, guild)
})