iobroker.schlueter-thermostat 0.2.0
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 +21 -0
- package/README.md +263 -0
- package/admin/i18n/de/translations.json +13 -0
- package/admin/i18n/en/translations.json +13 -0
- package/admin/i18n/es/translations.json +14 -0
- package/admin/i18n/fr/translations.json +14 -0
- package/admin/i18n/it/translations.json +14 -0
- package/admin/i18n/nl/translations.json +14 -0
- package/admin/i18n/pl/translations.json +14 -0
- package/admin/i18n/pt/translations.json +14 -0
- package/admin/i18n/ru/translations.json +14 -0
- package/admin/i18n/uk/translations.json +14 -0
- package/admin/i18n/zh-cn/translations.json +14 -0
- package/admin/jsonConfig.json +101 -0
- package/admin/schlueter-thermostat.png +0 -0
- package/io-package.json +169 -0
- package/lib/adapter-config.d.ts +19 -0
- package/lib/oj-client.js +193 -0
- package/lib/util.js +31 -0
- package/main.js +1022 -0
- package/package.json +68 -0
package/LICENSE
ADDED
|
@@ -0,0 +1,21 @@
|
|
|
1
|
+
MIT License
|
|
2
|
+
|
|
3
|
+
Copyright (c) 2026 patricknitsch <patricknitsch@web.de>
|
|
4
|
+
|
|
5
|
+
Permission is hereby granted, free of charge, to any person obtaining a copy
|
|
6
|
+
of this software and associated documentation files (the "Software"), to deal
|
|
7
|
+
in the Software without restriction, including without limitation the rights
|
|
8
|
+
to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
|
|
9
|
+
copies of the Software, and to permit persons to whom the Software is
|
|
10
|
+
furnished to do so, subject to the following conditions:
|
|
11
|
+
|
|
12
|
+
The above copyright notice and this permission notice shall be included in all
|
|
13
|
+
copies or substantial portions of the Software.
|
|
14
|
+
|
|
15
|
+
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
|
|
16
|
+
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
|
|
17
|
+
FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
|
|
18
|
+
AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
|
|
19
|
+
LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
|
|
20
|
+
OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
|
|
21
|
+
SOFTWARE.
|
package/README.md
ADDED
|
@@ -0,0 +1,263 @@
|
|
|
1
|
+

|
|
2
|
+
|
|
3
|
+
# ioBroker.schlueter-thermostat
|
|
4
|
+
|
|
5
|
+
[](https://www.npmjs.com/package/iobroker.schlueter-thermostat)
|
|
6
|
+
[](https://www.npmjs.com/package/iobroker.schlueter-thermostat)
|
|
7
|
+

|
|
8
|
+

|
|
9
|
+
|
|
10
|
+
[](https://nodei.co/npm/iobroker.schlueter-thermostat/)
|
|
11
|
+
|
|
12
|
+
**Tests:** 
|
|
13
|
+
|
|
14
|
+
# Schlueter Thermostat
|
|
15
|
+
|
|
16
|
+
Cloud adapter for **Schlüter / OJ Microline OWD5 thermostats**.\
|
|
17
|
+
The adapter connects to the official **OWD5 (read)** and **OCD5
|
|
18
|
+
(write)** cloud APIs to fully integrate thermostats into ioBroker.
|
|
19
|
+
|
|
20
|
+
This adapter is **cloud-only** --- no local gateway or Modbus required.
|
|
21
|
+
The complete API can be tested at: https://ocd5.azurewebsites.net/swagger/ui/index#/
|
|
22
|
+
|
|
23
|
+
## Attention:
|
|
24
|
+
|
|
25
|
+
I only have one thermostat. So I'm not sure, how it looks like with multiple thermostats.
|
|
26
|
+
I will check it, if I get a second one, especially for energy valuse for each thermostat.
|
|
27
|
+
|
|
28
|
+
---
|
|
29
|
+
|
|
30
|
+
## 🧩 Architecture
|
|
31
|
+
|
|
32
|
+
ioBroker
|
|
33
|
+
│
|
|
34
|
+
│ REST (HTTPS)
|
|
35
|
+
▼
|
|
36
|
+
schlueter-thermostat Adapter
|
|
37
|
+
│
|
|
38
|
+
├───────────────► OWD5 Cloud API (READ)
|
|
39
|
+
│ - Groups
|
|
40
|
+
│ - Thermostats
|
|
41
|
+
│ - Schedule
|
|
42
|
+
│ - Energy usage
|
|
43
|
+
│
|
|
44
|
+
└───────────────► OCD5 Cloud API (WRITE)
|
|
45
|
+
- Setpoints
|
|
46
|
+
- Modes
|
|
47
|
+
- End times
|
|
48
|
+
- Vacation
|
|
49
|
+
- Thermostat name
|
|
50
|
+
│
|
|
51
|
+
▼
|
|
52
|
+
Schlüter / OJ Microline Thermostats
|
|
53
|
+
|
|
54
|
+
---
|
|
55
|
+
|
|
56
|
+
## ⚙ How the Adapter Works
|
|
57
|
+
|
|
58
|
+
1. **Login** to OWD5 cloud with your credentials.
|
|
59
|
+
2. **Polling** at configured interval (default 60s):
|
|
60
|
+
- Reads **GroupContents**
|
|
61
|
+
- Creates/updates group & thermostat objects
|
|
62
|
+
- Reads temperatures, modes, setpoints, schedules
|
|
63
|
+
- Reads energy usage per thermostat (via SerialNumber)
|
|
64
|
+
3. When a writable state changes:
|
|
65
|
+
- Adapter builds full **UpdateThermostat payload**
|
|
66
|
+
- Sends it to **OCD5 cloud**
|
|
67
|
+
4. Cloud forwards the command to the thermostat.
|
|
68
|
+
|
|
69
|
+
---
|
|
70
|
+
|
|
71
|
+
## 👤 Required User Data
|
|
72
|
+
|
|
73
|
+
Setting Description
|
|
74
|
+
|
|
75
|
+
---
|
|
76
|
+
|
|
77
|
+
Username Your Schlüter/OJ cloud login -> **setted in your APP**
|
|
78
|
+
Password Cloud password -> **setted in your APP**
|
|
79
|
+
API Key Provided API key -> **use Default; It seems to work**
|
|
80
|
+
Customer ID Your cloud customer ID -> **to find in you thermostat information**
|
|
81
|
+
Client SW Version Required by API (numeric) -> **to find in your thermostat information**
|
|
82
|
+
Poll Interval Seconds between cloud polls
|
|
83
|
+
|
|
84
|
+
---
|
|
85
|
+
|
|
86
|
+
## 🏠 Object Structure
|
|
87
|
+
|
|
88
|
+
schlueter-thermostat.0
|
|
89
|
+
└─ groups
|
|
90
|
+
└─ <GroupId> (device)
|
|
91
|
+
└─ thermostats
|
|
92
|
+
└─ <ThermostatId> (device)
|
|
93
|
+
|
|
94
|
+
---
|
|
95
|
+
|
|
96
|
+
## 🌡 What Can Be Read
|
|
97
|
+
|
|
98
|
+
Category States
|
|
99
|
+
|
|
100
|
+
---
|
|
101
|
+
|
|
102
|
+
Temperatures Room, Floor
|
|
103
|
+
Setpoints Manual, Comfort
|
|
104
|
+
Modes RegulationMode
|
|
105
|
+
End Times ComfortEndTime, BoostEndTime
|
|
106
|
+
Vacation Enabled, Begin, End, Temperature
|
|
107
|
+
Schedule All days + events
|
|
108
|
+
Energy kWh history values
|
|
109
|
+
|
|
110
|
+
---
|
|
111
|
+
|
|
112
|
+
## ✍ What Can Be Written
|
|
113
|
+
|
|
114
|
+
State Description
|
|
115
|
+
|
|
116
|
+
---
|
|
117
|
+
|
|
118
|
+
setpoint.manualSet Manual temperature
|
|
119
|
+
setpoint.comfortSet Comfort temperature
|
|
120
|
+
regulationModeSet Mode change
|
|
121
|
+
thermostatNameSet Rename thermostat
|
|
122
|
+
endTime.comfortSet Comfort end time
|
|
123
|
+
endTime.boostSet Boost end time
|
|
124
|
+
vacation.enabledSet Enable vacation
|
|
125
|
+
vacation.beginSet Vacation start
|
|
126
|
+
vacation.endSet Vacation end
|
|
127
|
+
vacation.temperatureSet Vacation temperature
|
|
128
|
+
|
|
129
|
+
---
|
|
130
|
+
|
|
131
|
+
## 🔥 Reglulation Mode Logic
|
|
132
|
+
|
|
133
|
+
When `regulationModeSet = 1`:
|
|
134
|
+
|
|
135
|
+
- Schedule Plan as defined in APP
|
|
136
|
+
|
|
137
|
+
When `regulationModeSet = 2`:
|
|
138
|
+
|
|
139
|
+
- Comfort Mode is active for setted Time in h
|
|
140
|
+
- Temperature = setted Temperature
|
|
141
|
+
|
|
142
|
+
When `regulationModeSet = 3`:
|
|
143
|
+
|
|
144
|
+
- Manual Mode is active for undefined time
|
|
145
|
+
- Temperature = setted Temperature
|
|
146
|
+
|
|
147
|
+
When `regulationModeSet = 8`:
|
|
148
|
+
|
|
149
|
+
- Boost end time = **now + 1 hour**
|
|
150
|
+
- Temperature = thermostat maximum
|
|
151
|
+
|
|
152
|
+
When `regulationModeSet = 9`:
|
|
153
|
+
|
|
154
|
+
- Eco Mode is active
|
|
155
|
+
- Temperature = 20 degrees
|
|
156
|
+
|
|
157
|
+
There some more......
|
|
158
|
+
|
|
159
|
+
---
|
|
160
|
+
|
|
161
|
+
## 🔁 State Flow Diagram
|
|
162
|
+
|
|
163
|
+
┌──────────┐
|
|
164
|
+
│ AUTO │
|
|
165
|
+
└─────┬────┘
|
|
166
|
+
│
|
|
167
|
+
comfortSetpoint
|
|
168
|
+
▼
|
|
169
|
+
┌──────────┐
|
|
170
|
+
│ COMFORT │
|
|
171
|
+
└─────┬────┘
|
|
172
|
+
│ manualSetpoint
|
|
173
|
+
▼
|
|
174
|
+
┌──────────┐
|
|
175
|
+
│ MANUAL │
|
|
176
|
+
└─────┬────┘
|
|
177
|
+
│ regulationMode=8
|
|
178
|
+
▼
|
|
179
|
+
┌──────────┐
|
|
180
|
+
│ BOOST │
|
|
181
|
+
│ (1 hour) │
|
|
182
|
+
└─────┬────┘
|
|
183
|
+
│ endTime reached
|
|
184
|
+
▼
|
|
185
|
+
back to previous mode
|
|
186
|
+
|
|
187
|
+
Vacation overrides all heating modes when enabled.
|
|
188
|
+
|
|
189
|
+
---
|
|
190
|
+
|
|
191
|
+
## ⚡ Energy
|
|
192
|
+
|
|
193
|
+
Energy values are provided per thermostat:
|
|
194
|
+
|
|
195
|
+
energy.count
|
|
196
|
+
energy.value0
|
|
197
|
+
energy.value1
|
|
198
|
+
...
|
|
199
|
+
|
|
200
|
+
## **It starts with the Energy from today.**
|
|
201
|
+
|
|
202
|
+
## 🛡 Stability
|
|
203
|
+
|
|
204
|
+
- Safe object/state wrappers
|
|
205
|
+
- Graceful shutdown
|
|
206
|
+
- Poll protection
|
|
207
|
+
- Debug logging
|
|
208
|
+
|
|
209
|
+
---
|
|
210
|
+
|
|
211
|
+
## 🐛 Debug
|
|
212
|
+
|
|
213
|
+
Enable **debug log level** to see cloud communication.
|
|
214
|
+
|
|
215
|
+
---
|
|
216
|
+
|
|
217
|
+
## 📦 Version
|
|
218
|
+
|
|
219
|
+
### Changelog
|
|
220
|
+
|
|
221
|
+
<!--
|
|
222
|
+
Placeholder for the next version (at the beginning of the line):
|
|
223
|
+
### **WORK IN PROGRESS**
|
|
224
|
+
-->
|
|
225
|
+
### 0.2.0 (2026-01-28)
|
|
226
|
+
|
|
227
|
+
- (patricknitsch) add automatic Refresh of Token after Error 403
|
|
228
|
+
- (patricknitsch) fix max Value of Regulation Mode to 9 for error preventing
|
|
229
|
+
- (patricknitsch) improve Handling of Mode Settings
|
|
230
|
+
|
|
231
|
+
### 0.1.1 (2026-01-28)
|
|
232
|
+
|
|
233
|
+
- (patricknitsch) updated Readme
|
|
234
|
+
|
|
235
|
+
### 0.1.0 (2026-01-28)
|
|
236
|
+
|
|
237
|
+
- (patricknitsch) initial release
|
|
238
|
+
- (patricknitsch) fetch data and write in Datapoints
|
|
239
|
+
- (patricknitsch) functional version with Energy and settable functions
|
|
240
|
+
|
|
241
|
+
## License
|
|
242
|
+
|
|
243
|
+
MIT License
|
|
244
|
+
|
|
245
|
+
Copyright (c) 2026 patricknitsch <patricknitsch@web.de>
|
|
246
|
+
|
|
247
|
+
Permission is hereby granted, free of charge, to any person obtaining a copy
|
|
248
|
+
of this software and associated documentation files (the "Software"), to deal
|
|
249
|
+
in the Software without restriction, including without limitation the rights
|
|
250
|
+
to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
|
|
251
|
+
copies of the Software, and to permit persons to whom the Software is
|
|
252
|
+
furnished to do so, subject to the following conditions:
|
|
253
|
+
|
|
254
|
+
The above copyright notice and this permission notice shall be included in all
|
|
255
|
+
copies or substantial portions of the Software.
|
|
256
|
+
|
|
257
|
+
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
|
|
258
|
+
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
|
|
259
|
+
FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
|
|
260
|
+
AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
|
|
261
|
+
LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
|
|
262
|
+
OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
|
|
263
|
+
SOFTWARE.
|
|
@@ -0,0 +1,13 @@
|
|
|
1
|
+
{
|
|
2
|
+
"API Key": "API-Schlüssel",
|
|
3
|
+
"Customer ID": "Kunden-ID",
|
|
4
|
+
"Energy History (0=current)": "Energieverlauf (0=aktuell)",
|
|
5
|
+
"Energy ViewType (2=week,3=month,4=year)": "Energieansichtstyp (2=Woche, 3=Monat, 4=Jahr)",
|
|
6
|
+
"OCD5 Base URL": "OCD5-Basis-URL",
|
|
7
|
+
"OWD5 Base URL": "OWD5-Basis-URL",
|
|
8
|
+
"OWD5 cloud only. Devices are created per GroupId. Writeback uses Group/UpdateGroup. Energy uses EnergyUsage/GetEnergyUsage with ThermostatID (Thermostats[].Id).": "Nur OWD5-Cloud. Geräte werden pro GroupId erstellt. Rückschreiben verwendet Group/UpdateGroup. Energie verwendet EnergyUsage/GetEnergyUsage mit ThermostatID (Thermostaten[].Id).",
|
|
9
|
+
"Password": "Passwort",
|
|
10
|
+
"Poll interval (seconds)": "Abfrageintervall (Sekunden)",
|
|
11
|
+
"Software Version": "Softwareversion",
|
|
12
|
+
"Username": "Benutzername"
|
|
13
|
+
}
|
|
@@ -0,0 +1,13 @@
|
|
|
1
|
+
{
|
|
2
|
+
"OWD5 Base URL": "OWD5 Base URL",
|
|
3
|
+
"OCD5 Base URL": "OCD5 Base URL",
|
|
4
|
+
"Username": "Username",
|
|
5
|
+
"Password": "Password",
|
|
6
|
+
"Software Version": "Software Version",
|
|
7
|
+
"Customer ID": "Customer ID",
|
|
8
|
+
"API Key": "API Key",
|
|
9
|
+
"Poll interval (seconds)": "Poll interval (seconds)",
|
|
10
|
+
"Energy History (0=current)": "Energy History (0=current)",
|
|
11
|
+
"Energy ViewType (2=week,3=month,4=year)": "Energy ViewType (2=week,3=month,4=year)",
|
|
12
|
+
"OWD5 cloud only. Devices are created per GroupId. Writeback uses Group/UpdateGroup. Energy uses EnergyUsage/GetEnergyUsage with ThermostatID (Thermostats[].Id).": "OWD5 cloud only. Devices are created per GroupId. Writeback uses Group/UpdateGroup. Energy uses EnergyUsage/GetEnergyUsage with ThermostatID (Thermostats[].Id)."
|
|
13
|
+
}
|
|
@@ -0,0 +1,14 @@
|
|
|
1
|
+
{
|
|
2
|
+
"API Key": "Clave API",
|
|
3
|
+
"Customer ID": "ID de cliente",
|
|
4
|
+
"Energy History (0=current)": "Historial de energía (0=actual)",
|
|
5
|
+
"Energy ViewType (2=week,3=month,4=year)": "Tipo de vista de energía (2=semana,3=mes,4=año)",
|
|
6
|
+
"OCD5 Base URL": "URL base de OCD5",
|
|
7
|
+
"OWD5 Base URL": "URL básica de OWD5",
|
|
8
|
+
"OWD5 cloud only. Devices are created per GroupId. Writeback uses Group/UpdateGroup. Energy uses EnergyUsage/GetEnergyUsage with ThermostatID (Thermostats[].Id).": "Solo nube OWD5. Los dispositivos se crean por GroupId. La reescritura utiliza Grupo/Grupo de actualización. La energía utiliza EnergyUsage/GetEnergyUsage con ThermostatID (Thermostats[].Id).",
|
|
9
|
+
"Password": "Contraseña",
|
|
10
|
+
"Poll interval (seconds)": "Intervalo de encuesta (segundos)",
|
|
11
|
+
"Software Version": "Versión de software",
|
|
12
|
+
"Username": "Nombre de usuario",
|
|
13
|
+
"Username / Email": "Nombre de usuario/correo electrónico"
|
|
14
|
+
}
|
|
@@ -0,0 +1,14 @@
|
|
|
1
|
+
{
|
|
2
|
+
"API Key": "Clé API",
|
|
3
|
+
"Customer ID": "Numéro client",
|
|
4
|
+
"Energy History (0=current)": "Historique énergétique (0=actuel)",
|
|
5
|
+
"Energy ViewType (2=week,3=month,4=year)": "Type de vue énergétique (2=semaine,3=mois,4=année)",
|
|
6
|
+
"OCD5 Base URL": "URL de base OCD5",
|
|
7
|
+
"OWD5 Base URL": "URL de base OWD5",
|
|
8
|
+
"OWD5 cloud only. Devices are created per GroupId. Writeback uses Group/UpdateGroup. Energy uses EnergyUsage/GetEnergyUsage with ThermostatID (Thermostats[].Id).": "Cloud OWD5 uniquement. Les appareils sont créés par GroupId. La réécriture utilise Group/UpdateGroup. L'énergie utilise EnergyUsage/GetEnergyUsage avec ThermostatID (Thermostats[].Id).",
|
|
9
|
+
"Password": "Mot de passe",
|
|
10
|
+
"Poll interval (seconds)": "Intervalle d'interrogation (secondes)",
|
|
11
|
+
"Software Version": "Version du logiciel",
|
|
12
|
+
"Username": "Nom d'utilisateur",
|
|
13
|
+
"Username / Email": "Nom d'utilisateur / E-mail"
|
|
14
|
+
}
|
|
@@ -0,0 +1,14 @@
|
|
|
1
|
+
{
|
|
2
|
+
"API Key": "Chiave API",
|
|
3
|
+
"Customer ID": "ID cliente",
|
|
4
|
+
"Energy History (0=current)": "Cronologia energia (0=corrente)",
|
|
5
|
+
"Energy ViewType (2=week,3=month,4=year)": "Tipo di visualizzazione energia (2=settimana,3=mese,4=anno)",
|
|
6
|
+
"OCD5 Base URL": "URL di base OCD5",
|
|
7
|
+
"OWD5 Base URL": "URL di base OWD5",
|
|
8
|
+
"OWD5 cloud only. Devices are created per GroupId. Writeback uses Group/UpdateGroup. Energy uses EnergyUsage/GetEnergyUsage with ThermostatID (Thermostats[].Id).": "Solo cloud OWD5. I dispositivi vengono creati per GroupId. Il writeback utilizza Group/UpdateGroup. Energia utilizza EnergyUsage/GetEnergyUsage con ThermostatID (Thermostats[].Id).",
|
|
9
|
+
"Password": "Password",
|
|
10
|
+
"Poll interval (seconds)": "Intervallo di polling (secondi)",
|
|
11
|
+
"Software Version": "Versione del software",
|
|
12
|
+
"Username": "Nome utente",
|
|
13
|
+
"Username / Email": "Nome utente/e-mail"
|
|
14
|
+
}
|
|
@@ -0,0 +1,14 @@
|
|
|
1
|
+
{
|
|
2
|
+
"API Key": "API-sleutel",
|
|
3
|
+
"Customer ID": "Klant-ID",
|
|
4
|
+
"Energy History (0=current)": "Energiegeschiedenis (0=huidig)",
|
|
5
|
+
"Energy ViewType (2=week,3=month,4=year)": "Energie ViewType (2=week,3=maand,4=jaar)",
|
|
6
|
+
"OCD5 Base URL": "OCD5-basis-URL",
|
|
7
|
+
"OWD5 Base URL": "OWD5-basis-URL",
|
|
8
|
+
"OWD5 cloud only. Devices are created per GroupId. Writeback uses Group/UpdateGroup. Energy uses EnergyUsage/GetEnergyUsage with ThermostatID (Thermostats[].Id).": "Alleen OWD5-cloud. Apparaten worden aangemaakt per GroupId. Terugschrijven maakt gebruik van Group/UpdateGroup. Energie gebruikt EnergyUsage/GetEnergyUsage met ThermostatID (Thermostaten[].Id).",
|
|
9
|
+
"Password": "Wachtwoord",
|
|
10
|
+
"Poll interval (seconds)": "Poll-interval (seconden)",
|
|
11
|
+
"Software Version": "Softwareversie",
|
|
12
|
+
"Username": "Gebruikersnaam",
|
|
13
|
+
"Username / Email": "Gebruikersnaam / E-mailadres"
|
|
14
|
+
}
|
|
@@ -0,0 +1,14 @@
|
|
|
1
|
+
{
|
|
2
|
+
"API Key": "Klucz API",
|
|
3
|
+
"Customer ID": "Identyfikator klienta",
|
|
4
|
+
"Energy History (0=current)": "Historia energii (0=prąd)",
|
|
5
|
+
"Energy ViewType (2=week,3=month,4=year)": "Typ widoku energii (2=tydzień,3=miesiąc,4=rok)",
|
|
6
|
+
"OCD5 Base URL": "Podstawowy adres URL OCD5",
|
|
7
|
+
"OWD5 Base URL": "Podstawowy adres URL OWD5",
|
|
8
|
+
"OWD5 cloud only. Devices are created per GroupId. Writeback uses Group/UpdateGroup. Energy uses EnergyUsage/GetEnergyUsage with ThermostatID (Thermostats[].Id).": "Tylko chmura OWD5. Urządzenia są tworzone według GroupId. Zapisywanie zwrotne używa grupy/aktualizacji grupy. Energia wykorzystuje EnergyUsage/GetEnergyUsage z ThermostatID (Termostaty[].Id).",
|
|
9
|
+
"Password": "Hasło",
|
|
10
|
+
"Poll interval (seconds)": "Interwał sondowania (sekundy)",
|
|
11
|
+
"Software Version": "Wersja oprogramowania",
|
|
12
|
+
"Username": "Nazwa użytkownika",
|
|
13
|
+
"Username / Email": "Nazwa użytkownika / e-mail"
|
|
14
|
+
}
|
|
@@ -0,0 +1,14 @@
|
|
|
1
|
+
{
|
|
2
|
+
"API Key": "Chave de API",
|
|
3
|
+
"Customer ID": "ID do cliente",
|
|
4
|
+
"Energy History (0=current)": "Histórico de Energia (0=atual)",
|
|
5
|
+
"Energy ViewType (2=week,3=month,4=year)": "Energy ViewType (2=semana,3=mês,4=ano)",
|
|
6
|
+
"OCD5 Base URL": "URL base do OCD5",
|
|
7
|
+
"OWD5 Base URL": "URL base OWD5",
|
|
8
|
+
"OWD5 cloud only. Devices are created per GroupId. Writeback uses Group/UpdateGroup. Energy uses EnergyUsage/GetEnergyUsage with ThermostatID (Thermostats[].Id).": "Apenas nuvem OWD5. Os dispositivos são criados por GroupId. Writeback usa Grupo/UpdateGroup. A energia usa EnergyUsage/GetEnergyUsage com ThermostatID (Termostatos[].Id).",
|
|
9
|
+
"Password": "Senha",
|
|
10
|
+
"Poll interval (seconds)": "Intervalo de pesquisa (segundos)",
|
|
11
|
+
"Software Version": "Versão do software",
|
|
12
|
+
"Username": "Nome de usuário",
|
|
13
|
+
"Username / Email": "Nome de usuário/e-mail"
|
|
14
|
+
}
|
|
@@ -0,0 +1,14 @@
|
|
|
1
|
+
{
|
|
2
|
+
"API Key": "API-ключ",
|
|
3
|
+
"Customer ID": "Идентификатор клиента",
|
|
4
|
+
"Energy History (0=current)": "История энергопотребления (0=текущая)",
|
|
5
|
+
"Energy ViewType (2=week,3=month,4=year)": "Energy ViewType (2=неделя, 3=месяц, 4=год)",
|
|
6
|
+
"OCD5 Base URL": "Базовый URL-адрес OCD5",
|
|
7
|
+
"OWD5 Base URL": "Базовый URL-адрес OWD5",
|
|
8
|
+
"OWD5 cloud only. Devices are created per GroupId. Writeback uses Group/UpdateGroup. Energy uses EnergyUsage/GetEnergyUsage with ThermostatID (Thermostats[].Id).": "Только облако OWD5. Устройства создаются по GroupId. Обратная запись использует Group/UpdateGroup. Energy использует EnergyUsage/GetEnergyUsage с ThermostatID (Thermostats[].Id).",
|
|
9
|
+
"Password": "Пароль",
|
|
10
|
+
"Poll interval (seconds)": "Интервал опроса (секунды)",
|
|
11
|
+
"Software Version": "Версия программного обеспечения",
|
|
12
|
+
"Username": "Имя пользователя",
|
|
13
|
+
"Username / Email": "Имя пользователя / адрес электронной почты"
|
|
14
|
+
}
|
|
@@ -0,0 +1,14 @@
|
|
|
1
|
+
{
|
|
2
|
+
"API Key": "Ключ API",
|
|
3
|
+
"Customer ID": "ID клієнта",
|
|
4
|
+
"Energy History (0=current)": "Історія енергоспоживання (0=поточна)",
|
|
5
|
+
"Energy ViewType (2=week,3=month,4=year)": "Energy ViewType (2=тиждень,3=місяць,4=рік)",
|
|
6
|
+
"OCD5 Base URL": "Базова URL-адреса OCD5",
|
|
7
|
+
"OWD5 Base URL": "Базова URL-адреса OWD5",
|
|
8
|
+
"OWD5 cloud only. Devices are created per GroupId. Writeback uses Group/UpdateGroup. Energy uses EnergyUsage/GetEnergyUsage with ThermostatID (Thermostats[].Id).": "Лише хмара OWD5. Пристрої створюються для GroupId. Writeback використовує Group/UpdateGroup. Energy використовує EnergyUsage/GetEnergyUsage з ThermostatID (Thermostats[].Id).",
|
|
9
|
+
"Password": "Пароль",
|
|
10
|
+
"Poll interval (seconds)": "Інтервал опитування (секунди)",
|
|
11
|
+
"Software Version": "Версія програмного забезпечення",
|
|
12
|
+
"Username": "Ім'я користувача",
|
|
13
|
+
"Username / Email": "Ім'я користувача/Електронна пошта"
|
|
14
|
+
}
|
|
@@ -0,0 +1,14 @@
|
|
|
1
|
+
{
|
|
2
|
+
"API Key": "API密钥",
|
|
3
|
+
"Customer ID": "客户编号",
|
|
4
|
+
"Energy History (0=current)": "能源历史(0=当前)",
|
|
5
|
+
"Energy ViewType (2=week,3=month,4=year)": "能源视图类型(2=周,3=月,4=年)",
|
|
6
|
+
"OCD5 Base URL": "OCD5 基本 URL",
|
|
7
|
+
"OWD5 Base URL": "OWD5 基本 URL",
|
|
8
|
+
"OWD5 cloud only. Devices are created per GroupId. Writeback uses Group/UpdateGroup. Energy uses EnergyUsage/GetEnergyUsage with ThermostatID (Thermostats[].Id).": "仅限 OWD5 云。设备是根据 GroupId 创建的。 Writeback使用Group/UpdateGroup。能源使用 EnergyUsage/GetEnergyUsage 和 ThermostatID (Thermostats[].Id)。",
|
|
9
|
+
"Password": "密码",
|
|
10
|
+
"Poll interval (seconds)": "轮询间隔(秒)",
|
|
11
|
+
"Software Version": "软件版本",
|
|
12
|
+
"Username": "用户名",
|
|
13
|
+
"Username / Email": "用户名/电子邮件"
|
|
14
|
+
}
|
|
@@ -0,0 +1,101 @@
|
|
|
1
|
+
{
|
|
2
|
+
"type": "tabs",
|
|
3
|
+
"i18n": true,
|
|
4
|
+
"items": {
|
|
5
|
+
"tabMain": {
|
|
6
|
+
"type": "panel",
|
|
7
|
+
"label": "Main",
|
|
8
|
+
"items": {
|
|
9
|
+
"baseUrlOwd5": {
|
|
10
|
+
"type": "text",
|
|
11
|
+
"label": "OWD5 Base URL",
|
|
12
|
+
"default": "https://owd5-mh015-app.ojelectronics.com",
|
|
13
|
+
"xs": 12,
|
|
14
|
+
"sm": 12,
|
|
15
|
+
"md": 6,
|
|
16
|
+
"lg": 4,
|
|
17
|
+
"xl": 4
|
|
18
|
+
},
|
|
19
|
+
"baseUrlOcd5": {
|
|
20
|
+
"type": "text",
|
|
21
|
+
"label": "OCD5 Base URL",
|
|
22
|
+
"default": "https://ocd5.azurewebsites.net",
|
|
23
|
+
"xs": 12,
|
|
24
|
+
"sm": 12,
|
|
25
|
+
"md": 6,
|
|
26
|
+
"lg": 4,
|
|
27
|
+
"xl": 4
|
|
28
|
+
},
|
|
29
|
+
"username": {
|
|
30
|
+
"type": "text",
|
|
31
|
+
"label": "Username",
|
|
32
|
+
"xs": 12,
|
|
33
|
+
"md": 6,
|
|
34
|
+
"lg": 4,
|
|
35
|
+
"xl": 4,
|
|
36
|
+
"sm": 6
|
|
37
|
+
},
|
|
38
|
+
"password": {
|
|
39
|
+
"type": "password",
|
|
40
|
+
"label": "Password",
|
|
41
|
+
"sm": 6
|
|
42
|
+
},
|
|
43
|
+
"apiKey": {
|
|
44
|
+
"type": "text",
|
|
45
|
+
"label": "API Key",
|
|
46
|
+
"default": "f219aab4-9ac0-4343-8422-b72203e2fac9",
|
|
47
|
+
"xs": 12,
|
|
48
|
+
"md": 6,
|
|
49
|
+
"lg": 4,
|
|
50
|
+
"xl": 4,
|
|
51
|
+
"sm": 8
|
|
52
|
+
},
|
|
53
|
+
"customerId": {
|
|
54
|
+
"type": "number",
|
|
55
|
+
"label": "Customer ID",
|
|
56
|
+
"default": 1,
|
|
57
|
+
"xs": 12,
|
|
58
|
+
"md": 6,
|
|
59
|
+
"lg": 4,
|
|
60
|
+
"xl": 4,
|
|
61
|
+
"sm": 4
|
|
62
|
+
},
|
|
63
|
+
"pollIntervalSec": {
|
|
64
|
+
"type": "number",
|
|
65
|
+
"label": "Poll interval (seconds)",
|
|
66
|
+
"default": 60,
|
|
67
|
+
"xs": 12,
|
|
68
|
+
"md": 6,
|
|
69
|
+
"lg": 4,
|
|
70
|
+
"xl": 4,
|
|
71
|
+
"sm": 4
|
|
72
|
+
},
|
|
73
|
+
"energyHistory": {
|
|
74
|
+
"type": "number",
|
|
75
|
+
"label": "Energy History (0=current)",
|
|
76
|
+
"default": 0,
|
|
77
|
+
"xs": 12,
|
|
78
|
+
"md": 6,
|
|
79
|
+
"lg": 4,
|
|
80
|
+
"xl": 4,
|
|
81
|
+
"sm": 4
|
|
82
|
+
},
|
|
83
|
+
"energyViewType": {
|
|
84
|
+
"type": "number",
|
|
85
|
+
"label": "Energy ViewType (2=week,3=month,4=year)",
|
|
86
|
+
"default": 2,
|
|
87
|
+
"xs": 12,
|
|
88
|
+
"md": 6,
|
|
89
|
+
"lg": 4,
|
|
90
|
+
"xl": 4,
|
|
91
|
+
"sm": 4
|
|
92
|
+
},
|
|
93
|
+
"_help": {
|
|
94
|
+
"type": "staticText",
|
|
95
|
+
"newLine": true,
|
|
96
|
+
"text": "OWD5 cloud only. Devices are created per GroupId. Writeback uses Group/UpdateGroup. Energy uses EnergyUsage/GetEnergyUsage with ThermostatID (Thermostats[].Id)."
|
|
97
|
+
}
|
|
98
|
+
}
|
|
99
|
+
}
|
|
100
|
+
}
|
|
101
|
+
}
|
|
Binary file
|