Проверьте, отправляет ли кто-нибудь 2 одинаковых сообщения за 5 секунд с помощью discord.js

Кто-нибудь знает, как проверить, отправляет ли кто-то одно и то же сообщение два раза по одному и тому же каналу с интервалом в 5 секунд (между двумя сообщениями могут быть другие сообщения от других людей)?

(Я новичок в Javascript и Discord.js)

Если бы кто-то мог мне помочь, было бы здорово.

Добро пожаловать в Stack Overflow! Пожалуйста, возьмите тур и прочтите центр помощи, в частности, как спросить. Лучше всего здесь провести исследование, поискать связанные темы на SO и попробовать. После дополнительных исследований и поиска опубликуйте Минимальный, полный и проверяемый пример своей попытки и конкретно укажите, где вы застряли, что поможет вам получить более точные ответы.

help-info.de 09.09.2018 11:04

Что ты имеешь в виду? Вы хотите проверить, отправляет ли пользователь одно и то же сообщение два раза? Сколько времени может пройти между одним сообщением и другим? Должны ли они быть в одном канале? Должны ли они делать это непосредственно один за другим или просто в один и тот же промежуток времени? Если бы вы могли добавить больше деталей и рассказать нам, что вы имели в виду и что уже пробовали, я буду рад вам помочь :)

Federico Grandi 09.09.2018 19:48

@FedericoGrandi Я обновил пост :) Надеюсь, я лучше объяснил

NooodyFR 10.09.2018 20:30
Поведение ключевого слова "this" в стрелочной функции в сравнении с нормальной функцией
Поведение ключевого слова "this" в стрелочной функции в сравнении с нормальной функцией
В JavaScript одним из самых запутанных понятий является поведение ключевого слова "this" в стрелочной и обычной функциях.
Концепция локализации и ее применение в приложениях React ⚡️
Концепция локализации и ее применение в приложениях React ⚡️
Локализация - это процесс адаптации приложения к различным языкам и культурным требованиям. Это позволяет пользователям получить опыт, соответствующий...
Улучшение производительности загрузки с помощью Google Tag Manager и атрибута Defer
Улучшение производительности загрузки с помощью Google Tag Manager и атрибута Defer
В настоящее время производительность загрузки веб-сайта имеет решающее значение не только для удобства пользователей, но и для ранжирования в...
Безумие обратных вызовов в javascript [JS]
Безумие обратных вызовов в javascript [JS]
Здравствуйте! Юный падаван 🚀. Присоединяйся ко мне, чтобы разобраться в одной из самых запутанных концепций, когда вы начинаете изучать мир...
Система управления парковками с использованием HTML, CSS и JavaScript
Система управления парковками с использованием HTML, CSS и JavaScript
Веб-сайт по управлению парковками был создан с использованием HTML, CSS и JavaScript. Это простой сайт, ничего вычурного. Основная цель -...
JavaScript Вопросы с множественным выбором и ответы
JavaScript Вопросы с множественным выбором и ответы
Если вы ищете платформу, которая предоставляет вам бесплатный тест JavaScript MCQ (Multiple Choice Questions With Answers) для оценки ваших знаний,...
1
3
1 984
1
Перейти к ответу Данный вопрос помечен как решенный

Ответы 1

Ответ принят как подходящий

Вы можете использовать TextChannel.awaitMessages()

client.on('message', message => {
  // this function can check whether the content of the message you pass is the same as this message
  let filter = msg => {
    return msg.content.toLowerCase() == message.content.toLowerCase() && // check if the content is the same (sort of)
           msg.author == message.author; // check if the author is the same
  }

  message.channel.awaitMessages(filter, {
    maxMatches: 1, // you only need that to happen once
    time: 5 * 1000 // time is in milliseconds
  }).then(collected => {
    // this function will be called when a message matches you filter
  }).catch(console.error);
});

вы пропустили запятую после maxMatches: 1

Sudarshan Rai 19.02.2020 12:45

Другие вопросы по теме