Как создать таймер для пользователя?

174
20 апреля 2018, 15:42

У меня бот для вк. Мне нужно что бы при вводе команды test бот ответил пользователю "Работаю". Но если пользователь еще раз ввел ему высветило "Подождите 10 минут". ПОсле того как пройдет 10 минут пользователь может снова писать test. Вопрос: Как сделать что бы пользователю после ввода команды, эта же команда была доступна через 10 минут? Node js

Answer 1

Если в ноде есть класс Date и его статичный метод now():

  1. Объявляете в воркере (или как оно в ноде называется) примерно такой объект с данными пользовательских команд

    const cmdData = {
      'test': { timeout: 6e5, lastAccessTime: 0 }, 
      ... 
    };
    
  2. При выполнении команды пользователя, проверяете, прошло ли заданное количество времени

    let cd = cmdData[command], 
        tNow = Date.now(); 
    if (tNow - cd.lastAccessTime > cd.timeout) {
      cd.lastAccessTime = tNow; 
      // вывод "Работаю" и выполнение действий 
    }
    else 
      // вывод "Подождите 10 минут"
    
READ ALSO
Как поставить на img эффект tooltip . wordpress?

Как поставить на img эффект tooltip . wordpress?

Как поставить эффект tooltip js на img , проект на wordpress

227
Как сделать таблицу рекордов в игре на Javascript с использованием localstorage?

Как сделать таблицу рекордов в игре на Javascript с использованием localstorage?

В общем, суть в следующемВ начале игры заполняются данные формы, типа Имя, Фамилия, и отправляются в localstorage

705
Ошибка addEventListener 'null'

Ошибка addEventListener 'null'

Есть событие которое выполняется при изменении содержимых тегов iteminfo0 и iteminfo1

242
Обнаружить ошибку или каким должен быть код у начинающих JS?

Обнаружить ошибку или каким должен быть код у начинающих JS?

Постепенно я решаю, не без помощи этого сайта, мелкие задачки для достижения решения одной большой задачиСейчас после написания около 50 строк...

232