homebridge-dummy 1.4.1-beta.0 → 1.4.1-beta.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/CHANGELOG.md +9 -4
- package/README.md +48 -15
- package/config.schema.json +57 -2
- package/dist/accessory/base.d.ts +1 -1
- package/dist/accessory/group.js +1 -1
- package/dist/accessory/group.js.map +1 -1
- package/dist/accessory/lock.d.ts +1 -1
- package/dist/accessory/lock.js +3 -3
- package/dist/accessory/lock.js.map +1 -1
- package/dist/accessory/onoff/lightbulb.d.ts +1 -1
- package/dist/accessory/onoff/lightbulb.js +4 -4
- package/dist/accessory/onoff/lightbulb.js.map +1 -1
- package/dist/accessory/onoff/onoff.d.ts +1 -1
- package/dist/accessory/onoff/onoff.js +3 -3
- package/dist/accessory/onoff/onoff.js.map +1 -1
- package/dist/accessory/position/garage.d.ts +2 -2
- package/dist/accessory/position/garage.js +2 -2
- package/dist/accessory/position/garage.js.map +1 -1
- package/dist/accessory/position/position.d.ts +3 -3
- package/dist/accessory/position/position.js +4 -4
- package/dist/accessory/position/position.js.map +1 -1
- package/dist/accessory/thermostat.d.ts +1 -1
- package/dist/accessory/thermostat.js +4 -4
- package/dist/accessory/thermostat.js.map +1 -1
- package/dist/homebridge/platform.js +1 -1
- package/dist/homebridge/platform.js.map +1 -1
- package/dist/homebridge-ui/public/index.html +1 -1
- package/dist/homebridge-ui/public/ui.js +1 -1
- package/dist/i18n/de.d.ts +17 -6
- package/dist/i18n/de.js +2 -3
- package/dist/i18n/de.js.map +1 -1
- package/dist/i18n/en.d.ts +15 -3
- package/dist/i18n/en.js +15 -3
- package/dist/i18n/en.js.map +1 -1
- package/dist/i18n/es.d.ts +17 -6
- package/dist/i18n/es.js +2 -3
- package/dist/i18n/es.js.map +1 -1
- package/dist/i18n/i18n.d.ts +15 -3
- package/dist/i18n/ru.d.ts +17 -6
- package/dist/i18n/ru.js +2 -3
- package/dist/i18n/ru.js.map +1 -1
- package/dist/i18n/template.d.ts +15 -3
- package/dist/model/enums.d.ts +8 -2
- package/dist/model/enums.js +16 -10
- package/dist/model/enums.js.map +1 -1
- package/dist/model/types.d.ts +3 -0
- package/dist/model/webhook.d.ts +12 -8
- package/dist/model/webhook.js +77 -47
- package/dist/model/webhook.js.map +1 -1
- package/dist/timeout/schedule.d.ts +3 -0
- package/dist/timeout/schedule.js +65 -3
- package/dist/timeout/schedule.js.map +1 -1
- package/package.json +3 -1
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"webhook.js","sourceRoot":"","sources":["../../src/model/webhook.ts"],"names":[],"mappings":"AAAA,OAAO,MAAM,MAAM,aAAa,CAAC;AACjC,OAAO,OAA8B,MAAM,SAAS,CAAC;AAIrD,OAAO,EAAE,uBAAuB,EAAE,eAAe,EAAE,gBAAgB,EAAE,
|
|
1
|
+
{"version":3,"file":"webhook.js","sourceRoot":"","sources":["../../src/model/webhook.ts"],"names":[],"mappings":"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"}
|
package/dist/timeout/schedule.js
CHANGED
|
@@ -1,4 +1,5 @@
|
|
|
1
1
|
import { CronJob, validateCronExpression } from 'cron';
|
|
2
|
+
import SunCalc from 'suncalc';
|
|
2
3
|
import { DelayLogStrings, Timeout } from './timeout.js';
|
|
3
4
|
import { strings } from '../i18n/i18n.js';
|
|
4
5
|
import { isValidTimeUnits, printableValues, ScheduleType, TimeUnits } from '../model/enums.js';
|
|
@@ -29,6 +30,16 @@ export class Schedule extends Timeout {
|
|
|
29
30
|
return;
|
|
30
31
|
}
|
|
31
32
|
break;
|
|
33
|
+
case ScheduleType.DAWN:
|
|
34
|
+
case ScheduleType.DUSK:
|
|
35
|
+
case ScheduleType.GOLDEN_HOUR:
|
|
36
|
+
case ScheduleType.NIGHT:
|
|
37
|
+
case ScheduleType.SUNRISE:
|
|
38
|
+
case ScheduleType.SUNSET:
|
|
39
|
+
if (!assert(dependency.log, dependency.caller, config, 'latitude', 'longitude')) {
|
|
40
|
+
return;
|
|
41
|
+
}
|
|
42
|
+
break;
|
|
32
43
|
default:
|
|
33
44
|
dependency.log.error(strings.schedule.badType, dependency.caller, `'${config.type}'`, printableValues(ScheduleType));
|
|
34
45
|
return;
|
|
@@ -42,6 +53,12 @@ export class Schedule extends Timeout {
|
|
|
42
53
|
this.callback = callback;
|
|
43
54
|
switch (this.config.type) {
|
|
44
55
|
case ScheduleType.INTERVAL:
|
|
56
|
+
case ScheduleType.DAWN:
|
|
57
|
+
case ScheduleType.DUSK:
|
|
58
|
+
case ScheduleType.GOLDEN_HOUR:
|
|
59
|
+
case ScheduleType.NIGHT:
|
|
60
|
+
case ScheduleType.SUNRISE:
|
|
61
|
+
case ScheduleType.SUNSET:
|
|
45
62
|
this.startTimeout();
|
|
46
63
|
break;
|
|
47
64
|
case ScheduleType.CRON:
|
|
@@ -51,13 +68,58 @@ export class Schedule extends Timeout {
|
|
|
51
68
|
}
|
|
52
69
|
startTimeout() {
|
|
53
70
|
this.reset();
|
|
54
|
-
const logStrings = DelayLogStrings(strings.schedule.intervalMilliseconds, strings.schedule.intervalSeconds, strings.schedule.intervalMinutes, strings.schedule.intervalHours);
|
|
55
|
-
const delay = this.getDelay(this.config.interval, this.config.units, this.config.random, logStrings);
|
|
56
71
|
this.timeout = setTimeout(async () => {
|
|
57
72
|
this.reset();
|
|
58
73
|
await this.callback();
|
|
59
74
|
this.startTimeout();
|
|
60
|
-
}, delay);
|
|
75
|
+
}, this.delay);
|
|
76
|
+
}
|
|
77
|
+
get delay() {
|
|
78
|
+
const logStrings = DelayLogStrings(strings.schedule.intervalMilliseconds, strings.schedule.intervalSeconds, strings.schedule.intervalMinutes, strings.schedule.intervalHours);
|
|
79
|
+
switch (this.config.type) {
|
|
80
|
+
case ScheduleType.INTERVAL:
|
|
81
|
+
return this.getDelay(this.config.interval, this.config.units, this.config.random, logStrings);
|
|
82
|
+
case ScheduleType.DAWN:
|
|
83
|
+
case ScheduleType.DUSK:
|
|
84
|
+
case ScheduleType.GOLDEN_HOUR:
|
|
85
|
+
case ScheduleType.NIGHT:
|
|
86
|
+
case ScheduleType.SUNRISE:
|
|
87
|
+
case ScheduleType.SUNSET:
|
|
88
|
+
return this.getSunDelay();
|
|
89
|
+
}
|
|
90
|
+
throw new Error(`Cannot get delay for type '${this.config.type}'`);
|
|
91
|
+
}
|
|
92
|
+
getSunDelay() {
|
|
93
|
+
const date = new Date();
|
|
94
|
+
let eventDate = this.getSunEventDate(date);
|
|
95
|
+
if (eventDate.getTime() - date.getTime() <= 0) {
|
|
96
|
+
date.setDate(date.getDate() + 1);
|
|
97
|
+
eventDate = this.getSunEventDate(date);
|
|
98
|
+
}
|
|
99
|
+
const minutesOffset = this.config.offset;
|
|
100
|
+
if (minutesOffset !== undefined) {
|
|
101
|
+
eventDate.setMinutes(eventDate.getMinutes() + minutesOffset);
|
|
102
|
+
}
|
|
103
|
+
this.logIfDesired(strings.schedule.sunTime, eventDate.toLocaleTimeString());
|
|
104
|
+
return eventDate.getTime() - Date.now();
|
|
105
|
+
}
|
|
106
|
+
getSunEventDate(date) {
|
|
107
|
+
const times = SunCalc.getTimes(date, this.config.latitude, this.config.longitude);
|
|
108
|
+
switch (this.config.type) {
|
|
109
|
+
case ScheduleType.DAWN:
|
|
110
|
+
return times.dawn;
|
|
111
|
+
case ScheduleType.DUSK:
|
|
112
|
+
return times.dusk;
|
|
113
|
+
case ScheduleType.GOLDEN_HOUR:
|
|
114
|
+
return times.goldenHour;
|
|
115
|
+
case ScheduleType.NIGHT:
|
|
116
|
+
return times.night;
|
|
117
|
+
case ScheduleType.SUNRISE:
|
|
118
|
+
return times.sunrise;
|
|
119
|
+
case ScheduleType.SUNSET:
|
|
120
|
+
return times.sunset;
|
|
121
|
+
}
|
|
122
|
+
throw new Error(`Cannot get sun delay for time type '${this.config.type}'`);
|
|
61
123
|
}
|
|
62
124
|
startCron() {
|
|
63
125
|
let cron = this.config.cron;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"schedule.js","sourceRoot":"","sources":["../../src/timeout/schedule.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,sBAAsB,EAAE,MAAM,MAAM,CAAC;
|
|
1
|
+
{"version":3,"file":"schedule.js","sourceRoot":"","sources":["../../src/timeout/schedule.ts"],"names":[],"mappings":"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"}
|
package/package.json
CHANGED
|
@@ -4,7 +4,7 @@
|
|
|
4
4
|
"displayName": "Homebridge Dummy",
|
|
5
5
|
"description": "Create accessories to help with HomeKit automation and control — scheduling, delays, sensors, commands, conditions, webhooks, and more",
|
|
6
6
|
"type": "module",
|
|
7
|
-
"version": "1.4.1-beta.
|
|
7
|
+
"version": "1.4.1-beta.1",
|
|
8
8
|
"homepage": "https://github.com/mpatfield/homebridge-dummy#readme",
|
|
9
9
|
"repository": {
|
|
10
10
|
"type": "git",
|
|
@@ -66,6 +66,7 @@
|
|
|
66
66
|
"homebridge-lib": "^7.1.8",
|
|
67
67
|
"lodash.merge": "^4.6.2",
|
|
68
68
|
"node-persist": "^4.0.4",
|
|
69
|
+
"suncalc": "^1.9.0",
|
|
69
70
|
"tail-file": "^1.4.16"
|
|
70
71
|
},
|
|
71
72
|
"devDependencies": {
|
|
@@ -73,6 +74,7 @@
|
|
|
73
74
|
"@types/express": "^5.0.3",
|
|
74
75
|
"@types/lodash.merge": "^4.6.9",
|
|
75
76
|
"@types/node-persist": "^3.1.8",
|
|
77
|
+
"@types/suncalc": "^1.9.2",
|
|
76
78
|
"esbuild": "^0.25.10",
|
|
77
79
|
"eslint": "^9.35.0",
|
|
78
80
|
"homebridge": "^2.0.0-beta.30",
|