iobroker.tibberlink 1.4.0 → 1.4.2
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/README.md +33 -8
- package/admin/jsonConfig.json +2 -4
- package/build/lib/tibberAPICaller.js +193 -80
- package/build/lib/tibberAPICaller.js.map +1 -1
- package/build/lib/tibberCalculator.js +71 -63
- package/build/lib/tibberCalculator.js.map +1 -1
- package/build/main.js +71 -80
- package/build/main.js.map +1 -1
- package/io-package.json +28 -28
- package/package.json +8 -7
package/README.md
CHANGED
|
@@ -2,16 +2,27 @@
|
|
|
2
2
|
|
|
3
3
|
# ioBroker.tibberlink
|
|
4
4
|
|
|
5
|
-
[](https://www.npmjs.com/package/iobroker.tibberlink)
|
|
6
|
+
[](https://www.npmjs.com/package/iobroker.tibberlink)
|
|
7
|
+

|
|
8
|
+

|
|
9
|
+
|
|
10
|
+

|
|
11
|
+

|
|
12
|
+

|
|
13
|
+

|
|
14
|
+

|
|
15
|
+
|
|
16
|
+

|
|
13
17
|
[](https://github.com/hombach/ioBroker.tibberlink/actions/workflows/codeql-analysis.yml)
|
|
14
18
|
[](https://ci.appveyor.com/project/hombach/iobroker-tibberlink)
|
|
19
|
+
[](https://snyk.io/test/github/hombach/ioBroker.tibberlink)
|
|
20
|
+
|
|
21
|
+
## Versions
|
|
22
|
+
|
|
23
|
+

|
|
24
|
+

|
|
25
|
+

|
|
15
26
|
|
|
16
27
|
[](https://nodei.co/npm/iobroker.tibberlink/)
|
|
17
28
|
|
|
@@ -54,6 +65,20 @@ This adapter employs Sentry libraries to automatically report exceptions and cod
|
|
|
54
65
|
|
|
55
66
|
! Note that missing version entries are typically dependency updates for improved security.
|
|
56
67
|
|
|
68
|
+
### 1.4.2 (2023-11-03)
|
|
69
|
+
|
|
70
|
+
- (HombachC) complete rework of task scheduling for more precise pull timing (#149)
|
|
71
|
+
- (HombachC) critical vulnerability fix for axios
|
|
72
|
+
- (HombachC) fix debug message typos, code optimisations in calculator
|
|
73
|
+
- (HombachC) fix type error in price average calculation notified by Sentry
|
|
74
|
+
- (HombachC) fix error in update prices tomorrow - possible false positive
|
|
75
|
+
|
|
76
|
+
### 1.4.1 (2023-10-25)
|
|
77
|
+
|
|
78
|
+
- (HombachC) implement forced update of all data after adapter restart (#155)
|
|
79
|
+
- (HombachC) Bump actions/setup-node from 3.8.1 to 4.0.0 (#157)
|
|
80
|
+
- (HombachC) remove node.js 16 actions - dependency updates
|
|
81
|
+
|
|
57
82
|
### 1.4.0 (2023-10-24)
|
|
58
83
|
|
|
59
84
|
- (HombachC) implement min/max states (#131)
|
package/admin/jsonConfig.json
CHANGED
|
@@ -458,8 +458,7 @@
|
|
|
458
458
|
],
|
|
459
459
|
"filter": false,
|
|
460
460
|
"sort": false,
|
|
461
|
-
"width": "15%"
|
|
462
|
-
"default": ""
|
|
461
|
+
"width": "15%"
|
|
463
462
|
},
|
|
464
463
|
{
|
|
465
464
|
"type": "objectId",
|
|
@@ -467,8 +466,7 @@
|
|
|
467
466
|
"attr": "chTargetState",
|
|
468
467
|
"filter": false,
|
|
469
468
|
"sort": false,
|
|
470
|
-
"width": "40%"
|
|
471
|
-
"default": ""
|
|
469
|
+
"width": "40%"
|
|
472
470
|
},
|
|
473
471
|
{
|
|
474
472
|
"type": "text",
|
|
@@ -2,6 +2,7 @@
|
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
3
|
exports.TibberAPICaller = void 0;
|
|
4
4
|
const tibber_api_1 = require("tibber-api");
|
|
5
|
+
const EnergyResolution_1 = require("tibber-api/lib/src/models/enums/EnergyResolution");
|
|
5
6
|
const tibberHelper_1 = require("./tibberHelper");
|
|
6
7
|
class TibberAPICaller extends tibberHelper_1.TibberHelper {
|
|
7
8
|
constructor(tibberConfig, adapter) {
|
|
@@ -49,106 +50,212 @@ class TibberAPICaller extends tibberHelper_1.TibberHelper {
|
|
|
49
50
|
return [];
|
|
50
51
|
}
|
|
51
52
|
}
|
|
52
|
-
async
|
|
53
|
-
|
|
54
|
-
|
|
55
|
-
|
|
56
|
-
|
|
57
|
-
|
|
58
|
-
|
|
59
|
-
|
|
60
|
-
|
|
61
|
-
|
|
53
|
+
async updateCurrentPriceAllHomes(homeInfoList, forceUpdate) {
|
|
54
|
+
let newPrice = false;
|
|
55
|
+
for (const index in homeInfoList) {
|
|
56
|
+
if (await this.updateCurrentPrice(homeInfoList[index].ID, forceUpdate))
|
|
57
|
+
newPrice = true;
|
|
58
|
+
}
|
|
59
|
+
return newPrice;
|
|
60
|
+
}
|
|
61
|
+
async updateCurrentPrice(homeId, forceUpdate) {
|
|
62
|
+
try {
|
|
63
|
+
if (homeId) {
|
|
64
|
+
let exDate = null;
|
|
65
|
+
exDate = new Date(await this.getStateValue(`Homes.${homeId}.CurrentPrice.startsAt`));
|
|
66
|
+
const now = new Date();
|
|
67
|
+
if (!exDate || now.getHours() !== exDate.getHours() || forceUpdate) {
|
|
68
|
+
const currentPrice = await this.tibberQuery.getCurrentEnergyPrice(homeId);
|
|
69
|
+
await this.fetchPrice(homeId, "CurrentPrice", currentPrice);
|
|
70
|
+
this.adapter.log.debug(`Got current price from tibber api: ${JSON.stringify(currentPrice)}`);
|
|
71
|
+
return true;
|
|
72
|
+
}
|
|
73
|
+
else {
|
|
74
|
+
this.adapter.log.debug(`Hour (${exDate.getHours()}) of known current price is already the current hour, polling of current price from Tibber skipped`);
|
|
75
|
+
return false;
|
|
76
|
+
}
|
|
62
77
|
}
|
|
63
78
|
else {
|
|
64
|
-
this.adapter.log.debug(`Hour (${exDate.getHours()}) of known current price is already the current hour, polling of current price from Tibber skipped`);
|
|
65
79
|
return false;
|
|
66
80
|
}
|
|
67
81
|
}
|
|
68
|
-
|
|
82
|
+
catch (error) {
|
|
83
|
+
if (forceUpdate)
|
|
84
|
+
this.adapter.log.error(this.generateErrorMessage(error, `pull of current price`));
|
|
85
|
+
else
|
|
86
|
+
this.adapter.log.warn(this.generateErrorMessage(error, `pull of current price`));
|
|
69
87
|
return false;
|
|
70
88
|
}
|
|
71
89
|
}
|
|
72
|
-
async
|
|
73
|
-
let
|
|
74
|
-
const
|
|
75
|
-
|
|
76
|
-
|
|
77
|
-
exDate = new Date(exPricesToday[2].startsAt);
|
|
90
|
+
async updatePricesTodayAllHomes(homeInfoList, forceUpdate) {
|
|
91
|
+
let newPrice = false;
|
|
92
|
+
for (const index in homeInfoList) {
|
|
93
|
+
if (await this.updatePricesToday(homeInfoList[index].ID, forceUpdate))
|
|
94
|
+
newPrice = true;
|
|
78
95
|
}
|
|
79
|
-
|
|
80
|
-
|
|
81
|
-
|
|
82
|
-
|
|
83
|
-
|
|
84
|
-
this.
|
|
85
|
-
|
|
86
|
-
|
|
87
|
-
|
|
88
|
-
for (const i in pricesToday) {
|
|
89
|
-
const price = pricesToday[i];
|
|
90
|
-
const hour = new Date(price.startsAt.substr(0, 19)).getHours();
|
|
91
|
-
await this.fetchPrice(homeId, `PricesToday.${hour}`, price);
|
|
96
|
+
return newPrice;
|
|
97
|
+
}
|
|
98
|
+
async updatePricesToday(homeId, forceUpdate) {
|
|
99
|
+
try {
|
|
100
|
+
let exDate = null;
|
|
101
|
+
const exJSON = await this.getStateValue(`Homes.${homeId}.PricesToday.json`);
|
|
102
|
+
const exPricesToday = JSON.parse(exJSON);
|
|
103
|
+
if (Array.isArray(exPricesToday) && exPricesToday[2] && exPricesToday[2].startsAt) {
|
|
104
|
+
exDate = new Date(exPricesToday[2].startsAt);
|
|
92
105
|
}
|
|
93
|
-
|
|
94
|
-
|
|
95
|
-
|
|
106
|
+
const today = new Date();
|
|
107
|
+
today.setHours(0, 0, 0, 0); // sets clock to 0:00
|
|
108
|
+
if (!exDate || exDate <= today || forceUpdate) {
|
|
109
|
+
const pricesToday = await this.tibberQuery.getTodaysEnergyPrices(homeId);
|
|
110
|
+
this.adapter.log.debug(`Got prices today from tibber api: ${JSON.stringify(pricesToday)}`);
|
|
111
|
+
this.checkAndSetValue(this.getStatePrefix(homeId, "PricesToday", "json"), JSON.stringify(pricesToday), "The prices today as json");
|
|
112
|
+
this.fetchPriceAverage(homeId, `PricesToday.average`, pricesToday);
|
|
113
|
+
this.fetchPriceMaximum(homeId, `PricesToday.maximum`, pricesToday.sort((a, b) => a.total - b.total));
|
|
114
|
+
this.fetchPriceMinimum(homeId, `PricesToday.minimum`, pricesToday.sort((a, b) => a.total - b.total));
|
|
115
|
+
for (const i in pricesToday) {
|
|
116
|
+
const price = pricesToday[i];
|
|
117
|
+
const hour = new Date(price.startsAt.substr(0, 19)).getHours();
|
|
118
|
+
await this.fetchPrice(homeId, `PricesToday.${hour}`, price);
|
|
119
|
+
}
|
|
120
|
+
if (Array.isArray(pricesToday)) {
|
|
121
|
+
// Sort the array if it is an array - possible type error discovered by sentry
|
|
122
|
+
this.checkAndSetValue(this.getStatePrefix(homeId, "PricesToday", "jsonBYpriceASC"), JSON.stringify(pricesToday.sort((a, b) => a.total - b.total)), "prices sorted by cost ascending as json");
|
|
123
|
+
}
|
|
124
|
+
else {
|
|
125
|
+
// Handle the case when pricesToday is not an array, it's empty!, so just don't sort and write
|
|
126
|
+
this.checkAndSetValue(this.getStatePrefix(homeId, "PricesToday", "jsonBYpriceASC"), JSON.stringify(pricesToday), "prices sorted by cost ascending as json");
|
|
127
|
+
}
|
|
128
|
+
return true;
|
|
96
129
|
}
|
|
97
130
|
else {
|
|
98
|
-
|
|
99
|
-
|
|
131
|
+
this.adapter.log.debug(`Existing date (${exDate}) of price info is already the today date, polling of prices today from Tibber skipped`);
|
|
132
|
+
return false;
|
|
100
133
|
}
|
|
101
134
|
}
|
|
102
|
-
|
|
103
|
-
|
|
135
|
+
catch (error) {
|
|
136
|
+
if (forceUpdate)
|
|
137
|
+
this.adapter.log.error(this.generateErrorMessage(error, `pull of prices today`));
|
|
138
|
+
else
|
|
139
|
+
this.adapter.log.warn(this.generateErrorMessage(error, `pull of prices today`));
|
|
140
|
+
return false;
|
|
104
141
|
}
|
|
105
142
|
}
|
|
106
|
-
async
|
|
107
|
-
let
|
|
108
|
-
const
|
|
109
|
-
|
|
110
|
-
|
|
111
|
-
exDate = new Date(exPricesTomorrow[2].startsAt);
|
|
143
|
+
async updatePricesTomorrowAllHomes(homeInfoList, forceUpdate) {
|
|
144
|
+
let newPrice = false;
|
|
145
|
+
for (const index in homeInfoList) {
|
|
146
|
+
if (await this.updatePricesTomorrow(homeInfoList[index].ID, forceUpdate))
|
|
147
|
+
newPrice = true;
|
|
112
148
|
}
|
|
113
|
-
|
|
114
|
-
|
|
115
|
-
|
|
116
|
-
|
|
117
|
-
|
|
118
|
-
|
|
119
|
-
|
|
120
|
-
|
|
121
|
-
|
|
122
|
-
for (let hour = 0; hour < 24; hour++) {
|
|
123
|
-
this.emptyingPrice(homeId, `PricesTomorrow.${hour}`);
|
|
124
|
-
}
|
|
125
|
-
this.emptyingPriceAverage(homeId, `PricesTomorrow.average`);
|
|
126
|
-
this.emptyingPriceMaximum(homeId, `PricesTomorrow.maximum`);
|
|
127
|
-
this.emptyingPriceMinimum(homeId, `PricesTomorrow.minimum`);
|
|
149
|
+
return newPrice;
|
|
150
|
+
}
|
|
151
|
+
async updatePricesTomorrow(homeId, forceUpdate) {
|
|
152
|
+
try {
|
|
153
|
+
let exDate = null;
|
|
154
|
+
const exJSON = await this.getStateValue(`Homes.${homeId}.PricesTomorrow.json`);
|
|
155
|
+
const exPricesTomorrow = JSON.parse(exJSON);
|
|
156
|
+
if (Array.isArray(exPricesTomorrow) && exPricesTomorrow[2] && exPricesTomorrow[2].startsAt) {
|
|
157
|
+
exDate = new Date(exPricesTomorrow[2].startsAt);
|
|
128
158
|
}
|
|
129
|
-
|
|
130
|
-
|
|
131
|
-
|
|
132
|
-
|
|
133
|
-
|
|
134
|
-
|
|
159
|
+
const morgen = new Date();
|
|
160
|
+
morgen.setDate(morgen.getDate() + 1);
|
|
161
|
+
morgen.setHours(0, 0, 0, 0); // sets clock to 0:00
|
|
162
|
+
if (!exDate || exDate <= morgen || forceUpdate) {
|
|
163
|
+
const pricesTomorrow = await this.tibberQuery.getTomorrowsEnergyPrices(homeId);
|
|
164
|
+
this.adapter.log.debug(`Got prices tomorrow from tibber api: ${JSON.stringify(pricesTomorrow)}`);
|
|
165
|
+
this.checkAndSetValue(this.getStatePrefix(homeId, "PricesTomorrow", "json"), JSON.stringify(pricesTomorrow), "The prices tomorrow as json"); //write, also JSON is empty
|
|
166
|
+
if (pricesTomorrow.length === 0) {
|
|
167
|
+
// pricing not known, before about 13:00 - delete the states
|
|
168
|
+
this.adapter.log.debug(`Emptying prices tomorrow and average cause existing ones are obsolete...`);
|
|
169
|
+
for (let hour = 0; hour < 24; hour++) {
|
|
170
|
+
this.emptyingPrice(homeId, `PricesTomorrow.${hour}`);
|
|
171
|
+
}
|
|
172
|
+
this.emptyingPriceAverage(homeId, `PricesTomorrow.average`);
|
|
173
|
+
this.emptyingPriceMaximum(homeId, `PricesTomorrow.maximum`);
|
|
174
|
+
this.emptyingPriceMinimum(homeId, `PricesTomorrow.minimum`);
|
|
175
|
+
this.checkAndSetValue(this.getStatePrefix(homeId, "PricesTomorrow", "jsonBYpriceASC"), JSON.stringify(pricesTomorrow), "prices sorted by cost ascending as json");
|
|
176
|
+
return false;
|
|
177
|
+
}
|
|
178
|
+
else if (Array.isArray(pricesTomorrow)) {
|
|
179
|
+
// pricing known, after about 13:00 - write the states
|
|
180
|
+
for (const i in pricesTomorrow) {
|
|
181
|
+
const price = pricesTomorrow[i];
|
|
182
|
+
const hour = new Date(price.startsAt.substr(0, 19)).getHours();
|
|
183
|
+
await this.fetchPrice(homeId, "PricesTomorrow." + hour, price);
|
|
184
|
+
}
|
|
185
|
+
this.fetchPriceAverage(homeId, `PricesTomorrow.average`, pricesTomorrow);
|
|
186
|
+
this.fetchPriceMaximum(homeId, `PricesTomorrow.maximum`, pricesTomorrow.sort((a, b) => a.total - b.total));
|
|
187
|
+
this.fetchPriceMinimum(homeId, `PricesTomorrow.minimum`, pricesTomorrow.sort((a, b) => a.total - b.total));
|
|
188
|
+
this.checkAndSetValue(this.getStatePrefix(homeId, "PricesTomorrow", "jsonBYpriceASC"), JSON.stringify(pricesTomorrow.sort((a, b) => a.total - b.total)), "prices sorted by cost ascending as json");
|
|
189
|
+
return true;
|
|
135
190
|
}
|
|
136
|
-
this.fetchPriceAverage(homeId, `PricesTomorrow.average`, pricesTomorrow);
|
|
137
|
-
this.fetchPriceMaximum(homeId, `PricesTomorrow.maximum`, pricesTomorrow.sort((a, b) => a.total - b.total));
|
|
138
|
-
this.fetchPriceMinimum(homeId, `PricesTomorrow.minimum`, pricesTomorrow.sort((a, b) => a.total - b.total));
|
|
139
|
-
}
|
|
140
|
-
this.checkAndSetValue(this.getStatePrefix(homeId, "PricesTomorrow", "json"), JSON.stringify(pricesTomorrow), "The prices tomorrow as json");
|
|
141
|
-
if (Array.isArray(pricesTomorrow)) {
|
|
142
|
-
// Sort the array if it is an array - possible type error discovered by sentry
|
|
143
|
-
this.checkAndSetValue(this.getStatePrefix(homeId, "PricesTomorrow", "jsonBYpriceASC"), JSON.stringify(pricesTomorrow.sort((a, b) => a.total - b.total)), "prices sorted by cost ascending as json");
|
|
144
191
|
}
|
|
145
192
|
else {
|
|
146
|
-
|
|
147
|
-
|
|
193
|
+
this.adapter.log.debug(`Existing date (${exDate}) of price info is already the tomorrow date, polling of prices tomorrow from Tibber skipped`);
|
|
194
|
+
return false;
|
|
195
|
+
}
|
|
196
|
+
return false;
|
|
197
|
+
}
|
|
198
|
+
catch (error) {
|
|
199
|
+
if (forceUpdate)
|
|
200
|
+
this.adapter.log.error(this.generateErrorMessage(error, `pull of prices tomorrow`));
|
|
201
|
+
else
|
|
202
|
+
this.adapter.log.warn(this.generateErrorMessage(error, `pull of prices tomorrow`));
|
|
203
|
+
return false;
|
|
204
|
+
}
|
|
205
|
+
}
|
|
206
|
+
// yet not used in public revisions
|
|
207
|
+
async getConsumption(homeId) {
|
|
208
|
+
try {
|
|
209
|
+
if (homeId) {
|
|
210
|
+
const dailyConsumption = await this.tibberQuery.getConsumption(EnergyResolution_1.EnergyResolution.DAILY, 7, homeId);
|
|
211
|
+
const weeklyConsumption = await this.tibberQuery.getConsumption(EnergyResolution_1.EnergyResolution.WEEKLY, 4, homeId);
|
|
212
|
+
const monthlyConsumption = await this.tibberQuery.getConsumption(EnergyResolution_1.EnergyResolution.MONTHLY, 4, homeId);
|
|
213
|
+
const annualConsumption = await this.tibberQuery.getConsumption(EnergyResolution_1.EnergyResolution.ANNUAL, 2, homeId);
|
|
214
|
+
this.adapter.log.debug(`dailyConsumption ${JSON.stringify(dailyConsumption)}`);
|
|
215
|
+
this.adapter.log.debug(`weeklyConsumption ${JSON.stringify(weeklyConsumption)}`);
|
|
216
|
+
this.adapter.log.debug(`monthlyConsumption ${JSON.stringify(monthlyConsumption)}`);
|
|
217
|
+
this.adapter.log.debug(`annualConsumption ${JSON.stringify(annualConsumption)}`);
|
|
218
|
+
this.adapter.log.debug(`dailyConsumption ${dailyConsumption[0].consumption}`);
|
|
219
|
+
this.adapter.log.debug(`weeklyConsumption ${weeklyConsumption[0].consumption}`);
|
|
220
|
+
this.adapter.log.debug(`monthlyConsumption ${monthlyConsumption[0].consumption}`);
|
|
221
|
+
this.adapter.log.debug(`annualConsumption ${annualConsumption[0].consumption}`);
|
|
222
|
+
this.adapter.log.debug(`dailyConsumption cost ${dailyConsumption[0].cost}`);
|
|
223
|
+
this.adapter.log.debug(`weeklyConsumption cost ${weeklyConsumption[0].cost}`);
|
|
224
|
+
this.adapter.log.debug(`monthlyConsumption cost ${monthlyConsumption[0].cost}`);
|
|
225
|
+
this.adapter.log.debug(`annualConsumption cost ${annualConsumption[0].cost}`);
|
|
226
|
+
/*DEMO results
|
|
227
|
+
annualConsumption [
|
|
228
|
+
{"from":"2021-01-01T00:00:00.000+01:00","to":"2022-01-01T00:00:00.000+01:00","cost":18724.9354599375,"unitPrice":0.957861,"unitPriceVAT":0.191572,"consumption":19548.706,"consumptionUnit":"kWh","currency":"SEK"},
|
|
229
|
+
{"from":"2022-01-01T00:00:00.000+01:00","to":"2023-01-01T00:00:00.000+01:00","cost":26246.8039997125,"unitPrice":1.594865,"unitPriceVAT":0.318973,"consumption":16457.069,"consumptionUnit":"kWh","currency":"SEK"}
|
|
230
|
+
]
|
|
231
|
+
monthlyConsumption [
|
|
232
|
+
{"from":"2023-06-01T00:00:00.000+02:00","to":"2023-07-01T00:00:00.000+02:00","cost":314.7847971125,"unitPrice":0.576087,"unitPriceVAT":0.115217,"consumption":546.419,"consumptionUnit":"kWh","currency":"SEK"},
|
|
233
|
+
{"from":"2023-07-01T00:00:00.000+02:00","to":"2023-08-01T00:00:00.000+02:00","cost":303.3428907125,"unitPrice":0.536517,"unitPriceVAT":0.107303,"consumption":565.393,"consumptionUnit":"kWh","currency":"SEK"},
|
|
234
|
+
{"from":"2023-08-01T00:00:00.000+02:00","to":"2023-09-01T00:00:00.000+02:00","cost":334.8228185875,"unitPrice":0.47777,"unitPriceVAT":0.095554,"consumption":700.804,"consumptionUnit":"kWh","currency":"SEK"},
|
|
235
|
+
{"from":"2023-09-01T00:00:00.000+02:00","to":"2023-10-01T00:00:00.000+02:00","cost":213.2174193625,"unitPrice":0.311208,"unitPriceVAT":0.062242,"consumption":685.129,"consumptionUnit":"kWh","currency":"SEK"}
|
|
236
|
+
]
|
|
237
|
+
weeklyConsumption [
|
|
238
|
+
{"from":"2023-10-02T00:00:00.000+02:00","to":"2023-10-02T00:00:00.000+02:00","cost":31.87599515,"unitPrice":0.152634,"unitPriceVAT":0.030527,"consumption":208.84,"consumptionUnit":"kWh","currency":"SEK"},
|
|
239
|
+
{"from":"2023-10-09T00:00:00.000+02:00","to":"2023-10-09T00:00:00.000+02:00","cost":58.7682522,"unitPrice":0.178189,"unitPriceVAT":0.035638,"consumption":329.808,"consumptionUnit":"kWh","currency":"SEK"},
|
|
240
|
+
{"from":"2023-10-16T00:00:00.000+02:00","to":"2023-10-16T00:00:00.000+02:00","cost":93.24510705,"unitPrice":0.301353,"unitPriceVAT":0.060271,"consumption":309.422,"consumptionUnit":"kWh","currency":"SEK"},
|
|
241
|
+
{"from":"2023-10-23T00:00:00.000+02:00","to":"2023-10-23T00:00:00.000+02:00","cost":150.1804269,"unitPrice":0.368239,"unitPriceVAT":0.073648,"consumption":407.834,"consumptionUnit":"kWh","currency":"SEK"}
|
|
242
|
+
]
|
|
243
|
+
|
|
244
|
+
dailyConsumption [
|
|
245
|
+
{"from":"2023-10-22T00:00:00.000+02:00","to":"2023-10-23T00:00:00.000+02:00","cost":30.167938475,"unitPrice":0.531032,"unitPriceVAT":0.106206,"consumption":56.81,"consumptionUnit":"kWh","currency":"SEK"},
|
|
246
|
+
{"from":"2023-10-23T00:00:00.000+02:00","to":"2023-10-24T00:00:00.000+02:00","cost":63.6176248,"unitPrice":1.190828,"unitPriceVAT":0.238166,"consumption":53.423,"consumptionUnit":"kWh","currency":"SEK"},
|
|
247
|
+
{"from":"2023-10-24T00:00:00.000+02:00","to":"2023-10-25T00:00:00.000+02:00","cost":39.1912734625,"unitPrice":0.754418,"unitPriceVAT":0.150884,"consumption":51.949,"consumptionUnit":"kWh","currency":"SEK"},
|
|
248
|
+
{"from":"2023-10-25T00:00:00.000+02:00","to":"2023-10-26T00:00:00.000+02:00","cost":41.3920498875,"unitPrice":0.644034,"unitPriceVAT":0.128807,"consumption":64.27,"consumptionUnit":"kWh","currency":"SEK"},
|
|
249
|
+
{"from":"2023-10-26T00:00:00.000+02:00","to":"2023-10-27T00:00:00.000+02:00","cost":67.9109407375,"unitPrice":0.698248,"unitPriceVAT":0.13965,"consumption":97.259,"consumptionUnit":"kWh","currency":"SEK"},
|
|
250
|
+
{"from":"2023-10-27T00:00:00.000+02:00","to":"2023-10-28T00:00:00.000+02:00","cost":65.7115841375,"unitPrice":1.309596,"unitPriceVAT":0.261919,"consumption":50.177,"consumptionUnit":"kWh","currency":"SEK"},
|
|
251
|
+
{"from":"2023-10-28T00:00:00.000+02:00","to":"2023-10-29T00:00:00.000+02:00","cost":78.08023065,"unitPrice":1.112523,"unitPriceVAT":0.222505,"consumption":70.183,"consumptionUnit":"kWh","currency":"SEK"}
|
|
252
|
+
]
|
|
253
|
+
|
|
254
|
+
END results*/
|
|
148
255
|
}
|
|
149
256
|
}
|
|
150
|
-
|
|
151
|
-
this.adapter.log.
|
|
257
|
+
catch (error) {
|
|
258
|
+
this.adapter.log.error(this.generateErrorMessage(error, `pull of consumption data`));
|
|
152
259
|
}
|
|
153
260
|
}
|
|
154
261
|
async fetchPrice(homeId, objectDestination, price) {
|
|
@@ -160,12 +267,18 @@ class TibberAPICaller extends tibberHelper_1.TibberHelper {
|
|
|
160
267
|
this.checkAndSetValue(this.getStatePrefix(homeId, objectDestination, "level"), price.level, "Price level compared to recent price values");
|
|
161
268
|
}
|
|
162
269
|
fetchPriceAverage(homeId, objectDestination, price) {
|
|
163
|
-
const totalSum = price.reduce((sum, item) => sum + item.total, 0);
|
|
270
|
+
//const totalSum = price.reduce((sum, item) => sum + item.total, 0); // Verify 1.4.2 - Sentry error
|
|
271
|
+
const totalSum = price.reduce((sum, item) => {
|
|
272
|
+
if (item && typeof item.total === "number") {
|
|
273
|
+
return sum + item.total;
|
|
274
|
+
}
|
|
275
|
+
return sum;
|
|
276
|
+
}, 0);
|
|
164
277
|
this.checkAndSetValueNumber(this.getStatePrefix(homeId, objectDestination, "total"), Math.round(1000 * (totalSum / price.length)) / 1000, "Todays total price average");
|
|
165
278
|
const energySum = price.reduce((sum, item) => sum + item.energy, 0);
|
|
166
|
-
this.checkAndSetValueNumber(this.getStatePrefix(homeId, objectDestination, "energy"), Math.round(1000 * (energySum / price.length)) / 1000, "Todays
|
|
279
|
+
this.checkAndSetValueNumber(this.getStatePrefix(homeId, objectDestination, "energy"), Math.round(1000 * (energySum / price.length)) / 1000, "Todays average spotmarket price");
|
|
167
280
|
const taxSum = price.reduce((sum, item) => sum + item.tax, 0);
|
|
168
|
-
this.checkAndSetValueNumber(this.getStatePrefix(homeId, objectDestination, "tax"), Math.round(1000 * (taxSum / price.length)) / 1000, "Todays
|
|
281
|
+
this.checkAndSetValueNumber(this.getStatePrefix(homeId, objectDestination, "tax"), Math.round(1000 * (taxSum / price.length)) / 1000, "Todays average tax price");
|
|
169
282
|
}
|
|
170
283
|
fetchPriceMaximum(homeId, objectDestination, price) {
|
|
171
284
|
this.checkAndSetValueNumber(this.getStatePrefix(homeId, objectDestination, "total"), Math.round(1000 * price[23].total) / 1000, "Todays total price maximum");
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"tibberAPICaller.js","sourceRoot":"","sources":["../../src/lib/tibberAPICaller.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"tibberAPICaller.js","sourceRoot":"","sources":["../../src/lib/tibberAPICaller.ts"],"names":[],"mappings":"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"}
|
|
@@ -8,9 +8,8 @@ class TibberCalculator extends tibberHelper_1.TibberHelper {
|
|
|
8
8
|
}
|
|
9
9
|
async setupCalculatorStates(homeId, channel) {
|
|
10
10
|
try {
|
|
11
|
-
if (this.adapter.config.CalculatorList[channel].chTriggerPrice === undefined)
|
|
11
|
+
if (this.adapter.config.CalculatorList[channel].chTriggerPrice === undefined)
|
|
12
12
|
this.adapter.config.CalculatorList[channel].chTriggerPrice = 0;
|
|
13
|
-
}
|
|
14
13
|
this.checkAndSetValueNumber(this.getStatePrefix(homeId, `Calculations.${channel}`, `TriggerPrice`), this.adapter.config.CalculatorList[channel].chTriggerPrice, `pricelevel to trigger this channel at`, true, true);
|
|
15
14
|
const valueTriggerPrice = await this.getStateValue(`Homes.${homeId}.Calculations.${channel}.TriggerPrice`);
|
|
16
15
|
if (typeof valueTriggerPrice === "number") {
|
|
@@ -20,9 +19,8 @@ class TibberCalculator extends tibberHelper_1.TibberHelper {
|
|
|
20
19
|
else {
|
|
21
20
|
this.adapter.log.debug(`Wrong type for chTriggerPrice: ${valueTriggerPrice}`);
|
|
22
21
|
}
|
|
23
|
-
if (this.adapter.config.CalculatorList[channel].chActive === undefined)
|
|
22
|
+
if (this.adapter.config.CalculatorList[channel].chActive === undefined)
|
|
24
23
|
this.adapter.config.CalculatorList[channel].chActive = false;
|
|
25
|
-
}
|
|
26
24
|
this.checkAndSetValueBoolean(this.getStatePrefix(homeId, `Calculations.${channel}`, `Active`), this.adapter.config.CalculatorList[channel].chActive, `Whether the calculation channel is active`, true, true);
|
|
27
25
|
const valueActive = await this.getStateValue(`Homes.${homeId}.Calculations.${channel}.Active`);
|
|
28
26
|
if (typeof valueActive === "boolean") {
|
|
@@ -32,9 +30,8 @@ class TibberCalculator extends tibberHelper_1.TibberHelper {
|
|
|
32
30
|
else {
|
|
33
31
|
this.adapter.log.debug(`Wrong type for chActive: ${valueActive}`);
|
|
34
32
|
}
|
|
35
|
-
if (this.adapter.config.CalculatorList[channel].chAmountHours === undefined)
|
|
33
|
+
if (this.adapter.config.CalculatorList[channel].chAmountHours === undefined)
|
|
36
34
|
this.adapter.config.CalculatorList[channel].chAmountHours = 0;
|
|
37
|
-
}
|
|
38
35
|
this.checkAndSetValueNumber(this.getStatePrefix(homeId, `Calculations.${channel}`, `AmountHours`), this.adapter.config.CalculatorList[channel].chAmountHours, `amount of hours to trigger this channel`, true, true);
|
|
39
36
|
const valueAmountHours = await this.getStateValue(`Homes.${homeId}.Calculations.${channel}.AmountHours`);
|
|
40
37
|
if (typeof valueAmountHours === "number") {
|
|
@@ -81,19 +78,23 @@ class TibberCalculator extends tibberHelper_1.TibberHelper {
|
|
|
81
78
|
}
|
|
82
79
|
async executeCalculatorBestCost(channel) {
|
|
83
80
|
try {
|
|
84
|
-
|
|
81
|
+
let valueToSet = "";
|
|
82
|
+
// not chActive -> choose chValueOff
|
|
85
83
|
if (!this.adapter.config.CalculatorList[channel].chActive) {
|
|
86
|
-
|
|
87
|
-
return;
|
|
88
|
-
}
|
|
89
|
-
const currentPrice = await this.getStateValue(`Homes.${this.adapter.config.CalculatorList[channel].chHomeID}.CurrentPrice.total`);
|
|
90
|
-
if (this.adapter.config.CalculatorList[channel].chTriggerPrice > currentPrice) {
|
|
91
|
-
this.adapter.setForeignStateAsync(this.adapter.config.CalculatorList[channel].chTargetState, convertValue(this.adapter.config.CalculatorList[channel].chValueOn));
|
|
84
|
+
valueToSet = this.adapter.config.CalculatorList[channel].chValueOff;
|
|
92
85
|
}
|
|
93
86
|
else {
|
|
94
|
-
|
|
87
|
+
// chActive -> choose desired value
|
|
88
|
+
const currentPrice = await this.getStateValue(`Homes.${this.adapter.config.CalculatorList[channel].chHomeID}.CurrentPrice.total`);
|
|
89
|
+
if (this.adapter.config.CalculatorList[channel].chTriggerPrice > currentPrice) {
|
|
90
|
+
valueToSet = this.adapter.config.CalculatorList[channel].chValueOn;
|
|
91
|
+
}
|
|
92
|
+
else {
|
|
93
|
+
valueToSet = this.adapter.config.CalculatorList[channel].chValueOff;
|
|
94
|
+
}
|
|
95
95
|
}
|
|
96
|
-
this.adapter.
|
|
96
|
+
this.adapter.setForeignStateAsync(this.adapter.config.CalculatorList[channel].chTargetState, convertValue(valueToSet));
|
|
97
|
+
this.adapter.log.debug(`calculator channel: ${channel}-best price; setting state: ${this.adapter.config.CalculatorList[channel].chTargetState} to ${valueToSet}`);
|
|
97
98
|
}
|
|
98
99
|
catch (error) {
|
|
99
100
|
this.adapter.log.warn(this.generateErrorMessage(error, `execute calculator for best price in channel ${channel}`));
|
|
@@ -101,29 +102,27 @@ class TibberCalculator extends tibberHelper_1.TibberHelper {
|
|
|
101
102
|
}
|
|
102
103
|
async executeCalculatorBestSingleHours(channel) {
|
|
103
104
|
try {
|
|
104
|
-
|
|
105
|
+
let valueToSet = "";
|
|
106
|
+
// not chActive -> choose chValueOff
|
|
105
107
|
if (!this.adapter.config.CalculatorList[channel].chActive) {
|
|
106
|
-
|
|
107
|
-
return;
|
|
108
|
-
}
|
|
109
|
-
const currentDateTime = new Date();
|
|
110
|
-
const jsonPrices = JSON.parse(await this.getStateValue(`Homes.${this.adapter.config.CalculatorList[channel].chHomeID}.PricesToday.jsonBYpriceASC`));
|
|
111
|
-
// function to check for equal hour values
|
|
112
|
-
function checkHourMatch(entry) {
|
|
113
|
-
const startDateTime = new Date(entry.startsAt);
|
|
114
|
-
return currentDateTime.getHours() === startDateTime.getHours();
|
|
115
|
-
}
|
|
116
|
-
// get first n entries und test for matching hour
|
|
117
|
-
const n = this.adapter.config.CalculatorList[channel].chAmountHours;
|
|
118
|
-
const result = jsonPrices.slice(0, n).map((entry) => checkHourMatch(entry));
|
|
119
|
-
// identify if any element is true
|
|
120
|
-
if (result.some((value) => value)) {
|
|
121
|
-
this.adapter.setForeignStateAsync(this.adapter.config.CalculatorList[channel].chTargetState, convertValue(this.adapter.config.CalculatorList[channel].chValueOn));
|
|
108
|
+
valueToSet = this.adapter.config.CalculatorList[channel].chValueOff;
|
|
122
109
|
}
|
|
123
110
|
else {
|
|
124
|
-
|
|
111
|
+
// chActive -> choose desired value
|
|
112
|
+
const jsonPrices = JSON.parse(await this.getStateValue(`Homes.${this.adapter.config.CalculatorList[channel].chHomeID}.PricesToday.jsonBYpriceASC`));
|
|
113
|
+
// get first n entries und test for matching hour
|
|
114
|
+
const n = this.adapter.config.CalculatorList[channel].chAmountHours;
|
|
115
|
+
const result = jsonPrices.slice(0, n).map((entry) => checkHourMatch(entry));
|
|
116
|
+
// identify if any element is true
|
|
117
|
+
if (result.some((value) => value)) {
|
|
118
|
+
valueToSet = this.adapter.config.CalculatorList[channel].chValueOn;
|
|
119
|
+
}
|
|
120
|
+
else {
|
|
121
|
+
valueToSet = this.adapter.config.CalculatorList[channel].chValueOff;
|
|
122
|
+
}
|
|
123
|
+
this.adapter.setForeignStateAsync(this.adapter.config.CalculatorList[channel].chTargetState, convertValue(valueToSet));
|
|
124
|
+
this.adapter.log.debug(`calculator channel: ${channel}-best single hours; setting state: ${this.adapter.config.CalculatorList[channel].chTargetState} to ${valueToSet}`);
|
|
125
125
|
}
|
|
126
|
-
this.adapter.log.debug(`calculator channel: ${channel}-best single hours; setting state: ${this.adapter.config.CalculatorList[channel].chTargetState}`);
|
|
127
126
|
}
|
|
128
127
|
catch (error) {
|
|
129
128
|
this.adapter.log.warn(this.generateErrorMessage(error, `execute calculator for best single hours in channel ${channel}`));
|
|
@@ -131,40 +130,43 @@ class TibberCalculator extends tibberHelper_1.TibberHelper {
|
|
|
131
130
|
}
|
|
132
131
|
async executeCalculatorBestHoursBlock(channel) {
|
|
133
132
|
try {
|
|
134
|
-
|
|
133
|
+
let valueToSet = "";
|
|
134
|
+
// not chActive -> choose chValueOff
|
|
135
135
|
if (!this.adapter.config.CalculatorList[channel].chActive) {
|
|
136
|
-
|
|
137
|
-
return;
|
|
136
|
+
valueToSet = this.adapter.config.CalculatorList[channel].chValueOff;
|
|
138
137
|
}
|
|
139
|
-
|
|
140
|
-
|
|
141
|
-
|
|
142
|
-
|
|
143
|
-
|
|
144
|
-
|
|
145
|
-
let
|
|
146
|
-
|
|
147
|
-
|
|
138
|
+
else {
|
|
139
|
+
//const currentDateTime = new Date();
|
|
140
|
+
const jsonPrices = JSON.parse(await this.getStateValue(`Homes.${this.adapter.config.CalculatorList[channel].chHomeID}.PricesToday.json`));
|
|
141
|
+
let minSum = Number.MAX_VALUE;
|
|
142
|
+
let startIndex = 0;
|
|
143
|
+
const n = this.adapter.config.CalculatorList[channel].chAmountHours;
|
|
144
|
+
for (let i = 0; i < jsonPrices.length - n + 1; i++) {
|
|
145
|
+
let sum = 0;
|
|
146
|
+
for (let j = i; j < i + n; j++) {
|
|
147
|
+
sum += jsonPrices[j].total;
|
|
148
|
+
}
|
|
149
|
+
if (sum < minSum) {
|
|
150
|
+
minSum = sum;
|
|
151
|
+
startIndex = i;
|
|
152
|
+
}
|
|
148
153
|
}
|
|
149
|
-
|
|
150
|
-
|
|
151
|
-
|
|
154
|
+
const minSumEntries = jsonPrices.slice(startIndex, startIndex + n).map((entry) => checkHourMatch(entry));
|
|
155
|
+
// function to check for equal hour values
|
|
156
|
+
//function checkHourMatch(entry: IPrice): boolean {
|
|
157
|
+
//const startDateTime = new Date(entry.startsAt);
|
|
158
|
+
//return currentDateTime.getHours() === startDateTime.getHours();
|
|
159
|
+
//}
|
|
160
|
+
// identify if any element is true
|
|
161
|
+
if (minSumEntries.some((value) => value)) {
|
|
162
|
+
valueToSet = this.adapter.config.CalculatorList[channel].chValueOn;
|
|
163
|
+
}
|
|
164
|
+
else {
|
|
165
|
+
valueToSet = this.adapter.config.CalculatorList[channel].chValueOff;
|
|
152
166
|
}
|
|
153
167
|
}
|
|
154
|
-
|
|
155
|
-
|
|
156
|
-
function checkHourMatch(entry) {
|
|
157
|
-
const startDateTime = new Date(entry.startsAt);
|
|
158
|
-
return currentDateTime.getHours() === startDateTime.getHours();
|
|
159
|
-
}
|
|
160
|
-
// identify if any element is true
|
|
161
|
-
if (minSumEntries.some((value) => value)) {
|
|
162
|
-
this.adapter.setForeignStateAsync(this.adapter.config.CalculatorList[channel].chTargetState, convertValue(this.adapter.config.CalculatorList[channel].chValueOn));
|
|
163
|
-
}
|
|
164
|
-
else {
|
|
165
|
-
this.adapter.setForeignStateAsync(this.adapter.config.CalculatorList[channel].chTargetState, convertValue(this.adapter.config.CalculatorList[channel].chValueOff));
|
|
166
|
-
}
|
|
167
|
-
this.adapter.log.debug(`calculator channel: ${channel}-besthours block; setting state: ${this.adapter.config.CalculatorList[channel].chTargetState}`);
|
|
168
|
+
this.adapter.setForeignStateAsync(this.adapter.config.CalculatorList[channel].chTargetState, convertValue(valueToSet));
|
|
169
|
+
this.adapter.log.debug(`calculator channel: ${channel}-best hours block; setting state: ${this.adapter.config.CalculatorList[channel].chTargetState} to ${valueToSet}`);
|
|
168
170
|
}
|
|
169
171
|
catch (error) {
|
|
170
172
|
this.adapter.log.warn(this.generateErrorMessage(error, `execute calculator for best hours block in channel ${channel}`));
|
|
@@ -172,6 +174,12 @@ class TibberCalculator extends tibberHelper_1.TibberHelper {
|
|
|
172
174
|
}
|
|
173
175
|
}
|
|
174
176
|
exports.TibberCalculator = TibberCalculator;
|
|
177
|
+
// function to check for equal hour values of given to current
|
|
178
|
+
function checkHourMatch(entry) {
|
|
179
|
+
const currentDateTime = new Date();
|
|
180
|
+
const startDateTime = new Date(entry.startsAt);
|
|
181
|
+
return currentDateTime.getHours() === startDateTime.getHours();
|
|
182
|
+
}
|
|
175
183
|
function convertValue(Value) {
|
|
176
184
|
if (Value.toLowerCase() === "true") {
|
|
177
185
|
return true;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"tibberCalculator.js","sourceRoot":"","sources":["../../src/lib/tibberCalculator.ts"],"names":[],"mappings":";;;AAEA,iDAA0D;AAE1D,MAAa,gBAAiB,SAAQ,2BAAY;IACjD,YAAY,OAA8B;QACzC,KAAK,CAAC,OAAO,CAAC,CAAC;IAChB,CAAC;IAED,KAAK,CAAC,qBAAqB,CAAC,MAAc,EAAE,OAAe;QAC1D,IAAI;YACH,IAAI,IAAI,CAAC,OAAO,CAAC,MAAM,CAAC,cAAc,CAAC,OAAO,CAAC,CAAC,cAAc,KAAK,SAAS
|
|
1
|
+
{"version":3,"file":"tibberCalculator.js","sourceRoot":"","sources":["../../src/lib/tibberCalculator.ts"],"names":[],"mappings":"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"}
|
package/build/main.js
CHANGED
|
@@ -25,6 +25,7 @@ var __importStar = (this && this.__importStar) || function (mod) {
|
|
|
25
25
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
26
26
|
// The adapter-core module gives you access to the core ioBroker functions you need to create an adapter
|
|
27
27
|
const utils = __importStar(require("@iobroker/adapter-core"));
|
|
28
|
+
const cron_1 = require("cron");
|
|
28
29
|
const tibberAPICaller_1 = require("./lib/tibberAPICaller");
|
|
29
30
|
const tibberCalculator_1 = require("./lib/tibberCalculator");
|
|
30
31
|
const tibberPulse_1 = require("./lib/tibberPulse");
|
|
@@ -43,7 +44,7 @@ class Tibberlink extends utils.Adapter {
|
|
|
43
44
|
this.on("message", this.onMessage.bind(this));
|
|
44
45
|
this.on("unload", this.onUnload.bind(this));
|
|
45
46
|
this.homeInfoList = [];
|
|
46
|
-
this.
|
|
47
|
+
this.cronList = [];
|
|
47
48
|
this.queryUrl = "https://api.tibber.com/v1-beta/gql";
|
|
48
49
|
}
|
|
49
50
|
/**
|
|
@@ -132,12 +133,11 @@ class Tibberlink extends utils.Adapter {
|
|
|
132
133
|
}
|
|
133
134
|
// if no homeIDs available - adapter can't do that much and restarts
|
|
134
135
|
if (this.homeInfoList.length === 0) {
|
|
135
|
-
this.log.warn(`Got no homes in your account - probably by a Tibber Server Error- adapter restarts in 2 minutes`);
|
|
136
|
-
const adapterrestart = this.setInterval(() => {
|
|
137
|
-
|
|
138
|
-
|
|
139
|
-
if (adapterrestart)
|
|
140
|
-
this.intervalList.push(adapterrestart);
|
|
136
|
+
this.log.warn(`Got no homes in your account - probably by a Tibber Server Error - adapter restarts in 2 minutes`);
|
|
137
|
+
// const adapterrestart = this.setInterval(() => {this.restart();}, 120000);
|
|
138
|
+
await this.delay(2 * 60 * 1000);
|
|
139
|
+
this.restart();
|
|
140
|
+
// if (adapterrestart) this.intervalList.push(adapterrestart);
|
|
141
141
|
}
|
|
142
142
|
// if there are any homes the adapter will do something
|
|
143
143
|
// Init load data and calculator for all homes
|
|
@@ -155,76 +155,67 @@ class Tibberlink extends utils.Adapter {
|
|
|
155
155
|
this.log.warn(tibberAPICaller.generateErrorMessage(error, `setup of calculator states`));
|
|
156
156
|
}
|
|
157
157
|
}
|
|
158
|
-
//
|
|
159
|
-
|
|
160
|
-
|
|
161
|
-
|
|
162
|
-
|
|
163
|
-
|
|
164
|
-
|
|
165
|
-
|
|
166
|
-
|
|
167
|
-
|
|
168
|
-
|
|
169
|
-
|
|
170
|
-
|
|
171
|
-
|
|
172
|
-
|
|
173
|
-
|
|
174
|
-
|
|
175
|
-
|
|
176
|
-
|
|
177
|
-
}
|
|
178
|
-
|
|
179
|
-
|
|
180
|
-
|
|
181
|
-
|
|
182
|
-
|
|
183
|
-
|
|
184
|
-
|
|
185
|
-
|
|
186
|
-
|
|
187
|
-
let
|
|
188
|
-
|
|
189
|
-
await
|
|
190
|
-
|
|
191
|
-
|
|
192
|
-
|
|
193
|
-
|
|
194
|
-
|
|
195
|
-
|
|
196
|
-
|
|
197
|
-
|
|
198
|
-
|
|
199
|
-
|
|
200
|
-
|
|
201
|
-
|
|
202
|
-
|
|
203
|
-
|
|
204
|
-
|
|
205
|
-
|
|
206
|
-
|
|
207
|
-
|
|
208
|
-
|
|
209
|
-
|
|
210
|
-
|
|
211
|
-
|
|
212
|
-
|
|
213
|
-
|
|
214
|
-
|
|
215
|
-
|
|
216
|
-
|
|
217
|
-
|
|
218
|
-
|
|
219
|
-
tibberAPICaller.updatePricesTomorrow(this.homeInfoList[index].ID);
|
|
220
|
-
}
|
|
221
|
-
catch (error) {
|
|
222
|
-
this.log.warn(tibberAPICaller.generateErrorMessage(error, "pull of prices tomorrow"));
|
|
223
|
-
}
|
|
224
|
-
}
|
|
225
|
-
}, 1500000);
|
|
226
|
-
if (energyPricesListUpdateInterval)
|
|
227
|
-
this.intervalList.push(energyPricesListUpdateInterval);
|
|
158
|
+
// (force) get current prices for the first time and start calculator tasks once
|
|
159
|
+
await tibberAPICaller.updateCurrentPriceAllHomes(this.homeInfoList, true);
|
|
160
|
+
await tibberAPICaller.updatePricesTodayAllHomes(this.homeInfoList, true);
|
|
161
|
+
await tibberAPICaller.updatePricesTomorrowAllHomes(this.homeInfoList, true);
|
|
162
|
+
tibberCalculator.startCalculatorTasks();
|
|
163
|
+
//for (const index in this.homeInfoList) {
|
|
164
|
+
// Get consumption data for the first time
|
|
165
|
+
// await tibberAPICaller.getConsumption(this.homeInfoList[index].ID);
|
|
166
|
+
//}
|
|
167
|
+
const jobCurrentPrice = cron_1.CronJob.from({
|
|
168
|
+
cronTime: "20 57 * * * *",
|
|
169
|
+
onTick: async () => {
|
|
170
|
+
let newPrice = false;
|
|
171
|
+
do {
|
|
172
|
+
await this.delay(3 * 60 * 1000);
|
|
173
|
+
newPrice = await tibberAPICaller.updateCurrentPriceAllHomes(this.homeInfoList);
|
|
174
|
+
this.log.debug(`Cron jobCurrentPrice - newPrice: ${newPrice}`);
|
|
175
|
+
} while (!newPrice);
|
|
176
|
+
tibberCalculator.startCalculatorTasks();
|
|
177
|
+
},
|
|
178
|
+
start: true,
|
|
179
|
+
timeZone: "system",
|
|
180
|
+
runOnInit: false,
|
|
181
|
+
});
|
|
182
|
+
if (jobCurrentPrice)
|
|
183
|
+
this.cronList.push(jobCurrentPrice);
|
|
184
|
+
const jobPricesToday = cron_1.CronJob.from({
|
|
185
|
+
cronTime: "15 56 23 * * *",
|
|
186
|
+
onTick: async () => {
|
|
187
|
+
let newPrice = false;
|
|
188
|
+
do {
|
|
189
|
+
await this.delay(5 * 60 * 1000);
|
|
190
|
+
newPrice = await tibberAPICaller.updatePricesTodayAllHomes(this.homeInfoList);
|
|
191
|
+
this.log.debug(`Cron jobPricesToday - newPrice: ${newPrice}`);
|
|
192
|
+
} while (!newPrice);
|
|
193
|
+
await tibberAPICaller.updatePricesTomorrowAllHomes(this.homeInfoList);
|
|
194
|
+
tibberCalculator.startCalculatorTasks();
|
|
195
|
+
},
|
|
196
|
+
start: true,
|
|
197
|
+
timeZone: "system",
|
|
198
|
+
runOnInit: false,
|
|
199
|
+
});
|
|
200
|
+
if (jobPricesToday)
|
|
201
|
+
this.cronList.push(jobPricesToday);
|
|
202
|
+
const jobPricesTomorrow = cron_1.CronJob.from({
|
|
203
|
+
cronTime: "15 56 12 * * *",
|
|
204
|
+
onTick: async () => {
|
|
205
|
+
let newPrice = false;
|
|
206
|
+
do {
|
|
207
|
+
await this.delay(5 * 60 * 1000);
|
|
208
|
+
newPrice = await tibberAPICaller.updatePricesTomorrowAllHomes(this.homeInfoList);
|
|
209
|
+
this.log.debug(`Cron jobPricesTomorrow - newPrice: ${newPrice}`);
|
|
210
|
+
} while (!newPrice);
|
|
211
|
+
tibberCalculator.startCalculatorTasks();
|
|
212
|
+
},
|
|
213
|
+
start: true,
|
|
214
|
+
timeZone: "system",
|
|
215
|
+
runOnInit: false,
|
|
216
|
+
});
|
|
217
|
+
if (jobPricesTomorrow)
|
|
218
|
+
this.cronList.push(jobPricesTomorrow);
|
|
228
219
|
// If user uses live feed - start feed connection
|
|
229
220
|
if (this.homeInfoList.some((info) => info.FeedActive)) {
|
|
230
221
|
// array with configs of feeds, init with base data set
|
|
@@ -341,10 +332,10 @@ class Tibberlink extends utils.Adapter {
|
|
|
341
332
|
onUnload(callback) {
|
|
342
333
|
try {
|
|
343
334
|
// Here you must clear all timeouts or intervals that may still be active
|
|
344
|
-
|
|
345
|
-
|
|
346
|
-
this.clearInterval(this.intervalList[index]);
|
|
335
|
+
for (const index in this.cronList) {
|
|
336
|
+
this.cronList[index].stop;
|
|
347
337
|
}
|
|
338
|
+
// clearTimeout(timeout);
|
|
348
339
|
// info.connect to false, if adapter is closed
|
|
349
340
|
this.setState("info.connection", false, true);
|
|
350
341
|
callback();
|
package/build/main.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"main.js","sourceRoot":"","sources":["../src/main.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"main.js","sourceRoot":"","sources":["../src/main.ts"],"names":[],"mappings":"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"}
|
package/io-package.json
CHANGED
|
@@ -1,8 +1,34 @@
|
|
|
1
1
|
{
|
|
2
2
|
"common": {
|
|
3
3
|
"name": "tibberlink",
|
|
4
|
-
"version": "1.4.
|
|
4
|
+
"version": "1.4.2",
|
|
5
5
|
"news": {
|
|
6
|
+
"1.4.2": {
|
|
7
|
+
"en": "Complete rework of task scheduling for more precise pull timing (#149)",
|
|
8
|
+
"de": "Vollständige Überarbeitung der Aufgabenplanung für genauere Pull-Zeiten (#149)",
|
|
9
|
+
"ru": "Полная переработка планирования задач для более точного времени запросов (#149)",
|
|
10
|
+
"pt": "Reformulação completa do agendamento de tarefas para um tempo de busca mais preciso (#149)",
|
|
11
|
+
"nl": "Volledige herziening van taakplanning voor nauwkeurigere pull-timing (#149)",
|
|
12
|
+
"fr": "Refonte complète de la planification des tâches pour des horaires de pull plus précis (#149)",
|
|
13
|
+
"it": "Rielaborazione completa della pianificazione delle attività per una tempistica di pull più precisa (#149)",
|
|
14
|
+
"es": "Revisión completa de la programación de tareas para una temporización de extracción más precisa (#149)",
|
|
15
|
+
"pl": "Całkowita przebudowa harmonogramu zadań dla dokładniejszego czasu pobierania (#149)",
|
|
16
|
+
"uk": "Повна переробка планування завдань для більш точного часу витягування (#149)",
|
|
17
|
+
"zh-cn": "完全重做任务调度以获得更精确的拉取时间 (#149)"
|
|
18
|
+
},
|
|
19
|
+
"1.4.1": {
|
|
20
|
+
"en": "implement forced update of all data after adapter restart (#155)",
|
|
21
|
+
"de": "Umsetzung erzwungener Aktualisierung aller Daten nach Neustart des Adapters (#155)",
|
|
22
|
+
"ru": "Реализация принудительного обновления всех данных после перезапуска адаптера (#155)",
|
|
23
|
+
"pt": "Implementar atualização forçada de todos os dados após reiniciar o adaptador (#155)",
|
|
24
|
+
"nl": "Implementeer gedwongen update van alle gegevens na herstart van de adapter (#155)",
|
|
25
|
+
"fr": "Mise en œuvre de la mise à jour forcée de toutes les données après le redémarrage de l'adaptateur (#155)",
|
|
26
|
+
"it": "Implementare l'aggiornamento forzato di tutti i dati dopo il riavvio dell'adattatore (#155)",
|
|
27
|
+
"es": "Implementar actualización forzada de todos los datos después de reiniciar el adaptador (#155)",
|
|
28
|
+
"pl": "Wdrożenie wymuszonej aktualizacji wszystkich danych po ponownym uruchomieniu adaptera (#155)",
|
|
29
|
+
"uk": "Реалізація примусового оновлення всіх даних після перезапуску адаптера (#155)",
|
|
30
|
+
"zh-cn": "在适配器重新启动后实施所有数据的强制更新 (#155)"
|
|
31
|
+
},
|
|
6
32
|
"1.4.0": {
|
|
7
33
|
"en": "implement min/max states (#131); fix error with ignored calculator channel deactivations (#143)",
|
|
8
34
|
"de": "Implementiere Min-/Max-Werte (#131); Behebung des Fehlers bei ignorierten Deaktivierungen von Taschenrechnerkanälen (#143)",
|
|
@@ -236,32 +262,6 @@
|
|
|
236
262
|
"pl": "kod optymalizacyjny w celu złagodzenia systemu stanowego dla długich stanów JSON (#68)",
|
|
237
263
|
"uk": "оптимізуйте код для пом'якшення часу стану для довгих станів JSON (#68)",
|
|
238
264
|
"zh-cn": "完善减少长期合作行动联盟国家时间表的守则(#68)"
|
|
239
|
-
},
|
|
240
|
-
"0.2.4": {
|
|
241
|
-
"en": "enable correct price poll also for adapter running in different timezones (#63)",
|
|
242
|
-
"de": "korrekte Preisabfrage auch für Adapter in verschiedenen Zeitzonen (#63)",
|
|
243
|
-
"ru": "включите правильный опрос цены также для переходника работает в различных часовых поясах (#63)",
|
|
244
|
-
"pt": "habilitar a pesquisa de preços correta também para o adaptador em execução em diferentes fusos horários (#63)",
|
|
245
|
-
"nl": "en de juiste prijs poll ook voor adapter die in verschillende tijdzones loopt",
|
|
246
|
-
"fr": "activer le sondage de prix correct également pour l'adaptateur fonctionnant dans différents fuseaux horaires (#63)",
|
|
247
|
-
"it": "abilitare il sondaggio dei prezzi corretto anche per l'adattatore in esecuzione in diversi fusi orari (#63)",
|
|
248
|
-
"es": "habilitar la encuesta de precios correcta también para el adaptador que se ejecuta en diferentes zonas de tiempo (#63)",
|
|
249
|
-
"pl": "poprawne badania cenowe umożliwiają również stosowanie adaptacji w różnych strefach czasowych (#63)",
|
|
250
|
-
"uk": "увімкніть правильний ціновий пил також для адаптерів, що працюють в різних часових поясах (#63)",
|
|
251
|
-
"zh-cn": "能够纠正价格污染,使不同时间区(63年)的适应行动更加适应。"
|
|
252
|
-
},
|
|
253
|
-
"0.2.0": {
|
|
254
|
-
"en": "introduces JSONs for prices sorted by total price ascending",
|
|
255
|
-
"de": "führt JSONs für Preise sortiert nach Gesamtpreis aufsteigend ein",
|
|
256
|
-
"ru": "вводит JSONs для цены, отсортированных по полной цене по возрастанию",
|
|
257
|
-
"pt": "introduz JSONs para preços classificados pelo preço total ascendente",
|
|
258
|
-
"nl": "_",
|
|
259
|
-
"fr": "introduit JSONs pour les prix triés par le prix total ascendant",
|
|
260
|
-
"it": "introduce JSONs per i prezzi ordinati per prezzo totale crescente",
|
|
261
|
-
"es": "presenta JSONs para precios ordenados por precio total ascendente",
|
|
262
|
-
"pl": "wprowadzanie JSON za ceny uporządkowane przez całkowity wzrost cen",
|
|
263
|
-
"uk": "вводить JSON для цін, що відсортовані загальним зростанням цін",
|
|
264
|
-
"zh-cn": "公司采用以总价格计算价格计算的价格"
|
|
265
265
|
}
|
|
266
266
|
},
|
|
267
267
|
"messages": [
|
|
@@ -348,7 +348,7 @@
|
|
|
348
348
|
},
|
|
349
349
|
"dependencies": [
|
|
350
350
|
{
|
|
351
|
-
"js-controller": ">=3.
|
|
351
|
+
"js-controller": ">=3.3.18"
|
|
352
352
|
}
|
|
353
353
|
],
|
|
354
354
|
"globalDependencies": [
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "iobroker.tibberlink",
|
|
3
|
-
"version": "1.4.
|
|
3
|
+
"version": "1.4.2",
|
|
4
4
|
"description": "links tibber API data to be used in ioBroker",
|
|
5
5
|
"author": {
|
|
6
6
|
"name": "Hombach",
|
|
@@ -24,21 +24,22 @@
|
|
|
24
24
|
},
|
|
25
25
|
"dependencies": {
|
|
26
26
|
"@iobroker/adapter-core": "^3.0.4",
|
|
27
|
-
"tibber-api": "^5.1.9"
|
|
27
|
+
"tibber-api": "^5.1.9",
|
|
28
|
+
"cron": "^3.1.6"
|
|
28
29
|
},
|
|
29
30
|
"devDependencies": {
|
|
30
31
|
"@iobroker/testing": "^4.1.0",
|
|
31
|
-
"@iobroker/types": "^5.0.
|
|
32
|
+
"@iobroker/types": "^5.0.15",
|
|
32
33
|
"@types/chai": "^4.3.9",
|
|
33
34
|
"@types/chai-as-promised": "^7.1.7",
|
|
34
35
|
"@types/mocha": "^10.0.3",
|
|
35
|
-
"@types/node": "^20.8.
|
|
36
|
+
"@types/node": "^20.8.9",
|
|
36
37
|
"@types/proxyquire": "^1.3.30",
|
|
37
38
|
"@types/sinon": "^10.0.20",
|
|
38
39
|
"@types/sinon-chai": "^3.2.11",
|
|
39
|
-
"@typescript-eslint/eslint-plugin": "^6.
|
|
40
|
-
"@typescript-eslint/parser": "^6.
|
|
41
|
-
"axios": "^1.
|
|
40
|
+
"@typescript-eslint/eslint-plugin": "^6.9.0",
|
|
41
|
+
"@typescript-eslint/parser": "^6.9.0",
|
|
42
|
+
"axios": "^1.6.0",
|
|
42
43
|
"chai": "^4.3.10",
|
|
43
44
|
"chai-as-promised": "^7.1.1",
|
|
44
45
|
"eslint": "^8.52.0",
|