iobroker.poolcontrol 0.1.0 → 0.1.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +5 -6
- package/admin/jsonConfig.json +0 -1
- package/io-package.json +14 -14
- package/lib/helpers/pumpHelper.js +15 -9
- package/package.json +1 -1
package/README.md
CHANGED
|
@@ -94,6 +94,11 @@ Funktionen können sich ändern, bitte regelmäßig den Changelog beachten.
|
|
|
94
94
|
## Changelog
|
|
95
95
|
Auszug, vollständige Liste siehe `io-package.json`:
|
|
96
96
|
|
|
97
|
+
### 0.1.1
|
|
98
|
+
- Fehlerbehebung: Endlosschleife zwischen `pump_switch` und externer Steckdose (`deviceId`) behoben, die bei bestimmten Smart-Steckdosen (z. B. Shelly, Tasmota, FritzDECT) auftreten konnte.
|
|
99
|
+
- Verbesserte Stabilität im `pumpHelper` durch interne Rückkopplungsprüfung.
|
|
100
|
+
- Keine Änderungen an bestehenden Konfigurationen erforderlich.
|
|
101
|
+
|
|
97
102
|
### 0.1.0
|
|
98
103
|
- Sprachausgabe über **E-Mail** hinzugefügt (konfigurierbar: Instanz, Empfänger, Betreff).
|
|
99
104
|
- Erweiterung der Instanz-Konfiguration im Tab „Sprachausgaben“.
|
|
@@ -131,12 +136,6 @@ Diese Datenpunkte sind besonders für **VIS/vis2, Alexa- oder Telegram-Ausgaben*
|
|
|
131
136
|
### 0.0.7
|
|
132
137
|
- Help-Datei (`help.md`) und erste README-Version hinzugefügt
|
|
133
138
|
|
|
134
|
-
### 0.0.6
|
|
135
|
-
- Verbrauchs- und Kostenberechnung mit externem kWh-Zähler
|
|
136
|
-
|
|
137
|
-
### 0.0.5
|
|
138
|
-
- Sprachausgabe über Alexa und Telegram
|
|
139
|
-
|
|
140
139
|
### 0.0.1
|
|
141
140
|
- initial release
|
|
142
141
|
|
package/admin/jsonConfig.json
CHANGED
package/io-package.json
CHANGED
|
@@ -1,8 +1,21 @@
|
|
|
1
1
|
{
|
|
2
2
|
"common": {
|
|
3
3
|
"name": "poolcontrol",
|
|
4
|
-
"version": "0.1.
|
|
4
|
+
"version": "0.1.1",
|
|
5
5
|
"news": {
|
|
6
|
+
"0.1.1": {
|
|
7
|
+
"en": "Fixed endless loop between pump_switch and deviceId for some smart sockets",
|
|
8
|
+
"de": "Endlosschleife zwischen pump_switch und Steckdose (deviceId) behoben",
|
|
9
|
+
"ru": "Исправлен бесконечный цикл между pump_switch и deviceId для некоторых умных розеток",
|
|
10
|
+
"pt": "Corrigido loop infinito entre pump_switch e deviceId em algumas tomadas inteligentes",
|
|
11
|
+
"nl": "Eindeloze lus tussen pump_switch en deviceId voor sommige slimme stopcontacten opgelost",
|
|
12
|
+
"fr": "Correction d'une boucle infinie entre pump_switch et deviceId pour certaines prises intelligentes",
|
|
13
|
+
"it": "Corretto loop infinito tra pump_switch e deviceId per alcune prese intelligenti",
|
|
14
|
+
"es": "Corregido bucle infinito entre pump_switch y deviceId en algunos enchufes inteligentes",
|
|
15
|
+
"pl": "Naprawiono nieskończoną pętlę między pump_switch a deviceId dla niektórych inteligentnych gniazdek",
|
|
16
|
+
"uk": "Виправлено нескінченний цикл між pump_switch і deviceId для деяких розумних розеток",
|
|
17
|
+
"zh-cn": "修复了某些智能插座中 pump_switch 与 deviceId 之间的无限循环"
|
|
18
|
+
},
|
|
6
19
|
"0.1.0": {
|
|
7
20
|
"en": "Added speech output via E-Mail (configurable: instance, recipient, subject)",
|
|
8
21
|
"de": "Sprachausgabe per E-Mail hinzugefügt (konfigurierbar: Instanz, Empfänger, Betreff)",
|
|
@@ -28,19 +41,6 @@
|
|
|
28
41
|
"pl": "Dodano rozszerzony przegląd statusu ze statystykami pompy, flagami systemowymi i podsumowaniem JSON",
|
|
29
42
|
"uk": "Додано розширений огляд статусу зі статистикою насоса, системними прапорцями та зведенням JSON",
|
|
30
43
|
"zh-cn": "新增扩展状态概览,包括泵统计、系统标志和 JSON 摘要"
|
|
31
|
-
},
|
|
32
|
-
"0.0.9": {
|
|
33
|
-
"en": "Made runtime, circulation, consumption/costs and temperature min/max states persistent across restarts",
|
|
34
|
-
"de": "Laufzeit-, Umwälz-, Verbrauch-/Kosten- und Temperatur-Min/Max-States bleiben jetzt über Neustarts erhalten",
|
|
35
|
-
"ru": "Состояния времени работы, циркуляции, потребления/стоимости и мин/макс температуры теперь сохраняются при перезапуске",
|
|
36
|
-
"pt": "Estados de tempo de execução, circulação, consumo/custos e temperatura min/máx agora persistem após reinicializações",
|
|
37
|
-
"nl": "Runtime-, circulatie-, verbruiks-/kosten- en temperatuur min/max-states blijven nu behouden bij herstart",
|
|
38
|
-
"fr": "Les états de durée, de circulation, de consommation/coûts et de température min/max persistent désormais après redémarrage",
|
|
39
|
-
"it": "Gli stati di runtime, circolazione, consumo/costi e temperatura min/max ora persistono ai riavvii",
|
|
40
|
-
"es": "Los estados de tiempo de ejecución, circulación, consumo/costos y temperatura min/máx ahora persisten tras reinicios",
|
|
41
|
-
"pl": "Stany czasu pracy, cyrkulacji, zużycia/kosztów i temp. min/max są teraz zachowane po restartach",
|
|
42
|
-
"uk": "Стан часу роботи, циркуляції, споживання/вартості та мін/макс температури тепер зберігаються після перезапусків",
|
|
43
|
-
"zh-cn": "运行时间、循环、消耗/成本和温度最小/最大状态现在在重启后保持"
|
|
44
44
|
}
|
|
45
45
|
},
|
|
46
46
|
"titleLang": {
|
|
@@ -112,22 +112,28 @@ const pumpHelper = {
|
|
|
112
112
|
return;
|
|
113
113
|
}
|
|
114
114
|
|
|
115
|
-
// 2) Fremde Steckdose hat sich verändert → in unseren bool-Schalter spiegeln
|
|
115
|
+
// 2) Fremde Steckdose hat sich verändert → in unseren bool-Schalter spiegeln (mit Loop-Schutz)
|
|
116
116
|
if (this.deviceId && id === this.deviceId) {
|
|
117
117
|
const val = !!state.val;
|
|
118
|
-
await this.adapter.
|
|
119
|
-
|
|
120
|
-
|
|
118
|
+
const current = (await this.adapter.getStateAsync('pump.pump_switch'))?.val;
|
|
119
|
+
if (current !== val) {
|
|
120
|
+
await this.adapter.setStateAsync('pump.pump_switch', { val, ack: true });
|
|
121
|
+
await this._updateStatus();
|
|
122
|
+
await this._checkErrorConditions();
|
|
123
|
+
}
|
|
121
124
|
return;
|
|
122
125
|
}
|
|
123
126
|
|
|
124
|
-
// 3) Eigene Pumpen-States geändert
|
|
127
|
+
// 3) Eigene Pumpen-States geändert (mit Loop-Schutz bei Rückschreiben)
|
|
125
128
|
if (id.endsWith('pump.mode') || id.endsWith('pump.pump_switch') || id.endsWith('pump.error')) {
|
|
126
129
|
if (id.endsWith('pump.pump_switch') && this.deviceId) {
|
|
127
|
-
await this.adapter.
|
|
128
|
-
|
|
129
|
-
|
|
130
|
-
|
|
130
|
+
const current = (await this.adapter.getForeignStateAsync(this.deviceId))?.val;
|
|
131
|
+
if (current !== !!state.val) {
|
|
132
|
+
await this.adapter.setForeignStateAsync(this.deviceId, {
|
|
133
|
+
val: !!state.val,
|
|
134
|
+
ack: false,
|
|
135
|
+
});
|
|
136
|
+
}
|
|
131
137
|
}
|
|
132
138
|
|
|
133
139
|
await this._updateStatus();
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "iobroker.poolcontrol",
|
|
3
|
-
"version": "0.1.
|
|
3
|
+
"version": "0.1.1",
|
|
4
4
|
"description": "Steuerung & Automatisierung für den Pool (Pumpe, Heizung, Ventile, Sensoren).",
|
|
5
5
|
"author": "DasBo1975 <dasbo1975@outlook.de>",
|
|
6
6
|
"homepage": "https://github.com/DasBo1975/ioBroker.poolcontrol",
|