iobroker-ucl 1.4.15 → 1.4.16

Sign up to get free protection for your applications and to get access to all the features.
@@ -31,6 +31,7 @@ var deviceHomematicFunkSchaltaktor = "FunkSchaltaktor";
31
31
  var deviceHomematicWindow = "Window";
32
32
  var deviceHomematicSteckdose = "Steckdose";
33
33
  var deviceHomematicHeizkoerper = "Heizkoerper";
34
+ var deviceHomematicHeizkoerpergruppe = "Heizkoerpergruppe";
34
35
  var deviceHomematicDimmer = "Dimmer";
35
36
  var AbstractHomematic = /** @class */ (function () {
36
37
  function AbstractHomematic(adapter, id, baseState, etage, raum, device) {
@@ -50,6 +51,11 @@ var AbstractHomematic = /** @class */ (function () {
50
51
  AbstractHomematic.prototype.getBaseState = function () {
51
52
  return this.baseState;
52
53
  };
54
+ // hm-rpc.0.000A1D89A5E65F --> 000A1D89A5E65F
55
+ AbstractHomematic.prototype.getBaseStateShort = function () {
56
+ var device = this.baseState.substring(this.baseState.lastIndexOf('.') + 1);
57
+ return device;
58
+ };
53
59
  AbstractHomematic.prototype.getType = function () {
54
60
  return ""; //getObject(this.baseState).native.TYPE;
55
61
  };
@@ -339,6 +345,116 @@ var HomematicHeizkoerper = /** @class */ (function (_super) {
339
345
  return HomematicHeizkoerper;
340
346
  }(AbstractHomematic));
341
347
  exports.HomematicHeizkoerper = HomematicHeizkoerper;
348
+ var HomematicHeizkoerpergruppe = /** @class */ (function (_super) {
349
+ __extends(HomematicHeizkoerpergruppe, _super);
350
+ function HomematicHeizkoerpergruppe(adapter, id, baseState, etage, raum, device) {
351
+ var _this = _super.call(this, adapter, id, baseState, etage, raum, device) || this;
352
+ // Dieser Label wird später im Jarvis Formular angezeigt:
353
+ var labelState = "0_userdata.0.homematic.labels." + _this.getDeviceId();
354
+ _this.adapter.createState(labelState, "", {
355
+ name: labelState,
356
+ desc: labelState,
357
+ type: 'string',
358
+ read: true,
359
+ write: true
360
+ });
361
+ setTimeout(function (time) {
362
+ _this.adapter.setState(labelState, device + " (" + _this.getDeviceId() + ")");
363
+ }, 1000);
364
+ // Aliase erzeugen um diese Datenpunkte einfacher bei den Jarvis Geräten hinzuzufügen (muss dann nur die ID austauschen):
365
+ _this.createAlias(_this.getBaseState() + ".1.ACTUAL_TEMPERATURE", "alias.0.heizkoerper." + _this.getDeviceId() + ".ACTUAL_TEMPERATURE"); // hm-rpc.0.000A1D89A5E65F.1.ACTUAL_TEMPERATURE
366
+ _this.createAlias(_this.getBaseState() + ".1.SET_POINT_TEMPERATURE", "alias.0.heizkoerper." + _this.getDeviceId() + ".SET_POINT_TEMPERATURE"); // hm-rpc.0.000A1D89A5E65F.1.SET_POINT_TEMPERATURE
367
+ _this.createAlias(_this.getBaseState() + ".1.LEVEL", "alias.0.heizkoerper." + _this.getDeviceId() + ".LEVEL"); // hm-rpc.0.000A1D89A5E65F.1.LEVEL
368
+ _this.createAlias(_this.getBaseState() + ".0.UNREACH", "alias.0.heizkoerper." + _this.getDeviceId() + ".UNREACH"); // hm-rpc.0.000A1D89A5887A.0.UNREACH
369
+ _this.createAlias(_this.getBaseState() + ".1.ACTIVE_PROFILE", "alias.0.heizkoerper." + _this.getDeviceId() + ".ACTIVE_PROFILE"); // hm-rpc.1.INT0000001.1.ACTIVE_PROFILE
370
+ _this.createAlias(_this.getBaseState() + ".1.HUMIDITY", "alias.0.heizkoerper." + _this.getDeviceId() + ".HUMIDITY"); // hm-rpc.1.INT0000001.1.HUMIDITY
371
+ _this.createAlias(_this.getBaseState() + ".1.SET_POINT_MODE", "alias.0.heizkoerper." + _this.getDeviceId() + ".AUTO_MODUS_READ_ONLY"); // hm-rpc.1.INT0000042.1.SET_POINT_MODE
372
+ // Datenpunkte gleich mit InfluxDB protokollieren:
373
+ _this.activateInfluxDB("alias.0.heizkoerper." + _this.getDeviceId() + ".ACTUAL_TEMPERATURE");
374
+ _this.activateInfluxDB("alias.0.heizkoerper." + _this.getDeviceId() + ".SET_POINT_TEMPERATURE");
375
+ _this.activateInfluxDB("alias.0.heizkoerper." + _this.getDeviceId() + ".LEVEL");
376
+ _this.activateInfluxDB("alias.0.heizkoerper." + _this.getDeviceId() + ".ACTIVE_PROFILE");
377
+ return _this;
378
+ }
379
+ HomematicHeizkoerpergruppe.prototype.getTemperatureIst = function () {
380
+ return this.adapter.getState(this.baseState + ".1.ACTUAL_TEMPERATURE").val; // hm-rpc.0.000A9BE9A03005.1.ACTUAL_TEMPERATURE
381
+ };
382
+ HomematicHeizkoerpergruppe.prototype.getTemperatureSoll = function () {
383
+ return this.adapter.getState(this.baseState + ".1.SET_POINT_TEMPERATURE").val; // hm-rpc.0.000A9BE9A03005.1.SET_POINT_TEMPERATURE
384
+ };
385
+ HomematicHeizkoerpergruppe.prototype.getCategoryAsString = function () {
386
+ return "Heizkörpergruppe";
387
+ };
388
+ HomematicHeizkoerpergruppe.prototype.getDeviceId = function () {
389
+ return "HG" + this.id.toString().padStart(3, '0');
390
+ };
391
+ HomematicHeizkoerpergruppe.prototype.switchToProfil = function (profileIndex) {
392
+ this.adapter.sendTo('hm-rpc.1', 'setValue', { ID: this.getBaseStateShort() + ":1", paramType: 'ACTIVE_PROFILE', params: profileIndex }, function (res) {
393
+ });
394
+ };
395
+ HomematicHeizkoerpergruppe.prototype.getOeffnungsgrad = function () {
396
+ return this.adapter.getState(this.baseState + ".1.LEVEL").val; // hm-rpc.0.000A1F29932CD5.1.LEVEL
397
+ };
398
+ HomematicHeizkoerpergruppe.prototype.isAutoModus = function () {
399
+ if (this.adapter.getState(this.baseState + ".1.SET_POINT_MODE").val != 0) {
400
+ return false;
401
+ }
402
+ else {
403
+ return true;
404
+ }
405
+ };
406
+ HomematicHeizkoerpergruppe.prototype.getProfileOeffnungsgrad = function () {
407
+ return this.adapter.getState(this.baseState + ".1.LEVEL").val; // hm-rpc.0.000A1F29932CD5.1.LEVEL
408
+ };
409
+ HomematicHeizkoerpergruppe.prototype.getProfile = function () {
410
+ return this.adapter.getState(this.baseState + ".1.ACTIVE_PROFILE").val;
411
+ };
412
+ HomematicHeizkoerpergruppe.prototype.getCategory = function () {
413
+ return deviceHomematicHeizkoerpergruppe;
414
+ };
415
+ HomematicHeizkoerpergruppe.prototype.activateInfluxDB = function (datenpunkt) {
416
+ var objId = datenpunkt; //"alias.0.rgb.Z03.level";
417
+ // @ts-ignore
418
+ var obj = this.adapter.getObject(objId);
419
+ //let obj = this.adapter.getObject(objId) as unknown as this.adapter.iobJS.StateObject;
420
+ if (!obj.common.custom) {
421
+ obj.common.custom = {};
422
+ }
423
+ obj.common.custom['influxdb.0'] = {
424
+ "enabled": true,
425
+ "storageType": "",
426
+ "aliasId": "",
427
+ "debounceTime": 0,
428
+ "blockTime": 0,
429
+ "changesOnly": true,
430
+ "changesRelogInterval": 60,
431
+ "changesMinDelta": 0,
432
+ "ignoreBelowNumber": "",
433
+ "disableSkippedValueLogging": false,
434
+ "enableDebugLogs": false,
435
+ "debounce": 1000
436
+ };
437
+ this.adapter.setObject(objId, obj);
438
+ };
439
+ HomematicHeizkoerpergruppe.prototype.createAlias = function (originalDatenpunkt, aliasDatenpunkt) {
440
+ this.adapter.setObject(aliasDatenpunkt, {
441
+ type: 'state',
442
+ common: {
443
+ name: this.adapter.getObject(originalDatenpunkt).common.name, //'Heizung Ist Temperatur',
444
+ type: this.adapter.getObject(originalDatenpunkt).common.type, // 'number',
445
+ unit: this.adapter.getObject(originalDatenpunkt).common.unit, //'°C',
446
+ read: true,
447
+ write: true,
448
+ role: this.adapter.getObject(originalDatenpunkt).common.role, //'value.temperature',
449
+ alias: {
450
+ id: originalDatenpunkt
451
+ }
452
+ },
453
+ native: {}
454
+ });
455
+ };
456
+ return HomematicHeizkoerpergruppe;
457
+ }(AbstractHomematic));
342
458
  var DimmerAlexaScheme = /** @class */ (function () {
343
459
  function DimmerAlexaScheme(alexaName, level) {
344
460
  this.alexaName = alexaName;
@@ -768,6 +884,7 @@ module.exports = {
768
884
  HomematicWindow: HomematicWindow,
769
885
  HomematicSteckdose: HomematicSteckdose,
770
886
  HomematicHeizkoerper: HomematicHeizkoerper,
887
+ HomematicHeizkoerpergruppe: HomematicHeizkoerpergruppe,
771
888
  HomematicDimmer: HomematicDimmer,
772
889
  HomematicWandthermostat: HomematicWandthermostat,
773
890
  HomematicFussbodenheizung: HomematicFussbodenheizung,
@@ -784,6 +901,7 @@ module.exports = {
784
901
  HomematicFunkschaltaktor: HomematicFunkschaltaktor,
785
902
  DimmerAlexaScheme: DimmerAlexaScheme,
786
903
  DimmerTasterScheme: DimmerTasterScheme,
904
+ deviceHomematicHeizkoerpergruppe: deviceHomematicHeizkoerpergruppe,
787
905
  deviceHomematicWandthermostat: deviceHomematicWandthermostat,
788
906
  deviceHomematicPraesenzmelder: deviceHomematicPraesenzmelder,
789
907
  deviceHomematicWetterstation: deviceHomematicWetterstation,
@@ -13,6 +13,7 @@ const deviceHomematicFunkSchaltaktor: string = "FunkSchaltaktor";
13
13
  const deviceHomematicWindow: string = "Window";
14
14
  const deviceHomematicSteckdose: string = "Steckdose";
15
15
  const deviceHomematicHeizkoerper: string = "Heizkoerper";
16
+ const deviceHomematicHeizkoerpergruppe: string = "Heizkoerpergruppe";
16
17
  const deviceHomematicDimmer: string = "Dimmer";
17
18
 
18
19
  export abstract class AbstractHomematic {
@@ -44,6 +45,12 @@ export abstract class AbstractHomematic {
44
45
  return this.baseState;
45
46
  }
46
47
 
48
+ // hm-rpc.0.000A1D89A5E65F --> 000A1D89A5E65F
49
+ public getBaseStateShort() : string {
50
+ let device = this.baseState.substring(this.baseState.lastIndexOf('.')+1);
51
+ return device;
52
+ }
53
+
47
54
  public getType(): string {
48
55
  return "";//getObject(this.baseState).native.TYPE;
49
56
  }
@@ -358,6 +365,134 @@ export class HomematicHeizkoerper extends AbstractHomematic {
358
365
  }
359
366
  }
360
367
 
368
+ class HomematicHeizkoerpergruppe extends AbstractHomematic {
369
+
370
+ constructor(adapter: any, id: number, baseState: string, etage: string, raum: string, device: string) {
371
+ super(adapter, id, baseState, etage, raum, device);
372
+
373
+ // Dieser Label wird später im Jarvis Formular angezeigt:
374
+ var labelState = "0_userdata.0.homematic.labels." + this.getDeviceId();
375
+ this.adapter.createState(labelState, "", {
376
+ name: labelState,
377
+ desc: labelState,
378
+ type: 'string',
379
+ read: true,
380
+ write: true
381
+ });
382
+ setTimeout(time => {
383
+ this.adapter.setState(labelState, device + " (" + this.getDeviceId() + ")");
384
+ }, 1000);
385
+
386
+ // Aliase erzeugen um diese Datenpunkte einfacher bei den Jarvis Geräten hinzuzufügen (muss dann nur die ID austauschen):
387
+ this.createAlias(this.getBaseState() + ".1.ACTUAL_TEMPERATURE", "alias.0.heizkoerper." + this.getDeviceId() + ".ACTUAL_TEMPERATURE"); // hm-rpc.0.000A1D89A5E65F.1.ACTUAL_TEMPERATURE
388
+ this.createAlias(this.getBaseState() + ".1.SET_POINT_TEMPERATURE", "alias.0.heizkoerper." + this.getDeviceId() + ".SET_POINT_TEMPERATURE"); // hm-rpc.0.000A1D89A5E65F.1.SET_POINT_TEMPERATURE
389
+ this.createAlias(this.getBaseState() + ".1.LEVEL", "alias.0.heizkoerper." + this.getDeviceId() + ".LEVEL"); // hm-rpc.0.000A1D89A5E65F.1.LEVEL
390
+ this.createAlias(this.getBaseState() + ".0.UNREACH", "alias.0.heizkoerper." + this.getDeviceId() + ".UNREACH"); // hm-rpc.0.000A1D89A5887A.0.UNREACH
391
+ this.createAlias(this.getBaseState() + ".1.ACTIVE_PROFILE", "alias.0.heizkoerper." + this.getDeviceId() + ".ACTIVE_PROFILE"); // hm-rpc.1.INT0000001.1.ACTIVE_PROFILE
392
+ this.createAlias(this.getBaseState() + ".1.HUMIDITY", "alias.0.heizkoerper." + this.getDeviceId() + ".HUMIDITY"); // hm-rpc.1.INT0000001.1.HUMIDITY
393
+ this.createAlias(this.getBaseState() + ".1.SET_POINT_MODE", "alias.0.heizkoerper." + this.getDeviceId() + ".AUTO_MODUS_READ_ONLY");// hm-rpc.1.INT0000042.1.SET_POINT_MODE
394
+
395
+ // Datenpunkte gleich mit InfluxDB protokollieren:
396
+ this.activateInfluxDB("alias.0.heizkoerper." + this.getDeviceId() + ".ACTUAL_TEMPERATURE");
397
+ this.activateInfluxDB("alias.0.heizkoerper." + this.getDeviceId() + ".SET_POINT_TEMPERATURE");
398
+ this.activateInfluxDB("alias.0.heizkoerper." + this.getDeviceId() + ".LEVEL");
399
+ this.activateInfluxDB("alias.0.heizkoerper." + this.getDeviceId() + ".ACTIVE_PROFILE");
400
+ }
401
+
402
+ public getTemperatureIst() : number {
403
+ return this.adapter.getState(this.baseState + ".1.ACTUAL_TEMPERATURE").val; // hm-rpc.0.000A9BE9A03005.1.ACTUAL_TEMPERATURE
404
+ }
405
+
406
+ public getTemperatureSoll() : number {
407
+ return this.adapter.getState(this.baseState + ".1.SET_POINT_TEMPERATURE").val; // hm-rpc.0.000A9BE9A03005.1.SET_POINT_TEMPERATURE
408
+ }
409
+
410
+ public getCategoryAsString(): string {
411
+ return "Heizkörpergruppe";
412
+ }
413
+
414
+ public getDeviceId() : string {
415
+ return "HG" + this.id.toString().padStart(3, '0');
416
+ }
417
+
418
+ public switchToProfil(profileIndex) {
419
+ this.adapter.sendTo('hm-rpc.1', 'setValue', {ID: this.getBaseStateShort() + ":1", paramType: 'ACTIVE_PROFILE', params: profileIndex}, res => {
420
+ });
421
+ }
422
+
423
+ public getOeffnungsgrad(): number { // Ventilöffnungsgrad
424
+ return this.adapter.getState(this.baseState + ".1.LEVEL").val; // hm-rpc.0.000A1F29932CD5.1.LEVEL
425
+ }
426
+
427
+ public isAutoModus() : boolean {
428
+ if (this.adapter.getState(this.baseState + ".1.SET_POINT_MODE").val != 0) {
429
+ return false;
430
+ } else {
431
+ return true;
432
+ }
433
+ }
434
+
435
+ public getProfileOeffnungsgrad(): number { // Ventilöffnungsgrad
436
+ return this.adapter.getState(this.baseState + ".1.LEVEL").val; // hm-rpc.0.000A1F29932CD5.1.LEVEL
437
+ }
438
+
439
+ public getProfile() : number {
440
+ return this.adapter.getState(this.baseState + ".1.ACTIVE_PROFILE").val;
441
+ }
442
+
443
+ public getCategory(): string {
444
+ return deviceHomematicHeizkoerpergruppe;
445
+ }
446
+
447
+ private activateInfluxDB(datenpunkt) {
448
+ let objId = datenpunkt;//"alias.0.rgb.Z03.level";
449
+
450
+ // @ts-ignore
451
+ let obj = this.adapter.getObject(objId) as unknown as iobJS.StateObject;
452
+
453
+ //let obj = this.adapter.getObject(objId) as unknown as this.adapter.iobJS.StateObject;
454
+
455
+ if (!obj.common.custom) {
456
+ obj.common.custom = {};
457
+ }
458
+
459
+ obj.common.custom['influxdb.0'] = {
460
+ "enabled": true,
461
+ "storageType": "",
462
+ "aliasId": "",
463
+ "debounceTime": 0,
464
+ "blockTime": 0,
465
+ "changesOnly": true,
466
+ "changesRelogInterval": 60,
467
+ "changesMinDelta": 0,
468
+ "ignoreBelowNumber": "",
469
+ "disableSkippedValueLogging": false,
470
+ "enableDebugLogs": false,
471
+ "debounce": 1000
472
+ };
473
+
474
+ this.adapter.setObject(objId, obj);
475
+ }
476
+
477
+ private createAlias(originalDatenpunkt, aliasDatenpunkt) {
478
+ this.adapter.setObject(aliasDatenpunkt, {
479
+ type: 'state',
480
+ common: {
481
+ name: this.adapter.getObject(originalDatenpunkt).common.name, //'Heizung Ist Temperatur',
482
+ type: this.adapter.getObject(originalDatenpunkt).common.type, // 'number',
483
+ unit: this.adapter.getObject(originalDatenpunkt).common.unit, //'°C',
484
+ read: true,
485
+ write: true,
486
+ role: this.adapter.getObject(originalDatenpunkt).common.role, //'value.temperature',
487
+ alias: {
488
+ id: originalDatenpunkt
489
+ }
490
+ },
491
+ native: {}
492
+ });
493
+ }
494
+ }
495
+
361
496
  export class DimmerAlexaScheme {
362
497
  protected alexaName: string;
363
498
  protected level: number;
@@ -860,6 +995,6 @@ export class HomematicFussbodenheizung extends AbstractHomematic {
860
995
 
861
996
 
862
997
  module.exports = {
863
- HomematicWindow, HomematicSteckdose, HomematicHeizkoerper, HomematicDimmer, HomematicWandthermostat, HomematicFussbodenheizung, HomematicWandschalter, HomematicDoor, HomematicWetterstation, HomematicAccessPoint, HomematicRollladen, HomematicWandtaster, HomematicTemperatursensor, HomematicRauchmelder, HomematicPraesenzmelder, AbstractHomematic, HomematicFunkschaltaktor, DimmerAlexaScheme, DimmerTasterScheme,
864
- deviceHomematicWandthermostat, deviceHomematicPraesenzmelder, deviceHomematicWetterstation, deviceHomematicDoor, deviceHomematicRollladen, deviceHomematicWandschalter, deviceHomematicFussbodenheizung, deviceHomematicWandtaster, deviceHomematicAccessPoint, deviceHomematicTemperatursensor, deviceHomematicRauchmelder, deviceHomematicFunkSchaltaktor, deviceHomematicWindow, deviceHomematicSteckdose, deviceHomematicHeizkoerper, deviceHomematicDimmer
998
+ HomematicWindow, HomematicSteckdose, HomematicHeizkoerper, HomematicHeizkoerpergruppe, HomematicDimmer, HomematicWandthermostat, HomematicFussbodenheizung, HomematicWandschalter, HomematicDoor, HomematicWetterstation, HomematicAccessPoint, HomematicRollladen, HomematicWandtaster, HomematicTemperatursensor, HomematicRauchmelder, HomematicPraesenzmelder, AbstractHomematic, HomematicFunkschaltaktor, DimmerAlexaScheme, DimmerTasterScheme,
999
+ deviceHomematicHeizkoerpergruppe, deviceHomematicWandthermostat, deviceHomematicPraesenzmelder, deviceHomematicWetterstation, deviceHomematicDoor, deviceHomematicRollladen, deviceHomematicWandschalter, deviceHomematicFussbodenheizung, deviceHomematicWandtaster, deviceHomematicAccessPoint, deviceHomematicTemperatursensor, deviceHomematicRauchmelder, deviceHomematicFunkSchaltaktor, deviceHomematicWindow, deviceHomematicSteckdose, deviceHomematicHeizkoerper, deviceHomematicDimmer
865
1000
  };
@@ -13,6 +13,7 @@ exports.createHomematicFunkSchaltaktor = createHomematicFunkSchaltaktor;
13
13
  exports.createHomematicWindow = createHomematicWindow;
14
14
  exports.createHomematicSteckdose = createHomematicSteckdose;
15
15
  exports.createHomematicHeizkoerper = createHomematicHeizkoerper;
16
+ exports.createHomematicHeizkoerpergruppe = createHomematicHeizkoerpergruppe;
16
17
  exports.createHomematicWandthermostat = createHomematicWandthermostat;
17
18
  exports.createHomematicDimmer = createHomematicDimmer;
18
19
  exports.createHomematicWandschalter = createHomematicWandschalter;
@@ -31,6 +32,7 @@ exports.loadHomematicFunktschaltaktoren = loadHomematicFunktschaltaktoren;
31
32
  exports.loadHomematicWindows = loadHomematicWindows;
32
33
  exports.loadHomematicSteckdosen = loadHomematicSteckdosen;
33
34
  exports.loadHomematicHeizkoerper = loadHomematicHeizkoerper;
35
+ exports.loadHomematicHeizkoerpergruppe = loadHomematicHeizkoerpergruppe;
34
36
  exports.loadHomematicDimmer = loadHomematicDimmer;
35
37
  exports.loadHomematicDevicesAll = loadHomematicDevicesAll;
36
38
  var _a = require('./homematicClasses.js'), HomematicWindow = _a.HomematicWindow, HomematicSteckdose = _a.HomematicSteckdose, HomematicHeizkoerper = _a.HomematicHeizkoerper, HomematicDimmer = _a.HomematicDimmer, HomematicWandthermostat = _a.HomematicWandthermostat, HomematicFussbodenheizung = _a.HomematicFussbodenheizung, HomematicWandschalter = _a.HomematicWandschalter, HomematicDoor = _a.HomematicDoor, HomematicWetterstation = _a.HomematicWetterstation, HomematicAccessPoint = _a.HomematicAccessPoint, HomematicRollladen = _a.HomematicRollladen, HomematicWandtaster = _a.HomematicWandtaster, HomematicTemperatursensor = _a.HomematicTemperatursensor, HomematicRauchmelder = _a.HomematicRauchmelder, HomematicPraesenzmelder = _a.HomematicPraesenzmelder, AbstractHomematic = _a.AbstractHomematic, HomematicFunkschaltaktor = _a.HomematicFunkschaltaktor, DimmerAlexaScheme = _a.DimmerAlexaScheme, DimmerTasterScheme = _a.DimmerTasterScheme, deviceHomematicWandthermostat = _a.deviceHomematicWandthermostat, deviceHomematicPraesenzmelder = _a.deviceHomematicPraesenzmelder, deviceHomematicWetterstation = _a.deviceHomematicWetterstation, deviceHomematicDoor = _a.deviceHomematicDoor, deviceHomematicRollladen = _a.deviceHomematicRollladen, deviceHomematicWandschalter = _a.deviceHomematicWandschalter, deviceHomematicFussbodenheizung = _a.deviceHomematicFussbodenheizung, deviceHomematicWandtaster = _a.deviceHomematicWandtaster, deviceHomematicAccessPoint = _a.deviceHomematicAccessPoint, deviceHomematicTemperatursensor = _a.deviceHomematicTemperatursensor, deviceHomematicRauchmelder = _a.deviceHomematicRauchmelder, deviceHomematicFunkSchaltaktor = _a.deviceHomematicFunkSchaltaktor, deviceHomematicWindow = _a.deviceHomematicWindow, deviceHomematicSteckdose = _a.deviceHomematicSteckdose, deviceHomematicHeizkoerper = _a.deviceHomematicHeizkoerper, deviceHomematicDimmer = _a.deviceHomematicDimmer;
@@ -147,6 +149,10 @@ function createHomematicSteckdose(adapter, rawId, baseState, etage, raum, device
147
149
  function createHomematicHeizkoerper(adapter, rawId, baseState, etage, raum, device) {
148
150
  createHomematicDevice(adapter, rawId, baseState, etage, raum, device, deviceHomematicHeizkoerper);
149
151
  }
152
+ // Heizkoerpergruppe
153
+ function createHomematicHeizkoerpergruppe(adapter, rawId, baseState, etage, raum, device) {
154
+ createHomematicDevice(adapter, rawId, baseState, etage, raum, device, deviceHomematicHeizkoerpergruppe);
155
+ }
150
156
  // Wandthermostat
151
157
  function createHomematicWandthermostat(adapter, rawId, baseState, etage, raum, device) {
152
158
  createHomematicDevice(adapter, rawId, baseState, etage, raum, device, deviceHomematicWandthermostat);
@@ -716,6 +722,28 @@ function loadHomematicHeizkoerper(adapter) {
716
722
  cacheHeizkoerperArray = sortArray(cacheHeizkoerperArray);
717
723
  return cacheHeizkoerperArray;
718
724
  }
725
+ var cacheHeizkoerpergruppeArray = null;
726
+ function loadHomematicHeizkoerpergruppe(adapter) {
727
+ if (cacheHeizkoerpergruppeArray != null) {
728
+ return cacheHeizkoerpergruppeArray;
729
+ }
730
+ // @ts-ignore
731
+ cacheHeizkoerpergruppeArray = [];
732
+ adapter.$('state[id=0_userdata.0.devices.homematic.*.*.category]').each(function (datenpunktKey) {
733
+ var datenpunktPraefix = datenpunktKey.replaceAll(".category", "");
734
+ if (adapter.getState(datenpunktKey).val == deviceHomematicHeizkoerpergruppe) {
735
+ // @ts-ignore
736
+ cacheHeizkoerpergruppeArray.push(new HomematicHeizkoerpergruppe(adapter, adapter.getState(datenpunktPraefix + "." + attributeRawID).val, // [0] Device-ID (z.B. 1 --> In der Anzeige wird daraus "H01")
737
+ adapter.getState(datenpunktPraefix + "." + attributeBaseState).val, // [1] Datenpunkt Device (z.B. hm-rpc.1.001B9D898F9CBC)
738
+ adapter.getState(datenpunktPraefix + "." + attributeEtage).val, // [2] Etage/Bereich (z.B. EG)
739
+ adapter.getState(datenpunktPraefix + "." + attributeRaum).val, // [3] Raum/Unterbereich (z.B. Wohnzimmer)
740
+ adapter.getState(datenpunktPraefix + "." + attributeDevice).val // [4] Device (z.B. Stehlampe)
741
+ ));
742
+ }
743
+ });
744
+ cacheHeizkoerpergruppeArray = sortArray(cacheHeizkoerpergruppeArray);
745
+ return cacheHeizkoerpergruppeArray;
746
+ }
719
747
  var cacheDimmerArray = null;
720
748
  function loadHomematicDimmer(adapter) {
721
749
  if (cacheDimmerArray != null) {
@@ -950,4 +978,4 @@ function getEtageSortIndex(etage) {
950
978
  return "d";
951
979
  }
952
980
  }
953
- module.exports = { createHomematicSteckdose: createHomematicSteckdose, createHomematicHeizkoerper: createHomematicHeizkoerper, createHomematicWindow: createHomematicWindow, createHomematicFunkSchaltaktor: createHomematicFunkSchaltaktor, createHomematicRauchmelder: createHomematicRauchmelder, createHomematicTemperatursensor: createHomematicTemperatursensor, createHomematicAccessPoint: createHomematicAccessPoint, createHomematicWandtaster: createHomematicWandtaster, createHomematicPraesenzmelder: createHomematicPraesenzmelder, createHomematicWandthermostat: createHomematicWandthermostat, createHomematicWetterstation: createHomematicWetterstation, createHomematicDoor: createHomematicDoor, createHomematicRollladen: createHomematicRollladen, createHomematicFussbodenheizung: createHomematicFussbodenheizung, createHomematicDimmer: createHomematicDimmer, createHomematicWandschalter: createHomematicWandschalter, loadHomematicWandthermostate: loadHomematicWandthermostate, loadHomematicPraesenzmelder: loadHomematicPraesenzmelder, loadHomematicWetterstationen: loadHomematicWetterstationen, loadHomematicDoors: loadHomematicDoors, loadHomematicRollladen: loadHomematicRollladen, loadHomematicWandschalter: loadHomematicWandschalter, loadHomematicFussbodenheizungen: loadHomematicFussbodenheizungen, loadHomematicWandtaster: loadHomematicWandtaster, loadHomematicAccessPoints: loadHomematicAccessPoints, loadHomematicTemperatursensoren: loadHomematicTemperatursensoren, loadHomematicRauchmelder: loadHomematicRauchmelder, loadHomematicFunktschaltaktoren: loadHomematicFunktschaltaktoren, loadHomematicWindows: loadHomematicWindows, loadHomematicSteckdosen: loadHomematicSteckdosen, loadHomematicHeizkoerper: loadHomematicHeizkoerper, loadHomematicDimmer: loadHomematicDimmer, loadHomematicDevicesAll: loadHomematicDevicesAll, clearHomematicCaches: clearHomematicCaches };
981
+ module.exports = { createHomematicSteckdose: createHomematicSteckdose, createHomematicHeizkoerper: createHomematicHeizkoerper, createHomematicWindow: createHomematicWindow, createHomematicFunkSchaltaktor: createHomematicFunkSchaltaktor, createHomematicRauchmelder: createHomematicRauchmelder, createHomematicTemperatursensor: createHomematicTemperatursensor, createHomematicAccessPoint: createHomematicAccessPoint, createHomematicWandtaster: createHomematicWandtaster, createHomematicPraesenzmelder: createHomematicPraesenzmelder, createHomematicWandthermostat: createHomematicWandthermostat, createHomematicWetterstation: createHomematicWetterstation, createHomematicDoor: createHomematicDoor, createHomematicRollladen: createHomematicRollladen, createHomematicFussbodenheizung: createHomematicFussbodenheizung, createHomematicDimmer: createHomematicDimmer, createHomematicWandschalter: createHomematicWandschalter, loadHomematicWandthermostate: loadHomematicWandthermostate, loadHomematicPraesenzmelder: loadHomematicPraesenzmelder, loadHomematicWetterstationen: loadHomematicWetterstationen, loadHomematicDoors: loadHomematicDoors, loadHomematicRollladen: loadHomematicRollladen, loadHomematicWandschalter: loadHomematicWandschalter, loadHomematicFussbodenheizungen: loadHomematicFussbodenheizungen, loadHomematicWandtaster: loadHomematicWandtaster, loadHomematicAccessPoints: loadHomematicAccessPoints, loadHomematicTemperatursensoren: loadHomematicTemperatursensoren, loadHomematicRauchmelder: loadHomematicRauchmelder, loadHomematicFunktschaltaktoren: loadHomematicFunktschaltaktoren, loadHomematicHeizkoerpergruppe: loadHomematicHeizkoerpergruppe, loadHomematicWindows: loadHomematicWindows, loadHomematicSteckdosen: loadHomematicSteckdosen, loadHomematicHeizkoerper: loadHomematicHeizkoerper, loadHomematicDimmer: loadHomematicDimmer, loadHomematicDevicesAll: loadHomematicDevicesAll, clearHomematicCaches: clearHomematicCaches };
@@ -141,6 +141,11 @@ export function createHomematicHeizkoerper(adapter: any, rawId: number, baseStat
141
141
  createHomematicDevice(adapter, rawId, baseState, etage, raum, device, deviceHomematicHeizkoerper);
142
142
  }
143
143
 
144
+ // Heizkoerpergruppe
145
+ export function createHomematicHeizkoerpergruppe(adapter: any, rawId: number, baseState: string, etage: string, raum: string, device: string) {
146
+ createHomematicDevice(adapter, rawId, baseState, etage, raum, device, deviceHomematicHeizkoerpergruppe);
147
+ }
148
+
144
149
  // Wandthermostat
145
150
  export function createHomematicWandthermostat(adapter: any, rawId: number, baseState: string, etage: string, raum: string, device: string) {
146
151
  createHomematicDevice(adapter, rawId, baseState, etage, raum, device, deviceHomematicWandthermostat);
@@ -755,6 +760,31 @@ export function loadHomematicHeizkoerper(adapter: any) {
755
760
  return cacheHeizkoerperArray;
756
761
  }
757
762
 
763
+ var cacheHeizkoerpergruppeArray = null;
764
+ export function loadHomematicHeizkoerpergruppe(adapter: any) {
765
+ if (cacheHeizkoerpergruppeArray != null) {
766
+ return cacheHeizkoerpergruppeArray;
767
+ }
768
+ // @ts-ignore
769
+ cacheHeizkoerpergruppeArray = [];
770
+ adapter.$('state[id=0_userdata.0.devices.homematic.*.*.category]').each(datenpunktKey => { // 0_userdata.0.devices.homematic.30.type
771
+ let datenpunktPraefix = datenpunktKey.replaceAll(".category", "");
772
+ if (adapter.getState(datenpunktKey).val == deviceHomematicHeizkoerpergruppe) {
773
+ // @ts-ignore
774
+ cacheHeizkoerpergruppeArray.push(new HomematicHeizkoerpergruppe(adapter,
775
+ adapter.getState(datenpunktPraefix + "." + attributeRawID).val, // [0] Device-ID (z.B. 1 --> In der Anzeige wird daraus "H01")
776
+ adapter.getState(datenpunktPraefix + "." + attributeBaseState).val, // [1] Datenpunkt Device (z.B. hm-rpc.1.001B9D898F9CBC)
777
+ adapter.getState(datenpunktPraefix + "." + attributeEtage).val, // [2] Etage/Bereich (z.B. EG)
778
+ adapter.getState(datenpunktPraefix + "." + attributeRaum).val, // [3] Raum/Unterbereich (z.B. Wohnzimmer)
779
+ adapter.getState(datenpunktPraefix + "." + attributeDevice).val // [4] Device (z.B. Stehlampe)
780
+ ));
781
+ }
782
+ });
783
+ cacheHeizkoerpergruppeArray = sortArray(cacheHeizkoerpergruppeArray);
784
+ return cacheHeizkoerpergruppeArray;
785
+ }
786
+
787
+
758
788
  var cacheDimmerArray = null;
759
789
  export function loadHomematicDimmer(adapter: any) {
760
790
  if (cacheDimmerArray != null) {
@@ -1034,4 +1064,4 @@ function getEtageSortIndex(etage: string) {
1034
1064
 
1035
1065
 
1036
1066
 
1037
- module.exports = { createHomematicSteckdose, createHomematicHeizkoerper, createHomematicWindow, createHomematicFunkSchaltaktor, createHomematicRauchmelder, createHomematicTemperatursensor, createHomematicAccessPoint, createHomematicWandtaster, createHomematicPraesenzmelder, createHomematicWandthermostat, createHomematicWetterstation, createHomematicDoor, createHomematicRollladen, createHomematicFussbodenheizung, createHomematicDimmer, createHomematicWandschalter, loadHomematicWandthermostate, loadHomematicPraesenzmelder, loadHomematicWetterstationen, loadHomematicDoors, loadHomematicRollladen, loadHomematicWandschalter, loadHomematicFussbodenheizungen, loadHomematicWandtaster, loadHomematicAccessPoints, loadHomematicTemperatursensoren, loadHomematicRauchmelder, loadHomematicFunktschaltaktoren, loadHomematicWindows, loadHomematicSteckdosen, loadHomematicHeizkoerper, loadHomematicDimmer, loadHomematicDevicesAll, clearHomematicCaches };
1067
+ module.exports = { createHomematicSteckdose, createHomematicHeizkoerper, createHomematicWindow, createHomematicFunkSchaltaktor, createHomematicRauchmelder, createHomematicTemperatursensor, createHomematicAccessPoint, createHomematicWandtaster, createHomematicPraesenzmelder, createHomematicWandthermostat, createHomematicWetterstation, createHomematicDoor, createHomematicRollladen, createHomematicFussbodenheizung, createHomematicDimmer, createHomematicWandschalter, loadHomematicWandthermostate, loadHomematicPraesenzmelder, loadHomematicWetterstationen, loadHomematicDoors, loadHomematicRollladen, loadHomematicWandschalter, loadHomematicFussbodenheizungen, loadHomematicWandtaster, loadHomematicAccessPoints, loadHomematicTemperatursensoren, loadHomematicRauchmelder, loadHomematicFunktschaltaktoren, loadHomematicHeizkoerpergruppe, loadHomematicWindows, loadHomematicSteckdosen, loadHomematicHeizkoerper, loadHomematicDimmer, loadHomematicDevicesAll, clearHomematicCaches };
package/main.js CHANGED
@@ -5,8 +5,8 @@ var _b = require('./camera.js'), sendToPictureGartenToTelegram = _b.sendToPictur
5
5
  var AlexaInputConverter = require('./alexa.js').AlexaInputConverter;
6
6
  var _c = require('./shellyClasses.js'), AbstractShelly = _c.AbstractShelly, ShellyLampeWeiss = _c.ShellyLampeWeiss, ShellyDimmerAlexaScheme = _c.ShellyDimmerAlexaScheme, ShellyDimmerTasterScheme = _c.ShellyDimmerTasterScheme, ShellyDimmer = _c.ShellyDimmer, ShellyRGBAlexaScheme = _c.ShellyRGBAlexaScheme, ShellyRGBTasterScheme = _c.ShellyRGBTasterScheme, ShellyLampeRGB = _c.ShellyLampeRGB, ShellySteckdose = _c.ShellySteckdose, ShellyRollladen = _c.ShellyRollladen, ShellySensor = _c.ShellySensor, deviceShellyLampeWeiss = _c.deviceShellyLampeWeiss, deviceShellyDimmer = _c.deviceShellyDimmer, deviceShellyLampeRGB = _c.deviceShellyLampeRGB, deviceShellySteckdose = _c.deviceShellySteckdose, deviceShellyRollladen = _c.deviceShellyRollladen, deviceShellySensor = _c.deviceShellySensor;
7
7
  var _d = require('./shellyFunctions.js'), createShellyDevice = _d.createShellyDevice, createShellySensor = _d.createShellySensor, createShellyRollladen = _d.createShellyRollladen, createShellyDimmer = _d.createShellyDimmer, createShellyLampe = _d.createShellyLampe, createShellySteckdose = _d.createShellySteckdose, loadShellyRollladen = _d.loadShellyRollladen, loadShellySensoren = _d.loadShellySensoren, loadShellyDimmer = _d.loadShellyDimmer, loadShellyLampenWeiss = _d.loadShellyLampenWeiss, loadShellySteckdosen = _d.loadShellySteckdosen, loadShellyDevicesAll = _d.loadShellyDevicesAll, clearShellyCaches = _d.clearShellyCaches;
8
- var _e = require('./homematicClasses.js'), HomematicWindow = _e.HomematicWindow, HomematicSteckdose = _e.HomematicSteckdose, HomematicHeizkoerper = _e.HomematicHeizkoerper, HomematicDimmer = _e.HomematicDimmer, HomematicWandthermostat = _e.HomematicWandthermostat, HomematicFussbodenheizung = _e.HomematicFussbodenheizung, HomematicWandschalter = _e.HomematicWandschalter, HomematicDoor = _e.HomematicDoor, HomematicWetterstation = _e.HomematicWetterstation, HomematicAccessPoint = _e.HomematicAccessPoint, HomematicRollladen = _e.HomematicRollladen, HomematicWandtaster = _e.HomematicWandtaster, HomematicTemperatursensor = _e.HomematicTemperatursensor, HomematicRauchmelder = _e.HomematicRauchmelder, HomematicPraesenzmelder = _e.HomematicPraesenzmelder, AbstractHomematic = _e.AbstractHomematic, HomematicFunkschaltaktor = _e.HomematicFunkschaltaktor, deviceHomematicWandthermostat = _e.deviceHomematicWandthermostat, deviceHomematicPraesenzmelder = _e.deviceHomematicPraesenzmelder, deviceHomematicWetterstation = _e.deviceHomematicWetterstation, deviceHomematicDoor = _e.deviceHomematicDoor, deviceHomematicRollladen = _e.deviceHomematicRollladen, deviceHomematicWandschalter = _e.deviceHomematicWandschalter, deviceHomematicFussbodenheizung = _e.deviceHomematicFussbodenheizung, deviceHomematicWandtaster = _e.deviceHomematicWandtaster, deviceHomematicAccessPoint = _e.deviceHomematicAccessPoint, deviceHomematicTemperatursensor = _e.deviceHomematicTemperatursensor, deviceHomematicRauchmelder = _e.deviceHomematicRauchmelder, deviceHomematicFunkSchaltaktor = _e.deviceHomematicFunkSchaltaktor, deviceHomematicWindow = _e.deviceHomematicWindow, deviceHomematicSteckdose = _e.deviceHomematicSteckdose, deviceHomematicHeizkoerper = _e.deviceHomematicHeizkoerper, deviceHomematicDimmer = _e.deviceHomematicDimmer, DimmerAlexaScheme = _e.DimmerAlexaScheme, DimmerTasterScheme = _e.DimmerTasterScheme;
9
- var _f = require('./homematicFunctions.js'), createHomematicHeizkoerper = _f.createHomematicHeizkoerper, createHomematicSteckdose = _f.createHomematicSteckdose, createHomematicWindow = _f.createHomematicWindow, createHomematicFunkSchaltaktor = _f.createHomematicFunkSchaltaktor, createHomematicRauchmelder = _f.createHomematicRauchmelder, createHomematicTemperatursensor = _f.createHomematicTemperatursensor, createHomematicAccessPoint = _f.createHomematicAccessPoint, createHomematicWandtaster = _f.createHomematicWandtaster, createHomematicPraesenzmelder = _f.createHomematicPraesenzmelder, createHomematicWandthermostat = _f.createHomematicWandthermostat, createHomematicWetterstation = _f.createHomematicWetterstation, createHomematicDoor = _f.createHomematicDoor, createHomematicRollladen = _f.createHomematicRollladen, createHomematicFussbodenheizung = _f.createHomematicFussbodenheizung, createHomematicDimmer = _f.createHomematicDimmer, createHomematicWandschalter = _f.createHomematicWandschalter, loadHomematicWandthermostate = _f.loadHomematicWandthermostate, loadHomematicPraesenzmelder = _f.loadHomematicPraesenzmelder, loadHomematicWetterstationen = _f.loadHomematicWetterstationen, loadHomematicDoors = _f.loadHomematicDoors, loadHomematicRollladen = _f.loadHomematicRollladen, loadHomematicWandschalter = _f.loadHomematicWandschalter, loadHomematicFussbodenheizungen = _f.loadHomematicFussbodenheizungen, loadHomematicWandtaster = _f.loadHomematicWandtaster, loadHomematicAccessPoints = _f.loadHomematicAccessPoints, loadHomematicTemperatursensoren = _f.loadHomematicTemperatursensoren, loadHomematicRauchmelder = _f.loadHomematicRauchmelder, loadHomematicFunktschaltaktoren = _f.loadHomematicFunktschaltaktoren, loadHomematicWindows = _f.loadHomematicWindows, loadHomematicSteckdosen = _f.loadHomematicSteckdosen, loadHomematicHeizkoerper = _f.loadHomematicHeizkoerper, loadHomematicDimmer = _f.loadHomematicDimmer, loadHomematicDevicesAll = _f.loadHomematicDevicesAll, clearHomematicCaches = _f.clearHomematicCaches;
8
+ var _e = require('./homematicClasses.js'), HomematicWindow = _e.HomematicWindow, HomematicSteckdose = _e.HomematicSteckdose, HomematicHeizkoerper = _e.HomematicHeizkoerper, HomematicHeizkoerpergruppe = _e.HomematicHeizkoerpergruppe, HomematicDimmer = _e.HomematicDimmer, HomematicWandthermostat = _e.HomematicWandthermostat, HomematicFussbodenheizung = _e.HomematicFussbodenheizung, HomematicWandschalter = _e.HomematicWandschalter, HomematicDoor = _e.HomematicDoor, HomematicWetterstation = _e.HomematicWetterstation, HomematicAccessPoint = _e.HomematicAccessPoint, HomematicRollladen = _e.HomematicRollladen, HomematicWandtaster = _e.HomematicWandtaster, HomematicTemperatursensor = _e.HomematicTemperatursensor, HomematicRauchmelder = _e.HomematicRauchmelder, HomematicPraesenzmelder = _e.HomematicPraesenzmelder, AbstractHomematic = _e.AbstractHomematic, HomematicFunkschaltaktor = _e.HomematicFunkschaltaktor, deviceHomematicWandthermostat = _e.deviceHomematicWandthermostat, deviceHomematicPraesenzmelder = _e.deviceHomematicPraesenzmelder, deviceHomematicWetterstation = _e.deviceHomematicWetterstation, deviceHomematicDoor = _e.deviceHomematicDoor, deviceHomematicRollladen = _e.deviceHomematicRollladen, deviceHomematicWandschalter = _e.deviceHomematicWandschalter, deviceHomematicFussbodenheizung = _e.deviceHomematicFussbodenheizung, deviceHomematicWandtaster = _e.deviceHomematicWandtaster, deviceHomematicAccessPoint = _e.deviceHomematicAccessPoint, deviceHomematicTemperatursensor = _e.deviceHomematicTemperatursensor, deviceHomematicRauchmelder = _e.deviceHomematicRauchmelder, deviceHomematicFunkSchaltaktor = _e.deviceHomematicFunkSchaltaktor, deviceHomematicWindow = _e.deviceHomematicWindow, deviceHomematicSteckdose = _e.deviceHomematicSteckdose, deviceHomematicHeizkoerper = _e.deviceHomematicHeizkoerper, deviceHomematicHeizkoerpergruppe = _e.deviceHomematicHeizkoerpergruppe, deviceHomematicDimmer = _e.deviceHomematicDimmer, DimmerAlexaScheme = _e.DimmerAlexaScheme, DimmerTasterScheme = _e.DimmerTasterScheme;
9
+ var _f = require('./homematicFunctions.js'), createHomematicHeizkoerper = _f.createHomematicHeizkoerper, loadHomematicHeizkoerpergruppe = _f.loadHomematicHeizkoerpergruppe, createHomematicSteckdose = _f.createHomematicSteckdose, createHomematicWindow = _f.createHomematicWindow, createHomematicFunkSchaltaktor = _f.createHomematicFunkSchaltaktor, createHomematicRauchmelder = _f.createHomematicRauchmelder, createHomematicTemperatursensor = _f.createHomematicTemperatursensor, createHomematicAccessPoint = _f.createHomematicAccessPoint, createHomematicWandtaster = _f.createHomematicWandtaster, createHomematicPraesenzmelder = _f.createHomematicPraesenzmelder, createHomematicWandthermostat = _f.createHomematicWandthermostat, createHomematicWetterstation = _f.createHomematicWetterstation, createHomematicDoor = _f.createHomematicDoor, createHomematicRollladen = _f.createHomematicRollladen, createHomematicFussbodenheizung = _f.createHomematicFussbodenheizung, createHomematicDimmer = _f.createHomematicDimmer, createHomematicWandschalter = _f.createHomematicWandschalter, loadHomematicWandthermostate = _f.loadHomematicWandthermostate, loadHomematicPraesenzmelder = _f.loadHomematicPraesenzmelder, loadHomematicWetterstationen = _f.loadHomematicWetterstationen, loadHomematicDoors = _f.loadHomematicDoors, loadHomematicRollladen = _f.loadHomematicRollladen, loadHomematicWandschalter = _f.loadHomematicWandschalter, loadHomematicFussbodenheizungen = _f.loadHomematicFussbodenheizungen, loadHomematicWandtaster = _f.loadHomematicWandtaster, loadHomematicAccessPoints = _f.loadHomematicAccessPoints, loadHomematicTemperatursensoren = _f.loadHomematicTemperatursensoren, loadHomematicRauchmelder = _f.loadHomematicRauchmelder, loadHomematicFunktschaltaktoren = _f.loadHomematicFunktschaltaktoren, loadHomematicWindows = _f.loadHomematicWindows, loadHomematicSteckdosen = _f.loadHomematicSteckdosen, loadHomematicHeizkoerper = _f.loadHomematicHeizkoerper, loadHomematicDimmer = _f.loadHomematicDimmer, loadHomematicDevicesAll = _f.loadHomematicDevicesAll, clearHomematicCaches = _f.clearHomematicCaches;
10
10
  var _g = require('./zigbeeClasses.js'), AbstractZigbee = _g.AbstractZigbee, ColorConverter = _g.ColorConverter, ColorScheme = _g.ColorScheme, RGBColorScheme = _g.RGBColorScheme, WhiteColorScheme = _g.WhiteColorScheme, ZigbeeLampeRGB = _g.ZigbeeLampeRGB, LampeWeissTasterScheme = _g.LampeWeissTasterScheme, LampeWeissAlexaScheme = _g.LampeWeissAlexaScheme, ZigbeeLampeWeiss = _g.ZigbeeLampeWeiss, ZigbeeSteckdose = _g.ZigbeeSteckdose, ZigbeeSchalter = _g.ZigbeeSchalter, ZigbeeRepeater = _g.ZigbeeRepeater, ZigbeeFenstersensor = _g.ZigbeeFenstersensor, ZigbeeRauchmelder = _g.ZigbeeRauchmelder, ZigbeeBewegungsmelder = _g.ZigbeeBewegungsmelder, ZigbeeWandtaster = _g.ZigbeeWandtaster, ZigbeeDosenrelais = _g.ZigbeeDosenrelais, deviceZigbeeSteckdose = _g.deviceZigbeeSteckdose, deviceZigbeeBewegungsmelder = _g.deviceZigbeeBewegungsmelder, deviceZigbeeLampeRGB = _g.deviceZigbeeLampeRGB, deviceZigbeeLampeWeiss = _g.deviceZigbeeLampeWeiss, deviceZigbeeRauchmelder = _g.deviceZigbeeRauchmelder, deviceZigbeeWandtaster = _g.deviceZigbeeWandtaster, deviceZigbeeDosenrelais = _g.deviceZigbeeDosenrelais, deviceZigbeeSchalter = _g.deviceZigbeeSchalter, deviceZigbeeRepeater = _g.deviceZigbeeRepeater, deviceZigbeeFenstersensor = _g.deviceZigbeeFenstersensor;
11
11
  var _h = require('./zigbeeFunctions.js'), createZigbeeBewegungsmelder = _h.createZigbeeBewegungsmelder, createZigbeeRauchmelder = _h.createZigbeeRauchmelder, createZigbeeWandtaster = _h.createZigbeeWandtaster, createZigbeeSchalter = _h.createZigbeeSchalter, createZigbeeRepeater = _h.createZigbeeRepeater, createZigbeeFenstersensor = _h.createZigbeeFenstersensor, createZigbeeDosenrelais = _h.createZigbeeDosenrelais, createZigbeeLampeRGB = _h.createZigbeeLampeRGB, createZigbeeLampeWeiss = _h.createZigbeeLampeWeiss, createZigbeeSteckdose = _h.createZigbeeSteckdose, loadZigbeeSteckdosen = _h.loadZigbeeSteckdosen, loadZigbeeBewegungsmelder = _h.loadZigbeeBewegungsmelder, loadZigbeeLampenRGB = _h.loadZigbeeLampenRGB, loadZigbeeLampenWeiss = _h.loadZigbeeLampenWeiss, loadZigbeeRauchmelder = _h.loadZigbeeRauchmelder, loadZigbeeWandtaster = _h.loadZigbeeWandtaster, loadZigbeeDosenrelais = _h.loadZigbeeDosenrelais, loadZigbeeSchalter = _h.loadZigbeeSchalter, loadZigbeeRepeater = _h.loadZigbeeRepeater, loadZigbeeFenstersensor = _h.loadZigbeeFenstersensor, loadZigbeeDevicesAll = _h.loadZigbeeDevicesAll, clearZigbeeCaches = _h.clearZigbeeCaches;
12
12
  module.exports = {
@@ -24,6 +24,7 @@ module.exports = {
24
24
  HomematicWindow: HomematicWindow,
25
25
  HomematicSteckdose: HomematicSteckdose,
26
26
  HomematicHeizkoerper: HomematicHeizkoerper,
27
+ HomematicHeizkoerpergruppe: HomematicHeizkoerpergruppe,
27
28
  HomematicDimmer: HomematicDimmer,
28
29
  HomematicWandthermostat: HomematicWandthermostat,
29
30
  HomematicFussbodenheizung: HomematicFussbodenheizung,
@@ -41,6 +42,7 @@ module.exports = {
41
42
  DimmerAlexaScheme: DimmerAlexaScheme,
42
43
  DimmerTasterScheme: DimmerTasterScheme,
43
44
  deviceHomematicWandthermostat: deviceHomematicWandthermostat,
45
+ deviceHomematicHeizkoerpergruppe: deviceHomematicHeizkoerpergruppe,
44
46
  deviceHomematicPraesenzmelder: deviceHomematicPraesenzmelder,
45
47
  deviceHomematicWetterstation: deviceHomematicWetterstation,
46
48
  deviceHomematicDoor: deviceHomematicDoor,
@@ -58,6 +60,7 @@ module.exports = {
58
60
  deviceHomematicDimmer: deviceHomematicDimmer,
59
61
  // homematicFunctions.ts
60
62
  createHomematicHeizkoerper: createHomematicHeizkoerper,
63
+ loadHomematicHeizkoerpergruppe: loadHomematicHeizkoerpergruppe,
61
64
  createHomematicSteckdose: createHomematicSteckdose,
62
65
  createHomematicWindow: createHomematicWindow,
63
66
  createHomematicFunkSchaltaktor: createHomematicFunkSchaltaktor,
package/main.ts CHANGED
@@ -9,8 +9,8 @@ const { AlexaInputConverter } = require('./alexa.js');
9
9
  const { AbstractShelly, ShellyLampeWeiss, ShellyDimmerAlexaScheme, ShellyDimmerTasterScheme, ShellyDimmer, ShellyRGBAlexaScheme, ShellyRGBTasterScheme, ShellyLampeRGB, ShellySteckdose, ShellyRollladen,ShellySensor, deviceShellyLampeWeiss, deviceShellyDimmer, deviceShellyLampeRGB, deviceShellySteckdose, deviceShellyRollladen, deviceShellySensor } = require('./shellyClasses.js');
10
10
  const { createShellyDevice, createShellySensor, createShellyRollladen, createShellyDimmer, createShellyLampe, createShellySteckdose, loadShellyRollladen, loadShellySensoren, loadShellyDimmer, loadShellyLampenWeiss, loadShellySteckdosen, loadShellyDevicesAll, clearShellyCaches } = require('./shellyFunctions.js');
11
11
 
12
- const { HomematicWindow, HomematicSteckdose, HomematicHeizkoerper, HomematicDimmer, HomematicWandthermostat, HomematicFussbodenheizung, HomematicWandschalter, HomematicDoor, HomematicWetterstation, HomematicAccessPoint, HomematicRollladen, HomematicWandtaster, HomematicTemperatursensor, HomematicRauchmelder, HomematicPraesenzmelder, AbstractHomematic, HomematicFunkschaltaktor, deviceHomematicWandthermostat, deviceHomematicPraesenzmelder, deviceHomematicWetterstation, deviceHomematicDoor, deviceHomematicRollladen, deviceHomematicWandschalter, deviceHomematicFussbodenheizung, deviceHomematicWandtaster, deviceHomematicAccessPoint, deviceHomematicTemperatursensor, deviceHomematicRauchmelder, deviceHomematicFunkSchaltaktor, deviceHomematicWindow, deviceHomematicSteckdose, deviceHomematicHeizkoerper, deviceHomematicDimmer,DimmerAlexaScheme, DimmerTasterScheme} = require('./homematicClasses.js');
13
- const { createHomematicHeizkoerper, createHomematicSteckdose, createHomematicWindow, createHomematicFunkSchaltaktor, createHomematicRauchmelder, createHomematicTemperatursensor, createHomematicAccessPoint, createHomematicWandtaster, createHomematicPraesenzmelder, createHomematicWandthermostat, createHomematicWetterstation, createHomematicDoor, createHomematicRollladen, createHomematicFussbodenheizung, createHomematicDimmer, createHomematicWandschalter, loadHomematicWandthermostate, loadHomematicPraesenzmelder, loadHomematicWetterstationen, loadHomematicDoors, loadHomematicRollladen, loadHomematicWandschalter, loadHomematicFussbodenheizungen, loadHomematicWandtaster, loadHomematicAccessPoints, loadHomematicTemperatursensoren, loadHomematicRauchmelder, loadHomematicFunktschaltaktoren, loadHomematicWindows, loadHomematicSteckdosen, loadHomematicHeizkoerper, loadHomematicDimmer, loadHomematicDevicesAll, clearHomematicCaches } = require('./homematicFunctions.js');
12
+ const { HomematicWindow, HomematicSteckdose, HomematicHeizkoerper, HomematicHeizkoerpergruppe, HomematicDimmer, HomematicWandthermostat, HomematicFussbodenheizung, HomematicWandschalter, HomematicDoor, HomematicWetterstation, HomematicAccessPoint, HomematicRollladen, HomematicWandtaster, HomematicTemperatursensor, HomematicRauchmelder, HomematicPraesenzmelder, AbstractHomematic, HomematicFunkschaltaktor, deviceHomematicWandthermostat, deviceHomematicPraesenzmelder, deviceHomematicWetterstation, deviceHomematicDoor, deviceHomematicRollladen, deviceHomematicWandschalter, deviceHomematicFussbodenheizung, deviceHomematicWandtaster, deviceHomematicAccessPoint, deviceHomematicTemperatursensor, deviceHomematicRauchmelder, deviceHomematicFunkSchaltaktor, deviceHomematicWindow, deviceHomematicSteckdose, deviceHomematicHeizkoerper, deviceHomematicHeizkoerpergruppe, deviceHomematicDimmer,DimmerAlexaScheme, DimmerTasterScheme} = require('./homematicClasses.js');
13
+ const { createHomematicHeizkoerper, loadHomematicHeizkoerpergruppe, createHomematicSteckdose, createHomematicWindow, createHomematicFunkSchaltaktor, createHomematicRauchmelder, createHomematicTemperatursensor, createHomematicAccessPoint, createHomematicWandtaster, createHomematicPraesenzmelder, createHomematicWandthermostat, createHomematicWetterstation, createHomematicDoor, createHomematicRollladen, createHomematicFussbodenheizung, createHomematicDimmer, createHomematicWandschalter, loadHomematicWandthermostate, loadHomematicPraesenzmelder, loadHomematicWetterstationen, loadHomematicDoors, loadHomematicRollladen, loadHomematicWandschalter, loadHomematicFussbodenheizungen, loadHomematicWandtaster, loadHomematicAccessPoints, loadHomematicTemperatursensoren, loadHomematicRauchmelder, loadHomematicFunktschaltaktoren, loadHomematicWindows, loadHomematicSteckdosen, loadHomematicHeizkoerper, loadHomematicDimmer, loadHomematicDevicesAll, clearHomematicCaches } = require('./homematicFunctions.js');
14
14
 
15
15
  const { AbstractZigbee, ColorConverter, ColorScheme, RGBColorScheme, WhiteColorScheme, ZigbeeLampeRGB, LampeWeissTasterScheme, LampeWeissAlexaScheme, ZigbeeLampeWeiss, ZigbeeSteckdose, ZigbeeSchalter, ZigbeeRepeater, ZigbeeFenstersensor, ZigbeeRauchmelder, ZigbeeBewegungsmelder, ZigbeeWandtaster, ZigbeeDosenrelais, deviceZigbeeSteckdose, deviceZigbeeBewegungsmelder, deviceZigbeeLampeRGB, deviceZigbeeLampeWeiss, deviceZigbeeRauchmelder, deviceZigbeeWandtaster, deviceZigbeeDosenrelais, deviceZigbeeSchalter, deviceZigbeeRepeater, deviceZigbeeFenstersensor } = require('./zigbeeClasses.js');
16
16
  const { createZigbeeBewegungsmelder, createZigbeeRauchmelder, createZigbeeWandtaster, createZigbeeSchalter, createZigbeeRepeater, createZigbeeFenstersensor, createZigbeeDosenrelais, createZigbeeLampeRGB, createZigbeeLampeWeiss, createZigbeeSteckdose, loadZigbeeSteckdosen, loadZigbeeBewegungsmelder, loadZigbeeLampenRGB, loadZigbeeLampenWeiss, loadZigbeeRauchmelder, loadZigbeeWandtaster, loadZigbeeDosenrelais, loadZigbeeSchalter, loadZigbeeRepeater, loadZigbeeFenstersensor, loadZigbeeDevicesAll, clearZigbeeCaches } = require('./zigbeeFunctions.js');
@@ -28,11 +28,11 @@ module.exports = {
28
28
  AbstractColumn, HtmlTable, HtmlCreator, StaticIconColumn, AbstractStandardTextColumn,
29
29
 
30
30
  // homematicClasses.ts
31
- HomematicWindow, HomematicSteckdose, HomematicHeizkoerper, HomematicDimmer, HomematicWandthermostat, HomematicFussbodenheizung, HomematicWandschalter, HomematicDoor, HomematicWetterstation, HomematicAccessPoint, HomematicRollladen, HomematicWandtaster, HomematicTemperatursensor, HomematicRauchmelder, HomematicPraesenzmelder, AbstractHomematic, HomematicFunkschaltaktor,DimmerAlexaScheme, DimmerTasterScheme,
32
- deviceHomematicWandthermostat, deviceHomematicPraesenzmelder, deviceHomematicWetterstation, deviceHomematicDoor, deviceHomematicRollladen, deviceHomematicWandschalter, deviceHomematicFussbodenheizung, deviceHomematicWandtaster, deviceHomematicAccessPoint, deviceHomematicTemperatursensor, deviceHomematicRauchmelder, deviceHomematicFunkSchaltaktor, deviceHomematicWindow, deviceHomematicSteckdose, deviceHomematicHeizkoerper, deviceHomematicDimmer,
31
+ HomematicWindow, HomematicSteckdose, HomematicHeizkoerper, HomematicHeizkoerpergruppe, HomematicDimmer, HomematicWandthermostat, HomematicFussbodenheizung, HomematicWandschalter, HomematicDoor, HomematicWetterstation, HomematicAccessPoint, HomematicRollladen, HomematicWandtaster, HomematicTemperatursensor, HomematicRauchmelder, HomematicPraesenzmelder, AbstractHomematic, HomematicFunkschaltaktor,DimmerAlexaScheme, DimmerTasterScheme,
32
+ deviceHomematicWandthermostat, deviceHomematicHeizkoerpergruppe, deviceHomematicPraesenzmelder, deviceHomematicWetterstation, deviceHomematicDoor, deviceHomematicRollladen, deviceHomematicWandschalter, deviceHomematicFussbodenheizung, deviceHomematicWandtaster, deviceHomematicAccessPoint, deviceHomematicTemperatursensor, deviceHomematicRauchmelder, deviceHomematicFunkSchaltaktor, deviceHomematicWindow, deviceHomematicSteckdose, deviceHomematicHeizkoerper, deviceHomematicDimmer,
33
33
 
34
34
  // homematicFunctions.ts
35
- createHomematicHeizkoerper, createHomematicSteckdose, createHomematicWindow, createHomematicFunkSchaltaktor, createHomematicRauchmelder, createHomematicTemperatursensor, createHomematicAccessPoint, createHomematicWandtaster, createHomematicPraesenzmelder, createHomematicWandthermostat, createHomematicWetterstation, createHomematicDoor, createHomematicRollladen, createHomematicFussbodenheizung, createHomematicDimmer, createHomematicWandschalter, loadHomematicWandthermostate, loadHomematicPraesenzmelder, loadHomematicWetterstationen, loadHomematicDoors, loadHomematicRollladen, loadHomematicWandschalter, loadHomematicFussbodenheizungen, loadHomematicWandtaster, loadHomematicAccessPoints, loadHomematicTemperatursensoren, loadHomematicRauchmelder, loadHomematicFunktschaltaktoren, loadHomematicWindows, loadHomematicSteckdosen, loadHomematicHeizkoerper, loadHomematicDimmer, loadHomematicDevicesAll, clearHomematicCaches,
35
+ createHomematicHeizkoerper, loadHomematicHeizkoerpergruppe, createHomematicSteckdose, createHomematicWindow, createHomematicFunkSchaltaktor, createHomematicRauchmelder, createHomematicTemperatursensor, createHomematicAccessPoint, createHomematicWandtaster, createHomematicPraesenzmelder, createHomematicWandthermostat, createHomematicWetterstation, createHomematicDoor, createHomematicRollladen, createHomematicFussbodenheizung, createHomematicDimmer, createHomematicWandschalter, loadHomematicWandthermostate, loadHomematicPraesenzmelder, loadHomematicWetterstationen, loadHomematicDoors, loadHomematicRollladen, loadHomematicWandschalter, loadHomematicFussbodenheizungen, loadHomematicWandtaster, loadHomematicAccessPoints, loadHomematicTemperatursensoren, loadHomematicRauchmelder, loadHomematicFunktschaltaktoren, loadHomematicWindows, loadHomematicSteckdosen, loadHomematicHeizkoerper, loadHomematicDimmer, loadHomematicDevicesAll, clearHomematicCaches,
36
36
 
37
37
  // zigbeeClasses.ts
38
38
  AbstractZigbee, ColorConverter, ColorScheme, RGBColorScheme, WhiteColorScheme, ZigbeeLampeRGB, LampeWeissTasterScheme, LampeWeissAlexaScheme, ZigbeeLampeWeiss, ZigbeeSteckdose, ZigbeeSchalter, ZigbeeRepeater, ZigbeeFenstersensor, ZigbeeRauchmelder, ZigbeeBewegungsmelder, ZigbeeWandtaster, ZigbeeDosenrelais,
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "iobroker-ucl",
3
- "version": "1.4.15",
3
+ "version": "1.4.16",
4
4
  "main": "main.js",
5
5
  "scripts": {
6
6
  "build": "tsc --build",
@@ -9,6 +9,7 @@
9
9
  "author": "",
10
10
  "license": "ISC",
11
11
  "devDependencies": {
12
+ "@types/node": "^22.13.1",
12
13
  "typescript": "^5.7.3"
13
14
  },
14
15
  "repository": {