@switchbot/homebridge-switchbot 0.1.2-beta.1 → 0.1.2-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.
@@ -13,6 +13,7 @@ export declare class Contact {
13
13
  private service;
14
14
  motionService: Service;
15
15
  ContactSensorState: CharacteristicValue;
16
+ MotionDetected: CharacteristicValue;
16
17
  deviceStatus: deviceStatusResponse;
17
18
  switchbot: {
18
19
  discover: (arg0: {
@@ -1 +1 @@
1
- {"version":3,"file":"contact.d.ts","sourceRoot":"","sources":["../../src/devices/contact.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,iBAAiB,EAAE,mBAAmB,EAAE,UAAU,EAAE,MAAM,YAAY,CAAC;AACzF,OAAO,EAAE,iBAAiB,EAAE,MAAM,aAAa,CAAC;AAGhD,OAAO,EAAa,MAAM,EAAE,oBAAoB,EAAE,MAAM,aAAa,CAAC;AAEtE;;;;GAIG;AACH,qBAAa,OAAO;IA8BhB,OAAO,CAAC,QAAQ,CAAC,QAAQ;IACzB,OAAO,CAAC,SAAS;IACV,MAAM,EAAE,MAAM;IA9BvB,OAAO,CAAC,OAAO,CAAU;IACzB,aAAa,EAAE,OAAO,CAAC;IAGvB,kBAAkB,EAAG,mBAAmB,CAAC;IAGzC,YAAY,EAAG,oBAAoB,CAAC;IACpC,SAAS,EAAG;QACV,QAAQ,EAAE,CACR,IAAI,EACF;YACE,QAAQ,EAAE,GAAG,CAAC;YACd,KAAK,EAAE,MAAM,CAAC;YACd,KAAK,EAAE,OAAO,CAAC;YACf,EAAE,EAAE,UAAU,CAAC;SAChB,KACA,OAAO,CAAC,GAAG,CAAC,CAAC;QAClB,IAAI,EAAE,CACJ,IAAI,EAAE,MAAM,KACT,GAAG,CAAC;KACV,CAAC;IAGF,wBAAwB,EAAG,OAAO,CAAC;IACnC,eAAe,MAAC;gBAGG,QAAQ,EAAE,iBAAiB,EACpC,SAAS,EAAE,iBAAiB,EAC7B,MAAM,EAAE,MAAM;IA+DvB;;OAEG;IACH,WAAW;IAcX;;OAEG;IACG,aAAa;YAsDL,oBAAoB;IAsBlC;;OAEG;IACH,4BAA4B;IAMrB,QAAQ,CAAC,CAAC,EAAE,GAAG;CAGvB"}
1
+ {"version":3,"file":"contact.d.ts","sourceRoot":"","sources":["../../src/devices/contact.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,iBAAiB,EAAE,mBAAmB,EAAE,UAAU,EAAE,MAAM,YAAY,CAAC;AACzF,OAAO,EAAE,iBAAiB,EAAE,MAAM,aAAa,CAAC;AAGhD,OAAO,EAAa,MAAM,EAAE,oBAAoB,EAAE,MAAM,aAAa,CAAC;AAEtE;;;;GAIG;AACH,qBAAa,OAAO;IA+BhB,OAAO,CAAC,QAAQ,CAAC,QAAQ;IACzB,OAAO,CAAC,SAAS;IACV,MAAM,EAAE,MAAM;IA/BvB,OAAO,CAAC,OAAO,CAAU;IACzB,aAAa,EAAE,OAAO,CAAC;IAGvB,kBAAkB,EAAG,mBAAmB,CAAC;IACzC,cAAc,EAAG,mBAAmB,CAAC;IAGrC,YAAY,EAAG,oBAAoB,CAAC;IACpC,SAAS,EAAG;QACV,QAAQ,EAAE,CACR,IAAI,EACF;YACE,QAAQ,EAAE,GAAG,CAAC;YACd,KAAK,EAAE,MAAM,CAAC;YACd,KAAK,EAAE,OAAO,CAAC;YACf,EAAE,EAAE,UAAU,CAAC;SAChB,KACA,OAAO,CAAC,GAAG,CAAC,CAAC;QAClB,IAAI,EAAE,CACJ,IAAI,EAAE,MAAM,KACT,GAAG,CAAC;KACV,CAAC;IAGF,wBAAwB,EAAG,OAAO,CAAC;IACnC,eAAe,MAAC;gBAGG,QAAQ,EAAE,iBAAiB,EACpC,SAAS,EAAE,iBAAiB,EAC7B,MAAM,EAAE,MAAM;IA+DvB;;OAEG;IACH,WAAW;IAYX;;OAEG;IACG,aAAa;YAsDL,oBAAoB;IAsBlC;;OAEG;IACH,4BAA4B;IASrB,QAAQ,CAAC,CAAC,EAAE,GAAG;CAIvB"}
@@ -50,7 +50,7 @@ class Contact {
50
50
  // in this example we are using the name we stored in the `accessory.context` in the `discoverDevices` method.
51
51
  this.service.setCharacteristic(this.platform.Characteristic.Name, accessory.displayName);
52
52
  // each service must implement at-minimum the "required characteristics" for the given service type
53
- // see https://developers.homebridge.io/#/service/ContactSensor
53
+ // see https://developers.homebridge.io/#/service/MotionSensor
54
54
  (this.motionService =
55
55
  accessory.getService(this.platform.Service.MotionSensor) ||
56
56
  accessory.addService(this.platform.Service.MotionSensor)), `${device.deviceName} ${device.deviceType}`;
@@ -76,12 +76,9 @@ class Contact {
76
76
  else {
77
77
  this.ContactSensorState = this.platform.Characteristic.ContactSensorState.CONTACT_NOT_DETECTED;
78
78
  }
79
- if (this.deviceStatus.body.moveDetected) {
80
- this.ContactSensorState = this.platform.Characteristic.ContactSensorState.CONTACT_DETECTED;
81
- }
82
- else {
83
- this.ContactSensorState = this.platform.Characteristic.ContactSensorState.CONTACT_NOT_DETECTED;
84
- }
79
+ this.MotionDetected = Boolean(this.deviceStatus.body.moveDetected);
80
+ this.platform.debug(`${this.accessory.displayName}
81
+ , ContactSensorState: ${this.ContactSensorState}, MotionDetected: ${this.MotionDetected}`);
85
82
  }
86
83
  /**
87
84
  * Asks the SwitchBot API for the latest device information
@@ -162,9 +159,13 @@ class Contact {
162
159
  if (this.ContactSensorState !== undefined) {
163
160
  this.service.updateCharacteristic(this.platform.Characteristic.ContactSensorState, this.ContactSensorState);
164
161
  }
162
+ if (this.MotionDetected !== undefined) {
163
+ this.motionService.updateCharacteristic(this.platform.Characteristic.MotionDetected, this.MotionDetected);
164
+ }
165
165
  }
166
166
  apiError(e) {
167
167
  this.service.updateCharacteristic(this.platform.Characteristic.ContactSensorState, e);
168
+ this.motionService.updateCharacteristic(this.platform.Characteristic.MotionDetected, e);
168
169
  }
169
170
  }
170
171
  exports.Contact = Contact;
@@ -1 +1 @@
1
- {"version":3,"file":"contact.js","sourceRoot":"","sources":["../../src/devices/contact.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"contact.js","sourceRoot":"","sources":["../../src/devices/contact.ts"],"names":[],"mappings":"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"}
@@ -7,24 +7,26 @@ export declare class Curtain {
7
7
  private accessory;
8
8
  device: device;
9
9
  private service;
10
+ private lightSensorService;
10
11
  CurrentPosition: CharacteristicValue;
11
12
  PositionState: CharacteristicValue;
12
13
  TargetPosition: CharacteristicValue;
14
+ CurrentAmbientLightLevel: CharacteristicValue;
13
15
  deviceStatus: deviceStatusResponse;
14
- setNewTarget: boolean;
15
- setNewTargetTimer: NodeJS.Timeout;
16
16
  moveTimer: NodeJS.Timeout;
17
+ ScanIntervalId: NodeJS.Timeout;
18
+ setNewTargetTimer: NodeJS.Timeout;
19
+ AutoDisableFastScanTimeoutId: NodeJS.Timeout;
20
+ setNewTarget: boolean;
17
21
  moveTime: number;
18
22
  ScanDuration: any;
19
23
  ReverseDir: any;
20
24
  FastScanEnabled: boolean;
21
- ScanIntervalId: NodeJS.Timeout;
22
25
  FastScanInterval: number;
23
26
  SlowScanInterval: number;
24
27
  OpenCloseThreshold: any;
25
28
  PreviousPosition: any;
26
29
  Position: any;
27
- AutoDisableFastScanTimeoutId: NodeJS.Timeout;
28
30
  FastScanDuration: number | undefined;
29
31
  switchbot: {
30
32
  discover: (arg0: {
@@ -1 +1 @@
1
- {"version":3,"file":"curtains.d.ts","sourceRoot":"","sources":["../../src/devices/curtains.ts"],"names":[],"mappings":";AACA,OAAO,EAAW,iBAAiB,EAAE,mBAAmB,EAAE,UAAU,EAAE,MAAM,YAAY,CAAC;AACzF,OAAO,EAAE,iBAAiB,EAAE,MAAM,aAAa,CAAC;AAGhD,OAAO,EAAa,MAAM,EAAE,oBAAoB,EAAE,MAAM,aAAa,CAAC;AAGtE,qBAAa,OAAO;IA8ChB,OAAO,CAAC,QAAQ,CAAC,QAAQ;IACzB,OAAO,CAAC,SAAS;IACV,MAAM,EAAE,MAAM;IA9CvB,OAAO,CAAC,OAAO,CAAU;IAGzB,eAAe,EAAG,mBAAmB,CAAC;IACtC,aAAa,EAAG,mBAAmB,CAAC;IACpC,cAAc,EAAG,mBAAmB,CAAC;IAGrC,YAAY,EAAG,oBAAoB,CAAC;IACpC,YAAY,EAAG,OAAO,CAAC;IACvB,iBAAiB,EAAG,MAAM,CAAC,OAAO,CAAC;IACnC,SAAS,EAAG,MAAM,CAAC,OAAO,CAAC;IAC3B,QAAQ,EAAG,MAAM,CAAC;IAClB,YAAY,EAAE,GAAG,CAAC;IAClB,UAAU,EAAE,GAAG,CAAC;IAChB,eAAe,EAAG,OAAO,CAAC;IAC1B,cAAc,EAAG,MAAM,CAAC,OAAO,CAAC;IAChC,gBAAgB,EAAG,MAAM,CAAC;IAC1B,gBAAgB,EAAG,MAAM,CAAC;IAC1B,kBAAkB,EAAE,GAAG,CAAC;IACxB,gBAAgB,EAAE,GAAG,CAAC;IACtB,QAAQ,EAAE,GAAG,CAAC;IACd,4BAA4B,EAAG,MAAM,CAAC,OAAO,CAAC;IAC9C,gBAAgB,EAAE,MAAM,GAAG,SAAS,CAAC;IACrC,SAAS,EAAG;QACV,QAAQ,EAAE,CACR,IAAI,EACF;YACE,QAAQ,EAAE,GAAG,CAAC;YACd,KAAK,EAAE,MAAM,CAAC;YACd,KAAK,EAAE,OAAO,CAAC;YACf,EAAE,EAAE,UAAU,CAAC;SAChB,KACA,OAAO,CAAC,GAAG,CAAC,CAAC;QAClB,IAAI,EAAE,CACJ,IAAI,EAAE,MAAM,KACT,GAAG,CAAC;KACV,CAAC;IAGF,uBAAuB,EAAG,OAAO,CAAC;IAClC,eAAe,MAAC;gBAGG,QAAQ,EAAE,iBAAiB,EACpC,SAAS,EAAE,iBAAiB,EAC7B,MAAM,EAAE,MAAM;IAsHvB,WAAW;IAsCL,aAAa;YAsDL,oBAAoB;IAuB5B,WAAW;IAiCjB,4BAA4B;IAmBrB,QAAQ,CAAC,CAAC,EAAE,GAAG;IAOtB,OAAO,CAAC,UAAU;IA4BlB;;OAEG;IACH,iBAAiB,CAAC,KAAK,EAAE,mBAAmB;IA6E5C;;;;;OAKG;IACH,0BAA0B,CAAC,CAAC,EAAE,MAAM,GAAG,MAAM;IAU7C;;;OAGG;IACI,aAAa,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IA8BhD;;;;OAIG;IACH,OAAO,CAAC,aAAa;IAQrB,OAAO,CAAC,YAAY;IAQpB,OAAO,KAAK,YAAY,GAEvB;IAED,OAAO,CAAC,aAAa;IAcrB,OAAO,CAAC,IAAI;IAqBZ,OAAO,CAAC,aAAa;IAyBd,SAAS;CAYjB"}
1
+ {"version":3,"file":"curtains.d.ts","sourceRoot":"","sources":["../../src/devices/curtains.ts"],"names":[],"mappings":";AACA,OAAO,EAAW,iBAAiB,EAAE,mBAAmB,EAAE,UAAU,EAAE,MAAM,YAAY,CAAC;AACzF,OAAO,EAAE,iBAAiB,EAAE,MAAM,aAAa,CAAC;AAGhD,OAAO,EAAa,MAAM,EAAE,oBAAoB,EAAE,MAAM,aAAa,CAAC;AAGtE,qBAAa,OAAO;IAgDhB,OAAO,CAAC,QAAQ,CAAC,QAAQ;IACzB,OAAO,CAAC,SAAS;IACV,MAAM,EAAE,MAAM;IAhDvB,OAAO,CAAC,OAAO,CAAU;IACzB,OAAO,CAAC,kBAAkB,CAAU;IAGpC,eAAe,EAAG,mBAAmB,CAAC;IACtC,aAAa,EAAG,mBAAmB,CAAC;IACpC,cAAc,EAAG,mBAAmB,CAAC;IACrC,wBAAwB,EAAG,mBAAmB,CAAC;IAG/C,YAAY,EAAG,oBAAoB,CAAC;IACpC,SAAS,EAAG,MAAM,CAAC,OAAO,CAAC;IAC3B,cAAc,EAAG,MAAM,CAAC,OAAO,CAAC;IAChC,iBAAiB,EAAG,MAAM,CAAC,OAAO,CAAC;IACnC,4BAA4B,EAAG,MAAM,CAAC,OAAO,CAAC;IAC9C,YAAY,EAAG,OAAO,CAAC;IACvB,QAAQ,EAAG,MAAM,CAAC;IAClB,YAAY,EAAE,GAAG,CAAC;IAClB,UAAU,EAAE,GAAG,CAAC;IAChB,eAAe,EAAG,OAAO,CAAC;IAC1B,gBAAgB,EAAG,MAAM,CAAC;IAC1B,gBAAgB,EAAG,MAAM,CAAC;IAC1B,kBAAkB,EAAE,GAAG,CAAC;IACxB,gBAAgB,EAAE,GAAG,CAAC;IACtB,QAAQ,EAAE,GAAG,CAAC;IACd,gBAAgB,EAAE,MAAM,GAAG,SAAS,CAAC;IACrC,SAAS,EAAG;QACV,QAAQ,EAAE,CACR,IAAI,EACF;YACE,QAAQ,EAAE,GAAG,CAAC;YACd,KAAK,EAAE,MAAM,CAAC;YACd,KAAK,EAAE,OAAO,CAAC;YACf,EAAE,EAAE,UAAU,CAAC;SAChB,KACA,OAAO,CAAC,GAAG,CAAC,CAAC;QAClB,IAAI,EAAE,CACJ,IAAI,EAAE,MAAM,KACT,GAAG,CAAC;KACV,CAAC;IAGF,uBAAuB,EAAG,OAAO,CAAC;IAClC,eAAe,MAAC;gBAGG,QAAQ,EAAE,iBAAiB,EACpC,SAAS,EAAE,iBAAiB,EAC7B,MAAM,EAAE,MAAM;IAqIvB,WAAW;IA+CL,aAAa;YAsDL,oBAAoB;IAuB5B,WAAW;IAiCjB,4BAA4B;IAwBrB,QAAQ,CAAC,CAAC,EAAE,GAAG;IAQtB,OAAO,CAAC,UAAU;IA4BlB;;OAEG;IACH,iBAAiB,CAAC,KAAK,EAAE,mBAAmB;IA6E5C;;;;;OAKG;IACH,0BAA0B,CAAC,CAAC,EAAE,MAAM,GAAG,MAAM;IAU7C;;;OAGG;IACU,aAAa,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IA8BtD;;;;OAIG;IACH,OAAO,CAAC,aAAa;IAQrB,OAAO,CAAC,YAAY;IAQpB,OAAO,KAAK,YAAY,GAEvB;IAED,OAAO,CAAC,aAAa;IAcrB,OAAO,CAAC,IAAI;IAqBZ,OAAO,CAAC,aAAa;IAyBd,SAAS;CAYjB"}
@@ -71,6 +71,20 @@ class Curtain {
71
71
  validValueRanges: [0, 100],
72
72
  })
73
73
  .onSet(this.TargetPositionSet.bind(this));
74
+ //set up brightness level from the builtin sensor as light sensor accessory
75
+ (this.lightSensorService =
76
+ accessory.getService(this.platform.Service.LightSensor) ||
77
+ accessory.addService(this.platform.Service.LightSensor)), 'Builtin Lightsensor of %s %s', device.deviceName, device.deviceType;
78
+ this.lightSensorService.setCharacteristic(this.platform.Characteristic.Name, accessory.displayName);
79
+ // handle on / off events using the On characteristic
80
+ this.lightSensorService.getCharacteristic(this.platform.Characteristic.CurrentAmbientLightLevel).onGet(() => {
81
+ if (this.CurrentAmbientLightLevel === 'bright') {
82
+ return 100000;
83
+ }
84
+ else {
85
+ return 0.0001;
86
+ }
87
+ });
74
88
  // Update Homekit
75
89
  this.updateHomeKitCharacteristics();
76
90
  // Start an update interval
@@ -143,8 +157,17 @@ class Curtain {
143
157
  }
144
158
  }
145
159
  }
146
- this.platform.debug(`Curtain ${this.accessory.displayName} CurrentPosition: ${this.CurrentPosition},
147
- TargetPosition: ${this.TargetPosition}, PositionState: ${this.PositionState}`);
160
+ // Brightness
161
+ switch (this.deviceStatus.body.brightness) {
162
+ case 'dim':
163
+ this.CurrentAmbientLightLevel = 0.0001;
164
+ break;
165
+ default:
166
+ this.CurrentAmbientLightLevel = 100000;
167
+ }
168
+ this.platform.debug(`Curtain ${this.accessory.displayName} CurrentPosition: ${this.CurrentPosition}
169
+ , TargetPosition: ${this.TargetPosition}, PositionState: ${this.PositionState}
170
+ , CurrentAmbientLightLevel: ${this.CurrentAmbientLightLevel}`);
148
171
  }
149
172
  async refreshStatus() {
150
173
  if (this.platform.config.options?.ble?.includes(this.device.deviceId)) {
@@ -244,6 +267,7 @@ class Curtain {
244
267
  CurrentPosition: this.CurrentPosition,
245
268
  PositionState: this.PositionState,
246
269
  TargetPosition: this.TargetPosition,
270
+ CurrentAmbientLightLevel: this.CurrentAmbientLightLevel,
247
271
  })}`);
248
272
  this.setMinMax();
249
273
  if (this.CurrentPosition !== undefined) {
@@ -255,11 +279,15 @@ class Curtain {
255
279
  if (this.TargetPosition !== undefined) {
256
280
  this.service.updateCharacteristic(this.platform.Characteristic.TargetPosition, this.TargetPosition);
257
281
  }
282
+ if (this.CurrentAmbientLightLevel !== undefined) {
283
+ this.lightSensorService.updateCharacteristic(this.platform.Characteristic.CurrentAmbientLightLevel, this.CurrentAmbientLightLevel);
284
+ }
258
285
  }
259
286
  apiError(e) {
260
287
  this.service.updateCharacteristic(this.platform.Characteristic.CurrentPosition, e);
261
288
  this.service.updateCharacteristic(this.platform.Characteristic.PositionState, e);
262
289
  this.service.updateCharacteristic(this.platform.Characteristic.TargetPosition, e);
290
+ this.service.updateCharacteristic(this.platform.Characteristic.CurrentAmbientLightLevel, e);
263
291
  }
264
292
  statusCode(push) {
265
293
  switch (push.data.statusCode) {
@@ -389,7 +417,7 @@ class Curtain {
389
417
  * Ask the device to start moving to the given position (which must be a device value and not an HomeKit value).
390
418
  * Returns a Promise that's resolved as soon as the command was sent to the device.
391
419
  */
392
- runToPosition(pos) {
420
+ async runToPosition(pos) {
393
421
  const SwitchBot = require('node-switchbot');
394
422
  const switchbot = new SwitchBot();
395
423
  return switchbot
@@ -1 +1 @@
1
- {"version":3,"file":"curtains.js","sourceRoot":"","sources":["../../src/devices/curtains.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"curtains.js","sourceRoot":"","sources":["../../src/devices/curtains.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "displayName": "Homebridge SwitchBot",
3
3
  "name": "@switchbot/homebridge-switchbot",
4
- "version": "0.1.2-beta.1",
4
+ "version": "0.1.2-beta.5",
5
5
  "description": "The [Homebridge](https://homebridge.io) SwitchBot plugin allows you to access your [SwitchBot](https://www.switch-bot.com) device(s) from HomeKit.",
6
6
  "author": "SwitchBot <support@wondertechlabs.com> (https://github.com/SwitchBot)",
7
7
  "license": "ISC",
@@ -49,16 +49,16 @@
49
49
  "dependencies": {
50
50
  "axios": "^0.21.4",
51
51
  "rxjs": "^7.3.0",
52
- "node-switchbot": "^1.0.6",
52
+ "node-switchbot": "^1.0.7",
53
53
  "@homebridge/plugin-ui-utils": "^0.0.19"
54
54
  },
55
55
  "devDependencies": {
56
- "@types/node": "^16.9.1",
57
- "@typescript-eslint/eslint-plugin": "^4.31.1",
58
- "@typescript-eslint/parser": "^4.31.1",
56
+ "@types/node": "^16.9.6",
57
+ "@typescript-eslint/eslint-plugin": "^4.31.2",
58
+ "@typescript-eslint/parser": "^4.31.2",
59
59
  "eslint": "^7.32.0",
60
60
  "homebridge": "^1.3.4",
61
- "nodemon": "^2.0.12",
61
+ "nodemon": "^2.0.13",
62
62
  "rimraf": "^3.0.2",
63
63
  "ts-node": "^10.2.1",
64
64
  "typescript": "^4.4.3",
@@ -16,6 +16,7 @@ export class Contact {
16
16
 
17
17
  // Characteristic Values
18
18
  ContactSensorState!: CharacteristicValue;
19
+ MotionDetected!: CharacteristicValue;
19
20
 
20
21
  // Others
21
22
  deviceStatus!: deviceStatusResponse;
@@ -85,7 +86,7 @@ export class Contact {
85
86
  this.service.setCharacteristic(this.platform.Characteristic.Name, accessory.displayName);
86
87
 
87
88
  // each service must implement at-minimum the "required characteristics" for the given service type
88
- // see https://developers.homebridge.io/#/service/ContactSensor
89
+ // see https://developers.homebridge.io/#/service/MotionSensor
89
90
  (this.motionService =
90
91
  accessory.getService(this.platform.Service.MotionSensor) ||
91
92
  accessory.addService(this.platform.Service.MotionSensor)), `${device.deviceName} ${device.deviceType}`;
@@ -114,11 +115,9 @@ export class Contact {
114
115
  } else {
115
116
  this.ContactSensorState = this.platform.Characteristic.ContactSensorState.CONTACT_NOT_DETECTED;
116
117
  }
117
- if (this.deviceStatus.body.moveDetected) {
118
- this.ContactSensorState = this.platform.Characteristic.ContactSensorState.CONTACT_DETECTED;
119
- } else {
120
- this.ContactSensorState = this.platform.Characteristic.ContactSensorState.CONTACT_NOT_DETECTED;
121
- }
118
+ this.MotionDetected = Boolean(this.deviceStatus.body.moveDetected);
119
+ this.platform.debug(`${this.accessory.displayName}
120
+ , ContactSensorState: ${this.ContactSensorState}, MotionDetected: ${this.MotionDetected}`);
122
121
  }
123
122
 
124
123
  /**
@@ -207,9 +206,13 @@ export class Contact {
207
206
  if (this.ContactSensorState !== undefined) {
208
207
  this.service.updateCharacteristic(this.platform.Characteristic.ContactSensorState, this.ContactSensorState);
209
208
  }
209
+ if (this.MotionDetected !== undefined) {
210
+ this.motionService.updateCharacteristic(this.platform.Characteristic.MotionDetected, this.MotionDetected);
211
+ }
210
212
  }
211
213
 
212
214
  public apiError(e: any) {
213
215
  this.service.updateCharacteristic(this.platform.Characteristic.ContactSensorState, e);
216
+ this.motionService.updateCharacteristic(this.platform.Characteristic.MotionDetected, e);
214
217
  }
215
218
  }
@@ -9,28 +9,30 @@ import { AxiosResponse } from 'axios';
9
9
  export class Curtain {
10
10
  // Services
11
11
  private service: Service;
12
+ private lightSensorService: Service;
12
13
 
13
14
  // Characteristic Values
14
15
  CurrentPosition!: CharacteristicValue;
15
16
  PositionState!: CharacteristicValue;
16
17
  TargetPosition!: CharacteristicValue;
18
+ CurrentAmbientLightLevel!: CharacteristicValue;
17
19
 
18
20
  // Others
19
21
  deviceStatus!: deviceStatusResponse;
20
- setNewTarget!: boolean;
21
- setNewTargetTimer!: NodeJS.Timeout;
22
22
  moveTimer!: NodeJS.Timeout;
23
+ ScanIntervalId!: NodeJS.Timeout;
24
+ setNewTargetTimer!: NodeJS.Timeout;
25
+ AutoDisableFastScanTimeoutId!: NodeJS.Timeout;
26
+ setNewTarget!: boolean;
23
27
  moveTime!: number;
24
28
  ScanDuration: any;
25
29
  ReverseDir: any;
26
30
  FastScanEnabled!: boolean;
27
- ScanIntervalId!: NodeJS.Timeout;
28
31
  FastScanInterval!: number;
29
32
  SlowScanInterval!: number;
30
33
  OpenCloseThreshold: any;
31
34
  PreviousPosition: any;
32
35
  Position: any;
33
- AutoDisableFastScanTimeoutId!: NodeJS.Timeout;
34
36
  FastScanDuration: number | undefined;
35
37
  switchbot!: {
36
38
  discover: (
@@ -129,6 +131,21 @@ export class Curtain {
129
131
  })
130
132
  .onSet(this.TargetPositionSet.bind(this));
131
133
 
134
+ //set up brightness level from the builtin sensor as light sensor accessory
135
+ (this.lightSensorService =
136
+ accessory.getService(this.platform.Service.LightSensor) ||
137
+ accessory.addService(this.platform.Service.LightSensor)), 'Builtin Lightsensor of %s %s', device.deviceName, device.deviceType;
138
+ this.lightSensorService.setCharacteristic(this.platform.Characteristic.Name, accessory.displayName);
139
+ // handle on / off events using the On characteristic
140
+ this.lightSensorService.getCharacteristic(this.platform.Characteristic.CurrentAmbientLightLevel).onGet(() => {
141
+ if (this.CurrentAmbientLightLevel === 'bright') {
142
+ return 100000;
143
+ } else {
144
+ return 0.0001;
145
+ }
146
+ });
147
+
148
+
132
149
  // Update Homekit
133
150
  this.updateHomeKitCharacteristics();
134
151
 
@@ -205,9 +222,18 @@ export class Curtain {
205
222
  }
206
223
  }
207
224
  }
225
+ // Brightness
226
+ switch (this.deviceStatus.body.brightness) {
227
+ case 'dim':
228
+ this.CurrentAmbientLightLevel = 0.0001;
229
+ break;
230
+ default:
231
+ this.CurrentAmbientLightLevel = 100000;
232
+ }
208
233
  this.platform.debug(
209
- `Curtain ${this.accessory.displayName} CurrentPosition: ${this.CurrentPosition},
210
- TargetPosition: ${this.TargetPosition}, PositionState: ${this.PositionState}`);
234
+ `Curtain ${this.accessory.displayName} CurrentPosition: ${this.CurrentPosition}
235
+ , TargetPosition: ${this.TargetPosition}, PositionState: ${this.PositionState}
236
+ , CurrentAmbientLightLevel: ${this.CurrentAmbientLightLevel}`);
211
237
  }
212
238
 
213
239
  async refreshStatus() {
@@ -326,7 +352,9 @@ export class Curtain {
326
352
  CurrentPosition: this.CurrentPosition,
327
353
  PositionState: this.PositionState,
328
354
  TargetPosition: this.TargetPosition,
329
- })}`);
355
+ CurrentAmbientLightLevel: this.CurrentAmbientLightLevel,
356
+ })}`,
357
+ );
330
358
  this.setMinMax();
331
359
  if (this.CurrentPosition !== undefined) {
332
360
  this.service.updateCharacteristic(this.platform.Characteristic.CurrentPosition, this.CurrentPosition);
@@ -337,12 +365,16 @@ export class Curtain {
337
365
  if (this.TargetPosition !== undefined) {
338
366
  this.service.updateCharacteristic(this.platform.Characteristic.TargetPosition, this.TargetPosition);
339
367
  }
368
+ if (this.CurrentAmbientLightLevel !== undefined) {
369
+ this.lightSensorService.updateCharacteristic(this.platform.Characteristic.CurrentAmbientLightLevel, this.CurrentAmbientLightLevel);
370
+ }
340
371
  }
341
372
 
342
373
  public apiError(e: any) {
343
374
  this.service.updateCharacteristic(this.platform.Characteristic.CurrentPosition, e);
344
375
  this.service.updateCharacteristic(this.platform.Characteristic.PositionState, e);
345
376
  this.service.updateCharacteristic(this.platform.Characteristic.TargetPosition, e);
377
+ this.service.updateCharacteristic(this.platform.Characteristic.CurrentAmbientLightLevel, e);
346
378
  }
347
379
 
348
380
 
@@ -474,7 +506,7 @@ export class Curtain {
474
506
  * Ask the device to start moving to the given position (which must be a device value and not an HomeKit value).
475
507
  * Returns a Promise that's resolved as soon as the command was sent to the device.
476
508
  */
477
- public runToPosition(pos: number): Promise<void> {
509
+ public async runToPosition(pos: number): Promise<void> {
478
510
  const SwitchBot = require('node-switchbot');
479
511
  const switchbot = new SwitchBot();
480
512
 
@@ -601,4 +633,4 @@ export class Curtain {
601
633
  }
602
634
  }
603
635
  }
604
- }
636
+ }