homebridge-virtual-accessories 3.14.19 → 3.14.20
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/config.schema.json +1 -1
- package/package.json +2 -2
- package/schemas/config.schema.es.json +117 -13
- package/schemas/config.schema.nl.json +9 -14
package/config.schema.json
CHANGED
|
@@ -124,7 +124,7 @@
|
|
|
124
124
|
"description": "Accessory name as it will be displayed in HomeKit",
|
|
125
125
|
"type": "string",
|
|
126
126
|
"required": true,
|
|
127
|
-
"pattern": "^[
|
|
127
|
+
"pattern": "^(?=[\\p{L}\\p{N}])[\\p{L}\\p{N}\\s']*(?<=[\\p{L}\\p{N}])$"
|
|
128
128
|
},
|
|
129
129
|
"accessoryType": {
|
|
130
130
|
"title": "Accessory Type",
|
package/package.json
CHANGED
|
@@ -2,7 +2,7 @@
|
|
|
2
2
|
"name": "homebridge-virtual-accessories",
|
|
3
3
|
"displayName": "Virtual Accessories for Homebridge",
|
|
4
4
|
"type": "module",
|
|
5
|
-
"version": "3.14.
|
|
5
|
+
"version": "3.14.20",
|
|
6
6
|
"description": "Virtual HomeKit accessories for Homebridge.",
|
|
7
7
|
"author": "justjam2013",
|
|
8
8
|
"license": "MIT",
|
|
@@ -122,7 +122,7 @@
|
|
|
122
122
|
"devDependencies": {
|
|
123
123
|
"@eslint/js": "^9.39.1",
|
|
124
124
|
"@types/cheerio": "^1.0.0",
|
|
125
|
-
"@types/node": "^
|
|
125
|
+
"@types/node": "^26.0.0",
|
|
126
126
|
"eslint": "^10.0.1",
|
|
127
127
|
"homebridge": "^2.0.0-beta.64",
|
|
128
128
|
"nodemon": "^3.1.11",
|
|
@@ -123,7 +123,8 @@
|
|
|
123
123
|
"title": "Nombre del Accesorio",
|
|
124
124
|
"description": "Nombre del accesorio tal como se mostrará en HomeKit",
|
|
125
125
|
"type": "string",
|
|
126
|
-
"required": true
|
|
126
|
+
"required": true,
|
|
127
|
+
"pattern": "^(?=[\\p{L}\\p{N}])[\\p{L}\\p{N}\\s']*(?<=[\\p{L}\\p{N}])$"
|
|
127
128
|
},
|
|
128
129
|
"accessoryType": {
|
|
129
130
|
"title": "Tipo de Accesorio",
|
|
@@ -305,9 +306,17 @@
|
|
|
305
306
|
"oneOf": [
|
|
306
307
|
{ "title": "Calefactor", "enum": ["heater"] },
|
|
307
308
|
{ "title": "Aire Acondicionado", "enum": ["cooler"] },
|
|
308
|
-
{ "title": "Calefactor y Aire Acondicionado", "enum": ["auto"] }
|
|
309
|
+
{ "title": "Calefactor y Aire Acondicionado", "enum": ["auto"] },
|
|
310
|
+
{ "title": "Sauna", "enum": ["sauna"] }
|
|
309
311
|
]
|
|
310
312
|
},
|
|
313
|
+
"hasFan": {
|
|
314
|
+
"title": "Tiene ventilador",
|
|
315
|
+
"type": "boolean",
|
|
316
|
+
"condition": {
|
|
317
|
+
"functionBody": "return model.devices[arrayIndices].heaterCooler && ['heater', 'cooler', 'auto'].includes(model.devices[arrayIndices].heaterCooler.type);"
|
|
318
|
+
}
|
|
319
|
+
},
|
|
311
320
|
"temperatureDisplayUnits": {
|
|
312
321
|
"title": "Unidades de Temperatura *",
|
|
313
322
|
"type": "string",
|
|
@@ -356,6 +365,26 @@
|
|
|
356
365
|
"functionBody": "return model.devices[arrayIndices].heaterCooler && model.devices[arrayIndices].heaterCooler.temperatureDisplayUnits === 'fahrenheit' && ['cooler', 'auto'].includes(model.devices[arrayIndices].heaterCooler.type);"
|
|
357
366
|
}
|
|
358
367
|
},
|
|
368
|
+
"saunaHeatingThresholdCelsius": {
|
|
369
|
+
"title": "Umbral de Calefacción de la Sauna ºC *",
|
|
370
|
+
"description": "Nivel de temperatura por debajo del cual se enciende el calefactor de la sauna (15ºC - 90ºC)",
|
|
371
|
+
"type": "integer",
|
|
372
|
+
"minimum": 15,
|
|
373
|
+
"maximum": 90,
|
|
374
|
+
"condition": {
|
|
375
|
+
"functionBody": "return model.devices[arrayIndices].heaterCooler && model.devices[arrayIndices].heaterCooler.temperatureDisplayUnits === 'celsius' && ['sauna'].includes(model.devices[arrayIndices].heaterCooler.type);"
|
|
376
|
+
}
|
|
377
|
+
},
|
|
378
|
+
"saunaHeatingThresholdFahrenheit": {
|
|
379
|
+
"title": "Umbral de Calefacción de la Sauna ºF *",
|
|
380
|
+
"description": "Nivel de temperatura por debajo del cual se enciende el calefactor de la sauna (59ºF - 194ºF)",
|
|
381
|
+
"type": "integer",
|
|
382
|
+
"minimum": 59,
|
|
383
|
+
"maximum": 194,
|
|
384
|
+
"condition": {
|
|
385
|
+
"functionBody": "return model.devices[arrayIndices].heaterCooler && model.devices[arrayIndices].heaterCooler.temperatureDisplayUnits === 'fahrenheit' && ['sauna'].includes(model.devices[arrayIndices].heaterCooler.type);"
|
|
386
|
+
}
|
|
387
|
+
},
|
|
359
388
|
"": {
|
|
360
389
|
"title": "",
|
|
361
390
|
"description": "Nota: El valor del umbral de calefacción **debe ser menor** que el valor del umbral de refrigeración",
|
|
@@ -668,27 +697,24 @@
|
|
|
668
697
|
"title": "Sistema de Seguridad",
|
|
669
698
|
"type": "object",
|
|
670
699
|
"properties": {
|
|
671
|
-
"": {
|
|
700
|
+
"armedModesTitle": {
|
|
672
701
|
"title": "Modos Armados",
|
|
673
702
|
"description": "Modos del sistema de seguridad (Se requieren 'Fuera de Casa' y 'En Casa')",
|
|
674
703
|
"type": "object",
|
|
675
704
|
"properties": {}
|
|
676
705
|
},
|
|
677
706
|
"hasAwayMode": {
|
|
678
|
-
"title": "Modo Fuera de Casa",
|
|
679
|
-
"type": "
|
|
680
|
-
"
|
|
681
|
-
"default": true
|
|
707
|
+
"title": "❎ Modo Fuera de Casa",
|
|
708
|
+
"type": "object",
|
|
709
|
+
"properties": {}
|
|
682
710
|
},
|
|
683
711
|
"hasHomeMode": {
|
|
684
|
-
"title": "Modo En Casa",
|
|
685
|
-
"type": "
|
|
686
|
-
"
|
|
687
|
-
"default": true
|
|
712
|
+
"title": "❎ Modo En Casa",
|
|
713
|
+
"type": "object",
|
|
714
|
+
"properties": {}
|
|
688
715
|
},
|
|
689
716
|
"hasNightMode": {
|
|
690
717
|
"title": "Modo Noche",
|
|
691
|
-
"description": "El modo noche es un modo armado personalizado",
|
|
692
718
|
"type": "boolean"
|
|
693
719
|
},
|
|
694
720
|
"defaultState": {
|
|
@@ -872,7 +898,8 @@
|
|
|
872
898
|
{ "title": "Cronograma Cron", "enum": ["cron"] },
|
|
873
899
|
{ "title": "Eventos Solares (Amanecer/Atardecer)", "enum": ["sunevents"] },
|
|
874
900
|
{ "title": "Webhook", "enum": ["webhook"] },
|
|
875
|
-
{ "title": "Disparador al Iniciar Homebridge", "enum": ["startup"] }
|
|
901
|
+
{ "title": "Disparador al Iniciar Homebridge", "enum": ["startup"] },
|
|
902
|
+
{ "title": "Disparador de Niveles de Stock de Ikea Matter", "enum": ["ikeamatterstock"] }
|
|
876
903
|
]
|
|
877
904
|
}
|
|
878
905
|
},
|
|
@@ -1118,6 +1145,13 @@
|
|
|
1118
1145
|
"type": "integer",
|
|
1119
1146
|
"minimum": 0
|
|
1120
1147
|
},
|
|
1148
|
+
"interval": {
|
|
1149
|
+
"title": "Intervalo entres Pings",
|
|
1150
|
+
"description": "Intervalo entres pings en minutos - bajo para infraestructura crítica, más alto para dispositivos no críticos (predeterminado: 1 minuto)",
|
|
1151
|
+
"type": "integer",
|
|
1152
|
+
"minimum": 1,
|
|
1153
|
+
"maximum": 15
|
|
1154
|
+
},
|
|
1121
1155
|
"isDisabled": {
|
|
1122
1156
|
"title": "Desactivar Disparador",
|
|
1123
1157
|
"description": "Encender o apagar el disparador",
|
|
@@ -1255,6 +1289,55 @@
|
|
|
1255
1289
|
"condition": {
|
|
1256
1290
|
"functionBody": "return model.devices[arrayIndices].sensor && model.devices[arrayIndices].sensor.trigger === 'startup';"
|
|
1257
1291
|
}
|
|
1292
|
+
},
|
|
1293
|
+
"ikeaMatterStockTrigger": {
|
|
1294
|
+
"title": "Disparador de disponibilidad de dispositivo Matter de IKEA",
|
|
1295
|
+
"type": "object",
|
|
1296
|
+
"properties": {
|
|
1297
|
+
"country": {
|
|
1298
|
+
"title": "País *",
|
|
1299
|
+
"type": "string",
|
|
1300
|
+
"oneOf": [
|
|
1301
|
+
{ "title": "Australia", "enum": ["Australia"] },
|
|
1302
|
+
{ "title": "Canadá", "enum": ["Canada"] },
|
|
1303
|
+
{ "title": "Japón", "enum": ["Japan"] },
|
|
1304
|
+
{ "title": "Corea", "enum": ["Korea"] },
|
|
1305
|
+
{ "title": "Nueva Zelanda", "enum": ["New Zealand"] },
|
|
1306
|
+
{ "title": "Reino Unido", "enum": ["UK"] },
|
|
1307
|
+
{ "title": "EE.UU", "enum": ["USA"] }
|
|
1308
|
+
]
|
|
1309
|
+
},
|
|
1310
|
+
"storeLocation": {
|
|
1311
|
+
"title": "Ubicación de la tienda *",
|
|
1312
|
+
"description": "Ubicación de la tienda (utilice el buscador de tiendas de IKEA)",
|
|
1313
|
+
"type": "string"
|
|
1314
|
+
},
|
|
1315
|
+
"itemName": {
|
|
1316
|
+
"title": "Artículo *",
|
|
1317
|
+
"type": "string",
|
|
1318
|
+
"oneOf": [
|
|
1319
|
+
{ "title": "ALPSTUGA", "enum": ["ALPSTUGA"] },
|
|
1320
|
+
{ "title": "BILRESA", "enum": ["BILRESA"] },
|
|
1321
|
+
{ "title": "GRILLPLATS", "enum": ["GRILLPLATS"] },
|
|
1322
|
+
{ "title": "KLIPPBOK", "enum": ["KLIPPBOK"] },
|
|
1323
|
+
{ "title": "MYGGBETT", "enum": ["MYGGBETT"] },
|
|
1324
|
+
{ "title": "MYGGSPRAY", "enum": ["MYGGSPRAY"] },
|
|
1325
|
+
{ "title": "TIMMERFLOTTE", "enum": ["TIMMERFLOTTE"] },
|
|
1326
|
+
{ "title": "KAJPLATS - E26/E27 - Color (1055/1100/1160 lumen)", "enum": ["KAJPLATS-COLOR-M"] },
|
|
1327
|
+
{ "title": "KAJPLATS - E26/E27 - White (450/470/485 lumen)", "enum": ["KAJPLATS-WHITE-S"] },
|
|
1328
|
+
{ "title": "KAJPLATS - E26/E27 - White (1055/1100/1160 lumen)", "enum": ["KAJPLATS-WHITE-M"] },
|
|
1329
|
+
{ "title": "KAJPLATS - E26/E27 - White (1520/1521/1600 lumen)", "enum": ["KAJPLATS-WHITE-L"] }
|
|
1330
|
+
]
|
|
1331
|
+
},
|
|
1332
|
+
"isDisabled": {
|
|
1333
|
+
"title": "Desactivar Disparador",
|
|
1334
|
+
"description": "Encender o apagar el disparador",
|
|
1335
|
+
"type": "boolean"
|
|
1336
|
+
}
|
|
1337
|
+
},
|
|
1338
|
+
"condition": {
|
|
1339
|
+
"functionBody": "return model.devices[arrayIndices].sensor && model.devices[arrayIndices].sensor.trigger === 'ikeamatterstock';"
|
|
1340
|
+
}
|
|
1258
1341
|
}
|
|
1259
1342
|
},
|
|
1260
1343
|
"allOf": [
|
|
@@ -1682,6 +1765,27 @@
|
|
|
1682
1765
|
}
|
|
1683
1766
|
}
|
|
1684
1767
|
}
|
|
1768
|
+
},
|
|
1769
|
+
{
|
|
1770
|
+
"if": {
|
|
1771
|
+
"properties": {
|
|
1772
|
+
"sensor": {
|
|
1773
|
+
"properties": {
|
|
1774
|
+
"trigger": { "const": "ikeamatterstock" }
|
|
1775
|
+
},
|
|
1776
|
+
"required": [ "trigger" ]
|
|
1777
|
+
}
|
|
1778
|
+
},
|
|
1779
|
+
"required": [ "sensor" ]
|
|
1780
|
+
},
|
|
1781
|
+
"then": {
|
|
1782
|
+
"required": [ "ikeaMatterStockTrigger" ],
|
|
1783
|
+
"properties": {
|
|
1784
|
+
"ikeaMatterStockTrigger": {
|
|
1785
|
+
"required": [ "country", "storeLocation", "itemName" ]
|
|
1786
|
+
}
|
|
1787
|
+
}
|
|
1788
|
+
}
|
|
1685
1789
|
}
|
|
1686
1790
|
]
|
|
1687
1791
|
}
|
|
@@ -124,7 +124,7 @@
|
|
|
124
124
|
"description": "Accessoire naam zoals het wordt weergegeven in HomeKit",
|
|
125
125
|
"type": "string",
|
|
126
126
|
"required": true,
|
|
127
|
-
"pattern": "^[
|
|
127
|
+
"pattern": "^(?=[\\p{L}\\p{N}])[\\p{L}\\p{N}\\s']*(?<=[\\p{L}\\p{N}])$"
|
|
128
128
|
},
|
|
129
129
|
"accessoryType": {
|
|
130
130
|
"title": "Accessoire Type",
|
|
@@ -162,18 +162,6 @@
|
|
|
162
162
|
"functionBody": "return ['airpurifier', 'door', 'fan', 'garagedoor', 'heatercooler', 'humidifierdehumidifier', 'lightbulb', 'lock', 'securitysystem', 'speaker', 'switch', 'television', 'valve', 'window', 'windowcovering'].includes(model.devices[arrayIndices].accessoryType);"
|
|
163
163
|
}
|
|
164
164
|
},
|
|
165
|
-
"deviceType": {
|
|
166
|
-
"title": "Soort Verbinding *",
|
|
167
|
-
"description": "Accessoire is HomeKit of Matter Verbinding",
|
|
168
|
-
"type": "string",
|
|
169
|
-
"oneOf": [
|
|
170
|
-
{ "title": "HomeKit", "const": "homekit" },
|
|
171
|
-
{ "title": "Matter", "const": "matter" }
|
|
172
|
-
],
|
|
173
|
-
"condition": {
|
|
174
|
-
"functionBody": "return model.devices[arrayIndices].accessoryType == 'switch';"
|
|
175
|
-
}
|
|
176
|
-
},
|
|
177
165
|
"airPurifier": {
|
|
178
166
|
"title": "Luchtreiniger",
|
|
179
167
|
"type": "object",
|
|
@@ -1142,7 +1130,7 @@
|
|
|
1142
1130
|
}
|
|
1143
1131
|
},
|
|
1144
1132
|
"pingTrigger": {
|
|
1145
|
-
"title": "Ping
|
|
1133
|
+
"title": "Ping een Host als activering",
|
|
1146
1134
|
"type": "object",
|
|
1147
1135
|
"properties": {
|
|
1148
1136
|
"host": {
|
|
@@ -1157,6 +1145,13 @@
|
|
|
1157
1145
|
"type": "integer",
|
|
1158
1146
|
"minimum": 0
|
|
1159
1147
|
},
|
|
1148
|
+
"interval": {
|
|
1149
|
+
"title": "Interval Tussen Pings",
|
|
1150
|
+
"description": "Interval tussen pings in minuten - laag voor kritieke infrastructuur, hoger voor niet-kritieke apparaten (standaard: 1 minuut)",
|
|
1151
|
+
"type": "integer",
|
|
1152
|
+
"minimum": 1,
|
|
1153
|
+
"maximum": 15
|
|
1154
|
+
},
|
|
1160
1155
|
"isDisabled": {
|
|
1161
1156
|
"title": "activering uitschakelen",
|
|
1162
1157
|
"description": "uitschakelen/inschakelen van activering",
|