node-schedule-tz: проблема с часовым поясом - PullRequest
0 голосов
/ 06 июня 2018

Почему это не работает?

var tournRule = new schedule.RecurrenceRule();
tournRule.dayOfWeek = 3;
tournRule.hour = 03;
tournRule.minute = 08;
tournRule.tz = 'Central Time';

Я пытался ввести так много разных вещей в **. Tz = 'CDT';раздел, но не смотря ни на что, он не срабатывает.Я не получаю никаких ошибок от этого.

Тиа!

РЕДАКТИРОВАТЬ

Думаю, я должен добавить это тоже:

var tr = schedule.scheduleJob(tournRule, function() {
console.log("Im online. Im online");
})

РЕДАКТИРОВАТЬ 2

Я хочу указать часовой пояс в качестве команды ESL, для которой я разрабатываю бота, для разных игроков в Центральной Америке и в Великобритании.

Ответы [ 2 ]

0 голосов
/ 06 июня 2018

Я бы предложил попробовать пакет cron: https://www.npmjs.com/package/cron.

Я нашел, что это прекрасно работает с часовыми поясами, пример здесь:

const CronJob = require('cron').CronJob;
const job = new CronJob({
  // Run at 05:00 Central time, only on weekdays
  cronTime: '00 00 05 * * 1-5',
  onTick: function() {
      // Run whatever you like here..
      console.log('CronJob ran!!');
  },
  start: true,
  timeZone: 'US/Central'
});

Смотрите здесь длясписок часовых поясов: https://en.wikipedia.org/wiki/List_of_tz_database_time_zones

0 голосов
/ 06 июня 2018

в соответствии с https://www.npmjs.com/package/node-schedule-tz вам не нужно указывать часовой пояс, вот рабочий пример с их сайта:

var rule = new schedule.RecurrenceRule();
rule.minute = 42;

var j = schedule.scheduleJob(rule, function(){
    console.log('The answer to life, the universe, and everything!');
});

Пример выше будет срабатывать в каждый час, заканчивающийся: 42, например 7: 42, 8:42, 9:42 и т. Д., Убедитесь, что вы понимаете, как работают cron-подобные вещи

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...