iobroker.clage-dsx 0.0.7 → 0.0.8

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
@@ -81,6 +81,13 @@ For updates, write the same structure including a numeric `id` to `timers.update
81
81
 
82
82
  ## Changelog
83
83
 
84
+ ### 0.0.8
85
+
86
+ - Fixed all findings from the ioBroker latest-repository review.
87
+ - Updated energy and timestamp state roles and clarified the legacy temperature state.
88
+ - Restricted setup writes to registered API fields and added safe polling upper limits.
89
+ - Corrected all adapter description translations.
90
+
84
91
  ### 0.0.7
85
92
 
86
93
  - Corrected state roles for timestamps, version information and the numeric bus ID
@@ -51,6 +51,7 @@
51
51
  "type": "number",
52
52
  "label": "Active-device interval (ms)",
53
53
  "min": 1000,
54
+ "max": 3600000,
54
55
  "xs": 12,
55
56
  "sm": 6,
56
57
  "md": 3,
@@ -61,6 +62,7 @@
61
62
  "type": "number",
62
63
  "label": "Idle-device interval (ms)",
63
64
  "min": 5000,
65
+ "max": 3600000,
64
66
  "xs": 12,
65
67
  "sm": 6,
66
68
  "md": 3,
@@ -71,6 +73,7 @@
71
73
  "type": "number",
72
74
  "label": "History/setup interval (ms)",
73
75
  "min": 60000,
76
+ "max": 3600000,
74
77
  "xs": 12,
75
78
  "sm": 6,
76
79
  "md": 3,
package/io-package.json CHANGED
@@ -1,8 +1,21 @@
1
1
  {
2
2
  "common": {
3
3
  "name": "clage-dsx",
4
- "version": "0.0.7",
4
+ "version": "0.0.8",
5
5
  "news": {
6
+ "0.0.8": {
7
+ "en": "Fixed latest-repository review findings for roles, setup fields, polling limits and translations.",
8
+ "de": "Review-Hinweise zu Rollen, Setup-Feldern, Abfragegrenzen und Übersetzungen behoben.",
9
+ "ru": "Исправлены замечания проверки по ролям, полям настройки, ограничениям опроса и переводам.",
10
+ "pt": "Corrigidos os pontos da revisão relativos a funções, campos de configuração, limites de consulta e traduções.",
11
+ "nl": "Reviewpunten voor rollen, instelvelden, pollinglimieten en vertalingen opgelost.",
12
+ "fr": "Correction des remarques concernant les rôles, les champs de configuration, les limites d’interrogation et les traductions.",
13
+ "it": "Corretti i rilievi relativi a ruoli, campi di configurazione, limiti di polling e traduzioni.",
14
+ "es": "Corregidos los hallazgos sobre funciones, campos de configuración, límites de sondeo y traducciones.",
15
+ "pl": "Naprawiono uwagi dotyczące ról, pól konfiguracji, limitów odpytywania i tłumaczeń.",
16
+ "uk": "Виправлено зауваження щодо ролей, полів налаштування, обмежень опитування та перекладів.",
17
+ "zh-cn": "修复了角色、设置字段、轮询限制和翻译方面的审核问题。"
18
+ },
6
19
  "0.0.7": {
7
20
  "en": "Corrected state roles for timestamps, version information and the numeric bus ID.",
8
21
  "de": "Datenpunktrollen für Zeitstempel, Versionsinformationen und die numerische Bus-ID korrigiert.",
@@ -72,15 +85,15 @@
72
85
  "desc": {
73
86
  "en": "Control and monitor CLAGE water heaters through the Home Server API",
74
87
  "de": "CLAGE-Durchlauferhitzer über die Home-Server-API steuern und überwachen",
75
- "ru": "подключение к clage dsx wather Heater",
76
- "pt": "conexão com o aquecedor de wather dsx clage",
77
- "nl": "verbinding met klei dsxwaze Heater",
78
- "fr": "connexion à clage dsx wather Heater",
79
- "it": "connessione al clage dsx wather Heater",
80
- "es": "conexión a clage dsx wather Heater",
81
- "pl": "w związku z tym księgowy",
82
- "uk": "підключення до клітки dsx ватер нагрівач",
83
- "zh-cn": "2. 冲突"
88
+ "ru": "Управление и мониторинг водонагревателей CLAGE через API Home Server",
89
+ "pt": "Controle e monitorização de aquecedores de água CLAGE através da API do Home Server",
90
+ "nl": "CLAGE-waterverwarmers bedienen en bewaken via de Home Server-API",
91
+ "fr": "Contrôler et surveiller les chauffe-eau CLAGE via l’API Home Server",
92
+ "it": "Controllo e monitoraggio degli scaldacqua CLAGE tramite l’API Home Server",
93
+ "es": "Control y supervisión de calentadores de agua CLAGE mediante la API de Home Server",
94
+ "pl": "Sterowanie i monitorowanie podgrzewaczy wody CLAGE przez interfejs API Home Server",
95
+ "uk": "Керування та моніторинг водонагрівачів CLAGE через API Home Server",
96
+ "zh-cn": "通过 Home Server API 控制和监控 CLAGE 热水器"
84
97
  },
85
98
  "authors": ["TheBam <elektrobam@gmx.de>"],
86
99
  "keywords": ["water heater", "clage"],
package/main.js CHANGED
@@ -115,9 +115,9 @@ class ClageDsx extends utils.Adapter {
115
115
  return;
116
116
  }
117
117
 
118
- this.activePollMs = Math.max(asNumber(this.config.activePollMs, 2000), 1000);
119
- this.idlePollMs = Math.max(asNumber(this.config.idlePollMs, 30000), 5000);
120
- this.detailsPollMs = Math.max(asNumber(this.config.detailsPollMs, 300000), 60000);
118
+ this.activePollMs = Math.min(Math.max(asNumber(this.config.activePollMs, 2000), 1000), 3600000);
119
+ this.idlePollMs = Math.min(Math.max(asNumber(this.config.idlePollMs, 30000), 5000), 3600000);
120
+ this.detailsPollMs = Math.min(Math.max(asNumber(this.config.detailsPollMs, 300000), 60000), 3600000);
121
121
  this.historyDays = Math.max(asNumber(this.config.historyDays, 30), 1);
122
122
  this.longPolling = this.config.longPolling !== false;
123
123
  this.client = axios.create({
@@ -160,7 +160,7 @@ class ClageDsx extends utils.Adapter {
160
160
  await this.ensureChannel("timers", "Timer management");
161
161
  await this.ensureState("info.connection", "Connected", "boolean", "indicator.connected", true, false);
162
162
  await this.ensureState("info.lastError", "Last error", "string", "text", true, false);
163
- await this.ensureState("info.lastUpdate", "Last successful update", "string", "text", true, false);
163
+ await this.ensureState("info.lastUpdate", "Last successful update", "string", "date", true, false);
164
164
  await this.ensureState("info.apiVersion", "API version", "string", "text", true, false);
165
165
  await this.ensureState("info.servicesJson", "Available services", "string", "json", true, false);
166
166
  for (const [id, name, type, role] of [
@@ -257,9 +257,9 @@ class ClageDsx extends utils.Adapter {
257
257
  ["rssi", "Signal strength", "number", "value", true, false, "dBm"],
258
258
  ["lqi", "Link quality indicator", "number", "value", true, false],
259
259
  ["access", "API access mask", "number", "value", true, false],
260
- ["activity", "Last radio activity", "string", "text", true, false],
260
+ ["activity", "Last radio activity", "string", "date", true, false],
261
261
  ["Setpoint", "Setpoint raw", "number", "level.temperature", true, true, "0.1 °C"],
262
- ["Themperatur", "Setpoint temperature", "number", "level.temperature", true, true, "°C"],
262
+ ["Themperatur", "Setpoint temperature (legacy)", "number", "level.temperature", true, true, "°C"],
263
263
  ["tLimit", "Temperature limit raw", "number", "value.temperature", true, false, "0.1 °C"],
264
264
  ["flow", "Water flow raw", "number", "value", true, false, "0.1 l/min"],
265
265
  ["flowMax", "Maximum flow raw", "number", "level", true, true, "0.1 l/min"],
@@ -311,7 +311,7 @@ class ClageDsx extends utils.Adapter {
311
311
  ["timerPowerOn", "Heating duration", "number", "value.interval", false, "s"],
312
312
  ["timerLifetime", "Total operating time", "number", "value.interval", false, "s"],
313
313
  ["timerStandby", "Standby duration", "number", "value.interval", false, "s"],
314
- ["totalPowerConsumption", "Total energy consumption", "number", "value.power.consumption", false, "kWh"],
314
+ ["totalPowerConsumption", "Total energy consumption", "number", "value.energy.consumed", false, "kWh"],
315
315
  ["totalWaterConsumption", "Total water consumption", "number", "value", false, "l"],
316
316
  ];
317
317
  for (const [name, label, type, role, write, unit] of setup) {
@@ -328,12 +328,12 @@ class ClageDsx extends utils.Adapter {
328
328
 
329
329
  for (const [name, label, type, role, unit] of [
330
330
  ["lastId", "Last draw-off ID", "number", "value", ""],
331
- ["lastTime", "Last draw-off time", "string", "text", ""],
331
+ ["lastTime", "Last draw-off time", "string", "date", ""],
332
332
  ["lastDuration", "Last draw-off duration", "number", "value.interval", "s"],
333
- ["lastEnergy", "Last draw-off energy", "number", "value.power.consumption", "Wh"],
333
+ ["lastEnergy", "Last draw-off energy", "number", "value.energy.consumed", "Wh"],
334
334
  ["lastWater", "Last draw-off water", "number", "value", "l"],
335
335
  ["totalDuration", "Total draw-off duration", "number", "value.interval", "s"],
336
- ["totalEnergy", "Total draw-off energy", "number", "value.power.consumption", "Wh"],
336
+ ["totalEnergy", "Total draw-off energy", "number", "value.energy.consumed", "Wh"],
337
337
  ["totalWater", "Total draw-off water", "number", "value", "l"],
338
338
  ["historyJson", "Draw-off history", "string", "json", ""],
339
339
  ]) {
@@ -445,11 +445,22 @@ class ClageDsx extends utils.Adapter {
445
445
  const raw = response.data && response.data.devices && response.data.devices[0];
446
446
  const setup = (raw && raw.setup) || {};
447
447
  const transformed = {
448
- ...setup,
448
+ swVersion: setup.swVersion,
449
+ serialDevice: setup.serialDevice,
450
+ serialPowerUnit: setup.serialPowerUnit,
449
451
  flowMax: setup.flowMax,
452
+ loadShedding: setup.loadShedding,
450
453
  scaldProtection: toCelsius(setup.scaldProtection),
451
454
  sound: setup.sound === undefined ? undefined : Boolean(setup.sound),
455
+ fcpAddr: setup.fcpAddr,
456
+ powerCosts: setup.powerCosts,
452
457
  powerMax: setup.powerMax === undefined ? undefined : asNumber(setup.powerMax) * 0.15,
458
+ calValue: setup.calValue,
459
+ timerPowerOn: setup.timerPowerOn,
460
+ timerLifetime: setup.timerLifetime,
461
+ timerStandby: setup.timerStandby,
462
+ totalPowerConsumption: setup.totalPowerConsumption,
463
+ totalWaterConsumption: setup.totalWaterConsumption,
453
464
  };
454
465
  for (const [name, value] of Object.entries(transformed)) {
455
466
  if (value !== undefined && value !== null) {
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "iobroker.clage-dsx",
3
- "version": "0.0.7",
3
+ "version": "0.0.8",
4
4
  "description": "Control and monitor CLAGE water heaters through the Home Server API",
5
5
  "author": {
6
6
  "name": "TheBam",