homebridge-melcloud-control 4.0.0-beta.43 → 4.0.0-beta.430

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.
@@ -6,12 +6,13 @@ import Functions from './functions.js';
6
6
  import { ApiUrls } from './constants.js';
7
7
 
8
8
  class MelCloudAtw extends EventEmitter {
9
- constructor(device, contextKey, devicesFile) {
9
+ constructor(device, contextKey, devicesFile, defaultTempsFile) {
10
10
  super();
11
11
  this.deviceId = device.id;
12
12
  this.logWarn = device.log?.warn;
13
13
  this.logDebug = device.log?.debug;
14
14
  this.devicesFile = devicesFile;
15
+ this.defaultTempsFile = defaultTempsFile;
15
16
  this.functions = new Functions();
16
17
 
17
18
  //set default values
@@ -61,8 +62,7 @@ class MelCloudAtw extends EventEmitter {
61
62
  async checkState() {
62
63
  try {
63
64
  //read device info from file
64
- const data = await this.functions.readData(this.devicesFile);
65
- const devicesData = JSON.parse(data);
65
+ const devicesData = await this.functions.readData(this.devicesFile, true);
66
66
 
67
67
  if (!Array.isArray(devicesData)) {
68
68
  if (this.logWarn) this.emit('warn', `Device data not found`);
@@ -72,110 +72,17 @@ class MelCloudAtw extends EventEmitter {
72
72
  if (this.logDebug) this.emit('debug', `Device Data: ${JSON.stringify(deviceData, null, 2)}`);
73
73
 
74
74
  //device info
75
- const deviceId = deviceData.DeviceID;
76
- const deviceName = deviceData.DeviceName;
77
- const buildingId = deviceData.BuildingID;
78
- const buildingName = deviceData.BuildingName;
79
- const floorId = deviceData.FloorID;
80
- const floorName = deviceData.FloorName;
81
- const areaId = deviceData.AreaID;
82
- const areaName = deviceData.AreaName;
83
- const imageId = deviceData.ImageID;
84
- const installationDate = deviceData.InstallationDate;
85
- const lastServiceDate = deviceData.LastServiceDate;
86
-
87
- //presets
88
- const presets = deviceData.Presets ?? [];
89
-
90
- //device info
91
- const ownerId = deviceData.OwnerID;
92
- const ownerName = deviceData.OwnerName;
93
- const ownerEmail = deviceData.OwnerEmail;
94
- const accessLevel = deviceData.AccessLevel;
95
- const directAccess = deviceData.DirectAccess;
96
- const endDate = deviceData.EndDate;
97
- const zone1Name = deviceData.Zone1Name;
98
- const zone2Name = deviceData.Zone2Name;
99
- const minTemperature = deviceData.MinTemperature;
100
- const maxTemperature = deviceData.MaxTemperature;
101
- const hideVaneControls = deviceData.HideVaneControls;
102
- const hideDryModeControl = deviceData.HideDryModeControl;
103
- const hideRoomTemperature = deviceData.HideRoomTemperature;
104
- const hideSupplyTemperature = deviceData.HideSupplyTemperature;
105
- const hideOutdoorTemperature = deviceData.HideOutdoorTemperature;
106
- const buildingCountry = deviceData.BuildingCountry;
107
- const ownerCountry = deviceData.OwnerCountry;
108
- const adaptorType = deviceData.AdaptorType;
109
- const linkedDevice = deviceData.LinkedDevice;
110
- const type = deviceData.Type;
111
- const macAddress = deviceData.MacAddress;
112
75
  const serialNumber = deviceData.SerialNumber ?? 'Undefined';
113
76
 
114
77
  //device
115
78
  const device = deviceData.Device ?? {};
116
- const listHistory24Formatters = Array.isArray(device.ListHistory24Formatters) ? device.ListHistory24Formatters : [];
117
- const listHistory24FormattersCount = listHistory24Formatters.length;
118
- const pCycleActual = device.PCycleActual;
119
- const errorMessages = device.ErrorMessages;
120
- const deviceType = device.DeviceType;
121
- const canHeat = device.CanHeat;
122
- const canCool = device.CanCool;
123
79
  const hasHotWaterTank = device.HasHotWaterTank ?? false;
124
- const fTCVersion = device.FTCVersion;
125
- const fTCRevision = device.FTCRevision;
126
- const lastFTCVersion = device.LastFTCVersion;
127
- const lastFTCRevision = device.LastFTCRevision;
128
- const fTCModel = device.FTCModel;
129
- const refridgerentAddress = device.RefridgerentAddress; // TODO: Typo in MELCloud service?
130
- const dipSwitch1 = device.DipSwitch1;
131
- const dipSwitch2 = device.DipSwitch2;
132
- const dipSwitch3 = device.DipSwitch3;
133
- const minTempHeat = device.DipSwitch4;
134
- const dipSwitch5 = device.DipSwitch5;
135
- const dipSwitch6 = device.DipSwitch6;
136
- const hasThermostatZone1 = device.HasThermostatZone1;
137
- const hasThermostatZone2 = device.HasThermostatZone2;
138
80
  const temperatureIncrement = device.TemperatureIncrement;
139
- const defrostMode = device.DefrostMode;
140
- const heatPumpFrequency = device.HeatPumpFrequency;
141
- const maxSetTemperature = device.MaxSetTemperature;
142
- const minSetTemperature = device.MinSetTemperature;
143
81
  const roomTemperatureZone1 = device.RoomTemperatureZone1;
144
82
  const roomTemperatureZone2 = device.RoomTemperatureZone2;
145
83
  const outdoorTemperature = device.OutdoorTemperature;
146
- const flowTemperature = device.FlowTemperature;
147
- const flowTemperatureZone1 = device.FlowTemperatureZone1;
148
- const flowTemperatureZone2 = device.FlowTemperatureZone2;
149
- const flowTemperatureBoiler = device.FlowTemperatureBoiler;
150
- const returnTemperature = device.ReturnTemperature;
151
- const returnTemperatureZone1 = device.ReturnTemperatureZone1;
152
- const returnTemperatureZone2 = device.ReturnTemperatureZone2;
153
- const returnTemperatureBoiler = device.ReturnTemperatureBoiler;
154
- const boilerStatus = device.BoilerStatus;
155
- const boosterHeater1Status = device.BoosterHeater1Status;
156
- const boosterHeater2Status = device.BoosterHeater2Status;
157
- const boosterHeater2PlusStatus = device.BoosterHeater2PlusStatus;
158
- const immersionHeaterStatus = device.ImmersionHeaterStatus;
159
- const waterPump1Status = device.WaterPump1Status;
160
- const waterPump2Status = device.WaterPump2Status;
161
- const waterPump3Status = device.WaterPump3Status;
162
- const valveStatus3Way = device.ValveStatus3Way;
163
- const valveStatus2Way = device.ValveStatus2Way;
164
- const waterPump4Status = device.WaterPump4Status;
165
- const valveStatus2Way2a = device.ValveStatus2Way2a;
166
- const valveStatus2Way2b = device.ValveStatus2Way2b;
167
84
  const tankWaterTemperature = device.TankWaterTemperature;
168
85
  const unitStatus = device.UnitStatus;
169
- const heatingFunctionEnabled = device.HeatingFunctionEnabled;
170
- const serverTimerEnabled = device.ServerTimerEnabled;
171
- const thermostatStatusZone1 = device.ThermostatStatusZone1;
172
- const thermostatStatusZone2 = device.ThermostatStatusZone2;
173
- const thermostatTypeZone1 = device.ThermostatTypeZone1;
174
- const thermostatTypeZone2 = device.ThermostatTypeZone2;
175
- const mixingTankWaterTemperature = device.MixingTankWaterTemperature;
176
- const condensingTemperature = device.CondensingTemperature;
177
- const effectiveFlags = device.EffectiveFlags;
178
- const lastEffectiveFlags = device.LastEffectiveFlags;
179
86
  const power = device.Power;
180
87
  const ecoHotWater = device.EcoHotWater;
181
88
  const operationMode = device.OperationMode;
@@ -184,126 +91,18 @@ class MelCloudAtw extends EventEmitter {
184
91
  const setTemperatureZone1 = device.SetTemperatureZone1;
185
92
  const setTemperatureZone2 = device.SetTemperatureZone2;
186
93
  const setTankWaterTemperature = device.SetTankWaterTemperature;
187
- const targetHCTemperatureZone1 = device.TargetHCTemperatureZone1;
188
- const targetHCTemperatureZone2 = device.TargetHCTemperatureZone2;
189
94
  const forcedHotWaterMode = device.ForcedHotWaterMode;
190
95
  const holidayMode = device.HolidayMode;
191
96
  const prohibitHotWater = device.ProhibitHotWater;
192
97
  const prohibitHeatingZone1 = device.ProhibitHeatingZone1;
193
98
  const prohibitHeatingZone2 = device.ProhibitHeatingZone2;
194
- const prohibitCoolingZone1 = device.ProhibitCoolingZone1;
195
- const prohibitCoolingZone2 = device.ProhibitCoolingZone2;
196
- const serverTimerDesired = device.ServerTimerDesired;
197
- const secondaryZoneHeatCurve = device.SecondaryZoneHeatCurve;
198
99
  const setHeatFlowTemperatureZone1 = device.SetHeatFlowTemperatureZone1;
199
100
  const setHeatFlowTemperatureZone2 = device.SetHeatFlowTemperatureZone2;
200
101
  const setCoolFlowTemperatureZone1 = device.SetCoolFlowTemperatureZone1;
201
102
  const setCoolFlowTemperatureZone2 = device.SetCoolFlowTemperatureZone2;
202
- const thermostatTemperatureZone1 = device.ThermostatTemperatureZone1;
203
- const thermostatTemperatureZone2 = device.ThermostatTemperatureZone2;
204
- const dECCReport = device.DECCReport;
205
- const cSVReport1min = device.CSVReport1min;
206
- const zone2Master = device.Zone2Master;
207
- const dailyEnergyConsumedDate = device.DailyEnergyConsumedDate;
208
- const dailyEnergyProducedDate = device.DailyEnergyProducedDate;
209
- const currentEnergyConsumed = device.CurrentEnergyConsumed;
210
- const currentEnergyProduced = device.CurrentEnergyProduced;
211
- const currentEnergyMode = device.CurrentEnergyMode;
212
- const heatingEnergyConsumedRate1 = device.HeatingEnergyConsumedRate1;
213
- const heatingEnergyConsumedRate2 = device.HeatingEnergyConsumedRate2
214
- const coolingEnergyConsumedRate1 = device.CoolingEnergyConsumedRate1;
215
- const coolingEnergyConsumedRate2 = device.CoolingEnergyConsumedRate2;
216
- const hotWaterEnergyConsumedRate1 = device.HotWaterEnergyConsumedRate1;
217
- const hotWaterEnergyConsumedRate2 = device.HotWaterEnergyConsumedRate2;
218
- const heatingEnergyProducedRate1 = device.HeatingEnergyProducedRate1;
219
- const heatingEnergyProducedRate2 = device.HeatingEnergyProducedRate2;
220
- const coolingEnergyProducedRate1 = device.CoolingEnergyProducedRate1;
221
- const coolingEnergyProducedRate2 = device.CoolingEnergyProducedRate2;
222
- const hotWaterEnergyProducedRate1 = device.HotWaterEnergyProducedRate1;
223
- const hotWaterEnergyProducedRate2 = device.HotWaterEnergyProducedRate2;
224
- const errorCode2Digit = device.ErrorCode2Digit;
225
- const sendSpecialFunctions = device.SendSpecialFunctions;
226
- const requestSpecialFunctions = device.RequestSpecialFunctions;
227
- const specialFunctionsState = device.SpecialFunctionsState;
228
- const pendingSendSpecialFunctions = device.PendingSendSpecialFunctions;
229
- const pendingRequestSpecialFunctions = device.PendingRequestSpecialFunctions;
230
- const hasSimplifiedZone2 = device.HasSimplifiedZone2;
231
- const canSetTankTemperature = device.CanSetTankTemperature;
232
- const canSetEcoHotWater = device.CanSetEcoHotWater;
233
- const hasEnergyConsumedMeter = device.HasEnergyConsumedMeter;
234
- const hasEnergyProducedMeter = device.HasEnergyProducedMeter;
235
- const canMeasureEnergyProduced = device.CanMeasureEnergyProduced;
236
- const canMeasureEnergyConsumed = device.CanMeasureEnergyConsumed;
237
- const zone1InRoomMode = device.Zone1InRoomMode;
238
- const zone2InRoomMode = device.Zone2InRoomMode;
239
- const zone1InHeatMode = device.Zone1InHeatMode;
240
- const zone2InHeatMode = device.Zone2InHeatMode;
241
- const zone1InCoolMode = device.Zone1InCoolMode;
242
- const zone2InCoolMode = device.Zone2InCoolMode;
243
- const allowDualRoomTemperature = device.AllowDualRoomTemperature;
244
- const isGeodan = device.IsGeodan;
245
- const hasEcoCuteSettings = device.HasEcoCuteSettings;
246
- const hasFTC45Settings = device.HasFTC45Settings;
247
- const hasFTC6Settings = device.HasFTC6Settings;
248
- const canEstimateEnergyUsage = device.CanEstimateEnergyUsage;
249
- const canUseRoomTemperatureCooling = device.CanUseRoomTemperatureCooling;
250
- const isFtcModelSupported = device.IsFtcModelSupported;
251
- const maxTankTemperature = device.MaxTankTemperature;
252
103
  const idleZone1 = device.IdleZone1 ?? false;
253
104
  const idleZone2 = device.IdleZone2 ?? false;
254
- const minPcycle = device.MinPcycle;
255
- const maxPcycle = device.MaxPcycle;
256
- const maxOutdoorUnits = device.MaxOutdoorUnits;
257
- const maxIndoorUnits = device.MaxIndoorUnits;
258
- const maxTemperatureControlUnits = device.MaxTemperatureControlUnits;
259
- //const deviceId = device.DeviceID;
260
- //const macAddress = device.MacAddress;
261
- //const serialNumber = device.SerialNumber;
262
- const timeZoneId = device.TimeZoneID;
263
- const diagnosticMode = device.DiagnosticMode;
264
- const diagnosticEndDate = device.DiagnosticEndDate;
265
- const expectedCommand = device.ExpectedCommand;
266
- const owner = device.Owner;
267
- const detectedCountry = device.DetectedCountry;
268
- //const adaptorType = device.AdaptorType;
269
- const firmwareDeployment = device.FirmwareDeployment;
270
- const firmwareUpdateAborted = device.FirmwareUpdateAborted;
271
- //const linkedDevice = device.LinkedDevice;
272
- const wifiSignalStrength = device.WifiSignalStrength;
273
- const wifiAdapterStatus = device.WifiAdapterStatus;
274
- const position = device.Position;
275
- const pCycle = device.PCycle;
276
- const recordNumMax = device.RecordNumMax;
277
- const lastTimeStamp = device.LastTimeStamp;
278
- const errorCode = device.ErrorCode;
279
- const hasError = device.HasError;
280
- const lastReset = device.LastReset;
281
- const flashWrites = device.FlashWrites;
282
- const scene = device.Scene;
283
- const sSLExpirationDate = device.SSLExpirationDate;
284
- const sPTimeout = device.SPTimeout;
285
- const passcode = device.Passcode;
286
- const serverCommunicationDisabled = device.ServerCommunicationDisabled;
287
- const consecutiveUploadErrors = device.ConsecutiveUploadErrors;
288
- const doNotRespondAfter = device.DoNotRespondAfter;
289
- const ownerRoleAccessLevel = device.OwnerRoleAccessLevel;
290
- //const ownerCountry = device.OwnerCountry;
291
- const hideEnergyReport = device.HideEnergyReport;
292
- const exceptionHash = device.ExceptionHash;
293
- const exceptionDate = device.ExceptionDate;
294
- const exceptionCount = device.ExceptionCount;
295
- const rate1StartTime = device.Rate1StartTime;
296
- const rate2StartTime = device.Rate2StartTime;
297
- const protocolVersion = device.ProtocolVersion;
298
- const unitVersion = device.UnitVersion;
299
105
  const firmwareAppVersion = device.FirmwareAppVersion?.toString() ?? 'Undefined';
300
- const firmwareWebVersion = device.FirmwareWebVersion;
301
- const firmwareWlanVersion = device.FirmwareWlanVersion;
302
- const effectivePCycle = device.EffectivePCycle;
303
- const mqttFlags = device.MqttFlags;
304
- const hasErrorMessages = device.HasErrorMessages;
305
- const offline = device.Offline ?? false;
306
- const supportsHourlyEnergyReport = device.SupportsHourlyEnergyReport;
307
106
  const hasZone2 = device.HasZone2 ?? false;
308
107
 
309
108
  //units
@@ -357,30 +156,6 @@ class MelCloudAtw extends EventEmitter {
357
156
  }
358
157
  }
359
158
 
360
- //diagnostic
361
- //const diagnosticMode = deviceData.DiagnosticMode;
362
- //const diagnosticEndDate = deviceData.DiagnosticEndDate;
363
- const location = deviceData.Location;
364
- //const detectedCountry = deviceData.DetectedCountry;
365
- const registrations = deviceData.Registrations;
366
- const localIPAddress = deviceData.LocalIPAddress;
367
- const timeZone = deviceData.TimeZone;
368
- const registReason = deviceData.RegistReason;
369
- //const expectedCommand = deviceData.ExpectedCommand;
370
- const registRetry = deviceData.RegistRetry;
371
- const dateCreated = deviceData.DateCreated;
372
- //const firmwareDeployment = deviceData.FirmwareDeployment;
373
- //const firmwareUpdateAborted = deviceData.FirmwareUpdateAborted;
374
-
375
- //permissions
376
- const permissionCanSetForcedHotWater = deviceData.Permissions.CanSetForcedHotWater;
377
- const permissionCanSetOperationMode = deviceData.Permissions.CanSetOperationMode;
378
- const permissionCanSetPower = deviceData.Permissions.CanSetPower;
379
- const permissionCanSetTankWaterTemperature = deviceData.Permissions.CanSetTankWaterTemperature;
380
- const permissionCanSetEcoHotWater = deviceData.Permissions.CanSetEcoHotWater;
381
- const permissionCanSetFlowTemperature = deviceData.Permissions.CanSetFlowTemperature;
382
- const permissionCanSetTemperatureIncrementOverride = deviceData.Permissions.CanSetTemperatureIncrementOverride;
383
-
384
159
  //display info if units are not configured in MELCloud service
385
160
  if (unitsCount === 0) {
386
161
  this.emit('message', `Units are not configured in MELCloud service`);
@@ -6,12 +6,13 @@ import Functions from './functions.js';
6
6
  import { ApiUrls } from './constants.js';
7
7
 
8
8
  class MelCloudErv extends EventEmitter {
9
- constructor(device, contextKey, devicesFile) {
9
+ constructor(device, contextKey, devicesFile, defaultTempsFile) {
10
10
  super();
11
11
  this.deviceId = device.id;
12
12
  this.logWarn = device.log?.warn;
13
13
  this.logDebug = device.log?.debug;
14
14
  this.devicesFile = devicesFile;
15
+ this.defaultTempsFile = defaultTempsFile;
15
16
  this.functions = new Functions();
16
17
 
17
18
  //set default values
@@ -61,8 +62,7 @@ class MelCloudErv extends EventEmitter {
61
62
  async checkState() {
62
63
  try {
63
64
  //read device info from file
64
- const data = await this.functions.readData(this.devicesFile);
65
- const devicesData = JSON.parse(data);
65
+ const devicesData = await this.functions.readData(this.devicesFile, true);
66
66
 
67
67
  if (!Array.isArray(devicesData)) {
68
68
  if (this.logWarn) this.emit('warn', `Device data not found`);
@@ -71,86 +71,17 @@ class MelCloudErv extends EventEmitter {
71
71
  const deviceData = devicesData.find(device => device.DeviceID === this.deviceId);
72
72
  if (this.logDebug) this.emit('debug', `Device Data: ${JSON.stringify(deviceData, null, 2)}`);
73
73
 
74
- //deviceData
75
- const deviceId = deviceData.DeviceID;
76
- const deviceName = deviceData.DeviceName;
77
- const buildingId = deviceData.BuildingID;
78
- const buildingName = deviceData.BuildingName;
79
- const floorId = deviceData.FloorID;
80
- const floorName = deviceData.FloorName;
81
- const areaId = deviceData.AreaID;
82
- const areaName = deviceData.AreaName;
83
- const imageId = deviceData.ImageID;
84
- const installationDate = deviceData.InstallationDate;
85
- const lastServiceDate = deviceData.LastServiceDate;
86
-
87
74
  //presets
88
- const presets = deviceData.Presets ?? [];
89
-
90
- const ownerId = deviceData.OwnerID;
91
- const ownerName = deviceData.OwnerName;
92
- const ownerEmail = deviceData.OwnerEmail;
93
- const accessLevel = deviceData.AccessLevel;
94
- const directAccess = deviceData.DirectAccess;
95
- const endDate = deviceData.EndDate;
96
- const zone1Name = deviceData.Zone1Name;
97
- const zone2Name = deviceData.Zone2Name;
98
- const minTemperature = deviceData.MinTemperature;
99
- const maxTemperature = deviceData.MaxTemperature;
100
- const hideVaneControls = deviceData.HideVaneControls;
101
- const hideDryModeControl = deviceData.HideDryModeControl;
102
75
  const hideRoomTemperature = deviceData.HideRoomTemperature ?? false;
103
76
  const hideSupplyTemperature = deviceData.HideSupplyTemperature ?? false;
104
77
  const hideOutdoorTemperature = deviceData.HideOutdoorTemperature ?? false;
105
- const buildingCountry = deviceData.BuildingCountry;
106
- const ownerCountry = deviceData.OwnerCountry;
107
- const adaptorType = deviceData.AdaptorType;
108
- const linkedDevice = deviceData.LinkedDevice;
109
- const type = deviceData.Type;
110
- const macAddress = deviceData.MacAddress;
111
78
  const serialNumber = deviceData.SerialNumber ?? 'Undefined';
112
79
 
113
80
  //device
114
81
  const device = deviceData.Device ?? {};
115
- const pCycleActual = device.PCycleActual;
116
- const errorMessages = device.ErrorMessages;
117
- const deviceType = device.DeviceType;
118
- const ervFlags = device.ErvFlags;
119
- const ervModel = device.ErvModel;
120
- const labelControls = device.LabelControls;
121
- const devicePowerDisabled = device.DevicePowerDisabled;
122
- const silentMode = device.SilentMode;
123
- const deviceHolidayMode = device.DeviceHolidayMode;
124
- const externalControl = device.ExternalControl;
125
- const bypassVentilationSkipped = device.BypassVentilationSkipped;
126
- const autoVentilationSkipped = device.AutoVentilationSkipped;
127
- const fanSpeedSkipped = device.FanSpeedSkipped;
128
- const fanSpeedRestricted = device.FanSpeedRestricted;
129
- const hasTemperatureControlUnit = device.HasTemperatureControlUnit;
130
- const hasCoolOperationMode = device.HasCoolOperationMode;
131
- const hasHeatOperationMode = device.HasHeatOperationMode;
132
- const hasAutoOperationMode = device.HasAutoOperationMode;
133
- const hasBypassVentilationMode = device.HasBypassVentilationMode ?? false;
134
- const hasAutoVentilationMode = device.HasAutoVentilationMode ?? false;
135
- const hasRoomTemperature = device.HasRoomTemperature ?? false;
136
- const hasSupplyTemperature = device.HasSupplyTemperature ?? false;
137
- const hasOutdoorTemperature = device.HasOutdoorTemperature ?? false;
138
- const hasCO2Sensor = device.HasCO2Sensor;
139
- const hasPM25Sensor = device.HasPM25Sensor;
140
82
  const pM25SensorStatus = device.PM25SensorStatus;
141
83
  const pM25Level = device.PM25Level;
142
- const numberOfFanSpeeds = device.NumberOfFanSpeeds;
143
- const hasHalfDegreeIncrements = device.HasHalfDegreeIncrements;
144
- const temperatureIncrementOverride = device.TemperatureIncrementOverride;
145
84
  const temperatureIncrement = device.TemperatureIncrement;
146
- const minTempCoolDry = device.MinTempCoolDry;
147
- const maxTempCoolDry = device.MaxTempCoolDry;
148
- const minTempHeat = device.MinTempHeat;
149
- const maxTempHeat = device.MaxTempHeat;
150
- const minTempAutomatic = device.MinTempAutomatic;
151
- const maxTempAutomatic = device.MaxTempAutomatic;
152
- const setSupplyTemperatureMode = device.SetSupplyTemperatureMode;
153
- const hasAutomaticFanSpeed = device.HasAutomaticFanSpeed ?? false;
154
85
  const coreMaintenanceRequired = device.CoreMaintenanceRequired ?? false;
155
86
  const filterMaintenanceRequired = device.FilterMaintenanceRequired ?? false;
156
87
  const power = device.Power ?? false;
@@ -159,80 +90,15 @@ class MelCloudErv extends EventEmitter {
159
90
  const outdoorTemperature = device.OutdoorTemperature;
160
91
  const roomCO2Level = device.RoomCO2Level;
161
92
  const nightPurgeMode = device.NightPurgeMode ?? false;
162
- const thermostatOn = device.ThermostatOn;
163
93
  const setTemperature = device.SetTemperature;
164
94
  const actualSupplyFanSpeed = device.ActualSupplyFanSpeed;
165
95
  const actualExhaustFanSpeed = device.ActualExhaustFanSpeed;
166
96
  const setFanSpeed = device.SetFanSpeed;
167
- const automaticFanSpeed = device.AutomaticFanSpeed;
168
97
  const operationMode = device.OperationMode; //0, Heat, 2, Cool, 4, 5, 6, Fan, Auto
169
- const actualOperationMode = device.ActualOperationMode;
170
98
  const ventilationMode = device.VentilationMode; //Lossnay, Bypass, Auto
171
- const actualVentilationMode = device.ActualVentilationMode; //Lossnay, Bypass
172
- const effectiveFlags = device.EffectiveFlags;
173
- const lastEffectiveFlags = device.LastEffectiveFlags;
174
99
  const defaultCoolingSetTemperature = device.DefaultCoolingSetTemperature ?? 23;
175
100
  const defaultHeatingSetTemperature = device.DefaultHeatingSetTemperature ?? 21;
176
- const hasEnergyConsumedMeter = device.HasEnergyConsumedMeter;
177
- const currentEnergyConsumed = device.CurrentEnergyConsumed
178
- const currentEnergyAssignment = device.CurrentEnergyAssignment;
179
- const coolingDisabled = device.CoolingDisabled
180
- const maxOutdoorUnits = device.MaxOutdoorUnits;
181
- const maxIndoorUnits = device.MaxIndoorUnits;
182
- const maxTemperatureControlUnits = device.MaxTemperatureControlUnits;
183
- const modelCode = device.ModelCode;
184
- //const deviceId = device.DeviceID;
185
- //const macAddress = device.MacAddress;
186
- //const serialNumber = device.SerialNumber;
187
- const timeZoneId = device.TimeZoneID;
188
- const diagnosticMode = device.DiagnosticMode;
189
- const diagnosticEndDate = device.DiagnosticEndDate;
190
- const expectedCommand = device.ExpectedCommand;
191
- const owner = device.Owner;
192
- const detectedCountry = device.DetectedCountry;
193
- //const adaptorType = device.AdaptorType;
194
- const firmwareDeployment = device.FirmwareDeployment;
195
- const firmwareUpdateAborted = device.FirmwareUpdateAborted;
196
- //const linkedDevice = device.LinkedDevice;
197
- const wifiSignalStrength = device.WifiSignalStrength;
198
- const wifiAdapterStatus = device.WifiAdapterStatus;
199
- const position = device.Position;
200
- const pCycle = device.PCycle;
201
- const pCycleConfigured = device.PCycleConfigured;
202
- const recordNumMax = device.RecordNumMax;
203
- const lastTimeStamp = device.LastTimeStamp;
204
- const errorCode = device.ErrorCode;
205
- const hasError = device.HasError;
206
- const lastReset = device.LastReset;
207
- const flashWrites = device.FlashWrites;
208
- const scene = device.Scene;
209
- const sSLExpirationDate = device.SSLExpirationDate;
210
- const sPTimeout = device.SPTimeout;
211
- const passcode = device.Passcode;
212
- const serverCommunicationDisabled = device.ServerCommunicationDisabled;
213
- const consecutiveUploadErrors = device.ConsecutiveUploadErrors;
214
- const doNotRespondAfter = device.DoNotRespondAfter;
215
- const ownerRoleAccessLevel = device.OwnerRoleAccessLevel;
216
- //const ownerCountry = device.OwnerCountry;
217
- const hideEnergyReport = device.HideEnergyReport;
218
- const exceptionHash = device.ExceptionHash;
219
- const exceptionDate = device.ExceptionDate;
220
- const exceptionCount = device.ExceptionCount;
221
- const rate1StartTime = device.Rate1StartTime;
222
- const rate2StartTime = device.Rate2StartTime;
223
- const protocolVersion = device.ProtocolVersion;
224
- const unitVersion = device.UnitVersion;
225
101
  const firmwareAppVersion = device.FirmwareAppVersion?.toString() ?? 'Undefined';
226
- const firmwareWebVersion = device.FirmwareWebVersion;
227
- const firmwareWlanVersion = device.FirmwareWlanVersion;
228
- const effectivePCycle = device.EffectivePCycle;
229
- const mqttFlags = device.MqttFlags;
230
- const hasErrorMessages = device.HasErrorMessages;
231
- const hasZone2 = device.HasZone2;
232
- const offline = device.Offline ?? false;
233
- const minPcycle = device.MinPcycle;
234
- const maxPcycle = device.MaxPcycle;
235
- const supportsHourlyEnergyReport = device.SupportsHourlyEnergyReport;
236
102
 
237
103
  //units
238
104
  const units = Array.isArray(device.Units) ? device.Units : [];
@@ -285,29 +151,6 @@ class MelCloudErv extends EventEmitter {
285
151
  }
286
152
  }
287
153
 
288
- //diagnostic
289
- //const diagnosticMode = deviceData.DiagnosticMode;
290
- //const diagnosticEndDate = deviceData.DiagnosticEndDate;
291
- const location = deviceData.Location;
292
- //const detectedCountry = deviceData.DetectedCountry;
293
- const registrations = deviceData.Registrations;
294
- const localIPAddress = deviceData.LocalIPAddress;
295
- const timeZone = deviceData.TimeZone;
296
- const registReason = deviceData.RegistReason;
297
- //const expectedCommand = deviceData.ExpectedCommand;
298
- const registRetry = deviceData.RegistRetry;
299
- const dateCreated = deviceData.DateCreated;
300
- //const firmwareDeployment = deviceData.FirmwareDeployment;
301
- //const firmwareUpdateAborted = deviceData.FirmwareUpdateAborted;
302
-
303
- //permissions
304
- const permissionCanSetOperationMode = deviceData.Permissions.CanSetOperationMode;
305
- const permissionCanSetFanSpeed = deviceData.Permissions.CanSetFanSpeed;
306
- const permissionCanSetVaneDirection = deviceData.Permissions.CanSetVaneDirection;
307
- const permissionCanSetPower = deviceData.Permissions.CanSetPower;
308
- const permissionCanSetTemperatureIncrementOverride = deviceData.Permissions.CanSetTemperatureIncrementOverride;
309
- const permissionCanDisableLocalController = deviceData.Permissions.CanDisableLocalController;
310
-
311
154
  //display info if units are not configured in MELCloud service
312
155
  if (unitsCount === 0) {
313
156
  this.emit('message', `Units are not configured in MELCloud service`);
@@ -366,10 +209,10 @@ class MelCloudErv extends EventEmitter {
366
209
  };
367
210
  };
368
211
 
369
- async send(deviceData, displayMode) {
212
+ async send(deviceData, displayType) {
370
213
  try {
371
214
  //set target temp based on display mode and ventilation mode
372
- switch (displayMode) {
215
+ switch (displayType) {
373
216
  case 1: //Heather/Cooler
374
217
  switch (deviceData.Device.VentilationMode) {
375
218
  case 0: //LOSNAY