homebridge-melcloud-control 3.8.0-beta.26 → 3.8.0-beta.28

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/package.json CHANGED
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "displayName": "MELCloud Control",
3
3
  "name": "homebridge-melcloud-control",
4
- "version": "3.8.0-beta.26",
4
+ "version": "3.8.0-beta.28",
5
5
  "description": "Homebridge plugin to control Mitsubishi Air Conditioner, Heat Pump and Energy Recovery Ventilation.",
6
6
  "license": "MIT",
7
7
  "author": "grzegorz914",
package/src/deviceata.js CHANGED
@@ -628,9 +628,7 @@ class DeviceAta extends EventEmitter {
628
628
  if (this.presetsConfiguredCount > 0) {
629
629
  const debug = this.enableDebugMode ? this.emit('debug', `Prepare presets services`) : false;
630
630
  this.presetsServices = [];
631
-
632
- for (let i = 0; i < this.presetsConfiguredCount; i++) {
633
- const preset = this.presetsConfigured[i];
631
+ this.presetsConfigured.forEach((preset, i) => {
634
632
  const presetData = presetsOnServer.find(p => p.ID === preset.Id);
635
633
 
636
634
  //get preset name
@@ -682,17 +680,14 @@ class DeviceAta extends EventEmitter {
682
680
  });
683
681
  this.presetsServices.push(presetService);
684
682
  accessory.addService(presetService);
685
- };
683
+ });
686
684
  };
687
685
 
688
686
  //buttons services
689
687
  if (this.buttonsConfiguredCount > 0) {
690
688
  const debug = this.enableDebugMode ? this.emit('debug', `Prepare buttons/sensors services`) : false;
691
689
  this.buttonsServices = [];
692
-
693
- for (let i = 0; i < this.buttonsConfiguredCount; i++) {
694
- const button = this.buttonsConfigured[i];
695
-
690
+ this.buttonsConfigured.forEach((button, i) => {
696
691
  //get button mode
697
692
  const mode = button.mode;
698
693
 
@@ -925,7 +920,7 @@ class DeviceAta extends EventEmitter {
925
920
  });
926
921
  this.buttonsServices.push(buttonService);
927
922
  accessory.addService(buttonService);
928
- };
923
+ });
929
924
  };
930
925
 
931
926
  return accessory;
@@ -1209,8 +1204,7 @@ class DeviceAta extends EventEmitter {
1209
1204
 
1210
1205
  //update presets state
1211
1206
  if (this.presetsConfigured.length > 0) {
1212
- for (let i = 0; i < this.presetsConfigured.length; i++) {
1213
- const preset = this.presetsConfigured[i];
1207
+ this.presetsConfigured.forEach((preset, i) => {
1214
1208
  const presetData = presetsOnServer.find(p => p.ID === preset.Id);
1215
1209
 
1216
1210
  preset.state = presetData ? (presetData.Power === power
@@ -1225,13 +1219,12 @@ class DeviceAta extends EventEmitter {
1225
1219
  this.presetsServices[i]
1226
1220
  .updateCharacteristic(characteristicType, preset.state)
1227
1221
  };
1228
- };
1222
+ });
1229
1223
  };
1230
1224
 
1231
1225
  //update buttons state
1232
1226
  if (this.buttonsConfiguredCount > 0) {
1233
- for (let i = 0; i < this.buttonsConfiguredCount; i++) {
1234
- const button = this.buttonsConfigured[i];
1227
+ this.buttonsConfigured.forEach((button, i) => {
1235
1228
  const mode = button.mode;
1236
1229
  switch (mode) {
1237
1230
  case 0: //POWER ON,OFF
@@ -1350,7 +1343,7 @@ class DeviceAta extends EventEmitter {
1350
1343
  this.buttonsServices[i]
1351
1344
  .updateCharacteristic(characteristicType, button.state)
1352
1345
  };
1353
- };
1346
+ });
1354
1347
  };
1355
1348
 
1356
1349
  //log current state
package/src/deviceatw.js CHANGED
@@ -321,8 +321,8 @@ class DeviceAtw extends EventEmitter {
321
321
  //services
322
322
  if (zonesCount > 0) {
323
323
  this.melCloudServices = [];
324
- for (let i = 0; i < zonesCount; i++) {
325
- const zoneName = this.accessory.zones[i].name
324
+ this.accessory.zones.forEach((zone, i) => {
325
+ const zoneName = zone.name
326
326
  const serviceName = `${deviceTypeText} ${accessoryName}: ${zoneName}`;
327
327
  switch (this.displayMode) {
328
328
  case 1: //Heater Cooler
@@ -350,17 +350,17 @@ class DeviceAtw extends EventEmitter {
350
350
  });
351
351
  melCloudService.getCharacteristic(Characteristic.CurrentHeaterCoolerState)
352
352
  .onGet(async () => {
353
- const value = this.accessory.zones[i].currentOperationMode;
353
+ const value = zone.currentOperationMode;
354
354
  return value;
355
355
  });
356
356
  melCloudService.getCharacteristic(Characteristic.TargetHeaterCoolerState)
357
357
  .setProps({
358
- minValue: this.accessory.zones[i].operationModesSetPropsMinValue,
359
- maxValue: this.accessory.zones[i].operationModesSetPropsMaxValue,
360
- validValues: this.accessory.zones[i].operationModesSetPropsValidValues
358
+ minValue: zone.operationModesSetPropsMinValue,
359
+ maxValue: zone.operationModesSetPropsMaxValue,
360
+ validValues: zone.operationModesSetPropsValidValues
361
361
  })
362
362
  .onGet(async () => {
363
- const value = this.accessory.zones[i].targetOperationMode;
363
+ const value = zone.targetOperationMode;
364
364
  return value;
365
365
  })
366
366
  .onSet(async (value) => {
@@ -452,19 +452,19 @@ class DeviceAtw extends EventEmitter {
452
452
  minStep: 0.5
453
453
  })
454
454
  .onGet(async () => {
455
- const value = this.accessory.zones[i].roomTemperature;
455
+ const value = zone.roomTemperature;
456
456
  return value;
457
457
  });
458
458
  //only for heat/cool, only cool and not for hot water tank
459
459
  if ((heatCoolModes === 0 || heatCoolModes === 2) && i !== caseHotWater) {
460
460
  melCloudService.getCharacteristic(Characteristic.CoolingThresholdTemperature)
461
461
  .setProps({
462
- minValue: this.accessory.zones[i].temperaturesSetPropsMinValue,
463
- maxValue: this.accessory.zones[i].temperaturesSetPropsMaxValue,
462
+ minValue: zone.temperaturesSetPropsMinValue,
463
+ maxValue: zone.temperaturesSetPropsMaxValue,
464
464
  minStep: this.accessory.temperatureIncrement
465
465
  })
466
466
  .onGet(async () => {
467
- const value = this.accessory.zones[i].setTemperature;
467
+ const value = zone.setTemperature;
468
468
  return value;
469
469
  })
470
470
  .onSet(async (value) => {
@@ -475,7 +475,7 @@ class DeviceAtw extends EventEmitter {
475
475
  //deviceData.Device.EffectiveFlags = CONSTANTS.HeatPump.EffectiveFlags.SetTemperatureZone1;
476
476
  break;
477
477
  case caseZone1: //Zone 1
478
- switch (this.accessory.zones[i].operationMode) {
478
+ switch (zone.operationMode) {
479
479
  case 1: //HEAT FLOW
480
480
  deviceData.Device.SetHeatFlowTemperatureZone1 = value;
481
481
  deviceData.Device.EffectiveFlags = HeatPump.EffectiveFlags.SetHeatFlowTemperatureZone1;
@@ -495,7 +495,7 @@ class DeviceAtw extends EventEmitter {
495
495
  deviceData.Device.EffectiveFlags = HeatPump.EffectiveFlags.SetTankWaterTemperature;
496
496
  break;
497
497
  case caseZone2: //Zone 2
498
- switch (this.accessory.zones[i].operationMode) {
498
+ switch (zone.operationMode) {
499
499
  case 1: //HEAT FLOW
500
500
  deviceData.Device.SetHeatFlowTemperatureZone2 = value;
501
501
  deviceData.Device.EffectiveFlags = HeatPump.EffectiveFlags.SetHeatFlowTemperatureZone2;
@@ -523,12 +523,12 @@ class DeviceAtw extends EventEmitter {
523
523
  if (heatCoolModes === 0 || heatCoolModes === 1) {
524
524
  melCloudService.getCharacteristic(Characteristic.HeatingThresholdTemperature)
525
525
  .setProps({
526
- minValue: this.accessory.zones[i].temperaturesSetPropsMinValue,
527
- maxValue: this.accessory.zones[i].temperaturesSetPropsMaxValue,
526
+ minValue: zone.temperaturesSetPropsMinValue,
527
+ maxValue: zone.temperaturesSetPropsMaxValue,
528
528
  minStep: this.accessory.temperatureIncrement
529
529
  })
530
530
  .onGet(async () => {
531
- const value = this.accessory.zones[i].setTemperature;
531
+ const value = zone.setTemperature;
532
532
  return value;
533
533
  })
534
534
  .onSet(async (value) => {
@@ -539,7 +539,7 @@ class DeviceAtw extends EventEmitter {
539
539
  //deviceData.Device.EffectiveFlags = CONSTANTS.HeatPump.EffectiveFlags.SetTemperatureZone1;
540
540
  break;
541
541
  case caseZone1: //Zone 1
542
- switch (this.accessory.zones[i].operationMode) {
542
+ switch (zone.operationMode) {
543
543
  case 1: //HEAT FLOW
544
544
  deviceData.Device.SetHeatFlowTemperatureZone1 = value;
545
545
  deviceData.Device.EffectiveFlags = HeatPump.EffectiveFlags.SetHeatFlowTemperatureZone1;
@@ -559,7 +559,7 @@ class DeviceAtw extends EventEmitter {
559
559
  deviceData.Device.EffectiveFlags = HeatPump.EffectiveFlags.SetTankWaterTemperature;
560
560
  break;
561
561
  case caseZone2: //Zone 2
562
- switch (this.accessory.zones[i].operationMode) {
562
+ switch (zone.operationMode) {
563
563
  case 1: //HEAT FLOW
564
564
  deviceData.Device.SetHeatFlowTemperatureZone2 = value;
565
565
  deviceData.Device.EffectiveFlags = HeatPump.EffectiveFlags.SetHeatFlowTemperatureZone2;
@@ -585,7 +585,7 @@ class DeviceAtw extends EventEmitter {
585
585
  };
586
586
  melCloudService.getCharacteristic(Characteristic.LockPhysicalControls)
587
587
  .onGet(async () => {
588
- const value = this.accessory.zones[i].lockPhysicalControl;
588
+ const value = zone.lockPhysicalControl;
589
589
  return value;
590
590
  })
591
591
  .onSet(async (value) => {
@@ -642,17 +642,17 @@ class DeviceAtw extends EventEmitter {
642
642
  melCloudServiceT.setPrimaryService(true);
643
643
  melCloudServiceT.getCharacteristic(Characteristic.CurrentHeatingCoolingState)
644
644
  .onGet(async () => {
645
- const value = this.accessory.zones[i].currentOperationMode;
645
+ const value = zone.currentOperationMode;
646
646
  return value;
647
647
  });
648
648
  melCloudServiceT.getCharacteristic(Characteristic.TargetHeatingCoolingState)
649
649
  .setProps({
650
- minValue: this.accessory.zones[i].operationModesSetPropsMinValue,
651
- maxValue: this.accessory.zones[i].operationModesSetPropsMaxValue,
652
- validValues: this.accessory.zones[i].operationModesSetPropsValidValues
650
+ minValue: zone.operationModesSetPropsMinValue,
651
+ maxValue: zone.operationModesSetPropsMaxValue,
652
+ validValues: zone.operationModesSetPropsValidValues
653
653
  })
654
654
  .onGet(async () => {
655
- const value = this.accessory.zones[i].targetOperationMode;
655
+ const value = zone.targetOperationMode;
656
656
  return value;
657
657
  })
658
658
  .onSet(async (value) => {
@@ -760,17 +760,17 @@ class DeviceAtw extends EventEmitter {
760
760
  minStep: 0.5
761
761
  })
762
762
  .onGet(async () => {
763
- const value = this.accessory.zones[i].roomTemperature;
763
+ const value = zone.roomTemperature;
764
764
  return value;
765
765
  });
766
766
  melCloudServiceT.getCharacteristic(Characteristic.TargetTemperature)
767
767
  .setProps({
768
- minValue: this.accessory.zones[i].temperaturesSetPropsMinValue,
769
- maxValue: this.accessory.zones[i].temperaturesSetPropsMaxValue,
768
+ minValue: zone.temperaturesSetPropsMinValue,
769
+ maxValue: zone.temperaturesSetPropsMaxValue,
770
770
  minStep: this.accessory.temperatureIncrement
771
771
  })
772
772
  .onGet(async () => {
773
- const value = this.accessory.zones[i].setTemperature;
773
+ const value = zone.setTemperature;
774
774
  return value;
775
775
  })
776
776
  .onSet(async (value) => {
@@ -823,7 +823,7 @@ class DeviceAtw extends EventEmitter {
823
823
  //temperature sensor services zones
824
824
  switch (i) {
825
825
  case caseHeatPump: //Heat Pump
826
- if (temperatureSensor && this.accessory.zones[i].roomTemperature !== null) {
826
+ if (temperatureSensor && zone.roomTemperature !== null) {
827
827
  const debug = this.enableDebugMode ? this.emit('debug', `${zoneName}, Prepare temperature sensor service`) : false;
828
828
  this.roomTemperatureSensorService = new Service.TemperatureSensor(`${serviceName}`, `${zoneName} Temperature Sensor ${deviceId} ${i}`);
829
829
  this.roomTemperatureSensorService.addOptionalCharacteristic(Characteristic.ConfiguredName);
@@ -835,13 +835,13 @@ class DeviceAtw extends EventEmitter {
835
835
  minStep: 0.5
836
836
  })
837
837
  .onGet(async () => {
838
- const state = this.accessory.zones[i].roomTemperature;
838
+ const state = zone.roomTemperature;
839
839
  return state;
840
840
  })
841
841
  accessory.addService(this.roomTemperatureSensorService);
842
842
  };
843
843
 
844
- if (temperatureSensorFlow && this.accessory.zones[i].flowTemperature !== null) {
844
+ if (temperatureSensorFlow && zone.flowTemperature !== null) {
845
845
  const debug = this.enableDebugMode ? this.emit('debug', `Prepare flow temperature sensor service`) : false;
846
846
  this.flowTemperatureSensorService = new Service.TemperatureSensor(`${serviceName} Flow`, `${zoneName} Temperature Sensor Flow ${deviceId} ${i}`);
847
847
  this.flowTemperatureSensorService.addOptionalCharacteristic(Characteristic.ConfiguredName);
@@ -853,15 +853,14 @@ class DeviceAtw extends EventEmitter {
853
853
  minStep: 0.5
854
854
  })
855
855
  .onGet(async () => {
856
- const state = this.accessory.zones[i].flowTemperature;
856
+ const state = zone.flowTemperature;
857
857
  return state;
858
858
  })
859
859
  accessory.addService(this.flowTemperatureSensorService);
860
860
 
861
861
  };
862
862
 
863
-
864
- if (temperatureSensorReturn && this.accessory.zones[i].returnTemperature !== null) {
863
+ if (temperatureSensorReturn && zone.returnTemperature !== null) {
865
864
  const debug1 = this.enableDebugMode ? this.emit('debug', `Prepare return temperature sensor service`) : false;
866
865
  this.returnTemperatureSensorService = new Service.TemperatureSensor(`${serviceName} Return`, `${zoneName} Temperature Sensor Return ${deviceId} ${i}`);
867
866
  this.returnTemperatureSensorService.addOptionalCharacteristic(Characteristic.ConfiguredName);
@@ -873,14 +872,14 @@ class DeviceAtw extends EventEmitter {
873
872
  minStep: 0.5
874
873
  })
875
874
  .onGet(async () => {
876
- const state = this.accessory.zones[i].returnTemperature;
875
+ const state = zone.returnTemperature;
877
876
  return state;
878
877
  })
879
878
  accessory.addService(this.returnTemperatureSensorService);
880
879
  };
881
880
  break;
882
881
  case caseZone1: //Zone 1
883
- if (temperatureSensor && this.accessory.zones[i].roomTemperature !== null) {
882
+ if (temperatureSensor && zone.roomTemperature !== null) {
884
883
  const debug = this.enableDebugMode ? this.emit('debug', `${zoneName}, Prepare temperature sensor service`) : false;
885
884
  this.roomTemperatureZone1SensorService = new Service.TemperatureSensor(`${serviceName}`, `${zoneName} Temperature Sensor ${deviceId} ${i}`);
886
885
  this.roomTemperatureZone1SensorService.addOptionalCharacteristic(Characteristic.ConfiguredName);
@@ -892,13 +891,13 @@ class DeviceAtw extends EventEmitter {
892
891
  minStep: 0.5
893
892
  })
894
893
  .onGet(async () => {
895
- const state = this.accessory.zones[i].roomTemperature;
894
+ const state = zone.roomTemperature;
896
895
  return state;
897
896
  })
898
897
  accessory.addService(this.roomTemperatureZone1SensorService);
899
898
  };
900
899
 
901
- if (temperatureSensorFlowZone1 && this.accessory.zones[i].flowTemperature !== null) {
900
+ if (temperatureSensorFlowZone1 && zone.flowTemperature !== null) {
902
901
  const debug2 = this.enableDebugMode ? this.emit('debug', `Prepare flow temperature zone 1 sensor service`) : false;
903
902
  this.flowTemperatureZone1SensorService = new Service.TemperatureSensor(`${serviceName} Flow`, `${zoneName} Temperature Sensor Flow ${deviceId} ${i}`);
904
903
  this.flowTemperatureZone1SensorService.addOptionalCharacteristic(Characteristic.ConfiguredName);
@@ -910,13 +909,13 @@ class DeviceAtw extends EventEmitter {
910
909
  minStep: 0.5
911
910
  })
912
911
  .onGet(async () => {
913
- const state = this.accessory.zones[i].flowTemperature;
912
+ const state = zone.flowTemperature;
914
913
  return state;
915
914
  })
916
915
  accessory.addService(this.flowTemperatureZone1SensorService);
917
916
  };
918
917
 
919
- if (temperatureSensorReturnZone1 && this.accessory.zones[i].returnTemperature !== null) {
918
+ if (temperatureSensorReturnZone1 && zone.returnTemperature !== null) {
920
919
  const debug3 = this.enableDebugMode ? this.emit('debug', `Prepare return temperature zone 1 sensor service`) : false;
921
920
  this.returnTemperatureZone1SensorService = new Service.TemperatureSensor(`${serviceName} Return`, `${zoneName} Temperature Sensor Return ${deviceId} ${i}`);
922
921
  this.returnTemperatureZone1SensorService.addOptionalCharacteristic(Characteristic.ConfiguredName);
@@ -928,14 +927,14 @@ class DeviceAtw extends EventEmitter {
928
927
  minStep: 0.5
929
928
  })
930
929
  .onGet(async () => {
931
- const state = this.accessory.zones[i].returnTemperature;
930
+ const state = zone.returnTemperature;
932
931
  return state;
933
932
  })
934
933
  accessory.addService(this.returnTemperatureZone1SensorService);
935
934
  };
936
935
  break;
937
936
  case caseHotWater: //Hot Water
938
- if (temperatureSensor && this.accessory.zones[i].roomTemperature !== null) {
937
+ if (temperatureSensor && zone.roomTemperature !== null) {
939
938
  const debug = this.enableDebugMode ? this.emit('debug', `${zoneName}, Prepare temperature sensor service`) : false;
940
939
  this.roomTemperatureWaterTankSensorService = new Service.TemperatureSensor(`${serviceName}`, `${zoneName} Temperature Sensor ${deviceId} ${i}`);
941
940
  this.roomTemperatureWaterTankSensorService.addOptionalCharacteristic(Characteristic.ConfiguredName);
@@ -947,13 +946,13 @@ class DeviceAtw extends EventEmitter {
947
946
  minStep: 0.5
948
947
  })
949
948
  .onGet(async () => {
950
- const state = this.accessory.zones[i].roomTemperature;
949
+ const state = zone.roomTemperature;
951
950
  return state;
952
951
  })
953
952
  accessory.addService(this.roomTemperatureWaterTankSensorService);
954
953
  };
955
954
 
956
- if (temperatureSensorFlowWaterTank && this.accessory.zones[i].flowTemperature !== null) {
955
+ if (temperatureSensorFlowWaterTank && zone.flowTemperature !== null) {
957
956
  const debug = this.enableDebugMode ? this.emit('debug', `Prepare flow temperature water tank sensor service`) : false;
958
957
  this.flowTemperatureWaterTankSensorService = new Service.TemperatureSensor(`${serviceName} Flow`, `${zoneName} Temperature Sensor Flow ${deviceId} ${i}`);
959
958
  this.flowTemperatureWaterTankSensorService.addOptionalCharacteristic(Characteristic.ConfiguredName);
@@ -965,13 +964,13 @@ class DeviceAtw extends EventEmitter {
965
964
  minStep: 0.5
966
965
  })
967
966
  .onGet(async () => {
968
- const state = this.accessory.zones[i].flowTemperature;
967
+ const state = zone.flowTemperature;
969
968
  return state;
970
969
  })
971
970
  accessory.addService(this.flowTemperatureWaterTankSensorService);
972
971
  };
973
972
 
974
- if (temperatureSensorReturnWaterTank && this.accessory.zones[i].returnTemperature !== null) {
973
+ if (temperatureSensorReturnWaterTank && zone.returnTemperature !== null) {
975
974
  const debug1 = this.enableDebugMode ? this.emit('debug', `Prepare return temperature water tank sensor service`) : false;
976
975
  this.returnTemperatureWaterTankSensorService = new Service.TemperatureSensor(`${serviceName} Return`, `${zoneName} Temperature Sensor Return ${deviceId} ${i}`);
977
976
  this.returnTemperatureWaterTankSensorService.addOptionalCharacteristic(Characteristic.ConfiguredName);
@@ -983,14 +982,14 @@ class DeviceAtw extends EventEmitter {
983
982
  minStep: 0.5
984
983
  })
985
984
  .onGet(async () => {
986
- const state = this.accessory.zones[i].returnTemperature;
985
+ const state = zone.returnTemperature;
987
986
  return state;
988
987
  })
989
988
  accessory.addService(this.returnTemperatureWaterTankSensorService);
990
989
  };
991
990
  break;
992
991
  case caseZone2: //Zone 2
993
- if (temperatureSensor && this.accessory.zones[i].roomTemperature !== null) {
992
+ if (temperatureSensor && zone.roomTemperature !== null) {
994
993
  const debug = this.enableDebugMode ? this.emit('debug', `${zoneName}, Prepare temperature sensor service`) : false;
995
994
  this.roomTemperatureZone2SensorService = new Service.TemperatureSensor(`${serviceName}`, `${zoneName} Temperature Sensor ${deviceId} ${i}`);
996
995
  this.roomTemperatureZone2SensorService.addOptionalCharacteristic(Characteristic.ConfiguredName);
@@ -1002,13 +1001,13 @@ class DeviceAtw extends EventEmitter {
1002
1001
  minStep: 0.5
1003
1002
  })
1004
1003
  .onGet(async () => {
1005
- const state = this.accessory.zones[i].roomTemperature;
1004
+ const state = zone.roomTemperature;
1006
1005
  return state;
1007
1006
  })
1008
1007
  accessory.addService(this.roomTemperatureZone2SensorService);
1009
1008
  };
1010
1009
 
1011
- if (temperatureSensorFlowZone2 && this.accessory.zones[i].flowTemperature !== null) {
1010
+ if (temperatureSensorFlowZone2 && zone.flowTemperature !== null) {
1012
1011
  const debug = this.enableDebugMode ? this.emit('debug', `Prepare flow temperature zone 2 sensor service`) : false;
1013
1012
  this.flowTemperatureZone2SensorService = new Service.TemperatureSensor(`${serviceName} Flow`, `${zoneName} Temperature Sensor Flow${deviceId} ${i}`);
1014
1013
  this.flowTemperatureZone2SensorService.addOptionalCharacteristic(Characteristic.ConfiguredName);
@@ -1020,13 +1019,13 @@ class DeviceAtw extends EventEmitter {
1020
1019
  minStep: 0.5
1021
1020
  })
1022
1021
  .onGet(async () => {
1023
- const state = this.accessory.zones[i].flowTemperature;
1022
+ const state = zone.flowTemperature;
1024
1023
  return state;
1025
1024
  })
1026
1025
  accessory.addService(this.flowTemperatureZone2SensorService);
1027
1026
  };
1028
1027
 
1029
- if (temperatureSensorReturnZone2 && this.accessory.zones[i].returnTemperature !== null) {
1028
+ if (temperatureSensorReturnZone2 && zone.returnTemperature !== null) {
1030
1029
  const debug1 = this.enableDebugMode ? this.emit('debug', `Prepare return temperature zone 2 sensor service`) : false;
1031
1030
  this.returnTemperatureZone2SensorService = new Service.TemperatureSensor(`${serviceName} Return`, `${zoneName} Temperature Sensor Return${deviceId} ${i}`);
1032
1031
  this.returnTemperatureZone2SensorService.addOptionalCharacteristic(Characteristic.ConfiguredName);
@@ -1038,23 +1037,21 @@ class DeviceAtw extends EventEmitter {
1038
1037
  minStep: 0.5
1039
1038
  })
1040
1039
  .onGet(async () => {
1041
- const state = this.accessory.zones[i].returnTemperature;
1040
+ const state = zone.returnTemperature;
1042
1041
  return state;
1043
1042
  })
1044
1043
  accessory.addService(this.returnTemperatureZone2SensorService);
1045
1044
  };
1046
1045
  break;
1047
1046
  };
1048
- };
1047
+ });
1049
1048
  };
1050
1049
 
1051
1050
  //presets services
1052
1051
  if (this.presetsConfiguredCount > 0) {
1053
1052
  const debug = this.enableDebugMode ? this.emit('debug', `Prepare presets services`) : false;
1054
1053
  this.presetsServices = [];
1055
-
1056
- for (let i = 0; i < this.presetsConfiguredCount; i++) {
1057
- const preset = this.presetsConfigured[i];
1054
+ this.presetsConfigured.forEach((preset, i) => {
1058
1055
  const presetData = presetsOnServer.find(p => p.ID === preset.Id);
1059
1056
 
1060
1057
  //get preset name
@@ -1118,17 +1115,14 @@ class DeviceAtw extends EventEmitter {
1118
1115
  });
1119
1116
  this.presetsServices.push(presetService);
1120
1117
  accessory.addService(presetService);
1121
- };
1118
+ });
1122
1119
  };
1123
1120
 
1124
1121
  //buttons services
1125
1122
  if (this.buttonsConfiguredCount > 0) {
1126
1123
  const debug = this.enableDebugMode ? this.emit('debug', `Prepare buttons services`) : false;
1127
1124
  this.buttonsServices = [];
1128
-
1129
- for (let i = 0; i < this.buttonsConfiguredCount; i++) {
1130
- const button = this.buttonsConfigured[i];
1131
-
1125
+ this.buttonsConfigured.forEach((button, i) => {
1132
1126
  //get button mode
1133
1127
  const mode = button.mode;
1134
1128
 
@@ -1290,7 +1284,7 @@ class DeviceAtw extends EventEmitter {
1290
1284
  });
1291
1285
  this.buttonsServices.push(buttonService);
1292
1286
  accessory.addService(buttonService)
1293
- };
1287
+ });
1294
1288
  };
1295
1289
 
1296
1290
  return accessory;
@@ -1803,8 +1797,7 @@ class DeviceAtw extends EventEmitter {
1803
1797
 
1804
1798
  //update presets state
1805
1799
  if (this.presetsConfigured.length > 0) {
1806
- for (let i = 0; i < this.presetsConfigured.length; i++) {
1807
- const preset = this.presetsConfigured[i];
1800
+ this.presetsConfigured.forEach((preset, i) => {
1808
1801
  const presetData = presetsOnServer.find(p => p.ID === preset.Id);
1809
1802
 
1810
1803
  preset.state = presetData ? (presetData.Power === power
@@ -1825,7 +1818,7 @@ class DeviceAtw extends EventEmitter {
1825
1818
  this.presetsServices[i]
1826
1819
  .updateCharacteristic(characteristicType, preset.state)
1827
1820
  };
1828
- };
1821
+ });
1829
1822
  };
1830
1823
 
1831
1824
  //update buttons state
package/src/deviceerv.js CHANGED
@@ -677,9 +677,7 @@ class DeviceErv extends EventEmitter {
677
677
  if (this.presetsConfiguredCount > 0) {
678
678
  const debug = this.enableDebugMode ? this.emit('debug', `Prepare presets services`) : false;
679
679
  this.presetsServices = [];
680
-
681
- for (let i = 0; i < this.presetsConfiguredCount; i++) {
682
- const preset = this.presetsConfigured[i];
680
+ this.presetsConfigured.forEach((preset, i) => {
683
681
  const presetData = presetsOnServer.find(p => p.ID === preset.Id);
684
682
 
685
683
  //get preset name
@@ -727,7 +725,7 @@ class DeviceErv extends EventEmitter {
727
725
  this.emit('warn', `Set preset error: ${error}`);
728
726
  };
729
727
  });
730
- };
728
+ });
731
729
  this.presetsServices.push(presetService);
732
730
  accessory.addService(presetService);
733
731
  };
@@ -736,10 +734,7 @@ class DeviceErv extends EventEmitter {
736
734
  if (this.buttonsConfiguredCount > 0) {
737
735
  const debug = this.enableDebugMode ? this.emit('debug', `Prepare buttons services`) : false;
738
736
  this.buttonsServices = [];
739
-
740
- for (let i = 0; i < this.buttonsConfiguredCount; i++) {
741
- const button = this.buttonsConfigured[i];
742
-
737
+ this.buttonsConfigured.forEach((button, i) => {
743
738
  //get button mode
744
739
  const mode = button.mode;
745
740
 
@@ -846,7 +841,7 @@ class DeviceErv extends EventEmitter {
846
841
  });
847
842
  this.buttonsServices.push(buttonService);
848
843
  accessory.addService(buttonService);
849
- };
844
+ });
850
845
  };
851
846
 
852
847
  return accessory;
@@ -1136,8 +1131,7 @@ class DeviceErv extends EventEmitter {
1136
1131
 
1137
1132
  //update presets state
1138
1133
  if (this.presetsConfigured.length > 0) {
1139
- for (let i = 0; i < this.presetsConfigured.length; i++) {
1140
- const preset = this.presetsConfigured[i];
1134
+ this.presetsConfigured.forEach((preset, i) => {
1141
1135
  const presetData = presetsOnServer.find(p => p.ID === preset.Id);
1142
1136
 
1143
1137
  preset.state = presetData ? (presetData.Power === power
@@ -1151,13 +1145,12 @@ class DeviceErv extends EventEmitter {
1151
1145
  this.presetsServices[i]
1152
1146
  .updateCharacteristic(characteristicType, preset.state)
1153
1147
  };
1154
- };
1148
+ });
1155
1149
  };
1156
1150
 
1157
1151
  //update buttons state
1158
1152
  if (this.buttonsConfiguredCount > 0) {
1159
- for (let i = 0; i < this.buttonsConfiguredCount; i++) {
1160
- const button = this.buttonsConfigured[i];
1153
+ this.buttonsConfigured.forEach((button, i) => {
1161
1154
  const mode = button.mode;;
1162
1155
  switch (mode) {
1163
1156
  case 0: //POWER ON,OFF
@@ -1213,7 +1206,7 @@ class DeviceErv extends EventEmitter {
1213
1206
  this.buttonsServices[i]
1214
1207
  .updateCharacteristic(characteristicType, button.state)
1215
1208
  };
1216
- };
1209
+ });
1217
1210
  };
1218
1211
 
1219
1212
  //log current state