@iredoff

Есть ли API для просмотра сообщений в определенный день?

Здравствуйте, разрабатываю своего бота на платформе Discord, хотел бы сделать статистику сообщений. Если вы знаете что такое дискорд, то возможно видели такую функцию:
5fdc74904a13b184487305.png
Есть ли API у дискорда, по которому можно будет отследить сообщение за определенное число?
Или все-таки придется записывать каждое сообщение, а затем в бд, и каждые 24 часа обнулять базу данных?
let msgs = 0;
<client>.on("message", message => {
   msgs++;
})
// затем записывать в бд для того чтоб не потерять прогресс во время перезагрузи бота, и после уже обнулять бд каждые 24 часа.


Буду рад любой информации.
  • Вопрос задан
  • 56 просмотров
Пригласить эксперта
Ответы на вопрос 1
Alexandre888
@Alexandre888 Куратор тега Discord
Javascript-разработчик
отдельного API вы не найдёте, так как это можно спокойно реализовать с помощью встроенных в какую-нибудь библиотеку для работы с API Discord'a функций.
в вашем примере кода я вижу фрагменты из библиотеки discord.js, так что покажу функционал с её использованием:
channel.messages.fetch().then(m => { // получаем все сообщения из канала
    let time = `2020, 11, 19`

    for (let mess in m.array()) { // перебираем массив собранных сообщений
        if (`${m.array()[mess].createdAt.getFullYear()}, ${m.array()[mess].createdAt.getMonth()}, ${m.array()[mess].createdAt.getDate()}` === time) { // ищем совпадения времён: наше время (time) должно совпадать с временем создания сообщения
            console.log(m.array()[mess].content) 
            /* ^ нашли совпадение среди сообщений за определённое время, 
           записываем в консоль содержание данного сообщения */
        }
    }
})

всё же, никогда не стоит забывать, что у всего есть свои недостатки и ограничения.
Ответ написан
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы