homebridge-melcloud-control 4.0.0-beta.52 → 4.0.0-beta.521
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/CHANGELOG.md +9 -4
- package/README.md +10 -12
- package/config.schema.json +294 -336
- package/homebridge-ui/public/index.html +110 -64
- package/homebridge-ui/server.js +7 -9
- package/index.js +45 -28
- package/package.json +5 -4
- package/src/constants.js +15 -22
- package/src/deviceata.js +252 -243
- package/src/deviceatw.js +50 -40
- package/src/deviceerv.js +43 -35
- package/src/functions.js +155 -5
- package/src/melcloud.js +345 -180
- package/src/melcloudata.js +146 -306
- package/src/melcloudatw.js +145 -340
- package/src/melclouderv.js +144 -271
- package/src/restful.js +1 -1
package/config.schema.json
CHANGED
|
@@ -42,7 +42,7 @@
|
|
|
42
42
|
"pattern": "^[0-9]+$",
|
|
43
43
|
"default": "0",
|
|
44
44
|
"description": "Here select the language used in MELCloud account.",
|
|
45
|
-
"
|
|
45
|
+
"anyOf": [
|
|
46
46
|
{
|
|
47
47
|
"title": "English",
|
|
48
48
|
"enum": [
|
|
@@ -201,12 +201,12 @@
|
|
|
201
201
|
}
|
|
202
202
|
]
|
|
203
203
|
},
|
|
204
|
-
"
|
|
204
|
+
"type": {
|
|
205
205
|
"title": "Account Type",
|
|
206
206
|
"type": "string",
|
|
207
207
|
"default": "disabled",
|
|
208
|
-
"description": "Here select the
|
|
209
|
-
"
|
|
208
|
+
"description": "Here select the MELCloud account type.",
|
|
209
|
+
"anyOf": [
|
|
210
210
|
{
|
|
211
211
|
"title": "None/Disabled",
|
|
212
212
|
"enum": [
|
|
@@ -235,30 +235,27 @@
|
|
|
235
235
|
"properties": {
|
|
236
236
|
"id": {
|
|
237
237
|
"title": "ID",
|
|
238
|
-
"type": "
|
|
239
|
-
"default": 0
|
|
240
|
-
"readonly": true
|
|
238
|
+
"type": "string",
|
|
239
|
+
"default": "0"
|
|
241
240
|
},
|
|
242
241
|
"type": {
|
|
243
242
|
"title": "Type",
|
|
244
243
|
"type": "integer",
|
|
245
|
-
"default": 0
|
|
246
|
-
"readonly": true
|
|
244
|
+
"default": 0
|
|
247
245
|
},
|
|
248
246
|
"typeString": {
|
|
249
247
|
"title": "Type",
|
|
250
248
|
"type": "string",
|
|
251
|
-
"default": "Air Conditioner"
|
|
252
|
-
"readonly": true
|
|
249
|
+
"default": "Air Conditioner"
|
|
253
250
|
},
|
|
254
|
-
"
|
|
251
|
+
"displayType": {
|
|
255
252
|
"title": "Display Type",
|
|
256
253
|
"type": "integer",
|
|
257
254
|
"minimum": 0,
|
|
258
255
|
"maximum": 2,
|
|
259
|
-
"default":
|
|
256
|
+
"default": 0,
|
|
260
257
|
"description": "Select accessory control type displayed in HomeKit app.",
|
|
261
|
-
"
|
|
258
|
+
"anyOf": [
|
|
262
259
|
{
|
|
263
260
|
"title": "None/Disabled",
|
|
264
261
|
"enum": [
|
|
@@ -291,7 +288,7 @@
|
|
|
291
288
|
"maximum": 3,
|
|
292
289
|
"default": 1,
|
|
293
290
|
"description": "Select the operating mode for Heat, if this mode is not supported, it will be disabled.",
|
|
294
|
-
"
|
|
291
|
+
"anyOf": [
|
|
295
292
|
{
|
|
296
293
|
"title": "None/Disabled",
|
|
297
294
|
"enum": [
|
|
@@ -325,7 +322,7 @@
|
|
|
325
322
|
"maximum": 3,
|
|
326
323
|
"default": 1,
|
|
327
324
|
"description": "Select the operating mode for Cool, if this mode is not supported, it will be disabled.",
|
|
328
|
-
"
|
|
325
|
+
"anyOf": [
|
|
329
326
|
{
|
|
330
327
|
"title": "None/Disabled",
|
|
331
328
|
"enum": [
|
|
@@ -359,7 +356,7 @@
|
|
|
359
356
|
"maximum": 3,
|
|
360
357
|
"default": 1,
|
|
361
358
|
"description": "Select the operating mode for Auto, if this mode is not supported, it will be disabled.",
|
|
362
|
-
"
|
|
359
|
+
"anyOf": [
|
|
363
360
|
{
|
|
364
361
|
"title": "None/Disabled",
|
|
365
362
|
"enum": [
|
|
@@ -423,7 +420,7 @@
|
|
|
423
420
|
"maximum": 5,
|
|
424
421
|
"default": 0,
|
|
425
422
|
"description": "Select the characteristic type to be displayed in HomeKit app.",
|
|
426
|
-
"
|
|
423
|
+
"anyOf": [
|
|
427
424
|
{
|
|
428
425
|
"title": "None/Disabled",
|
|
429
426
|
"enum": [
|
|
@@ -499,7 +496,7 @@
|
|
|
499
496
|
"maximum": 5,
|
|
500
497
|
"default": 0,
|
|
501
498
|
"description": "Select the characteristic type to be displayed in HomeKit app.",
|
|
502
|
-
"
|
|
499
|
+
"anyOf": [
|
|
503
500
|
{
|
|
504
501
|
"title": "None/Disabled",
|
|
505
502
|
"enum": [
|
|
@@ -544,7 +541,7 @@
|
|
|
544
541
|
"minimum": 0,
|
|
545
542
|
"maximum": 40,
|
|
546
543
|
"description": "Function, VH - Vane Horizontal, VV - Vane Vertical.",
|
|
547
|
-
"
|
|
544
|
+
"anyOf": [
|
|
548
545
|
{
|
|
549
546
|
"title": "POWER ON/OFF",
|
|
550
547
|
"enum": [
|
|
@@ -786,14 +783,11 @@
|
|
|
786
783
|
}
|
|
787
784
|
},
|
|
788
785
|
"required": [
|
|
789
|
-
"
|
|
786
|
+
"displayType",
|
|
790
787
|
"heatDryFanMode",
|
|
791
788
|
"coolDryFanMode",
|
|
792
789
|
"autoDryFanMode"
|
|
793
790
|
]
|
|
794
|
-
},
|
|
795
|
-
"condition": {
|
|
796
|
-
"functionBody": "const accounts = model.accounts[arrayIndices]?.ataDevices || []; return accounts.length > 0 && accounts.every(device => device.id != null);"
|
|
797
791
|
}
|
|
798
792
|
},
|
|
799
793
|
"atwDevices": {
|
|
@@ -804,35 +798,32 @@
|
|
|
804
798
|
"properties": {
|
|
805
799
|
"id": {
|
|
806
800
|
"title": "ID",
|
|
807
|
-
"type": "
|
|
808
|
-
"default": 0
|
|
809
|
-
"readonly": true
|
|
801
|
+
"type": "string",
|
|
802
|
+
"default": "0"
|
|
810
803
|
},
|
|
811
804
|
"type": {
|
|
812
805
|
"title": "Type",
|
|
813
806
|
"type": "integer",
|
|
814
|
-
"default": 1
|
|
815
|
-
"readonly": true
|
|
807
|
+
"default": 1
|
|
816
808
|
},
|
|
817
809
|
"typeString": {
|
|
818
810
|
"title": "Type",
|
|
819
811
|
"type": "string",
|
|
820
|
-
"default": "Heat Pump"
|
|
821
|
-
"readonly": true
|
|
812
|
+
"default": "Heat Pump"
|
|
822
813
|
},
|
|
823
814
|
"name": {
|
|
824
815
|
"title": "Name",
|
|
825
816
|
"type": "string",
|
|
826
817
|
"default": "Heat Pump"
|
|
827
818
|
},
|
|
828
|
-
"
|
|
819
|
+
"displayType": {
|
|
829
820
|
"title": "Display Type",
|
|
830
821
|
"type": "integer",
|
|
831
822
|
"minimum": 0,
|
|
832
823
|
"maximum": 2,
|
|
833
|
-
"default":
|
|
824
|
+
"default": 0,
|
|
834
825
|
"description": "Select accessory control type displayed in HomeKit app.",
|
|
835
|
-
"
|
|
826
|
+
"anyOf": [
|
|
836
827
|
{
|
|
837
828
|
"title": "None/Disabled",
|
|
838
829
|
"enum": [
|
|
@@ -860,7 +851,7 @@
|
|
|
860
851
|
"maximum": 15,
|
|
861
852
|
"default": 0,
|
|
862
853
|
"description": "Select zone to hidde in HomeKit app, if present.",
|
|
863
|
-
"
|
|
854
|
+
"anyOf": [
|
|
864
855
|
{
|
|
865
856
|
"title": "None/Disabled",
|
|
866
857
|
"enum": [
|
|
@@ -1038,7 +1029,7 @@
|
|
|
1038
1029
|
"maximum": 5,
|
|
1039
1030
|
"default": 0,
|
|
1040
1031
|
"description": "Select the characteristic type to be displayed in HomeKit app.",
|
|
1041
|
-
"
|
|
1032
|
+
"anyOf": [
|
|
1042
1033
|
{
|
|
1043
1034
|
"title": "None/Disabled",
|
|
1044
1035
|
"enum": [
|
|
@@ -1114,7 +1105,7 @@
|
|
|
1114
1105
|
"maximum": 5,
|
|
1115
1106
|
"default": 0,
|
|
1116
1107
|
"description": "Select the characteristic type to be displayed in HomeKit app.",
|
|
1117
|
-
"
|
|
1108
|
+
"anyOf": [
|
|
1118
1109
|
{
|
|
1119
1110
|
"title": "None/Disabled",
|
|
1120
1111
|
"enum": [
|
|
@@ -1159,7 +1150,7 @@
|
|
|
1159
1150
|
"minimum": 0,
|
|
1160
1151
|
"maximum": 70,
|
|
1161
1152
|
"description": "Select the function.",
|
|
1162
|
-
"
|
|
1153
|
+
"anyOf": [
|
|
1163
1154
|
{
|
|
1164
1155
|
"title": "POWER ON/OFF",
|
|
1165
1156
|
"enum": [
|
|
@@ -1323,12 +1314,9 @@
|
|
|
1323
1314
|
}
|
|
1324
1315
|
},
|
|
1325
1316
|
"required": [
|
|
1326
|
-
"
|
|
1317
|
+
"displayType",
|
|
1327
1318
|
"hideZone"
|
|
1328
1319
|
]
|
|
1329
|
-
},
|
|
1330
|
-
"condition": {
|
|
1331
|
-
"functionBody": "const accounts = model.accounts[arrayIndices]?.atwDevices || []; return accounts.length > 0 && accounts.every(device => device.id != null);"
|
|
1332
1320
|
}
|
|
1333
1321
|
},
|
|
1334
1322
|
"ervDevices": {
|
|
@@ -1339,35 +1327,32 @@
|
|
|
1339
1327
|
"properties": {
|
|
1340
1328
|
"id": {
|
|
1341
1329
|
"title": "ID",
|
|
1342
|
-
"type": "
|
|
1343
|
-
"default": 0
|
|
1344
|
-
"readonly": true
|
|
1330
|
+
"type": "string",
|
|
1331
|
+
"default": "0"
|
|
1345
1332
|
},
|
|
1346
1333
|
"type": {
|
|
1347
1334
|
"title": "Type",
|
|
1348
1335
|
"type": "integer",
|
|
1349
|
-
"default": 3
|
|
1350
|
-
"readonly": true
|
|
1336
|
+
"default": 3
|
|
1351
1337
|
},
|
|
1352
1338
|
"typeString": {
|
|
1353
1339
|
"title": "Type",
|
|
1354
1340
|
"type": "string",
|
|
1355
|
-
"default": "Ventilation"
|
|
1356
|
-
"readonly": true
|
|
1341
|
+
"default": "Ventilation"
|
|
1357
1342
|
},
|
|
1358
1343
|
"name": {
|
|
1359
1344
|
"title": "Name",
|
|
1360
1345
|
"type": "string",
|
|
1361
1346
|
"default": "Ventilation"
|
|
1362
1347
|
},
|
|
1363
|
-
"
|
|
1348
|
+
"displayType": {
|
|
1364
1349
|
"title": "Display Type",
|
|
1365
1350
|
"type": "integer",
|
|
1366
1351
|
"minimum": 0,
|
|
1367
1352
|
"maximum": 2,
|
|
1368
|
-
"default":
|
|
1353
|
+
"default": 0,
|
|
1369
1354
|
"description": "Select accessory control type displayed in HomeKit app.",
|
|
1370
|
-
"
|
|
1355
|
+
"anyOf": [
|
|
1371
1356
|
{
|
|
1372
1357
|
"title": "None/Disabled",
|
|
1373
1358
|
"enum": [
|
|
@@ -1432,7 +1417,7 @@
|
|
|
1432
1417
|
"maximum": 5,
|
|
1433
1418
|
"default": 0,
|
|
1434
1419
|
"description": "Select the characteristic type to be displayed in HomeKit app.",
|
|
1435
|
-
"
|
|
1420
|
+
"anyOf": [
|
|
1436
1421
|
{
|
|
1437
1422
|
"title": "None/Disabled",
|
|
1438
1423
|
"enum": [
|
|
@@ -1511,7 +1496,7 @@
|
|
|
1511
1496
|
"maximum": 5,
|
|
1512
1497
|
"default": 0,
|
|
1513
1498
|
"description": "Select the characteristic type to be displayed in HomeKit app.",
|
|
1514
|
-
"
|
|
1499
|
+
"anyOf": [
|
|
1515
1500
|
{
|
|
1516
1501
|
"title": "None/Disabled",
|
|
1517
1502
|
"enum": [
|
|
@@ -1556,7 +1541,7 @@
|
|
|
1556
1541
|
"minimum": 0,
|
|
1557
1542
|
"maximum": 18,
|
|
1558
1543
|
"description": "Select the function.",
|
|
1559
|
-
"
|
|
1544
|
+
"anyOf": [
|
|
1560
1545
|
{
|
|
1561
1546
|
"title": "POWER ON/OFF",
|
|
1562
1547
|
"enum": [
|
|
@@ -1672,11 +1657,8 @@
|
|
|
1672
1657
|
}
|
|
1673
1658
|
},
|
|
1674
1659
|
"required": [
|
|
1675
|
-
"
|
|
1660
|
+
"displayType"
|
|
1676
1661
|
]
|
|
1677
|
-
},
|
|
1678
|
-
"condition": {
|
|
1679
|
-
"functionBody": "const accounts = model.accounts[arrayIndices]?.ervDevices || []; return accounts.length > 0 && accounts.every(device => device.id != null);"
|
|
1680
1662
|
}
|
|
1681
1663
|
},
|
|
1682
1664
|
"refreshInterval": {
|
|
@@ -1825,7 +1807,7 @@
|
|
|
1825
1807
|
"user",
|
|
1826
1808
|
"passwd",
|
|
1827
1809
|
"language",
|
|
1828
|
-
"
|
|
1810
|
+
"type"
|
|
1829
1811
|
]
|
|
1830
1812
|
}
|
|
1831
1813
|
}
|
|
@@ -1844,14 +1826,13 @@
|
|
|
1844
1826
|
"type": "password"
|
|
1845
1827
|
},
|
|
1846
1828
|
"accounts[].language",
|
|
1847
|
-
"accounts[].
|
|
1829
|
+
"accounts[].type",
|
|
1848
1830
|
{
|
|
1849
1831
|
"key": "accounts[]",
|
|
1850
1832
|
"type": "tabarray",
|
|
1851
1833
|
"title": "{{ value.title }}",
|
|
1852
1834
|
"items": [
|
|
1853
1835
|
{
|
|
1854
|
-
"key": "accounts[]",
|
|
1855
1836
|
"title": "Air Conditioner",
|
|
1856
1837
|
"items": [
|
|
1857
1838
|
{
|
|
@@ -1859,113 +1840,104 @@
|
|
|
1859
1840
|
"type": "tabarray",
|
|
1860
1841
|
"title": "{{ value.name }}",
|
|
1861
1842
|
"items": [
|
|
1862
|
-
{
|
|
1863
|
-
"key": "accounts[].ataDevices[].id",
|
|
1864
|
-
"readonly": true
|
|
1865
|
-
},
|
|
1866
|
-
{
|
|
1867
|
-
"key": "accounts[].ataDevices[].typeString",
|
|
1868
|
-
"readonly": true
|
|
1869
|
-
},
|
|
1870
|
-
"accounts[].ataDevices[].displayMode",
|
|
1871
1843
|
{
|
|
1872
1844
|
"key": "accounts[].ataDevices[]",
|
|
1873
|
-
"title": "Settings",
|
|
1874
|
-
"type": "section",
|
|
1875
|
-
"expandable": true,
|
|
1876
|
-
"expanded": false,
|
|
1877
|
-
"items": [
|
|
1878
|
-
"accounts[].ataDevices[].name",
|
|
1879
|
-
"accounts[].ataDevices[].heatDryFanMode",
|
|
1880
|
-
"accounts[].ataDevices[].coolDryFanMode",
|
|
1881
|
-
"accounts[].ataDevices[].autoDryFanMode",
|
|
1882
|
-
"accounts[].ataDevices[].refreshInterval"
|
|
1883
|
-
],
|
|
1884
|
-
"condition": {
|
|
1885
|
-
"functionBody": "return model.accounts[arrayIndices[0]].ataDevices[arrayIndices[1]].displayMode > 0;"
|
|
1886
|
-
}
|
|
1887
|
-
},
|
|
1888
|
-
{
|
|
1889
|
-
"key": "accounts[].ataDevices[]",
|
|
1890
|
-
"title": "Temperature Sensors",
|
|
1891
|
-
"type": "section",
|
|
1892
|
-
"expandable": true,
|
|
1893
|
-
"expanded": false,
|
|
1894
|
-
"items": [
|
|
1895
|
-
"accounts[].ataDevices[].temperatureSensor",
|
|
1896
|
-
"accounts[].ataDevices[].temperatureSensorOutdoor"
|
|
1897
|
-
],
|
|
1898
|
-
"condition": {
|
|
1899
|
-
"functionBody": "return model.accounts[arrayIndices[0]].ataDevices[arrayIndices[1]].displayMode > 0;"
|
|
1900
|
-
}
|
|
1901
|
-
},
|
|
1902
|
-
{
|
|
1903
|
-
"key": "accounts[].ataDevices[].presets",
|
|
1904
|
-
"title": "Presets",
|
|
1905
|
-
"type": "section",
|
|
1906
|
-
"expandable": true,
|
|
1907
|
-
"expanded": false,
|
|
1908
1845
|
"items": [
|
|
1909
1846
|
{
|
|
1910
|
-
"key": "accounts[].ataDevices[].
|
|
1911
|
-
"
|
|
1912
|
-
|
|
1847
|
+
"key": "accounts[].ataDevices[].id",
|
|
1848
|
+
"readonly": true
|
|
1849
|
+
},
|
|
1850
|
+
{
|
|
1851
|
+
"key": "accounts[].ataDevices[].typeString",
|
|
1852
|
+
"readonly": true
|
|
1853
|
+
},
|
|
1854
|
+
"accounts[].ataDevices[].displayType",
|
|
1855
|
+
{
|
|
1856
|
+
"title": "Settings",
|
|
1857
|
+
"type": "section",
|
|
1858
|
+
"expandable": true,
|
|
1859
|
+
"expanded": false,
|
|
1860
|
+
"items": [
|
|
1861
|
+
"accounts[].ataDevices[].name",
|
|
1862
|
+
"accounts[].ataDevices[].heatDryFanMode",
|
|
1863
|
+
"accounts[].ataDevices[].coolDryFanMode",
|
|
1864
|
+
"accounts[].ataDevices[].autoDryFanMode",
|
|
1865
|
+
"accounts[].ataDevices[].refreshInterval"
|
|
1866
|
+
],
|
|
1867
|
+
"condition": {
|
|
1868
|
+
"functionBody": "return model.accounts[arrayIndices[0]].ataDevices[arrayIndices[1]].displayType > 0;"
|
|
1869
|
+
}
|
|
1870
|
+
},
|
|
1871
|
+
{
|
|
1872
|
+
"title": "Temperature Sensors",
|
|
1873
|
+
"type": "section",
|
|
1874
|
+
"expandable": true,
|
|
1875
|
+
"expanded": false,
|
|
1876
|
+
"items": [
|
|
1877
|
+
"accounts[].ataDevices[].temperatureSensor",
|
|
1878
|
+
"accounts[].ataDevices[].temperatureSensorOutdoor"
|
|
1879
|
+
],
|
|
1880
|
+
"condition": {
|
|
1881
|
+
"functionBody": "return model.accounts[arrayIndices[0]].ataDevices[arrayIndices[1]].displayType > 0;"
|
|
1882
|
+
}
|
|
1883
|
+
},
|
|
1884
|
+
{
|
|
1885
|
+
"title": "Presets",
|
|
1886
|
+
"type": "section",
|
|
1887
|
+
"expandable": true,
|
|
1888
|
+
"expanded": false,
|
|
1913
1889
|
"items": [
|
|
1914
1890
|
{
|
|
1915
|
-
"key": "accounts[].ataDevices[].presets
|
|
1916
|
-
"
|
|
1917
|
-
|
|
1918
|
-
|
|
1919
|
-
|
|
1920
|
-
|
|
1921
|
-
|
|
1922
|
-
|
|
1923
|
-
|
|
1924
|
-
|
|
1925
|
-
|
|
1926
|
-
|
|
1927
|
-
|
|
1928
|
-
|
|
1929
|
-
|
|
1930
|
-
|
|
1931
|
-
|
|
1932
|
-
|
|
1933
|
-
"expanded": false,
|
|
1934
|
-
"items": [
|
|
1891
|
+
"key": "accounts[].ataDevices[].presets",
|
|
1892
|
+
"type": "tabarray",
|
|
1893
|
+
"title": "{{ value.name }}",
|
|
1894
|
+
"items": [
|
|
1895
|
+
{
|
|
1896
|
+
"key": "accounts[].ataDevices[].presets[].id",
|
|
1897
|
+
"readonly": true
|
|
1898
|
+
},
|
|
1899
|
+
"accounts[].ataDevices[].presets[].displayType",
|
|
1900
|
+
"accounts[].ataDevices[].presets[].name",
|
|
1901
|
+
"accounts[].ataDevices[].presets[].namePrefix"
|
|
1902
|
+
]
|
|
1903
|
+
}
|
|
1904
|
+
],
|
|
1905
|
+
"condition": {
|
|
1906
|
+
"functionBody": "return model.accounts[arrayIndices[0]].ataDevices[arrayIndices[1]].displayType > 0;"
|
|
1907
|
+
}
|
|
1908
|
+
},
|
|
1935
1909
|
{
|
|
1936
|
-
"
|
|
1937
|
-
"type": "
|
|
1938
|
-
"
|
|
1910
|
+
"title": "Buttons / Sensors",
|
|
1911
|
+
"type": "section",
|
|
1912
|
+
"expandable": true,
|
|
1913
|
+
"expanded": false,
|
|
1939
1914
|
"items": [
|
|
1940
|
-
|
|
1941
|
-
|
|
1942
|
-
|
|
1943
|
-
|
|
1944
|
-
|
|
1915
|
+
{
|
|
1916
|
+
"key": "accounts[].ataDevices[].buttonsSensors",
|
|
1917
|
+
"type": "tabarray",
|
|
1918
|
+
"title": "{{ value.name || 'button/sensor' }}",
|
|
1919
|
+
"items": [
|
|
1920
|
+
"accounts[].ataDevices[].buttonsSensors[].displayType",
|
|
1921
|
+
"accounts[].ataDevices[].buttonsSensors[].mode",
|
|
1922
|
+
"accounts[].ataDevices[].buttonsSensors[].name",
|
|
1923
|
+
"accounts[].ataDevices[].buttonsSensors[].namePrefix"
|
|
1924
|
+
]
|
|
1925
|
+
}
|
|
1926
|
+
],
|
|
1927
|
+
"condition": {
|
|
1928
|
+
"functionBody": "return model.accounts[arrayIndices[0]].ataDevices[arrayIndices[1]].displayType > 0;"
|
|
1929
|
+
}
|
|
1945
1930
|
}
|
|
1946
1931
|
],
|
|
1947
1932
|
"condition": {
|
|
1948
|
-
"functionBody": "return model.accounts[arrayIndices[0]].ataDevices[arrayIndices[1]].
|
|
1933
|
+
"functionBody": "return model.accounts[arrayIndices[0]].ataDevices[arrayIndices[1]].id !== '0';"
|
|
1949
1934
|
}
|
|
1950
1935
|
}
|
|
1951
|
-
]
|
|
1952
|
-
"condition": {
|
|
1953
|
-
"functionBody": "return model.accounts[arrayIndices].ataDevices.length > 0;"
|
|
1954
|
-
}
|
|
1955
|
-
},
|
|
1956
|
-
{
|
|
1957
|
-
"key": "accounts[]",
|
|
1958
|
-
"type": "tabarray",
|
|
1959
|
-
"title": "{{ value.title }}",
|
|
1960
|
-
"items": [],
|
|
1961
|
-
"condition": {
|
|
1962
|
-
"functionBody": "return model.accounts[arrayIndices].ataDevices.length === 0;"
|
|
1963
|
-
}
|
|
1936
|
+
]
|
|
1964
1937
|
}
|
|
1965
1938
|
]
|
|
1966
1939
|
},
|
|
1967
1940
|
{
|
|
1968
|
-
"key": "accounts[]",
|
|
1969
1941
|
"title": "Heat Pump",
|
|
1970
1942
|
"items": [
|
|
1971
1943
|
{
|
|
@@ -1973,118 +1945,109 @@
|
|
|
1973
1945
|
"type": "tabarray",
|
|
1974
1946
|
"title": "{{ value.name }}",
|
|
1975
1947
|
"items": [
|
|
1976
|
-
{
|
|
1977
|
-
"key": "accounts[].atwDevices[].id",
|
|
1978
|
-
"readonly": true
|
|
1979
|
-
},
|
|
1980
|
-
{
|
|
1981
|
-
"key": "accounts[].atwDevices[].typeString",
|
|
1982
|
-
"readonly": true
|
|
1983
|
-
},
|
|
1984
|
-
"accounts[].atwDevices[].displayMode",
|
|
1985
1948
|
{
|
|
1986
1949
|
"key": "accounts[].atwDevices[]",
|
|
1987
|
-
"type": "section",
|
|
1988
|
-
"title": "Settings",
|
|
1989
|
-
"expandable": true,
|
|
1990
|
-
"expanded": false,
|
|
1991
|
-
"items": [
|
|
1992
|
-
"accounts[].atwDevices[].hideZone",
|
|
1993
|
-
"accounts[].atwDevices[].name",
|
|
1994
|
-
"accounts[].atwDevices[].refreshInterval"
|
|
1995
|
-
],
|
|
1996
|
-
"condition": {
|
|
1997
|
-
"functionBody": "return model.accounts[arrayIndices[0]].atwDevices[arrayIndices[1]].displayMode > 0;"
|
|
1998
|
-
}
|
|
1999
|
-
},
|
|
2000
|
-
{
|
|
2001
|
-
"key": "accounts[].atwDevices[]",
|
|
2002
|
-
"title": "Temperature Sensors",
|
|
2003
|
-
"type": "section",
|
|
2004
|
-
"expandable": true,
|
|
2005
|
-
"expanded": false,
|
|
2006
|
-
"items": [
|
|
2007
|
-
"accounts[].atwDevices[].temperatureSensor",
|
|
2008
|
-
"accounts[].atwDevices[].temperatureSensorFlow",
|
|
2009
|
-
"accounts[].atwDevices[].temperatureSensorReturn",
|
|
2010
|
-
"accounts[].atwDevices[].temperatureSensorFlowZone1",
|
|
2011
|
-
"accounts[].atwDevices[].temperatureSensorReturnZone1",
|
|
2012
|
-
"accounts[].atwDevices[].temperatureSensorFlowWaterTank",
|
|
2013
|
-
"accounts[].atwDevices[].temperatureSensorReturnWaterTank",
|
|
2014
|
-
"accounts[].atwDevices[].temperatureSensorFlowZone2",
|
|
2015
|
-
"accounts[].atwDevices[].temperatureSensorReturnZone2"
|
|
2016
|
-
],
|
|
2017
|
-
"condition": {
|
|
2018
|
-
"functionBody": "return model.accounts[arrayIndices[0]].atwDevices[arrayIndices[1]].displayMode > 0;"
|
|
2019
|
-
}
|
|
2020
|
-
},
|
|
2021
|
-
{
|
|
2022
|
-
"key": "accounts[].atwDevices[].presets",
|
|
2023
|
-
"title": "Presets",
|
|
2024
|
-
"type": "section",
|
|
2025
|
-
"expandable": true,
|
|
2026
|
-
"expanded": false,
|
|
2027
1950
|
"items": [
|
|
2028
1951
|
{
|
|
2029
|
-
"key": "accounts[].atwDevices[].
|
|
2030
|
-
"
|
|
2031
|
-
|
|
1952
|
+
"key": "accounts[].atwDevices[].id",
|
|
1953
|
+
"readonly": true
|
|
1954
|
+
},
|
|
1955
|
+
{
|
|
1956
|
+
"key": "accounts[].atwDevices[].typeString",
|
|
1957
|
+
"readonly": true
|
|
1958
|
+
},
|
|
1959
|
+
"accounts[].atwDevices[].displayType",
|
|
1960
|
+
{
|
|
1961
|
+
"type": "section",
|
|
1962
|
+
"title": "Settings",
|
|
1963
|
+
"expandable": true,
|
|
1964
|
+
"expanded": false,
|
|
1965
|
+
"items": [
|
|
1966
|
+
"accounts[].atwDevices[].hideZone",
|
|
1967
|
+
"accounts[].atwDevices[].name",
|
|
1968
|
+
"accounts[].atwDevices[].refreshInterval"
|
|
1969
|
+
],
|
|
1970
|
+
"condition": {
|
|
1971
|
+
"functionBody": "return model.accounts[arrayIndices[0]].atwDevices[arrayIndices[1]].displayType > 0;"
|
|
1972
|
+
}
|
|
1973
|
+
},
|
|
1974
|
+
{
|
|
1975
|
+
"title": "Temperature Sensors",
|
|
1976
|
+
"type": "section",
|
|
1977
|
+
"expandable": true,
|
|
1978
|
+
"expanded": false,
|
|
1979
|
+
"items": [
|
|
1980
|
+
"accounts[].atwDevices[].temperatureSensor",
|
|
1981
|
+
"accounts[].atwDevices[].temperatureSensorFlow",
|
|
1982
|
+
"accounts[].atwDevices[].temperatureSensorReturn",
|
|
1983
|
+
"accounts[].atwDevices[].temperatureSensorFlowZone1",
|
|
1984
|
+
"accounts[].atwDevices[].temperatureSensorReturnZone1",
|
|
1985
|
+
"accounts[].atwDevices[].temperatureSensorFlowWaterTank",
|
|
1986
|
+
"accounts[].atwDevices[].temperatureSensorReturnWaterTank",
|
|
1987
|
+
"accounts[].atwDevices[].temperatureSensorFlowZone2",
|
|
1988
|
+
"accounts[].atwDevices[].temperatureSensorReturnZone2"
|
|
1989
|
+
],
|
|
1990
|
+
"condition": {
|
|
1991
|
+
"functionBody": "return model.accounts[arrayIndices[0]].atwDevices[arrayIndices[1]].displayType > 0;"
|
|
1992
|
+
}
|
|
1993
|
+
},
|
|
1994
|
+
{
|
|
1995
|
+
"title": "Presets",
|
|
1996
|
+
"type": "section",
|
|
1997
|
+
"expandable": true,
|
|
1998
|
+
"expanded": false,
|
|
2032
1999
|
"items": [
|
|
2033
2000
|
{
|
|
2034
|
-
"key": "accounts[].atwDevices[].presets
|
|
2035
|
-
"
|
|
2036
|
-
|
|
2037
|
-
|
|
2038
|
-
|
|
2039
|
-
|
|
2040
|
-
|
|
2041
|
-
|
|
2042
|
-
|
|
2043
|
-
|
|
2044
|
-
|
|
2045
|
-
|
|
2046
|
-
|
|
2047
|
-
|
|
2048
|
-
|
|
2049
|
-
|
|
2050
|
-
|
|
2051
|
-
|
|
2052
|
-
"expanded": false,
|
|
2053
|
-
"items": [
|
|
2001
|
+
"key": "accounts[].atwDevices[].presets",
|
|
2002
|
+
"type": "tabarray",
|
|
2003
|
+
"title": "{{ value.name }}",
|
|
2004
|
+
"items": [
|
|
2005
|
+
{
|
|
2006
|
+
"key": "accounts[].atwDevices[].presets[].id",
|
|
2007
|
+
"readonly": true
|
|
2008
|
+
},
|
|
2009
|
+
"accounts[].atwDevices[].presets[].displayType",
|
|
2010
|
+
"accounts[].atwDevices[].presets[].name",
|
|
2011
|
+
"accounts[].atwDevices[].presets[].namePrefix"
|
|
2012
|
+
]
|
|
2013
|
+
}
|
|
2014
|
+
],
|
|
2015
|
+
"condition": {
|
|
2016
|
+
"functionBody": "return model.accounts[arrayIndices[0]].atwDevices[arrayIndices[1]].displayType > 0;"
|
|
2017
|
+
}
|
|
2018
|
+
},
|
|
2054
2019
|
{
|
|
2055
|
-
"
|
|
2056
|
-
"type": "
|
|
2057
|
-
"
|
|
2020
|
+
"title": "Buttons / Sensors",
|
|
2021
|
+
"type": "section",
|
|
2022
|
+
"expandable": true,
|
|
2023
|
+
"expanded": false,
|
|
2058
2024
|
"items": [
|
|
2059
|
-
|
|
2060
|
-
|
|
2061
|
-
|
|
2062
|
-
|
|
2063
|
-
|
|
2025
|
+
{
|
|
2026
|
+
"key": "accounts[].atwDevices[].buttonsSensors",
|
|
2027
|
+
"type": "tabarray",
|
|
2028
|
+
"title": "{{ value.name || 'button/sensor' }}",
|
|
2029
|
+
"items": [
|
|
2030
|
+
"accounts[].atwDevices[].buttonsSensors[].displayType",
|
|
2031
|
+
"accounts[].atwDevices[].buttonsSensors[].mode",
|
|
2032
|
+
"accounts[].atwDevices[].buttonsSensors[].name",
|
|
2033
|
+
"accounts[].atwDevices[].buttonsSensors[].namePrefix"
|
|
2034
|
+
]
|
|
2035
|
+
}
|
|
2036
|
+
],
|
|
2037
|
+
"condition": {
|
|
2038
|
+
"functionBody": "return model.accounts[arrayIndices[0]].atwDevices[arrayIndices[1]].displayType > 0;"
|
|
2039
|
+
}
|
|
2064
2040
|
}
|
|
2065
2041
|
],
|
|
2066
2042
|
"condition": {
|
|
2067
|
-
"functionBody": "return model.accounts[arrayIndices[0]].atwDevices[arrayIndices[1]].
|
|
2043
|
+
"functionBody": "return model.accounts[arrayIndices[0]].atwDevices[arrayIndices[1]].id !== '0';"
|
|
2068
2044
|
}
|
|
2069
2045
|
}
|
|
2070
|
-
]
|
|
2071
|
-
"condition": {
|
|
2072
|
-
"functionBody": "return model.accounts[arrayIndices].atwDevices.length > 0;"
|
|
2073
|
-
}
|
|
2074
|
-
},
|
|
2075
|
-
{
|
|
2076
|
-
"key": "accounts[]",
|
|
2077
|
-
"type": "tabarray",
|
|
2078
|
-
"title": "{{ value.title }}",
|
|
2079
|
-
"items": [],
|
|
2080
|
-
"condition": {
|
|
2081
|
-
"functionBody": "return model.accounts[arrayIndices].atwDevices.length === 0;"
|
|
2082
|
-
}
|
|
2046
|
+
]
|
|
2083
2047
|
}
|
|
2084
2048
|
]
|
|
2085
2049
|
},
|
|
2086
2050
|
{
|
|
2087
|
-
"key": "accounts[]",
|
|
2088
2051
|
"title": "Energy Recovery Ventilation",
|
|
2089
2052
|
"items": [
|
|
2090
2053
|
{
|
|
@@ -2092,110 +2055,105 @@
|
|
|
2092
2055
|
"type": "tabarray",
|
|
2093
2056
|
"title": "{{ value.name }}",
|
|
2094
2057
|
"items": [
|
|
2095
|
-
{
|
|
2096
|
-
"key": "accounts[].ervDevices[].id",
|
|
2097
|
-
"readonly": true
|
|
2098
|
-
},
|
|
2099
|
-
{
|
|
2100
|
-
"key": "accounts[].ervDevices[].typeString",
|
|
2101
|
-
"readonly": true
|
|
2102
|
-
},
|
|
2103
|
-
"accounts[].ervDevices[].displayMode",
|
|
2104
|
-
{
|
|
2105
|
-
"key": "accounts[].ervDevices[]",
|
|
2106
|
-
"title": "Settings",
|
|
2107
|
-
"type": "section",
|
|
2108
|
-
"expandable": true,
|
|
2109
|
-
"expanded": false,
|
|
2110
|
-
"items": [
|
|
2111
|
-
"accounts[].ervDevices[].name",
|
|
2112
|
-
"accounts[].ervDevices[].refreshInterval"
|
|
2113
|
-
],
|
|
2114
|
-
"condition": {
|
|
2115
|
-
"functionBody": "return model.accounts[arrayIndices[0]].ervDevices[arrayIndices[1]].displayMode > 0;"
|
|
2116
|
-
}
|
|
2117
|
-
},
|
|
2118
2058
|
{
|
|
2119
2059
|
"key": "accounts[].ervDevices[]",
|
|
2120
|
-
"title": "Temperature Sensors",
|
|
2121
|
-
"type": "section",
|
|
2122
|
-
"expandable": true,
|
|
2123
|
-
"expanded": false,
|
|
2124
|
-
"items": [
|
|
2125
|
-
"accounts[].ervDevices[].temperatureSensor",
|
|
2126
|
-
"accounts[].ervDevices[].temperatureSensorOutdoor",
|
|
2127
|
-
"accounts[].ervDevices[].temperatureSensorSupply"
|
|
2128
|
-
],
|
|
2129
|
-
"condition": {
|
|
2130
|
-
"functionBody": "return model.accounts[arrayIndices[0]].ervDevices[arrayIndices[1]].displayMode > 0;"
|
|
2131
|
-
}
|
|
2132
|
-
},
|
|
2133
|
-
{
|
|
2134
|
-
"key": "accounts[].ervDevices[].presets",
|
|
2135
|
-
"title": "Presets",
|
|
2136
|
-
"type": "section",
|
|
2137
|
-
"expandable": true,
|
|
2138
|
-
"expanded": false,
|
|
2139
2060
|
"items": [
|
|
2140
2061
|
{
|
|
2141
|
-
"key": "accounts[].ervDevices[].
|
|
2142
|
-
"
|
|
2143
|
-
|
|
2062
|
+
"key": "accounts[].ervDevices[].id",
|
|
2063
|
+
"readonly": true
|
|
2064
|
+
},
|
|
2065
|
+
{
|
|
2066
|
+
"key": "accounts[].ervDevices[].typeString",
|
|
2067
|
+
"readonly": true
|
|
2068
|
+
},
|
|
2069
|
+
"accounts[].ervDevices[].displayType",
|
|
2070
|
+
{
|
|
2071
|
+
"title": "Settings",
|
|
2072
|
+
"type": "section",
|
|
2073
|
+
"expandable": true,
|
|
2074
|
+
"expanded": false,
|
|
2075
|
+
"items": [
|
|
2076
|
+
"accounts[].ervDevices[].name",
|
|
2077
|
+
"accounts[].ervDevices[].refreshInterval"
|
|
2078
|
+
],
|
|
2079
|
+
"condition": {
|
|
2080
|
+
"functionBody": "return model.accounts[arrayIndices[0]].ervDevices[arrayIndices[1]].displayType > 0;"
|
|
2081
|
+
}
|
|
2082
|
+
},
|
|
2083
|
+
{
|
|
2084
|
+
"title": "Temperature Sensors",
|
|
2085
|
+
"type": "section",
|
|
2086
|
+
"expandable": true,
|
|
2087
|
+
"expanded": false,
|
|
2088
|
+
"items": [
|
|
2089
|
+
"accounts[].ervDevices[].temperatureSensor",
|
|
2090
|
+
"accounts[].ervDevices[].temperatureSensorOutdoor",
|
|
2091
|
+
"accounts[].ervDevices[].temperatureSensorSupply"
|
|
2092
|
+
],
|
|
2093
|
+
"condition": {
|
|
2094
|
+
"functionBody": "return model.accounts[arrayIndices[0]].ervDevices[arrayIndices[1]].displayType > 0;"
|
|
2095
|
+
}
|
|
2096
|
+
},
|
|
2097
|
+
{
|
|
2098
|
+
"title": "Presets",
|
|
2099
|
+
"type": "section",
|
|
2100
|
+
"expandable": true,
|
|
2101
|
+
"expanded": false,
|
|
2144
2102
|
"items": [
|
|
2145
2103
|
{
|
|
2146
|
-
"key": "accounts[].ervDevices[].presets
|
|
2147
|
-
"
|
|
2148
|
-
|
|
2149
|
-
|
|
2150
|
-
|
|
2151
|
-
|
|
2152
|
-
|
|
2153
|
-
|
|
2154
|
-
|
|
2155
|
-
|
|
2156
|
-
|
|
2157
|
-
|
|
2158
|
-
|
|
2159
|
-
|
|
2160
|
-
|
|
2161
|
-
|
|
2162
|
-
|
|
2163
|
-
|
|
2164
|
-
"expanded": false,
|
|
2165
|
-
"items": [
|
|
2104
|
+
"key": "accounts[].ervDevices[].presets",
|
|
2105
|
+
"type": "tabarray",
|
|
2106
|
+
"title": "{{ value.name }}",
|
|
2107
|
+
"items": [
|
|
2108
|
+
{
|
|
2109
|
+
"key": "accounts[].ervDevices[].presets[].id",
|
|
2110
|
+
"readonly": true
|
|
2111
|
+
},
|
|
2112
|
+
"accounts[].ervDevices[].presets[].displayType",
|
|
2113
|
+
"accounts[].ervDevices[].presets[].name",
|
|
2114
|
+
"accounts[].ervDevices[].presets[].namePrefix"
|
|
2115
|
+
]
|
|
2116
|
+
}
|
|
2117
|
+
],
|
|
2118
|
+
"condition": {
|
|
2119
|
+
"functionBody": "return model.accounts[arrayIndices[0]].ervDevices[arrayIndices[1]].displayType > 0;"
|
|
2120
|
+
}
|
|
2121
|
+
},
|
|
2166
2122
|
{
|
|
2167
|
-
"
|
|
2168
|
-
"type": "
|
|
2169
|
-
"
|
|
2123
|
+
"title": "Buttons / Sensors",
|
|
2124
|
+
"type": "section",
|
|
2125
|
+
"expandable": true,
|
|
2126
|
+
"expanded": false,
|
|
2170
2127
|
"items": [
|
|
2171
|
-
|
|
2172
|
-
|
|
2173
|
-
|
|
2174
|
-
|
|
2175
|
-
|
|
2128
|
+
{
|
|
2129
|
+
"key": "accounts[].ervDevices[].buttonsSensors",
|
|
2130
|
+
"type": "tabarray",
|
|
2131
|
+
"title": "{{ value.name || 'button/sensor' }}",
|
|
2132
|
+
"items": [
|
|
2133
|
+
"accounts[].ervDevices[].buttonsSensors[].displayType",
|
|
2134
|
+
"accounts[].ervDevices[].buttonsSensors[].mode",
|
|
2135
|
+
"accounts[].ervDevices[].buttonsSensors[].name",
|
|
2136
|
+
"accounts[].ervDevices[].buttonsSensors[].namePrefix"
|
|
2137
|
+
]
|
|
2138
|
+
}
|
|
2139
|
+
],
|
|
2140
|
+
"condition": {
|
|
2141
|
+
"functionBody": "return model.accounts[arrayIndices[0]].ervDevices[arrayIndices[1]].displayType > 0;"
|
|
2142
|
+
}
|
|
2176
2143
|
}
|
|
2177
2144
|
],
|
|
2178
2145
|
"condition": {
|
|
2179
|
-
"functionBody": "return model.accounts[arrayIndices[0]].ervDevices[arrayIndices[1]].
|
|
2146
|
+
"functionBody": "return model.accounts[arrayIndices[0]].ervDevices[arrayIndices[1]].id !== '0';"
|
|
2180
2147
|
}
|
|
2181
2148
|
}
|
|
2182
|
-
]
|
|
2183
|
-
"condition": {
|
|
2184
|
-
"functionBody": "return model.accounts[arrayIndices].ervDevices.length > 0;"
|
|
2185
|
-
}
|
|
2186
|
-
},
|
|
2187
|
-
{
|
|
2188
|
-
"key": "accounts[]",
|
|
2189
|
-
"type": "tabarray",
|
|
2190
|
-
"title": "{{ value.title }}",
|
|
2191
|
-
"items": [],
|
|
2192
|
-
"condition": {
|
|
2193
|
-
"functionBody": "return model.accounts[arrayIndices].ervDevices.length === 0;"
|
|
2194
|
-
}
|
|
2149
|
+
]
|
|
2195
2150
|
}
|
|
2196
2151
|
]
|
|
2197
2152
|
}
|
|
2198
|
-
]
|
|
2153
|
+
],
|
|
2154
|
+
"condition": {
|
|
2155
|
+
"functionBody": "return model.accounts[arrayIndices].type !== 'disabled';"
|
|
2156
|
+
}
|
|
2199
2157
|
},
|
|
2200
2158
|
{
|
|
2201
2159
|
"key": "accounts[]",
|
|
@@ -2275,7 +2233,7 @@
|
|
|
2275
2233
|
}
|
|
2276
2234
|
],
|
|
2277
2235
|
"condition": {
|
|
2278
|
-
"functionBody": "return model.accounts[arrayIndices].ataDevices.length > 0 || model.accounts[arrayIndices].atwDevices.length > 0 || model.accounts[arrayIndices].ervDevices.length > 0;"
|
|
2236
|
+
"functionBody": "return model.accounts[arrayIndices].type !== 'disabled' && (model.accounts[arrayIndices].ataDevices.length > 0 || model.accounts[arrayIndices].atwDevices.length > 0 || model.accounts[arrayIndices].ervDevices.length > 0);"
|
|
2279
2237
|
}
|
|
2280
2238
|
}
|
|
2281
2239
|
]
|