2021-03-29 02:34:25 +00:00
|
|
|
(function() {
|
2021-04-03 02:22:08 +00:00
|
|
|
function setup () {
|
2021-09-13 15:11:57 +00:00
|
|
|
var settings = require('Storage').readJSON('hourstrike.json',1);
|
2021-04-03 02:22:08 +00:00
|
|
|
var t = new Date();
|
|
|
|
var t_min_sec = t.getMinutes()*60+t.getSeconds();
|
|
|
|
var wait_msec = settings.interval>0?(settings.interval-t_min_sec%settings.interval)*1000:-1;
|
|
|
|
if (wait_msec>0) {
|
|
|
|
t.setMilliseconds(t.getMilliseconds()+wait_msec);
|
|
|
|
var t_hour = t.getHours();
|
|
|
|
if (t_hour<settings.start||t_hour>settings.end) {
|
|
|
|
var strike = new Date(t.getTime());
|
|
|
|
strike.setHours(settings.start);
|
|
|
|
strike.setMinutes(0);
|
|
|
|
if (t_hour>settings.end) {
|
|
|
|
strike.setDate(strike.getDate()+1);
|
|
|
|
}
|
|
|
|
wait_msec += strike-t;
|
|
|
|
settings.next_hour = strike.getHours();
|
|
|
|
settings.next_minute = strike.getMinutes();
|
|
|
|
} else {
|
|
|
|
settings.next_hour = t_hour;
|
|
|
|
settings.next_minute = t.getMinutes();
|
2021-03-30 14:05:53 +00:00
|
|
|
}
|
2021-04-03 02:22:08 +00:00
|
|
|
setTimeout(strike_func, wait_msec);
|
2021-03-31 02:07:41 +00:00
|
|
|
} else {
|
2021-04-03 02:22:08 +00:00
|
|
|
settings.next_hour = -1;
|
|
|
|
settings.next_minute = -1;
|
2021-03-30 14:05:53 +00:00
|
|
|
}
|
2021-04-03 02:22:08 +00:00
|
|
|
require('Storage').write('hourstrike.json', settings);
|
2021-03-30 14:05:53 +00:00
|
|
|
}
|
2021-04-03 02:22:08 +00:00
|
|
|
function strike_func () {
|
|
|
|
var setting = require('Storage').readJSON('hourstrike.json',1)||[];
|
2022-01-20 21:19:15 +00:00
|
|
|
if (0 == setting.buzzOrBeep) {
|
|
|
|
if (2 == setting.scount) {
|
2022-01-20 22:24:35 +00:00
|
|
|
Bangle.buzz(200, setting.vlevel||0.5)
|
|
|
|
.then(() => new Promise(resolve => setTimeout(resolve,200)))
|
2022-01-20 21:19:15 +00:00
|
|
|
.then(() => Bangle.buzz(200, setting.vlevel||0.5));
|
|
|
|
} else {
|
2022-01-20 22:24:35 +00:00
|
|
|
Bangle.buzz(200, setting.vlevel||0.5);
|
2022-01-20 21:19:15 +00:00
|
|
|
}
|
|
|
|
} else {
|
|
|
|
if (2 == setting.scount) {
|
2022-01-20 22:09:59 +00:00
|
|
|
Bangle.beep(200)
|
|
|
|
.then(() => new Promise(resolve => setTimeout(resolve,100)))
|
|
|
|
.then(() => Bangle.beep(300));
|
2022-01-20 21:19:15 +00:00
|
|
|
} else {
|
2022-01-20 22:09:59 +00:00
|
|
|
Bangle.beep(200);
|
2022-01-20 21:19:15 +00:00
|
|
|
}
|
|
|
|
}
|
2021-04-03 02:22:08 +00:00
|
|
|
setup();
|
|
|
|
}
|
|
|
|
setup();
|
2021-03-29 03:28:45 +00:00
|
|
|
})();
|