iobroker.tibberlink 1.4.1 → 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 CHANGED
@@ -2,16 +2,27 @@
2
2
 
3
3
  # ioBroker.tibberlink
4
4
 
5
- [![NPM version](https://img.shields.io/npm/v/iobroker.tibberlink.svg)](https://www.npmjs.com/package/iobroker.tibberlink)
6
- ![NPM version (stable)](https://iobroker.live/badges/tibberlink-stable.svg)
7
- [![Downloads](https://img.shields.io/npm/dm/iobroker.tibberlink.svg)](https://www.npmjs.com/package/iobroker.tibberlink)
8
- ![Number of Installations (latest)](https://iobroker.live/badges/tibberlink-installed.svg)
9
- [![Known Vulnerabilities](https://snyk.io/test/github/hombach/ioBroker.tibberlink/badge.svg)](https://snyk.io/test/github/hombach/ioBroker.tibberlink)
10
-
11
- **CI-Tests:**
12
- ![Test and Release](https://github.com/hombach/ioBroker.tibberlink/workflows/Test%20and%20Release/badge.svg)
5
+ [![NPM version](https://img.shields.io/npm/v/iobroker.tibberlink?style=flat-square)](https://www.npmjs.com/package/iobroker.tibberlink)
6
+ [![Downloads](https://img.shields.io/npm/dm/iobroker.tibberlink?label=npm%20downloads&style=flat-square)](https://www.npmjs.com/package/iobroker.tibberlink)
7
+ ![node-lts](https://img.shields.io/node/v-lts/iobroker.tibberlink?style=flat-square)
8
+ ![Libraries.io dependency status for latest release](https://img.shields.io/librariesio/release/npm/iobroker.tibberlink?label=npm%20dependencies&style=flat-square)
9
+
10
+ ![GitHub](https://img.shields.io/github/license/hombach/iobroker.tibberlink?style=flat-square)
11
+ ![GitHub repo size](https://img.shields.io/github/repo-size/hombach/iobroker.tibberlink?logo=github&style=flat-square)
12
+ ![GitHub commit activity](https://img.shields.io/github/commit-activity/m/hombach/iobroker.tibberlink?logo=github&style=flat-square)
13
+ ![GitHub last commit](https://img.shields.io/github/last-commit/hombach/iobroker.tibberlink?logo=github&style=flat-square)
14
+ ![GitHub issues](https://img.shields.io/github/issues/hombach/iobroker.tibberlink?logo=github&style=flat-square)
15
+
16
+ ![GitHub Workflow Status](https://img.shields.io/github/actions/workflow/status/hombach/iobroker.tibberlink/test-and-release.yml?branch=main&logo=github&style=flat-square)
13
17
  [![CodeQL](https://github.com/hombach/ioBroker.tibberlink/actions/workflows/codeql-analysis.yml/badge.svg)](https://github.com/hombach/ioBroker.tibberlink/actions/workflows/codeql-analysis.yml)
14
18
  [![Appveyor-CI](https://ci.appveyor.com/api/projects/status/github/hombach/ioBroker.tibberlink?branch=master&svg=true)](https://ci.appveyor.com/project/hombach/iobroker-tibberlink)
19
+ [![SNYK Known Vulnerabilities](https://snyk.io/test/github/hombach/ioBroker.tibberlink/badge.svg)](https://snyk.io/test/github/hombach/ioBroker.tibberlink)
20
+
21
+ ## Versions
22
+
23
+ ![Beta](https://img.shields.io/npm/v/iobroker.tibberlink.svg?color=red&label=beta)
24
+ ![Stable](https://iobroker.live/badges/tibberlink-stable.svg)
25
+ ![Installed](https://iobroker.live/badges/tibberlink-installed.svg)
15
26
 
16
27
  [![NPM](https://nodei.co/npm/iobroker.tibberlink.png?downloads=true)](https://nodei.co/npm/iobroker.tibberlink/)
17
28
 
@@ -54,6 +65,14 @@ 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
+
57
76
  ### 1.4.1 (2023-10-25)
58
77
 
59
78
  - (HombachC) implement forced update of all data after adapter restart (#155)
@@ -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
  }
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
+ }
52
61
  async updateCurrentPrice(homeId, forceUpdate) {
53
- if (homeId) {
54
- let exDate = null;
55
- exDate = new Date(await this.getStateValue(`Homes.${homeId}.CurrentPrice.startsAt`));
56
- const now = new Date();
57
- if (!exDate || now.getHours() !== exDate.getHours() || forceUpdate) {
58
- const currentPrice = await this.tibberQuery.getCurrentEnergyPrice(homeId);
59
- await this.fetchPrice(homeId, "CurrentPrice", currentPrice);
60
- this.adapter.log.debug(`Got current price from tibber api: ${JSON.stringify(currentPrice)}`);
61
- return true;
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
- else {
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 updatePricesToday(homeId, forceUpdate) {
73
- let exDate = null;
74
- const exJSON = await this.getStateValue(`Homes.${homeId}.PricesToday.json`);
75
- const exPricesToday = JSON.parse(exJSON);
76
- if (Array.isArray(exPricesToday) && exPricesToday[2] && exPricesToday[2].startsAt) {
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
- const today = new Date();
80
- today.setHours(0, 0, 0, 0); // sets clock to 0:00
81
- if (!exDate || exDate <= today || forceUpdate) {
82
- const pricesToday = await this.tibberQuery.getTodaysEnergyPrices(homeId);
83
- this.adapter.log.debug(`Got prices today from tibber api: ${JSON.stringify(pricesToday)}`);
84
- this.checkAndSetValue(this.getStatePrefix(homeId, "PricesToday", "json"), JSON.stringify(pricesToday), "The prices today as json");
85
- this.fetchPriceAverage(homeId, `PricesToday.average`, pricesToday);
86
- this.fetchPriceMaximum(homeId, `PricesToday.maximum`, pricesToday.sort((a, b) => a.total - b.total));
87
- this.fetchPriceMinimum(homeId, `PricesToday.minimum`, pricesToday.sort((a, b) => a.total - b.total));
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
- if (Array.isArray(pricesToday)) {
94
- // Sort the array if it is an array - possible type error discovered by sentry
95
- this.checkAndSetValue(this.getStatePrefix(homeId, "PricesToday", "jsonBYpriceASC"), JSON.stringify(pricesToday.sort((a, b) => a.total - b.total)), "prices sorted by cost ascending as json");
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
- // Handle the case when pricesToday is not an array, it's empty!, so just don't sort and write
99
- this.checkAndSetValue(this.getStatePrefix(homeId, "PricesToday", "jsonBYpriceASC"), JSON.stringify(pricesToday), "prices sorted by cost ascending as json");
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
- else {
103
- this.adapter.log.debug(`Existing date (${exDate}) of price info is already the today date, polling of prices today from Tibber skipped`);
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 updatePricesTomorrow(homeId, forceUpdate) {
107
- let exDate = null;
108
- const exJSON = await this.getStateValue(`Homes.${homeId}.PricesTomorrow.json`);
109
- const exPricesTomorrow = JSON.parse(exJSON);
110
- if (Array.isArray(exPricesTomorrow) && exPricesTomorrow[2] && exPricesTomorrow[2].startsAt) {
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
- const morgen = new Date();
114
- morgen.setDate(morgen.getDate() + 1);
115
- morgen.setHours(0, 0, 0, 0); // sets clock to 0:00
116
- if (!exDate || exDate <= morgen || forceUpdate) {
117
- const pricesTomorrow = await this.tibberQuery.getTomorrowsEnergyPrices(homeId);
118
- this.adapter.log.debug(`Got prices tomorrow from tibber api: ${JSON.stringify(pricesTomorrow)}`);
119
- if (pricesTomorrow.length === 0) {
120
- // pricing not known, before about 13:00 - delete the states
121
- this.adapter.log.debug(`Emptying prices tomorrow and average cause existing ones are obsolete...`);
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
- else if (pricesTomorrow) {
130
- // pricing known, after about 13:00 - write the states
131
- for (const i in pricesTomorrow) {
132
- const price = pricesTomorrow[i];
133
- const hour = new Date(price.startsAt.substr(0, 19)).getHours();
134
- await this.fetchPrice(homeId, "PricesTomorrow." + hour, price);
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
- // Handle the case when pricesToday is not an array, it's empty!, so just don't sort and write
147
- this.checkAndSetValue(this.getStatePrefix(homeId, "PricesTomorrow", "jsonBYpriceASC"), JSON.stringify(pricesTomorrow), "prices sorted by cost ascending as json");
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
- else {
151
- this.adapter.log.debug(`Existing date (${exDate}) of price info is already the tomorrow date, polling of prices tomorrow from Tibber skipped`);
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 avarage spotmarket price");
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 avarage tax price");
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
- // if not chActive write chValueOff
81
+ let valueToSet = "";
82
+ // not chActive -> choose chValueOff
85
83
  if (!this.adapter.config.CalculatorList[channel].chActive) {
86
- this.adapter.setForeignStateAsync(this.adapter.config.CalculatorList[channel].chTargetState, convertValue(this.adapter.config.CalculatorList[channel].chValueOff));
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
- this.adapter.setForeignStateAsync(this.adapter.config.CalculatorList[channel].chTargetState, convertValue(this.adapter.config.CalculatorList[channel].chValueOff));
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.log.debug(`calculator channel: ${channel}-best price; setting state: ${this.adapter.config.CalculatorList[channel].chTargetState}`);
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
- // if not chActive write chValueOff
105
+ let valueToSet = "";
106
+ // not chActive -> choose chValueOff
105
107
  if (!this.adapter.config.CalculatorList[channel].chActive) {
106
- this.adapter.setForeignStateAsync(this.adapter.config.CalculatorList[channel].chTargetState, convertValue(this.adapter.config.CalculatorList[channel].chValueOff));
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
- this.adapter.setForeignStateAsync(this.adapter.config.CalculatorList[channel].chTargetState, convertValue(this.adapter.config.CalculatorList[channel].chValueOff));
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
- // if not chActive write chValueOff
133
+ let valueToSet = "";
134
+ // not chActive -> choose chValueOff
135
135
  if (!this.adapter.config.CalculatorList[channel].chActive) {
136
- this.adapter.setForeignStateAsync(this.adapter.config.CalculatorList[channel].chTargetState, convertValue(this.adapter.config.CalculatorList[channel].chValueOff));
137
- return;
136
+ valueToSet = this.adapter.config.CalculatorList[channel].chValueOff;
138
137
  }
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;
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
- if (sum < minSum) {
150
- minSum = sum;
151
- startIndex = i;
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
- const minSumEntries = jsonPrices.slice(startIndex, startIndex + n).map((entry) => checkHourMatch(entry));
155
- // function to check for equal hour values
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":"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"}
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.intervalList = [];
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
- this.restart();
138
- }, 120000);
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
- // Get prices for the first time
159
- for (const index in this.homeInfoList) {
160
- // Get current price for the first time and start calculator tasks once
161
- try {
162
- await tibberAPICaller.updateCurrentPrice(this.homeInfoList[index].ID, true);
163
- }
164
- catch (error) {
165
- this.log.error(tibberAPICaller.generateErrorMessage(error, `first pull of current price`));
166
- }
167
- // Get today prices for the first time
168
- try {
169
- await tibberAPICaller.updatePricesToday(this.homeInfoList[index].ID, true);
170
- }
171
- catch (error) {
172
- this.log.error(tibberAPICaller.generateErrorMessage(error, `first pull of prices today`));
173
- }
174
- // Get tomorrow prices for the first time
175
- try {
176
- await tibberAPICaller.updatePricesTomorrow(this.homeInfoList[index].ID, true);
177
- }
178
- catch (error) {
179
- this.log.error(tibberAPICaller.generateErrorMessage(error, `first pull of prices tomorrow`));
180
- }
181
- tibberCalculator.startCalculatorTasks();
182
- }
183
- const startFullHourTasks = () => {
184
- const currentTime = new Date();
185
- const minutesUntilNextRun = 60 - currentTime.getMinutes() + 0.3;
186
- setTimeout(async () => {
187
- let newprice = false;
188
- for (const index in this.homeInfoList) {
189
- await tibberAPICaller
190
- .updateCurrentPrice(this.homeInfoList[index].ID)
191
- .then((result) => {
192
- newprice = result;
193
- })
194
- .catch((error) => {
195
- this.log.warn(tibberAPICaller.generateErrorMessage(error, `pull of current price`));
196
- });
197
- }
198
- if (newprice) {
199
- // if newprice detected call all calculator tasks
200
- tibberCalculator.startCalculatorTasks();
201
- startFullHourTasks();
202
- }
203
- else {
204
- // if no new price, wait 3 minutes and restart action
205
- setTimeout(startFullHourTasks, 3 * 60 * 1000);
206
- }
207
- }, minutesUntilNextRun * 60 * 1000);
208
- };
209
- startFullHourTasks();
210
- const energyPricesListUpdateInterval = this.setInterval(() => {
211
- for (const index in this.homeInfoList) {
212
- try {
213
- tibberAPICaller.updatePricesToday(this.homeInfoList[index].ID);
214
- }
215
- catch (error) {
216
- this.log.warn(tibberAPICaller.generateErrorMessage(error, "pull of prices today"));
217
- }
218
- try {
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
- // clearTimeout(timeout1);
345
- for (const index in this.intervalList) {
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":";;;;;;;;;;;;;;;;;;;;;;;;;AAAA,wGAAwG;AACxG,8DAAgD;AAEhD,2DAAwD;AACxD,6DAA0D;AAE1D,mDAAgD;AAEhD,MAAM,UAAW,SAAQ,KAAK,CAAC,OAAO;IAMrC,YAAmB,UAAyC,EAAE;QAC7D,KAAK,CAAC;YACL,GAAG,OAAO;YACV,IAAI,EAAE,YAAY;SAClB,CAAC,CAAC;QARJ,iBAAY,GAAgB,EAAE,CAAC;QAC/B,aAAQ,GAAW,EAAE,CAAC;QACtB,qBAAgB,GAAG,IAAI,mCAAgB,CAAC,IAAI,CAAC,CAAC;QAO7C,IAAI,CAAC,EAAE,CAAC,OAAO,EAAE,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC;QAC1C,IAAI,CAAC,EAAE,CAAC,aAAa,EAAE,IAAI,CAAC,aAAa,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC;QACtD,2DAA2D;QAC3D,IAAI,CAAC,EAAE,CAAC,SAAS,EAAE,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC;QAC9C,IAAI,CAAC,EAAE,CAAC,QAAQ,EAAE,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC;QAC5C,IAAI,CAAC,YAAY,GAAG,EAAE,CAAC;QACvB,IAAI,CAAC,YAAY,GAAG,EAAE,CAAC;QACvB,IAAI,CAAC,QAAQ,GAAG,oCAAoC,CAAC;IACtD,CAAC;IAED;;OAEG;IACK,KAAK,CAAC,OAAO;QACpB,iDAAiD;QACjD,IAAI,CAAC,IAAI,CAAC,MAAM,CAAC,cAAc,EAAE;YAChC,oCAAoC;YACpC,IAAI,CAAC,GAAG,CAAC,KAAK,CAAC,gDAAgD,CAAC,CAAC;YACjE,IAAI,CAAC,QAAQ,CAAC,iBAAiB,EAAE,KAAK,EAAE,IAAI,CAAC,CAAC;SAC9C;aAAM;YACN,yDAAyD;YACzD,MAAM,eAAe,GAAY;gBAChC,MAAM,EAAE,IAAI;gBACZ,WAAW,EAAE;oBACZ,MAAM,EAAE,IAAI,CAAC,MAAM,CAAC,cAAc;oBAClC,QAAQ,EAAE,IAAI,CAAC,QAAQ;iBACvB;aACD,CAAC;YACF,+BAA+B;YAC/B,MAAM,eAAe,GAAG,IAAI,iCAAe,CAAC,eAAe,EAAE,IAAI,CAAC,CAAC;YACnE,IAAI;gBACH,IAAI,CAAC,YAAY,GAAG,MAAM,eAAe,CAAC,kBAAkB,EAAE,CAAC;gBAC/D,IAAI,IAAI,CAAC,MAAM,CAAC,SAAS,CAAC,MAAM,GAAG,CAAC,EAAE;oBACrC,yCAAyC;oBACzC,IAAI,IAAI,CAAC,YAAY,CAAC,MAAM,GAAG,CAAC,EAAE;wBACjC,mDAAmD;wBACnD,MAAM,MAAM,GAAU,EAAE,CAAC;wBACzB,KAAK,MAAM,IAAI,IAAI,IAAI,CAAC,MAAM,CAAC,SAAS,EAAE;4BACzC,MAAM,gBAAgB,GAAG,IAAI,CAAC,YAAY,CAAC,IAAI,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,CAAC,EAAE,KAAK,IAAI,CAAC,MAAM,CAAC,CAAC;4BACnF,IAAI,CAAC,gBAAgB,EAAE;gCACtB,IAAI,CAAC,GAAG,CAAC,KAAK,CACb,gCAAgC,IAAI,CAAC,MAAM,8HAA8H,CACzK,CAAC;gCACF,SAAS;6BACT;4BACD,IAAI,MAAM,CAAC,IAAI,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,CAAC,EAAE,KAAK,gBAAgB,CAAC,EAAE,CAAC,EAAE;gCAC3D,IAAI,CAAC,GAAG,CAAC,IAAI,CACZ,oCAAoC,IAAI,CAAC,MAAM,sFAAsF,CACrI,CAAC;gCACF,SAAS;6BACT;4BACD,gBAAgB,CAAC,UAAU,GAAG,IAAI,CAAC,UAAU,CAAC;4BAC9C,MAAM,CAAC,IAAI,CAAC,gBAAgB,CAAC,CAAC;yBAC9B;wBACD,KAAK,MAAM,KAAK,IAAI,IAAI,CAAC,YAAY,EAAE;4BACtC,IAAI,CAAC,GAAG,CAAC,KAAK,CACb,wBAAwB,IAAI,CAAC,YAAY,CAAC,KAAK,CAAC,CAAC,SAAS,KAAK,IAAI,CAAC,YAAY,CAAC,KAAK,CAAC,CAAC,EAAE,gCAAgC,IAAI,CAAC,YAAY,CAAC,KAAK,CAAC,CAAC,QAAQ,iCAAiC,IAAI,CAAC,YAAY,CAAC,KAAK,CAAC,CAAC,UAAU,EAAE,CACjO,CAAC;yBACF;qBACD;iBACD;qBAAM;oBACN,IAAI,CAAC,GAAG,CAAC,IAAI,CACZ,kIAAkI,CAClI,CAAC;iBACF;aACD;YAAC,OAAO,KAAU,EAAE;gBACpB,IAAI,CAAC,GAAG,CAAC,KAAK,CAAC,eAAe,CAAC,oBAAoB,CAAC,KAAK,EAAE,kCAAkC,CAAC,CAAC,CAAC;aAChG;YAED,6DAA6D;YAC7D,IAAI,IAAI,CAAC,MAAM,CAAC,SAAS,EAAE,KAAK,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,CAAC,IAAI,CAAC,UAAU,CAAC,EAAE;gBAC7D,IAAI,IAAI,CAAC,YAAY,CAAC,MAAM,GAAG,CAAC,EAAE;oBACjC,IAAI,CAAC,QAAQ,CAAC,iBAAiB,EAAE,IAAI,EAAE,IAAI,CAAC,CAAC;oBAC7C,IAAI,CAAC,GAAG,CAAC,KAAK,CAAC,wFAAwF,CAAC,CAAC;iBACzG;qBAAM;oBACN,IAAI,CAAC,QAAQ,CAAC,iBAAiB,EAAE,KAAK,EAAE,IAAI,CAAC,CAAC;oBAC9C,IAAI,CAAC,GAAG,CAAC,KAAK,CAAC,yFAAyF,CAAC,CAAC;iBAC1G;aACD;YAED,iBAAiB;YACjB,IAAI,IAAI,CAAC,eAAe,IAAI,IAAI,CAAC,eAAe,CAAC,SAAS,CAAC,EAAE;gBAC5D,MAAM,cAAc,GAAG,IAAI,CAAC,iBAAiB,CAAC,QAAQ,CAAC,CAAC;gBACxD,MAAM,KAAK,GAAG,IAAI,IAAI,EAAE,CAAC;gBACzB,MAAM,IAAI,GAAG,MAAM,IAAI,CAAC,aAAa,CAAC,uBAAuB,CAAC,CAAC;gBAC/D,IAAI,IAAI,EAAE,GAAG,IAAI,CAAC,MAAM,KAAK,CAAC,OAAO,EAAE,CAAC,EAAE;oBACzC,IAAI,cAAc,EAAE;wBACnB,MAAM,MAAM,GAAG,cAAc,CAAC,eAAe,EAAE,CAAC;wBAChD,MAAM;4BACL,MAAM,CAAC,SAAS,CAAC,CAAC,KAAyF,EAAE,EAAE;gCAC9G,KAAK,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAC;gCACvB,KAAK,CAAC,MAAM,CAAC,WAAW,EAAE,KAAK,CAAC,OAAO,EAAE,CAAC,CAAC;gCAC3C,KAAK,CAAC,MAAM,CAAC,SAAS,EAAE,IAAI,CAAC,YAAY,CAAC,MAAM,CAAC,CAAC;gCAClD,MAAM,CAAC,cAAc,CAAC,4BAA4B,EAAE,MAAM,CAAC,CAAC,CAAC,eAAe;4BAC7E,CAAC,CAAC,CAAC;qBACJ;oBACD,sHAAsH;oBACtH,IAAI,CAAC,aAAa,CAAC,uBAAuB,EAAE,EAAE,GAAG,EAAE,KAAK,CAAC,OAAO,EAAE,EAAE,GAAG,EAAE,IAAI,EAAE,CAAC,CAAC;iBACjF;aACD;YAED,oEAAoE;YACpE,IAAI,IAAI,CAAC,YAAY,CAAC,MAAM,KAAK,CAAC,EAAE;gBACnC,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC,iGAAiG,CAAC,CAAC;gBACjH,MAAM,cAAc,GAAG,IAAI,CAAC,WAAW,CAAC,GAAG,EAAE;oBAC5C,IAAI,CAAC,OAAO,EAAE,CAAC;gBAChB,CAAC,EAAE,MAAM,CAAC,CAAC;gBACX,IAAI,cAAc;oBAAE,IAAI,CAAC,YAAY,CAAC,IAAI,CAAC,cAAc,CAAC,CAAC;aAC3D;YAED,uDAAuD;YACvD,8CAA8C;YAC9C,IAAI,IAAI,CAAC,YAAY,CAAC,MAAM,GAAG,CAAC,EAAE;gBACjC,MAAM,gBAAgB,GAAG,IAAI,mCAAgB,CAAC,IAAI,CAAC,CAAC;gBACpD,kDAAkD;gBAClD,IAAI,IAAI,CAAC,MAAM,CAAC,aAAa,EAAE;oBAC9B,IAAI;wBACH,IAAI,CAAC,GAAG,CAAC,KAAK,CAAC,oCAAoC,IAAI,CAAC,MAAM,CAAC,cAAc,CAAC,MAAM,WAAW,CAAC,CAAC;wBACjG,KAAK,MAAM,OAAO,IAAI,IAAI,CAAC,MAAM,CAAC,cAAc,EAAE;4BACjD,MAAM,gBAAgB,CAAC,qBAAqB,CAAC,IAAI,CAAC,MAAM,CAAC,cAAc,CAAC,OAAO,CAAC,CAAC,QAAQ,EAAE,QAAQ,CAAC,OAAO,CAAC,CAAC,CAAC;yBAC9G;qBACD;oBAAC,OAAO,KAAU,EAAE;wBACpB,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC,eAAe,CAAC,oBAAoB,CAAC,KAAK,EAAE,4BAA4B,CAAC,CAAC,CAAC;qBACzF;iBACD;gBACD,gCAAgC;gBAChC,KAAK,MAAM,KAAK,IAAI,IAAI,CAAC,YAAY,EAAE;oBACtC,uEAAuE;oBACvE,IAAI;wBACH,MAAM,eAAe,CAAC,kBAAkB,CAAC,IAAI,CAAC,YAAY,CAAC,KAAK,CAAC,CAAC,EAAE,EAAE,IAAI,CAAC,CAAC;qBAC5E;oBAAC,OAAO,KAAU,EAAE;wBACpB,IAAI,CAAC,GAAG,CAAC,KAAK,CAAC,eAAe,CAAC,oBAAoB,CAAC,KAAK,EAAE,6BAA6B,CAAC,CAAC,CAAC;qBAC3F;oBAED,sCAAsC;oBACtC,IAAI;wBACH,MAAM,eAAe,CAAC,iBAAiB,CAAC,IAAI,CAAC,YAAY,CAAC,KAAK,CAAC,CAAC,EAAE,EAAE,IAAI,CAAC,CAAC;qBAC3E;oBAAC,OAAO,KAAU,EAAE;wBACpB,IAAI,CAAC,GAAG,CAAC,KAAK,CAAC,eAAe,CAAC,oBAAoB,CAAC,KAAK,EAAE,4BAA4B,CAAC,CAAC,CAAC;qBAC1F;oBAED,yCAAyC;oBACzC,IAAI;wBACH,MAAM,eAAe,CAAC,oBAAoB,CAAC,IAAI,CAAC,YAAY,CAAC,KAAK,CAAC,CAAC,EAAE,EAAE,IAAI,CAAC,CAAC;qBAC9E;oBAAC,OAAO,KAAU,EAAE;wBACpB,IAAI,CAAC,GAAG,CAAC,KAAK,CAAC,eAAe,CAAC,oBAAoB,CAAC,KAAK,EAAE,+BAA+B,CAAC,CAAC,CAAC;qBAC7F;oBACD,gBAAgB,CAAC,oBAAoB,EAAE,CAAC;iBACxC;gBAED,MAAM,kBAAkB,GAAG,GAAS,EAAE;oBACrC,MAAM,WAAW,GAAG,IAAI,IAAI,EAAE,CAAC;oBAC/B,MAAM,mBAAmB,GAAG,EAAE,GAAG,WAAW,CAAC,UAAU,EAAE,GAAG,GAAG,CAAC;oBAChE,UAAU,CACT,KAAK,IAAI,EAAE;wBACV,IAAI,QAAQ,GAAG,KAAK,CAAC;wBACrB,KAAK,MAAM,KAAK,IAAI,IAAI,CAAC,YAAY,EAAE;4BACtC,MAAM,eAAe;iCACnB,kBAAkB,CAAC,IAAI,CAAC,YAAY,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC;iCAC/C,IAAI,CAAC,CAAC,MAAM,EAAE,EAAE;gCAChB,QAAQ,GAAG,MAAM,CAAC;4BACnB,CAAC,CAAC;iCACD,KAAK,CAAC,CAAC,KAAK,EAAE,EAAE;gCAChB,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC,eAAe,CAAC,oBAAoB,CAAC,KAAK,EAAE,uBAAuB,CAAC,CAAC,CAAC;4BACrF,CAAC,CAAC,CAAC;yBACJ;wBACD,IAAI,QAAQ,EAAE;4BACb,iDAAiD;4BACjD,gBAAgB,CAAC,oBAAoB,EAAE,CAAC;4BACxC,kBAAkB,EAAE,CAAC;yBACrB;6BAAM;4BACN,qDAAqD;4BACrD,UAAU,CAAC,kBAAkB,EAAE,CAAC,GAAG,EAAE,GAAG,IAAI,CAAC,CAAC;yBAC9C;oBACF,CAAC,EACD,mBAAmB,GAAG,EAAE,GAAG,IAAI,CAC/B,CAAC;gBACH,CAAC,CAAC;gBACF,kBAAkB,EAAE,CAAC;gBAErB,MAAM,8BAA8B,GAAG,IAAI,CAAC,WAAW,CAAC,GAAG,EAAE;oBAC5D,KAAK,MAAM,KAAK,IAAI,IAAI,CAAC,YAAY,EAAE;wBACtC,IAAI;4BACH,eAAe,CAAC,iBAAiB,CAAC,IAAI,CAAC,YAAY,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,CAAC;yBAC/D;wBAAC,OAAO,KAAU,EAAE;4BACpB,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC,eAAe,CAAC,oBAAoB,CAAC,KAAK,EAAE,sBAAsB,CAAC,CAAC,CAAC;yBACnF;wBACD,IAAI;4BACH,eAAe,CAAC,oBAAoB,CAAC,IAAI,CAAC,YAAY,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,CAAC;yBAClE;wBAAC,OAAO,KAAU,EAAE;4BACpB,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC,eAAe,CAAC,oBAAoB,CAAC,KAAK,EAAE,yBAAyB,CAAC,CAAC,CAAC;yBACtF;qBACD;gBACF,CAAC,EAAE,OAAO,CAAC,CAAC;gBACZ,IAAI,8BAA8B;oBAAE,IAAI,CAAC,YAAY,CAAC,IAAI,CAAC,8BAA8B,CAAC,CAAC;gBAE3F,iDAAiD;gBACjD,IAAI,IAAI,CAAC,YAAY,CAAC,IAAI,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,CAAC,UAAU,CAAC,EAAE;oBACtD,uDAAuD;oBACvD,MAAM,iBAAiB,GAAc,KAAK,CAAC,IAAI,CAAC,EAAE,MAAM,EAAE,IAAI,CAAC,YAAY,CAAC,MAAM,EAAE,EAAE,GAAG,EAAE;wBAC1F,OAAO;4BACN,MAAM,EAAE,IAAI;4BACZ,WAAW,EAAE;gCACZ,MAAM,EAAE,IAAI,CAAC,MAAM,CAAC,cAAc;gCAClC,QAAQ,EAAE,IAAI,CAAC,QAAQ;6BACvB;4BACD,SAAS,EAAE,IAAI;yBACf,CAAC;oBACH,CAAC,CAAC,CAAC;oBACH,MAAM,oBAAoB,GAAG,IAAI,KAAK,CAAC,IAAI,CAAC,YAAY,CAAC,MAAM,CAAC,CAAC,CAAC,kCAAkC;oBACpG,KAAK,MAAM,KAAK,IAAI,IAAI,CAAC,YAAY,EAAE;wBACtC,IAAI,IAAI,CAAC,YAAY,CAAC,KAAK,CAAC,CAAC,UAAU,IAAI,IAAI,CAAC,YAAY,CAAC,KAAK,CAAC,CAAC,QAAQ,EAAE;4BAC7E,IAAI,CAAC,GAAG,CAAC,KAAK,CAAC,mDAAmD,IAAI,CAAC,YAAY,CAAC,KAAK,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC;4BACjG,IAAI;gCACH,iCAAiC;gCACjC,iBAAiB,CAAC,KAAK,CAAC,CAAC,MAAM,GAAG,IAAI,CAAC,YAAY,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC;gCAC9D,iBAAiB,CAAC,KAAK,CAAC,CAAC,KAAK,GAAG,IAAI,CAAC;gCACtC,IAAI,IAAI,CAAC,MAAM,CAAC,8BAA8B;oCAAE,iBAAiB,CAAC,KAAK,CAAC,CAAC,oBAAoB,GAAG,IAAI,CAAC;gCACrG,IAAI,IAAI,CAAC,MAAM,CAAC,gCAAgC;oCAAE,iBAAiB,CAAC,KAAK,CAAC,CAAC,sBAAsB,GAAG,IAAI,CAAC;gCACzG,IAAI,IAAI,CAAC,MAAM,CAAC,+BAA+B;oCAAE,iBAAiB,CAAC,KAAK,CAAC,CAAC,qBAAqB,GAAG,IAAI,CAAC;gCACvG,IAAI,IAAI,CAAC,MAAM,CAAC,wCAAwC;oCAAE,iBAAiB,CAAC,KAAK,CAAC,CAAC,8BAA8B,GAAG,IAAI,CAAC;gCACzH,IAAI,IAAI,CAAC,MAAM,CAAC,uCAAuC;oCAAE,iBAAiB,CAAC,KAAK,CAAC,CAAC,6BAA6B,GAAG,IAAI,CAAC;gCACvH,IAAI,IAAI,CAAC,MAAM,CAAC,yBAAyB;oCAAE,iBAAiB,CAAC,KAAK,CAAC,CAAC,eAAe,GAAG,IAAI,CAAC;gCAC3F,IAAI,IAAI,CAAC,MAAM,CAAC,yBAAyB;oCAAE,iBAAiB,CAAC,KAAK,CAAC,CAAC,iBAAiB,GAAG,IAAI,CAAC;gCAC7F,IAAI,IAAI,CAAC,MAAM,CAAC,kBAAkB;oCAAE,iBAAiB,CAAC,KAAK,CAAC,CAAC,QAAQ,GAAG,IAAI,CAAC;gCAC7E,IAAI,IAAI,CAAC,MAAM,CAAC,kBAAkB;oCAAE,iBAAiB,CAAC,KAAK,CAAC,CAAC,QAAQ,GAAG,IAAI,CAAC;gCAC7E,IAAI,IAAI,CAAC,MAAM,CAAC,sBAAsB;oCAAE,iBAAiB,CAAC,KAAK,CAAC,CAAC,YAAY,GAAG,IAAI,CAAC;gCACrF,IAAI,IAAI,CAAC,MAAM,CAAC,kBAAkB;oCAAE,iBAAiB,CAAC,KAAK,CAAC,CAAC,QAAQ,GAAG,IAAI,CAAC;gCAC7E,IAAI,IAAI,CAAC,MAAM,CAAC,yBAAyB;oCAAE,iBAAiB,CAAC,KAAK,CAAC,CAAC,eAAe,GAAG,IAAI,CAAC;gCAC3F,IAAI,IAAI,CAAC,MAAM,CAAC,4BAA4B;oCAAE,iBAAiB,CAAC,KAAK,CAAC,CAAC,kBAAkB,GAAG,IAAI,CAAC;gCACjG,IAAI,IAAI,CAAC,MAAM,CAAC,4BAA4B;oCAAE,iBAAiB,CAAC,KAAK,CAAC,CAAC,kBAAkB,GAAG,IAAI,CAAC;gCACjG,IAAI,IAAI,CAAC,MAAM,CAAC,6BAA6B;oCAAE,iBAAiB,CAAC,KAAK,CAAC,CAAC,mBAAmB,GAAG,IAAI,CAAC;gCACnG,IAAI,IAAI,CAAC,MAAM,CAAC,qBAAqB;oCAAE,iBAAiB,CAAC,KAAK,CAAC,CAAC,WAAW,GAAG,IAAI,CAAC;gCACnF,IAAI,IAAI,CAAC,MAAM,CAAC,uBAAuB;oCAAE,iBAAiB,CAAC,KAAK,CAAC,CAAC,aAAa,GAAG,IAAI,CAAC;gCACvF,IAAI,IAAI,CAAC,MAAM,CAAC,uBAAuB;oCAAE,iBAAiB,CAAC,KAAK,CAAC,CAAC,aAAa,GAAG,IAAI,CAAC;gCACvF,IAAI,IAAI,CAAC,MAAM,CAAC,uBAAuB;oCAAE,iBAAiB,CAAC,KAAK,CAAC,CAAC,aAAa,GAAG,IAAI,CAAC;gCACvF,IAAI,IAAI,CAAC,MAAM,CAAC,mBAAmB;oCAAE,iBAAiB,CAAC,KAAK,CAAC,CAAC,SAAS,GAAG,IAAI,CAAC;gCAC/E,IAAI,IAAI,CAAC,MAAM,CAAC,mBAAmB;oCAAE,iBAAiB,CAAC,KAAK,CAAC,CAAC,SAAS,GAAG,IAAI,CAAC;gCAC/E,IAAI,IAAI,CAAC,MAAM,CAAC,mBAAmB;oCAAE,iBAAiB,CAAC,KAAK,CAAC,CAAC,SAAS,GAAG,IAAI,CAAC;gCAC/E,IAAI,IAAI,CAAC,MAAM,CAAC,wBAAwB;oCAAE,iBAAiB,CAAC,KAAK,CAAC,CAAC,cAAc,GAAG,IAAI,CAAC;gCACzF,oBAAoB,CAAC,KAAK,CAAC,GAAG,IAAI,yBAAW,CAAC,iBAAiB,CAAC,KAAK,CAAC,EAAE,IAAI,CAAC,CAAC,CAAC,wBAAwB;gCACvG,oBAAoB,CAAC,KAAK,CAAC,CAAC,kBAAkB,EAAE,CAAC;6BACjD;4BAAC,OAAO,CAAC,EAAE;gCACX,IAAI,CAAC,GAAG,CAAC,IAAI,CAAE,CAAW,CAAC,OAAO,CAAC,CAAC;6BACpC;yBACD;6BAAM;4BACN,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC,2FAA2F,CAAC,CAAC;yBAC3G;qBACD;iBACD;aACD;SACD;IACF,CAAC;IAED;;OAEG;IACK,SAAS,CAAC,GAAQ;QACzB,IAAI,GAAG,EAAE;YACR,QAAQ,GAAG,CAAC,OAAO,EAAE;gBACpB,KAAK,gBAAgB;oBACpB,IAAI,GAAG,CAAC,QAAQ,EAAE;wBACjB,IAAI;4BACH,IAAI,IAAI,CAAC,YAAY,CAAC,MAAM,GAAG,CAAC,EAAE;gCACjC,IAAI,CAAC,MAAM,CACV,GAAG,CAAC,IAAI,EACR,GAAG,CAAC,OAAO,EACX,IAAI,CAAC,YAAY,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,CAAC;oCAChC,KAAK,EAAE,GAAG,IAAI,CAAC,SAAS,KAAK,IAAI,CAAC,EAAE,GAAG;oCACvC,KAAK,EAAE,IAAI,CAAC,EAAE;iCACd,CAAC,CAAC,EACH,GAAG,CAAC,QAAQ,CACZ,CAAC;6BACF;iCAAM;gCACN,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC,oDAAoD,CAAC,CAAC;gCACpE,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC,IAAI,EAAE,GAAG,CAAC,OAAO,EAAE,CAAC,EAAE,KAAK,EAAE,gBAAgB,EAAE,KAAK,EAAE,gBAAgB,EAAE,CAAC,EAAE,GAAG,CAAC,QAAQ,CAAC,CAAC;6BACzG;yBACD;wBAAC,OAAO,KAAK,EAAE;4BACf,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC,IAAI,EAAE,GAAG,CAAC,OAAO,EAAE,CAAC,EAAE,KAAK,EAAE,gBAAgB,EAAE,KAAK,EAAE,gBAAgB,EAAE,CAAC,EAAE,GAAG,CAAC,QAAQ,CAAC,CAAC;yBACzG;qBACD;oBACD,MAAM;aACP;SACD;IACF,CAAC;IAED;;OAEG;IACK,QAAQ,CAAC,QAAoB;QACpC,IAAI;YACH,yEAAyE;YACzE,0BAA0B;YAC1B,KAAK,MAAM,KAAK,IAAI,IAAI,CAAC,YAAY,EAAE;gBACtC,IAAI,CAAC,aAAa,CAAC,IAAI,CAAC,YAAY,CAAC,KAAK,CAAC,CAAC,CAAC;aAC7C;YACD,8CAA8C;YAC9C,IAAI,CAAC,QAAQ,CAAC,iBAAiB,EAAE,KAAK,EAAE,IAAI,CAAC,CAAC;YAC9C,QAAQ,EAAE,CAAC;SACX;QAAC,OAAO,CAAC,EAAE;YACX,QAAQ,EAAE,CAAC;SACX;IACF,CAAC;IAED;;OAEG;IACK,aAAa,CAAC,EAAU,EAAE,KAAwC;QACzE,IAAI;YACH,IAAI,KAAK,EAAE;gBACV,wBAAwB;gBACxB,6EAA6E;gBAC7E,IAAI,CAAC,KAAK,CAAC,GAAG,EAAE;oBACf,IAAI,EAAE,CAAC,QAAQ,CAAC,gBAAgB,CAAC,EAAE;wBAClC,MAAM,SAAS,GAAG,EAAE,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC;wBAChC,MAAM,aAAa,GAAG,SAAS,CAAC,CAAC,CAAC,CAAC;wBACnC,MAAM,WAAW,GAAG,QAAQ,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,CAAC;wBAC3C,MAAM,WAAW,GAAG,SAAS,CAAC,CAAC,CAAC,CAAC;wBACjC,IAAI,CAAC,KAAK,CAAC,WAAW,CAAC,IAAI,WAAW,GAAG,IAAI,CAAC,MAAM,CAAC,cAAc,CAAC,MAAM,IAAI,WAAW,KAAK,SAAS,EAAE;4BACxG,IAAI,IAAI,CAAC,MAAM,CAAC,cAAc,CAAC,WAAW,CAAC,CAAC,QAAQ,KAAK,aAAa,EAAE;gCACvE,QAAQ,WAAW,EAAE;oCACpB,KAAK,QAAQ;wCACZ,wDAAwD;wCACxD,IAAI,OAAO,KAAK,CAAC,GAAG,KAAK,SAAS,EAAE;4CACnC,IAAI,CAAC,MAAM,CAAC,cAAc,CAAC,WAAW,CAAC,CAAC,QAAQ,GAAG,KAAK,CAAC,GAAG,CAAC;4CAC7D,IAAI,CAAC,GAAG,CAAC,KAAK,CACb,sCAAsC,aAAa,eAAe,WAAW,yBAAyB,IAAI,CAAC,MAAM,CAAC,cAAc,CAAC,WAAW,CAAC,CAAC,QAAQ,EAAE,CACxJ,CAAC;4CACF,IAAI,CAAC,aAAa,CAAC,EAAE,EAAE,KAAK,CAAC,GAAG,EAAE,IAAI,CAAC,CAAC;yCACxC;6CAAM;4CACN,IAAI,CAAC,GAAG,CAAC,KAAK,CAAC,4BAA4B,KAAK,CAAC,GAAG,EAAE,CAAC,CAAC;yCACxD;wCACD,MAAM;oCACP,KAAK,cAAc;wCAClB,6DAA6D;wCAC7D,IAAI,OAAO,KAAK,CAAC,GAAG,KAAK,QAAQ,EAAE;4CAClC,IAAI,CAAC,MAAM,CAAC,cAAc,CAAC,WAAW,CAAC,CAAC,cAAc,GAAG,KAAK,CAAC,GAAG,CAAC;4CACnE,IAAI,CAAC,GAAG,CAAC,KAAK,CACb,sCAAsC,aAAa,eAAe,WAAW,+BAA+B,IAAI,CAAC,MAAM,CAAC,cAAc,CAAC,WAAW,CAAC,CAAC,cAAc,EAAE,CACpK,CAAC;4CACF,IAAI,CAAC,aAAa,CAAC,EAAE,EAAE,KAAK,CAAC,GAAG,EAAE,IAAI,CAAC,CAAC;yCACxC;6CAAM;4CACN,IAAI,CAAC,GAAG,CAAC,KAAK,CAAC,kCAAkC,KAAK,CAAC,GAAG,EAAE,CAAC,CAAC;yCAC9D;wCACD,MAAM;oCACP,KAAK,aAAa;wCACjB,4DAA4D;wCAC5D,IAAI,OAAO,KAAK,CAAC,GAAG,KAAK,QAAQ,EAAE;4CAClC,IAAI,CAAC,MAAM,CAAC,cAAc,CAAC,WAAW,CAAC,CAAC,aAAa,GAAG,KAAK,CAAC,GAAG,CAAC;4CAClE,IAAI,CAAC,GAAG,CAAC,KAAK,CACb,sCAAsC,aAAa,eAAe,WAAW,8BAA8B,IAAI,CAAC,MAAM,CAAC,cAAc,CAAC,WAAW,CAAC,CAAC,aAAa,EAAE,CAClK,CAAC;4CACF,IAAI,CAAC,aAAa,CAAC,EAAE,EAAE,KAAK,CAAC,GAAG,EAAE,IAAI,CAAC,CAAC;yCACxC;6CAAM;4CACN,IAAI,CAAC,GAAG,CAAC,KAAK,CAAC,iCAAiC,KAAK,CAAC,GAAG,EAAE,CAAC,CAAC;yCAC7D;wCACD,MAAM;oCACP;wCACC,IAAI,CAAC,GAAG,CAAC,KAAK,CAAC,mCAAmC,WAAW,EAAE,CAAC,CAAC;iCAClE;gCACD,IAAI,CAAC,gBAAgB,CAAC,oBAAoB,EAAE,CAAC;6BAC7C;iCAAM;gCACN,IAAI,CAAC,GAAG,CAAC,KAAK,CAAC,iEAAiE,CAAC,CAAC;6BAClF;yBACD;qBACD;iBACD;aACD;iBAAM;gBACN,wBAAwB;gBACxB,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC,SAAS,EAAE,UAAU,CAAC,CAAC;aACrC;SACD;QAAC,OAAO,CAAC,EAAE;YACX,IAAI,CAAC,GAAG,CAAC,KAAK,CAAC,iDAAiD,CAAC,EAAE,CAAC,CAAC;SACrE;IACF,CAAC;CACD;AAED,IAAI,OAAO,CAAC,IAAI,KAAK,MAAM,EAAE;IAC5B,yCAAyC;IACzC,MAAM,CAAC,OAAO,GAAG,CAAC,OAAkD,EAAE,EAAE,CAAC,IAAI,UAAU,CAAC,OAAO,CAAC,CAAC;CACjG;KAAM;IACN,wCAAwC;IACxC,CAAC,GAAG,EAAE,CAAC,IAAI,UAAU,EAAE,CAAC,EAAE,CAAC;CAC3B"}
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,21 @@
1
1
  {
2
2
  "common": {
3
3
  "name": "tibberlink",
4
- "version": "1.4.1",
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
+ },
6
19
  "1.4.1": {
7
20
  "en": "implement forced update of all data after adapter restart (#155)",
8
21
  "de": "Umsetzung erzwungener Aktualisierung aller Daten nach Neustart des Adapters (#155)",
@@ -249,19 +262,6 @@
249
262
  "pl": "kod optymalizacyjny w celu złagodzenia systemu stanowego dla długich stanów JSON (#68)",
250
263
  "uk": "оптимізуйте код для пом'якшення часу стану для довгих станів JSON (#68)",
251
264
  "zh-cn": "完善减少长期合作行动联盟国家时间表的守则(#68)"
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": [
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "iobroker.tibberlink",
3
- "version": "1.4.1",
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,11 +24,12 @@
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.14",
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",
@@ -38,7 +39,7 @@
38
39
  "@types/sinon-chai": "^3.2.11",
39
40
  "@typescript-eslint/eslint-plugin": "^6.9.0",
40
41
  "@typescript-eslint/parser": "^6.9.0",
41
- "axios": "^1.5.1",
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",