Как сделать, чтобы появлялась реакция под сообщением бота и при нажатии срабатывал ответ?

Доработал немного задачу бота. Нужно, чтобы при запросе слова !iq выдавалось оповещение, далее по истечении времени появляется еще 2 оповещения в других каналах рабочих тестов. Позже они удаляются. Под двумя из сообщений надо выводить реакцию песочных часов. Есть 2 проблемы:

  1. реакция не появляется, она появляется только если размещать часы после закрывающего if, но таких if еще несколько для разных видов тестов;
  2. в дальнейшем надо назначить при нажатии на эмодзи действие, не очень разобрался, как это действие назначить; думал, добавить кнопками, но это неудобно, и так не подходит Не могу понять даже, почему реакции не повляются
client.on(Events.MessageCreate, async (message) => {
   if (message.content === "!iq") {
      message.guild.channels.cache.get('1111111111111111111').send("Тест назначен. Время пошло!").then(() => {
         message.react('⏳');
         message.delete().catch(() => null);
         message.guild.channels.cache.get('1111111111111111111').send("Осталось мало времени").then(msg => {
                  message.react('⏳');
            setTimeout(() => msg.delete().catch(() => null), 60000 * 60 * 2);
         });
         setTimeout(() => {
            message.guild.channels.cache.get('1111111111111111111').send("Ваше время почти истекло").then(msg => {
               setTimeout(() => msg.delete().catch(() => null), 60000 * 60 * 4)
            });
         }, 60000 * 60 * 3);
      })
   }
});

Ответы (0 шт):