iobroker.clage-dsx 0.0.2 → 0.0.7

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/LICENSE CHANGED
@@ -1,6 +1,6 @@
1
1
  MIT License
2
2
 
3
- Copyright (c) 2021 TheBam <elektrobam@gmx.de>
3
+ Copyright (c) 2026 TheBam <elektrobam@gmx.de>
4
4
 
5
5
  Permission is hereby granted, free of charge, to any person obtaining a copy
6
6
  of this software and associated documentation files (the "Software"), to deal
package/README.md CHANGED
@@ -1,71 +1,102 @@
1
- ![Logo](admin/clage-dsx.png)
2
1
  # ioBroker.clage-dsx
3
2
 
3
+ ![CLAGE DSX logo](admin/clage-dsx.png)
4
+
4
5
  [![NPM version](https://img.shields.io/npm/v/iobroker.clage-dsx.svg)](https://www.npmjs.com/package/iobroker.clage-dsx)
5
6
  [![Downloads](https://img.shields.io/npm/dm/iobroker.clage-dsx.svg)](https://www.npmjs.com/package/iobroker.clage-dsx)
6
- ![Number of Installations (latest)](https://iobroker.live/badges/clage-dsx-installed.svg)
7
- ![Number of Installations (stable)](https://iobroker.live/badges/clage-dsx-stable.svg)
8
- [![Dependency Status](https://img.shields.io/david/TheBam1990/iobroker.clage-dsx.svg)](https://david-dm.org/TheBam1990/iobroker.clage-dsx)
7
+ [![Test and Release](https://github.com/TheBam1990/ioBroker.clage-dsx/actions/workflows/test-and-release.yml/badge.svg)](https://github.com/TheBam1990/ioBroker.clage-dsx/actions/workflows/test-and-release.yml)
8
+
9
+ [Deutsche Dokumentation](README_DE.md)
10
+
11
+ ## Description
12
+
13
+ This adapter connects ioBroker to a local [CLAGE](https://www.clage.com/) Home Server and its registered instantaneous water heaters. Communication uses the HTTPS API in the local network; no cloud service is required.
14
+
15
+ The implementation is based on the included [CLAGE Home Server API specification v1.3.4](CLAGE%20HomeServer%20API%20v1.3.4.pdf).
16
+
17
+ ## Requirements
18
+
19
+ - ioBroker with Node.js 22 or newer
20
+ - CLAGE Home Server reachable from the ioBroker host
21
+ - Home Server API user name and password
22
+ - HTTPS access to the Home Server
23
+
24
+ ## Configuration
9
25
 
10
- [![NPM](https://nodei.co/npm/iobroker.clage-dsx.png?downloads=true)](https://nodei.co/npm/iobroker.clage-dsx/)
26
+ Open the instance settings and enter:
11
27
 
12
- **Tests:** ![Test and Release](https://github.com/TheBam1990/ioBroker.clage-dsx/workflows/Test%20and%20Release/badge.svg)
28
+ 1. **CLAGE Home Server IP address**, for example `192.168.2.35` (without `https://`)
29
+ 2. **API user name**, for example `admin`
30
+ 3. **API password**, for example `geheim`
13
31
 
14
- ## clage-dsx adapter for ioBroker
32
+ All three fields are required. The historical native configuration key for the user name is called `port`; this is retained for compatibility with existing installations.
15
33
 
16
- connection to clage dsx wather Heater
34
+ The values `admin` and `geheim` are examples from the CLAGE API documentation. Use the API credentials configured on your own Home Server; do not use the example password unless it is actually configured there.
17
35
 
18
- ## Developer manual
19
- This section is intended for the developer. It can be deleted later
36
+ The Home Server normally uses a self-signed TLS certificate. The adapter therefore accepts the local certificate when connecting directly to the configured device.
20
37
 
21
- ### Getting started
38
+ ## Current functionality
22
39
 
23
- For German https://github.com/TheBam1990/ioBroker.clage-dsx/blob/master/README_DE.md
40
+ For every registered CLAGE device, the adapter creates states for:
24
41
 
25
- API Doku: https://github.com/TheBam1990/ioBroker.clage-dsx/blob/master/CLAGE%20HomeServer%20API%20v1.3.4.pdf
42
+ - identity, connection state, RSSI, LQI, API access mask and last radio activity
43
+ - setpoint, temperature limit, inlet/outlet temperatures and all four temperature presets
44
+ - flow, flow limit, valve position, raw and calculated power, heating state and errors
45
+ - firmware and serial numbers, power-unit information and operating-time counters
46
+ - total consumption plus the last draw-off cycle and consumption history as JSON
47
+ - current error plus error history as JSON
48
+ - Home Server version, identity, radio channel, address and advertised services
49
+ - all timers, both globally and filtered per device
26
50
 
27
- Connekting infos JS: https://github.com/TheBam1990/ioBroker.clage-dsx/blob/master/connektion.md
51
+ Writable states:
28
52
 
29
- Simply enter the IP address of your DSX server and enter your username and password.
30
- Attention, all fields must be filled in otherwise it won't work.
53
+ - `Setpoint`: API value in tenths of a degree Celsius, e.g. `450` = 45.0 °C
54
+ - `Themperatur`: temperature in °C; retained with its historical spelling for compatibility
55
+ - `flowMax`: flow limit in tenths of a litre per minute; special API values include `253` (ECO) and `254` (AUTO)
56
+ - `Name`: device name
57
+ - `setup.flowMax`, `setup.loadShedding`, `setup.scaldProtection` and `setup.sound`
58
+ - `timers.createJson`, `timers.updateJson` and `timers.deleteId` for controlled timer management
31
59
 
32
- The Setpoint value is the temperature with a value without commer (Temp / 10)
60
+ `info.connection` indicates whether the Home Server is reachable and accepts the configured credentials.
33
61
 
34
- The FlowMax value, which ensures the flow in the device, can also be changed.
35
- As well as a name can also be entered
62
+ The adapter checks the API access mask before writes. Setpoint changes are debounced by two seconds, active devices are refreshed more frequently, and the device list uses sequential HTTP long polling by default. Intervals, long polling and the consumption-history period (30 days by default) can be adjusted in the adapter configuration.
36
63
 
64
+ ## Timer JSON
37
65
 
66
+ Create a timer by writing JSON such as the following to `timers.createJson`:
67
+
68
+ ```json
69
+ {"type":0,"weekdays":127,"start":"06:00","stop":"07:00","deviceId":"A001FF0034","setpoint":450}
70
+ ```
71
+
72
+ For updates, write the same structure including a numeric `id` to `timers.updateJson`. To delete one timer, write its numeric ID to `timers.deleteId`. Destructive bulk operations, device unregistering and radio-address changes are intentionally not exposed.
73
+
74
+ ## Troubleshooting
75
+
76
+ - Verify that the IP address contains no protocol prefix or path.
77
+ - Verify the API credentials in the CLAGE Home Server configuration.
78
+ - Ensure that TCP port 443 is reachable from the ioBroker host.
79
+ - HTTP status `401` means invalid credentials; `403` means insufficient API permissions.
80
+ - A device can be registered but temporarily unavailable. The API reports this as `404`, `410` or a negative device error code.
38
81
 
39
82
  ## Changelog
40
83
 
41
- ### 0.0.2
84
+ ### 0.0.7
42
85
 
43
- * Updated runtime dependencies for current ioBroker and Node.js versions
44
- * Migrated the administration page to responsive JSON Config
45
- * Added current ioBroker package metadata and CI tests for Node.js 20, 22 and 24
86
+ - Corrected state roles for timestamps, version information and the numeric bus ID
46
87
 
47
- ### 0.0.1
48
- * (TheBam) initial release
88
+ ### 0.0.6
89
+
90
+ - Added live temperatures, presets, valve position, calculated power and radio diagnostics
91
+ - Added setup, consumption and error history data
92
+ - Added permission-checked setup writes and timer management
93
+ - Added Home Server information, adaptive polling and sequential HTTP long polling
94
+ - Added configurable polling intervals
95
+
96
+ [Older changelog entries](CHANGELOG_OLD.md)
49
97
 
50
98
  ## License
51
- MIT License
52
-
53
- Copyright (c) 2023 TheBam <elektrobam@gmx.de>
54
-
55
- Permission is hereby granted, free of charge, to any person obtaining a copy
56
- of this software and associated documentation files (the "Software"), to deal
57
- in the Software without restriction, including without limitation the rights
58
- to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
59
- copies of the Software, and to permit persons to whom the Software is
60
- furnished to do so, subject to the following conditions:
61
-
62
- The above copyright notice and this permission notice shall be included in all
63
- copies or substantial portions of the Software.
64
-
65
- THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
66
- IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
67
- FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
68
- AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
69
- LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
70
- OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
71
- SOFTWARE.
99
+
100
+ Copyright (c) 2026 TheBam <elektrobam@gmx.de>
101
+
102
+ MIT License. See [LICENSE](LICENSE).
package/README_DE.md CHANGED
@@ -1,63 +1,100 @@
1
- ![Logo](admin/clage-dsx.png)
2
1
  # ioBroker.clage-dsx
3
2
 
4
- [![NPM version](https://img.shields.io/npm/v/iobroker.clage-dsx.svg)](https://www.npmjs.com/package/iobroker.clage-dsx)
3
+ ![CLAGE-DSX-Logo](admin/clage-dsx.png)
4
+
5
+ [![NPM-Version](https://img.shields.io/npm/v/iobroker.clage-dsx.svg)](https://www.npmjs.com/package/iobroker.clage-dsx)
5
6
  [![Downloads](https://img.shields.io/npm/dm/iobroker.clage-dsx.svg)](https://www.npmjs.com/package/iobroker.clage-dsx)
6
- ![Number of Installations (latest)](https://iobroker.live/badges/clage-dsx-installed.svg)
7
- ![Number of Installations (stable)](https://iobroker.live/badges/clage-dsx-stable.svg)
8
- [![Dependency Status](https://img.shields.io/david/TheBam1990/iobroker.clage-dsx.svg)](https://david-dm.org/TheBam1990/iobroker.clage-dsx)
7
+ [![Test and Release](https://github.com/TheBam1990/ioBroker.clage-dsx/actions/workflows/test-and-release.yml/badge.svg)](https://github.com/TheBam1990/ioBroker.clage-dsx/actions/workflows/test-and-release.yml)
8
+
9
+ ## Beschreibung
10
+
11
+ Der Adapter verbindet ioBroker mit einem lokalen [CLAGE](https://www.clage.de/) Home Server und den dort angemeldeten Durchlauferhitzern. Die Kommunikation erfolgt über die HTTPS-API im lokalen Netzwerk; ein Cloud-Dienst wird nicht benötigt.
12
+
13
+ Grundlage ist die mitgelieferte [CLAGE Home Server API-Spezifikation v1.3.4](CLAGE%20HomeServer%20API%20v1.3.4.pdf).
14
+
15
+ ## Voraussetzungen
16
+
17
+ - ioBroker mit Node.js 22 oder neuer
18
+ - Der CLAGE Home Server muss vom ioBroker-Host erreichbar sein
19
+ - Benutzername und Passwort eines Home-Server-API-Kontos
20
+ - HTTPS-Zugriff auf den Home Server
21
+
22
+ ## Konfiguration
23
+
24
+ In den Einstellungen der Instanz werden drei Werte eingetragen:
25
+
26
+ 1. **IP-Adresse des CLAGE Home Servers**, zum Beispiel `192.168.2.35` (ohne `https://`)
27
+ 2. **API-Benutzername**, zum Beispiel `admin`
28
+ 3. **API-Passwort**, zum Beispiel `geheim`
29
+
30
+ Alle drei Felder sind erforderlich. Der historische native Konfigurationsschlüssel für den Benutzernamen heißt `port`; er bleibt zur Kompatibilität mit bestehenden Installationen erhalten.
31
+
32
+ Die Werte `admin` und `geheim` sind Beispiele aus der CLAGE-API-Dokumentation. Es müssen die tatsächlich auf dem eigenen Home Server eingerichteten API-Zugangsdaten verwendet werden; das Beispielpasswort funktioniert nur, wenn es dort genauso konfiguriert wurde.
33
+
34
+ Der Home Server verwendet normalerweise ein selbstsigniertes TLS-Zertifikat. Der Adapter akzeptiert dieses lokale Zertifikat bei der direkten Verbindung mit dem konfigurierten Gerät.
35
+
36
+ ## Aktueller Funktionsumfang
37
+
38
+ Für jedes angemeldete CLAGE-Gerät legt der Adapter Datenpunkte an für:
9
39
 
10
- [![NPM](https://nodei.co/npm/iobroker.clage-dsx.png?downloads=true)](https://nodei.co/npm/iobroker.clage-dsx/)
40
+ - Identität, Verbindungsstatus, RSSI, LQI, API-Rechtemaske und letzte Funkaktivität
41
+ - Sollwert, Temperaturgrenze, Ein-/Auslauftemperatur und alle vier Temperaturspeicher
42
+ - Durchfluss, Durchflussgrenze, Ventilstellung, Rohwert und berechnete Leistung, Heizstatus und Fehler
43
+ - Firmware- und Seriennummern, Leistungsteilinformationen und Betriebszeitzähler
44
+ - Gesamtverbrauch sowie letzten Zapfvorgang und Verbrauchshistorie als JSON
45
+ - aktuellen Fehler und Fehlerhistorie als JSON
46
+ - Version, Identität, Funkkanal, Adresse und angebotene Dienste des Home Servers
47
+ - alle Timer, sowohl global als auch je Gerät gefiltert
11
48
 
12
- **Tests:** ![Test and Release](https://github.com/TheBam1990/ioBroker.clage-dsx/workflows/Test%20and%20Release/badge.svg)
49
+ Schreibbare Datenpunkte:
13
50
 
14
- ## clage-dsx adapter for ioBroker
51
+ - `Setpoint`: API-Wert in Zehntelgrad, zum Beispiel `450` = 45,0 °C
52
+ - `Themperatur`: Temperatur in °C; die historische Schreibweise bleibt aus Kompatibilitätsgründen erhalten
53
+ - `flowMax`: Durchflussgrenze in 0,1 l/min; besondere API-Werte sind `253` (ECO) und `254` (AUTO)
54
+ - `Name`: Gerätename
55
+ - `setup.flowMax`, `setup.loadShedding`, `setup.scaldProtection` und `setup.sound`
56
+ - `timers.createJson`, `timers.updateJson` und `timers.deleteId` zur kontrollierten Timerverwaltung
15
57
 
16
- Anbindung für Clage Durchlauferhitzer DSX Server
58
+ `info.connection` zeigt an, ob der Home Server erreichbar ist und die eingetragenen Zugangsdaten akzeptiert.
17
59
 
60
+ Der Adapter prüft vor Schreibzugriffen die API-Rechtemaske. Sollwertänderungen werden zwei Sekunden gebündelt, aktive Geräte häufiger aktualisiert und die Geräteliste standardmäßig mit sequenziellem HTTP Long Polling abgefragt. Intervalle, Long Polling und der Zeitraum der Verbrauchshistorie (standardmäßig 30 Tage) sind in der Adapterkonfiguration einstellbar.
18
61
 
19
- ### Getting started
62
+ ## Timer-JSON
20
63
 
21
- Einfach die IP adresse ihres DSX Server eintragen sowie Benutzername und Passwort eingeben.
22
- Achtung es müssen alle felder ausgefüllt sein sonst geht es nicht.
64
+ Ein Timer kann durch Schreiben eines JSON wie diesem auf `timers.createJson` angelegt werden:
23
65
 
24
- Der Wert Setpoint ist die Temperatur mit einem Wert ohne kommer (Temp /10)
66
+ ```json
67
+ {"type":0,"weekdays":127,"start":"06:00","stop":"07:00","deviceId":"A001FF0034","setpoint":450}
68
+ ```
25
69
 
26
- Ebenso kann der Wert FlowMax verändert werden welcher für den Durchfluss im Gerät sorgt.
27
- Sowie ein Name kann auch eingegeben werden
70
+ Für Änderungen wird derselbe Aufbau mit numerischer `id` auf `timers.updateJson` geschrieben. Zum Löschen eines einzelnen Timers wird dessen numerische ID auf `timers.deleteId` geschrieben. Gefährliche Sammeloperationen, das Abmelden von Geräten und Änderungen der Funkadresse werden bewusst nicht angeboten.
28
71
 
72
+ ## Fehlerbehebung
29
73
 
74
+ - Die IP-Adresse darf kein Protokoll und keinen Pfad enthalten.
75
+ - API-Zugangsdaten in der Konfiguration des CLAGE Home Servers prüfen.
76
+ - TCP-Port 443 muss vom ioBroker-Host erreichbar sein.
77
+ - HTTP-Status `401` bedeutet ungültige Zugangsdaten; `403` bedeutet unzureichende API-Rechte.
78
+ - Ein Gerät kann angemeldet, aber vorübergehend nicht erreichbar sein. Die API meldet dies mit `404`, `410` oder einem negativen Gerätefehlercode.
30
79
 
31
80
  ## Changelog
32
81
 
33
- ### 0.0.2
82
+ ### 0.0.7
34
83
 
35
- * Laufzeitabhaengigkeiten fuer aktuelle ioBroker- und Node.js-Versionen aktualisiert
36
- * Administrationsoberflaeche auf responsive JSON Config umgestellt
37
- * Aktuelle ioBroker-Paketmetadaten und CI-Tests fuer Node.js 20, 22 und 24 ergaenzt
84
+ - Datenpunktrollen für Zeitstempel, Versionsinformationen und die numerische Bus-ID korrigiert
38
85
 
39
- ### 0.0.1
40
- * (TheBam) initial release
86
+ ### 0.0.6
41
87
 
42
- ## License
43
- MIT License
88
+ - Live-Temperaturen, Temperaturspeicher, Ventilstellung, berechnete Leistung und Funkdiagnose ergänzt
89
+ - Geräteeinstellungen, Verbrauchs- und Fehlerhistorie ergänzt
90
+ - Rechtegeprüfte Schreibzugriffe auf Einstellungen und Timerverwaltung ergänzt
91
+ - Home-Server-Informationen, adaptive Abfrage und sequenzielles HTTP Long Polling ergänzt
92
+ - Abfrageintervalle konfigurierbar gemacht
44
93
 
45
- Copyright (c) 2023 TheBam <elektrobam@gmx.de>
94
+ [Ältere Changelog-Einträge](CHANGELOG_OLD.md)
46
95
 
47
- Permission is hereby granted, free of charge, to any person obtaining a copy
48
- of this software and associated documentation files (the "Software"), to deal
49
- in the Software without restriction, including without limitation the rights
50
- to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
51
- copies of the Software, and to permit persons to whom the Software is
52
- furnished to do so, subject to the following conditions:
96
+ ## Lizenz
53
97
 
54
- The above copyright notice and this permission notice shall be included in all
55
- copies or substantial portions of the Software.
98
+ Copyright (c) 2026 TheBam <elektrobam@gmx.de>
56
99
 
57
- THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
58
- IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
59
- FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
60
- AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
61
- LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
62
- OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
63
- SOFTWARE.
100
+ MIT-Lizenz. Siehe [LICENSE](LICENSE).
@@ -0,0 +1,13 @@
1
+ {
2
+ "Enter the CLAGE Home Server address and its API credentials. All three fields are required.": "Adresse des CLAGE Home Servers und dessen API-Zugangsdaten eingeben. Alle drei Felder werden benötigt.",
3
+ "CLAGE Home Server IP address": "IP-Adresse des CLAGE Home Servers",
4
+ "API user name": "API-Benutzername",
5
+ "The historical configuration key is named port, but this value is the user name.": "Der historische Konfigurationsschlüssel heißt port, der Wert ist jedoch der Benutzername.",
6
+ "API password": "API-Passwort",
7
+ "Polling": "Abfrageintervalle",
8
+ "Active-device interval (ms)": "Intervall bei Wasserfluss (ms)",
9
+ "Idle-device interval (ms)": "Intervall im Ruhezustand (ms)",
10
+ "History/setup interval (ms)": "Intervall für Historie/Einstellungen (ms)",
11
+ "Consumption history (days)": "Verbrauchshistorie (Tage)",
12
+ "Use device-list long polling": "Long Polling für die Geräteliste verwenden"
13
+ }
@@ -0,0 +1,13 @@
1
+ {
2
+ "Enter the CLAGE Home Server address and its API credentials. All three fields are required.": "Enter the CLAGE Home Server address and its API credentials. All three fields are required.",
3
+ "CLAGE Home Server IP address": "CLAGE Home Server IP address",
4
+ "API user name": "API user name",
5
+ "The historical configuration key is named port, but this value is the user name.": "The historical configuration key is named port, but this value is the user name.",
6
+ "API password": "API password",
7
+ "Polling": "Polling",
8
+ "Active-device interval (ms)": "Active-device interval (ms)",
9
+ "Idle-device interval (ms)": "Idle-device interval (ms)",
10
+ "History/setup interval (ms)": "History/setup interval (ms)",
11
+ "Consumption history (days)": "Consumption history (days)",
12
+ "Use device-list long polling": "Use device-list long polling"
13
+ }
@@ -0,0 +1,13 @@
1
+ {
2
+ "Enter the CLAGE Home Server address and its API credentials. All three fields are required.": "Introduzca la dirección del CLAGE Home Server y sus credenciales de API. Los tres campos son obligatorios.",
3
+ "CLAGE Home Server IP address": "Dirección IP del CLAGE Home Server",
4
+ "API user name": "Nombre de usuario de la API",
5
+ "The historical configuration key is named port, but this value is the user name.": "La clave histórica se llama port, pero este valor es el nombre de usuario.",
6
+ "API password": "Contraseña de la API",
7
+ "Polling": "Intervalos de consulta",
8
+ "Active-device interval (ms)": "Intervalo del dispositivo activo (ms)",
9
+ "Idle-device interval (ms)": "Intervalo en reposo (ms)",
10
+ "History/setup interval (ms)": "Intervalo de historial/ajustes (ms)",
11
+ "Consumption history (days)": "Historial de consumo (días)",
12
+ "Use device-list long polling": "Usar long polling para la lista de dispositivos"
13
+ }
@@ -0,0 +1,13 @@
1
+ {
2
+ "Enter the CLAGE Home Server address and its API credentials. All three fields are required.": "Saisissez l’adresse du CLAGE Home Server et ses identifiants API. Les trois champs sont obligatoires.",
3
+ "CLAGE Home Server IP address": "Adresse IP du CLAGE Home Server",
4
+ "API user name": "Nom d’utilisateur API",
5
+ "The historical configuration key is named port, but this value is the user name.": "La clé historique s’appelle port, mais cette valeur est le nom d’utilisateur.",
6
+ "API password": "Mot de passe API",
7
+ "Polling": "Intervalles d’interrogation",
8
+ "Active-device interval (ms)": "Intervalle appareil actif (ms)",
9
+ "Idle-device interval (ms)": "Intervalle au repos (ms)",
10
+ "History/setup interval (ms)": "Intervalle historique/réglages (ms)",
11
+ "Consumption history (days)": "Historique de consommation (jours)",
12
+ "Use device-list long polling": "Utiliser le long polling de la liste des appareils"
13
+ }
@@ -0,0 +1,13 @@
1
+ {
2
+ "Enter the CLAGE Home Server address and its API credentials. All three fields are required.": "Inserisci l’indirizzo del CLAGE Home Server e le credenziali API. Tutti e tre i campi sono obbligatori.",
3
+ "CLAGE Home Server IP address": "Indirizzo IP del CLAGE Home Server",
4
+ "API user name": "Nome utente API",
5
+ "The historical configuration key is named port, but this value is the user name.": "La chiave storica si chiama port, ma questo valore è il nome utente.",
6
+ "API password": "Password API",
7
+ "Polling": "Intervalli di polling",
8
+ "Active-device interval (ms)": "Intervallo dispositivo attivo (ms)",
9
+ "Idle-device interval (ms)": "Intervallo inattivo (ms)",
10
+ "History/setup interval (ms)": "Intervallo cronologia/impostazioni (ms)",
11
+ "Consumption history (days)": "Cronologia dei consumi (giorni)",
12
+ "Use device-list long polling": "Usa long polling per l’elenco dispositivi"
13
+ }
@@ -0,0 +1,13 @@
1
+ {
2
+ "Enter the CLAGE Home Server address and its API credentials. All three fields are required.": "Voer het adres van de CLAGE Home Server en de API-inloggegevens in. Alle drie de velden zijn verplicht.",
3
+ "CLAGE Home Server IP address": "IP-adres van de CLAGE Home Server",
4
+ "API user name": "API-gebruikersnaam",
5
+ "The historical configuration key is named port, but this value is the user name.": "De historische sleutel heet port, maar deze waarde is de gebruikersnaam.",
6
+ "API password": "API-wachtwoord",
7
+ "Polling": "Polling-intervallen",
8
+ "Active-device interval (ms)": "Interval actief apparaat (ms)",
9
+ "Idle-device interval (ms)": "Interval in rust (ms)",
10
+ "History/setup interval (ms)": "Interval historie/instellingen (ms)",
11
+ "Consumption history (days)": "Verbruiksgeschiedenis (dagen)",
12
+ "Use device-list long polling": "Long polling voor apparatenlijst gebruiken"
13
+ }
@@ -0,0 +1,13 @@
1
+ {
2
+ "Enter the CLAGE Home Server address and its API credentials. All three fields are required.": "Wprowadź adres CLAGE Home Server i dane logowania API. Wszystkie trzy pola są wymagane.",
3
+ "CLAGE Home Server IP address": "Adres IP serwera CLAGE Home Server",
4
+ "API user name": "Nazwa użytkownika API",
5
+ "The historical configuration key is named port, but this value is the user name.": "Historyczny klucz nazywa się port, ale ta wartość jest nazwą użytkownika.",
6
+ "API password": "Hasło API",
7
+ "Polling": "Interwały odpytywania",
8
+ "Active-device interval (ms)": "Interwał aktywnego urządzenia (ms)",
9
+ "Idle-device interval (ms)": "Interwał bezczynności (ms)",
10
+ "History/setup interval (ms)": "Interwał historii/ustawień (ms)",
11
+ "Consumption history (days)": "Historia zużycia (dni)",
12
+ "Use device-list long polling": "Użyj long pollingu listy urządzeń"
13
+ }
@@ -0,0 +1,13 @@
1
+ {
2
+ "Enter the CLAGE Home Server address and its API credentials. All three fields are required.": "Introduza o endereço do CLAGE Home Server e as credenciais da API. Os três campos são obrigatórios.",
3
+ "CLAGE Home Server IP address": "Endereço IP do CLAGE Home Server",
4
+ "API user name": "Nome de utilizador da API",
5
+ "The historical configuration key is named port, but this value is the user name.": "A chave histórica chama-se port, mas este valor é o nome de utilizador.",
6
+ "API password": "Palavra-passe da API",
7
+ "Polling": "Intervalos de consulta",
8
+ "Active-device interval (ms)": "Intervalo do dispositivo ativo (ms)",
9
+ "Idle-device interval (ms)": "Intervalo em repouso (ms)",
10
+ "History/setup interval (ms)": "Intervalo de histórico/configuração (ms)",
11
+ "Consumption history (days)": "Histórico de consumo (dias)",
12
+ "Use device-list long polling": "Usar long polling da lista de dispositivos"
13
+ }
@@ -0,0 +1,13 @@
1
+ {
2
+ "Enter the CLAGE Home Server address and its API credentials. All three fields are required.": "Введите адрес CLAGE Home Server и учетные данные API. Все три поля обязательны.",
3
+ "CLAGE Home Server IP address": "IP-адрес CLAGE Home Server",
4
+ "API user name": "Имя пользователя API",
5
+ "The historical configuration key is named port, but this value is the user name.": "Исторический ключ называется port, но это имя пользователя.",
6
+ "API password": "Пароль API",
7
+ "Polling": "Интервалы опроса",
8
+ "Active-device interval (ms)": "Интервал активного устройства (мс)",
9
+ "Idle-device interval (ms)": "Интервал ожидания (мс)",
10
+ "History/setup interval (ms)": "Интервал истории/настроек (мс)",
11
+ "Consumption history (days)": "История потребления (дни)",
12
+ "Use device-list long polling": "Использовать long polling списка устройств"
13
+ }
@@ -0,0 +1,13 @@
1
+ {
2
+ "Enter the CLAGE Home Server address and its API credentials. All three fields are required.": "Введіть адресу CLAGE Home Server та облікові дані API. Усі три поля обов’язкові.",
3
+ "CLAGE Home Server IP address": "IP-адреса CLAGE Home Server",
4
+ "API user name": "Ім’я користувача API",
5
+ "The historical configuration key is named port, but this value is the user name.": "Історичний ключ називається port, але це ім’я користувача.",
6
+ "API password": "Пароль API",
7
+ "Polling": "Інтервали опитування",
8
+ "Active-device interval (ms)": "Інтервал активного пристрою (мс)",
9
+ "Idle-device interval (ms)": "Інтервал очікування (мс)",
10
+ "History/setup interval (ms)": "Інтервал історії/налаштувань (мс)",
11
+ "Consumption history (days)": "Історія споживання (дні)",
12
+ "Use device-list long polling": "Використовувати long polling списку пристроїв"
13
+ }
@@ -0,0 +1,13 @@
1
+ {
2
+ "Enter the CLAGE Home Server address and its API credentials. All three fields are required.": "请输入 CLAGE Home Server 地址及其 API 凭据。三个字段均为必填项。",
3
+ "CLAGE Home Server IP address": "CLAGE Home Server IP 地址",
4
+ "API user name": "API 用户名",
5
+ "The historical configuration key is named port, but this value is the user name.": "历史配置键名为 port,但该值实际是用户名。",
6
+ "API password": "API 密码",
7
+ "Polling": "轮询间隔",
8
+ "Active-device interval (ms)": "活动设备间隔(毫秒)",
9
+ "Idle-device interval (ms)": "空闲设备间隔(毫秒)",
10
+ "History/setup interval (ms)": "历史/设置间隔(毫秒)",
11
+ "Consumption history (days)": "用量历史(天)",
12
+ "Use device-list long polling": "使用设备列表长轮询"
13
+ }
@@ -1,31 +1,16 @@
1
1
  {
2
2
  "type": "panel",
3
- "i18n": false,
3
+ "i18n": true,
4
4
  "items": {
5
5
  "intro": {
6
6
  "type": "infoBox",
7
- "text": {
8
- "en": "Enter the CLAGE Home Server address and its API credentials. All three fields are required.",
9
- "de": "Adresse des CLAGE Home Servers und dessen API-Zugangsdaten eingeben. Alle drei Felder werden benoetigt."
10
- },
7
+ "text": "Enter the CLAGE Home Server address and its API credentials. All three fields are required.",
11
8
  "newLine": true,
12
9
  "xs": 12
13
10
  },
14
11
  "adresse": {
15
12
  "type": "ip",
16
- "label": {
17
- "en": "CLAGE Home Server IP address",
18
- "de": "IP-Adresse des CLAGE Home Servers",
19
- "ru": "IP-адрес CLAGE Home Server",
20
- "pt": "Endereço IP do CLAGE Home Server",
21
- "nl": "IP-adres van de CLAGE Home Server",
22
- "fr": "Adresse IP du CLAGE Home Server",
23
- "it": "Indirizzo IP del CLAGE Home Server",
24
- "es": "Dirección IP del CLAGE Home Server",
25
- "pl": "Adres IP serwera CLAGE Home Server",
26
- "uk": "IP-адреса CLAGE Home Server",
27
- "zh-cn": "CLAGE Home Server IP 地址"
28
- },
13
+ "label": "CLAGE Home Server IP address",
29
14
  "listenOnAllPorts": false,
30
15
  "onlyIp4": true,
31
16
  "noInternal": false,
@@ -37,32 +22,8 @@
37
22
  },
38
23
  "port": {
39
24
  "type": "text",
40
- "label": {
41
- "en": "API user name",
42
- "de": "API-Benutzername",
43
- "ru": "Имя пользователя API",
44
- "pt": "Nome de utilizador da API",
45
- "nl": "API-gebruikersnaam",
46
- "fr": "Nom d'utilisateur API",
47
- "it": "Nome utente API",
48
- "es": "Nombre de usuario de la API",
49
- "pl": "Nazwa użytkownika API",
50
- "uk": "Ім'я користувача API",
51
- "zh-cn": "API 用户名"
52
- },
53
- "help": {
54
- "en": "The historical configuration key is named port, but this value is the user name.",
55
- "de": "Der historische Konfigurationsschluessel heisst port, der Wert ist jedoch der Benutzername.",
56
- "ru": "Исторический ключ называется port, но это имя пользователя.",
57
- "pt": "A chave histórica chama-se port, mas este valor é o nome de utilizador.",
58
- "nl": "De historische sleutel heet port, maar deze waarde is de gebruikersnaam.",
59
- "fr": "La clé historique s'appelle port, mais cette valeur est le nom d'utilisateur.",
60
- "it": "La chiave storica si chiama port, ma questo valore è il nome utente.",
61
- "es": "La clave histórica se llama port, pero este valor es el nombre de usuario.",
62
- "pl": "Historyczny klucz nazywa się port, ale ta wartość jest nazwą użytkownika.",
63
- "uk": "Історичний ключ називається port, але це ім'я користувача.",
64
- "zh-cn": "历史配置键名为 port,但该值实际是用户名。"
65
- },
25
+ "label": "API user name",
26
+ "help": "The historical configuration key is named port, but this value is the user name.",
66
27
  "xs": 12,
67
28
  "sm": 6,
68
29
  "md": 6,
@@ -71,25 +32,69 @@
71
32
  },
72
33
  "apiKey": {
73
34
  "type": "password",
74
- "label": {
75
- "en": "API password",
76
- "de": "API-Passwort",
77
- "ru": "Пароль API",
78
- "pt": "Palavra-passe da API",
79
- "nl": "API-wachtwoord",
80
- "fr": "Mot de passe API",
81
- "it": "Password API",
82
- "es": "Contraseña de la API",
83
- "pl": "Hasło API",
84
- "uk": "Пароль API",
85
- "zh-cn": "API 密码"
86
- },
35
+ "label": "API password",
87
36
  "visible": true,
88
37
  "xs": 12,
89
38
  "sm": 6,
90
39
  "md": 6,
91
40
  "lg": 6,
92
41
  "xl": 6
42
+ },
43
+ "advancedInfo": {
44
+ "type": "header",
45
+ "text": "Polling",
46
+ "size": 2,
47
+ "newLine": true,
48
+ "xs": 12
49
+ },
50
+ "activePollMs": {
51
+ "type": "number",
52
+ "label": "Active-device interval (ms)",
53
+ "min": 1000,
54
+ "xs": 12,
55
+ "sm": 6,
56
+ "md": 3,
57
+ "lg": 3,
58
+ "xl": 3
59
+ },
60
+ "idlePollMs": {
61
+ "type": "number",
62
+ "label": "Idle-device interval (ms)",
63
+ "min": 5000,
64
+ "xs": 12,
65
+ "sm": 6,
66
+ "md": 3,
67
+ "lg": 3,
68
+ "xl": 3
69
+ },
70
+ "detailsPollMs": {
71
+ "type": "number",
72
+ "label": "History/setup interval (ms)",
73
+ "min": 60000,
74
+ "xs": 12,
75
+ "sm": 6,
76
+ "md": 3,
77
+ "lg": 3,
78
+ "xl": 3
79
+ },
80
+ "historyDays": {
81
+ "type": "number",
82
+ "label": "Consumption history (days)",
83
+ "min": 1,
84
+ "xs": 12,
85
+ "sm": 6,
86
+ "md": 3,
87
+ "lg": 3,
88
+ "xl": 3
89
+ },
90
+ "longPolling": {
91
+ "type": "checkbox",
92
+ "label": "Use device-list long polling",
93
+ "xs": 12,
94
+ "sm": 6,
95
+ "md": 3,
96
+ "lg": 3,
97
+ "xl": 3
93
98
  }
94
99
  }
95
100
  }