homebridge-melcloud-control 3.1.3-beta.3 → 3.1.3-beta.5

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.
@@ -194,9 +194,9 @@
194
194
  const deviceName = device.DeviceName;
195
195
  const devicePresetsOnMelcloud = device.Presets ?? [];
196
196
 
197
+ //device ata
197
198
  if (deviceType === 0) {
198
199
  if (!devicesAtaInConfig.some(item => item.id === device.id)) {
199
- //device ata
200
200
  const deviceAta = {
201
201
  id: deviceId,
202
202
  type: deviceType,
@@ -213,11 +213,7 @@
213
213
  };
214
214
 
215
215
  //presets
216
- const presetsOnMelCloudId = new Set(devicePresetsOnMelcloud.map(preset => preset.ID));
217
- let presetsAtaInConfig = pluginConfig[0].accounts[this.deviceIndex].ataDevices[index].presets ?? [];
218
- presetsAtaInConfig = presetsAtaInConfig.filter(preset => presetsOnMelCloudId.has(preset.id));
219
-
220
- for (const preset of presetsAtaInConfig) {
216
+ for (const preset of devicePresetsOnMelcloud) {
221
217
  const presetId = preset.ID;
222
218
  const presetName = preset.NumberDescription;
223
219
 
@@ -229,7 +225,7 @@
229
225
  };
230
226
  textAtaPresets = `ATA Presets: ${newDevices.ataPresets.length}`
231
227
 
232
- deviceAta.ataPresets = newDevices.ataPresets;
228
+ deviceAta.presets = newDevices.ataPresets;
233
229
  newDevices.ata.push(deviceAta);
234
230
  };
235
231
  pluginConfig[0].accounts[this.deviceIndex].ataDevices = newDevices.ata;
@@ -243,54 +239,48 @@
243
239
  const deviceName = device.DeviceName;
244
240
  const devicePresetsOnMelcloud = device.Presets ?? [];
245
241
 
246
- if (deviceType === 0) {
242
+ //device atw
243
+ if (deviceType === 1) {
247
244
  if (!devicesAtwInConfig.some(item => item.id === device.id)) {
248
- //device atw
249
- if (deviceType === 1) {
250
- const deviceAtw = {
251
- id: deviceId,
252
- type: deviceType,
253
- typeString: "Heat Pump",
254
- name: deviceName,
255
- displayMode: 1,
256
- temperatureSensor: false,
257
- temperatureSensorFlow: false,
258
- temperatureSensorReturn: false,
259
- temperatureSensorFlowZone1: false,
260
- temperatureSensorReturnZone1: false,
261
- temperatureSensorFlowWaterTank: false,
262
- temperatureSensorReturnWaterTank: false,
263
- temperatureSensorFlowZone2: false,
264
- temperatureSensorReturnZone2: false,
265
- temperatureSensor: false,
266
- temperatureSensorOutdoor: false,
267
- presets: [],
268
- buttonsSensors: []
269
- };
270
-
271
- //presets
272
- const presetsOnMelCloudId = new Set(devicePresetsOnMelcloud.map(preset => preset.ID));
273
- let presetsAtwInConfig = pluginConfig[0].accounts[this.deviceIndex].atwDevices[index].presets ?? [];
274
- presetsAtwInConfig = presetsAtwInConfig.filter(preset => presetsOnMelCloudId.has(preset.id));
275
-
276
- for (const preset of presetsAtwInConfig) {
277
- const presetId = preset.ID;
278
- const presetName = preset.NumberDescription;
279
-
280
- preset.id = presetId;
281
- preset.name = presetName;
282
- preset.displayType == 0;
283
- preset.namePrefix = false;
284
- newDevices.atwPresets.push(preset);
285
- };
286
- textAtwPresets = `ATA Presets: ${newDevices.atwPresets.length}`
287
-
288
- deviceAtw.atwPresets = deviceAtw.atwPresets;
289
- newDevices.ata.push(deviceAtw);
245
+ const deviceAtw = {
246
+ id: deviceId,
247
+ type: deviceType,
248
+ typeString: "Heat Pump",
249
+ name: deviceName,
250
+ displayMode: 1,
251
+ temperatureSensor: false,
252
+ temperatureSensorFlow: false,
253
+ temperatureSensorReturn: false,
254
+ temperatureSensorFlowZone1: false,
255
+ temperatureSensorReturnZone1: false,
256
+ temperatureSensorFlowWaterTank: false,
257
+ temperatureSensorReturnWaterTank: false,
258
+ temperatureSensorFlowZone2: false,
259
+ temperatureSensorReturnZone2: false,
260
+ temperatureSensor: false,
261
+ temperatureSensorOutdoor: false,
262
+ presets: [],
263
+ buttonsSensors: []
290
264
  };
291
- pluginConfig[0].accounts[this.deviceIndex].atwDevices = newDevices.atw;
292
- textAtw = `ATW: ${newDevices.atw.length}`
265
+
266
+ //presets
267
+ for (const preset of devicePresetsOnMelcloud) {
268
+ const presetId = preset.ID;
269
+ const presetName = preset.NumberDescription;
270
+
271
+ preset.id = presetId;
272
+ preset.name = presetName;
273
+ preset.displayType == 0;
274
+ preset.namePrefix = false;
275
+ newDevices.atwPresets.push(preset);
276
+ };
277
+ textAtwPresets = `ATA Presets: ${newDevices.atwPresets.length}`
278
+
279
+ deviceAtw.presets = deviceAtw.atwPresets;
280
+ newDevices.ata.push(deviceAtw);
293
281
  };
282
+ pluginConfig[0].accounts[this.deviceIndex].atwDevices = newDevices.atw;
283
+ textAtw = `ATW: ${newDevices.atw.length}`
294
284
  };
295
285
  });
296
286
 
@@ -300,48 +290,42 @@
300
290
  const deviceName = device.DeviceName;
301
291
  const devicePresetsOnMelcloud = device.Presets ?? [];
302
292
 
303
- if (deviceType === 0) {
293
+ //device erv
294
+ if (deviceType === 3) {
304
295
  if (!devicesAtwInConfig.some(item => item.id === device.id)) {
305
- //device erv
306
- if (deviceType === 3) {
307
- const deviceErv = {
308
- id: deviceId,
309
- type: deviceType,
310
- typeString: "Energy Recovery Ventilation",
311
- name: deviceName,
312
- displayMode: 1,
313
- temperatureSensor: false,
314
- temperatureSensorOutdoor: false,
315
- temperatureSensorSupply: false,
316
- temperatureSensor: false,
317
- temperatureSensorOutdoor: false,
318
- presets: [],
319
- buttonsSensors: []
320
- };
321
-
322
- //presets
323
- const presetsOnMelCloudId = new Set(devicePresetsOnMelcloud.map(preset => preset.ID));
324
- let presetsErvInConfig = pluginConfig[0].accounts[this.deviceIndex].ervDevices[index].presets ?? [];
325
- presetsErvInConfig = presetsErvInConfig.filter(preset => presetsOnMelCloudId.has(preset.id));
326
-
327
- for (const preset of presetsErvInConfig) {
328
- const presetId = preset.ID;
329
- const presetName = preset.NumberDescription;
330
-
331
- preset.id = presetId;
332
- preset.name = presetName;
333
- preset.displayType == 0;
334
- preset.namePrefix = false;
335
- newDevices.atwPresets.push(preset);
336
- };
337
- textErvPresets = `ATA Presets: ${newDevices.ErvPresets.length}`
338
-
339
- deviceErv.atwPresets = deviceErv.ervPresets;
340
- newDevices.erv.push(deviceErv);
296
+ const deviceErv = {
297
+ id: deviceId,
298
+ type: deviceType,
299
+ typeString: "Energy Recovery Ventilation",
300
+ name: deviceName,
301
+ displayMode: 1,
302
+ temperatureSensor: false,
303
+ temperatureSensorOutdoor: false,
304
+ temperatureSensorSupply: false,
305
+ temperatureSensor: false,
306
+ temperatureSensorOutdoor: false,
307
+ presets: [],
308
+ buttonsSensors: []
341
309
  };
342
- pluginConfig[0].accounts[this.deviceIndex].ervDevices = newDevices.erv;
343
- textErv = `ERV: ${newDevices.erv.length}`
310
+
311
+ //presets
312
+ for (const preset of devicePresetsOnMelcloud) {
313
+ const presetId = preset.ID;
314
+ const presetName = preset.NumberDescription;
315
+
316
+ preset.id = presetId;
317
+ preset.name = presetName;
318
+ preset.displayType == 0;
319
+ preset.namePrefix = false;
320
+ newDevices.atwPresets.push(preset);
321
+ };
322
+ textErvPresets = `ATA Presets: ${newDevices.ErvPresets.length}`
323
+
324
+ deviceErv.presets = deviceErv.ervPresets;
325
+ newDevices.erv.push(deviceErv);
344
326
  };
327
+ pluginConfig[0].accounts[this.deviceIndex].ervDevices = newDevices.erv;
328
+ textErv = `ERV: ${newDevices.erv.length}`
345
329
  };
346
330
  });
347
331
 
package/package.json CHANGED
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "displayName": "MELCloud Control",
3
3
  "name": "homebridge-melcloud-control",
4
- "version": "3.1.3-beta.3",
4
+ "version": "3.1.3-beta.5",
5
5
  "description": "Homebridge plugin to control Mitsubishi Air Conditioner, Heat Pump and Energy Recovery Ventilation.",
6
6
  "license": "MIT",
7
7
  "author": "grzegorz914",