homebridge-melcloud-control 3.8.0-beta.2 → 3.8.0-beta.21

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/src/deviceerv.js CHANGED
@@ -237,6 +237,7 @@ class DeviceErv extends EventEmitter {
237
237
  async startImpulseGenerator() {
238
238
  try {
239
239
  //start impule generator
240
+ await new Promise(resolve => setTimeout(resolve, 1000));
240
241
  await this.melCloudErv.impulseGenerator.start([{ name: 'checkState', sampling: this.refreshInterval }]);
241
242
  return true;
242
243
  } catch (error) {
@@ -889,7 +890,7 @@ class DeviceErv extends EventEmitter {
889
890
  this.firmwareRevision = firmwareAppVersion;
890
891
  this.displayDeviceInfo = false;
891
892
  })
892
- .on('deviceState', (deviceData) => {
893
+ .on('deviceState', async (deviceData) => {
893
894
  this.deviceData = deviceData;
894
895
 
895
896
  //presets
@@ -1234,6 +1235,13 @@ class DeviceErv extends EventEmitter {
1234
1235
  const info7 = hasPM25Sensor ? this.emit('message', `PM2.5 air quality: ${Ventilation.PM25AirQuality[pM25AirQuality]}`) : false;
1235
1236
  const info8 = hasPM25Sensor ? this.emit('message', `PM2.5 level: ${pM25Level} µg/m`) : false;
1236
1237
  };
1238
+
1239
+ //prepare accessory
1240
+ if (this.startPrepareAccessory) {
1241
+ const accessory = await this.prepareAccessory(this.accountInfo, deviceData, this.deviceId, this.deviceTypeText, this.deviceName, this.accountName);
1242
+ this.emit('publishAccessory', accessory);
1243
+ this.startPrepareAccessory = false;
1244
+ }
1237
1245
  })
1238
1246
  .on('success', (success) => {
1239
1247
  this.emit('success', success);
@@ -1261,18 +1269,7 @@ class DeviceErv extends EventEmitter {
1261
1269
  const startExternalIntegrations = this.restFul.enable || this.mqtt.enable ? await this.externalIntegrations() : false;
1262
1270
 
1263
1271
  //check state
1264
- const deviceData = await this.melCloudErv.checkState();
1265
-
1266
- if (deviceData === false) {
1267
- return null;
1268
- }
1269
-
1270
- //prepare accessory
1271
- if (this.startPrepareAccessory) {
1272
- const accessory = await this.prepareAccessory(this.accountInfo, deviceData, this.deviceId, this.deviceTypeText, this.deviceName, this.accountName);
1273
- this.emit('publishAccessory', accessory);
1274
- this.startPrepareAccessory = false;
1275
- }
1272
+ await this.melCloudErv.checkState();
1276
1273
 
1277
1274
  return true;
1278
1275
  } catch (error) {
@@ -354,7 +354,7 @@ class MelCloudAta extends EventEmitter {
354
354
  //emit state
355
355
  this.emit('deviceState', deviceData);
356
356
 
357
- return deviceData;
357
+ return true;
358
358
  } catch (error) {
359
359
  throw new Error(`Check state error: ${error}`);
360
360
  };
@@ -418,7 +418,7 @@ class MelCloudAtw extends EventEmitter {
418
418
  //emit state
419
419
  this.emit('deviceState', deviceData);
420
420
 
421
- return deviceData;
421
+ return true;
422
422
  } catch (error) {
423
423
  throw new Error(`Check state error: ${error}`);
424
424
  };
@@ -342,7 +342,7 @@ class MelCloudErv extends EventEmitter {
342
342
  //emit state
343
343
  this.emit('deviceState', deviceData);
344
344
 
345
- return deviceData;
345
+ return true;
346
346
  } catch (error) {
347
347
  throw new Error(`Check state error: ${error}`);
348
348
  };