homebridge-melcloud-control 4.0.0-beta.174 → 4.0.0-beta.176

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.
Files changed (2) hide show
  1. package/package.json +1 -1
  2. package/src/melcloudata.js +21 -15
package/package.json CHANGED
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "displayName": "MELCloud Control",
3
3
  "name": "homebridge-melcloud-control",
4
- "version": "4.0.0-beta.174",
4
+ "version": "4.0.0-beta.176",
5
5
  "description": "Homebridge plugin to control Mitsubishi Air Conditioner, Heat Pump and Energy Recovery Ventilation.",
6
6
  "license": "MIT",
7
7
  "author": "grzegorz914",
@@ -13,6 +13,8 @@ class MelCloudAta extends EventEmitter {
13
13
  this.logDebug = device.log?.debug;
14
14
  this.devicesFile = devicesFile;
15
15
  this.functions = new Functions();
16
+ this.defaultHeatingSetTemperature = 20;
17
+ this.defaultCoolingSetTemperature = 23;
16
18
 
17
19
  //set default values
18
20
  this.deviceState = {};
@@ -56,13 +58,13 @@ class MelCloudAta extends EventEmitter {
56
58
  const deviceData = devicesData.find(device => device.DeviceID === this.deviceId);
57
59
  if (this.accountType === 'melcloudhome') {
58
60
  deviceData.SerialNumber = deviceData.Device.DeviceID || '4.0.0';
59
- deviceData.Device.OperationMode = AirConditioner.OperationModeMapStringToEnum[deviceData.Device.OperationMode];
60
- deviceData.Device.ActualFanSpeed = AirConditioner.FanSpeedMapStringToEnum[deviceData.Device.ActualFanSpeed];
61
+ deviceData.Device.OperationMode = AirConditioner.OperationModeMapStringToEnum[deviceData.Device.OperationMode] ?? deviceData.Device.OperationMode;
62
+ deviceData.Device.ActualFanSpeed = AirConditioner.FanSpeedMapStringToEnum[deviceData.Device.ActualFanSpeed] ?? deviceData.Device.ActualFanSpeed;
61
63
  deviceData.Device.SetFanSpeed = AirConditioner.FanSpeedMapStringToEnum[deviceData.Device.SetFanSpeed] ?? deviceData.Device.SetFanSpeed;
62
- deviceData.Device.VaneVerticalDirection = AirConditioner.VaneVerticalDirectionMapStringToEnum[deviceData.Device.VaneVerticalDirection];
63
- deviceData.Device.VaneHorizontalDirection = AirConditioner.VaneHorizontalDirectionMapStringToEnum[deviceData.Device.VaneHorizontalDirection];
64
- deviceData.Device.DefaultHeatingSetTemperature = 20;
65
- deviceData.Device.DefaultCoolingSetTemperature = 23;
64
+ deviceData.Device.VaneVerticalDirection = AirConditioner.VaneVerticalDirectionMapStringToEnum[deviceData.Device.VaneVerticalDirection] ?? deviceData.Device.VaneVerticalDirection;
65
+ deviceData.Device.VaneHorizontalDirection = AirConditioner.VaneHorizontalDirectionMapStringToEnum[deviceData.Device.VaneHorizontalDirection] ?? deviceData.Device.VaneHorizontalDirection;
66
+ deviceData.Device.DefaultHeatingSetTemperature = this.defaultHeatingSetTemperature;
67
+ deviceData.Device.DefaultCoolingSetTemperature = this.defaultCoolingSetTemperature;
66
68
  deviceData.Device.FirmwareAppVersion = '4.0.0';
67
69
  }
68
70
 
@@ -262,17 +264,19 @@ class MelCloudAta extends EventEmitter {
262
264
  });
263
265
 
264
266
  // Calculate temp in auto mode
265
- if (displayMode === 1 && deviceData.Device.OperationMode === 8) deviceData.Device.SetTemperature = (deviceData.Device.DefaultCoolingSetTemperature + deviceData.Device.DefaultHeatingSetTemperature) / 2;
267
+ if (displayMode === 1 && deviceData.Device.OperationMode === 8) {
268
+ deviceData.Device.SetTemperature = (deviceData.Device.DefaultCoolingSetTemperature + deviceData.Device.DefaultHeatingSetTemperature) / 2;
269
+ this.defaultCoolingSetTemperature = deviceData.Device.DefaultCoolingSetTemperature;
270
+ this.DefaultHeatingSetTemperature = deviceData.Device.DefaultHeatingSetTemperature;
271
+ }
266
272
 
267
273
  // Convert values to strings
268
274
  deviceData.Device.SetFanSpeed = String(deviceData.Device.SetFanSpeed);
269
- deviceData.Device.OperationMode = AirConditioner.OperationModeMapEnumToString?.[deviceData.Device.OperationMode];
270
- deviceData.Device.VaneHorizontalDirection = AirConditioner.VaneHorizontalDirectionMapEnumToString?.[deviceData.Device.VaneHorizontalDirection];
271
- deviceData.Device.VaneVerticalDirection = AirConditioner.VaneVerticalDirectionMapEnumToString?.[deviceData.Device.VaneVerticalDirection];
272
-
273
- this.emit('warn', JSON.stringify(deviceData.Device, null, 2));
275
+ deviceData.Device.OperationMode = AirConditioner.OperationModeMapEnumToString[deviceData.Device.OperationMode];
276
+ deviceData.Device.VaneHorizontalDirection = AirConditioner.VaneHorizontalDirectionMapEnumToString[deviceData.Device.VaneHorizontalDirection];
277
+ deviceData.Device.VaneVerticalDirection = AirConditioner.VaneVerticalDirectionMapEnumToString[deviceData.Device.VaneVerticalDirection];
274
278
 
275
- const data = {
279
+ const settings = {
276
280
  data: {
277
281
  Power: deviceData.Device.Power,
278
282
  SetTemperature: deviceData.Device.SetTemperature,
@@ -283,10 +287,12 @@ class MelCloudAta extends EventEmitter {
283
287
  }
284
288
  };
285
289
 
286
- this.emit('warn', JSON.stringify(data, null, 2));
290
+ this.emit('warn', JSON.stringify(deviceData, null, 2));
291
+ this.emit('warn', JSON.stringify(settings, null, 2));
287
292
 
288
293
  const path = ApiUrlsHome.SetAta.replace('deviceid', deviceData.DeviceID);
289
- await axiosInstancePut(path, data);
294
+ await axiosInstancePut(path, settings);
295
+ //this.emit('deviceState', deviceData);
290
296
  return true;
291
297
  default:
292
298
  return;