node-switchbot 2.1.0-beta.0 → 2.1.0-beta.1

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/README.md CHANGED
@@ -8,7 +8,7 @@
8
8
  </span>
9
9
 
10
10
  The node-switchbot is a Node.js module which allows you to move your [Switchbot (Bot)'s](https://www.switch-bot.com/bot) arm
11
- and [Switchbot Curtain](https://www.switch-bot.com/products/switchbot-curtain),
11
+ and [Switchbot Curtain](https://www.switch-bot.com/products/switchbot-curtain), operate your [Switchbot Lock](https://www.switch-bot.com/products/switchbot-lock),
12
12
  also monitor the temperature/humidity from [SwitchBot Thermometer & Hygrometer (Meter)](https://www.switch-bot.com/meter)
13
13
  as well as the status from [SwitchBot Motion Sensor](https://www.switch-bot.com/products/motion-sensor)
14
14
  and [SwitchBot Contact Sensor](https://www.switch-bot.com/products/contact-sensor)
@@ -43,21 +43,26 @@ But some functionalities of this module were developed through trial and error.
43
43
  - [`disconnect()` method](#disconnect-method)
44
44
  - [`onconnect` event handler](#onconnect-event-handler)
45
45
  - [`ondisconnect` event handler](#ondisconnect-event-handler)
46
- - [`WoHand` object](#switchbotdevicewohand-object)
46
+ - [`WoHand` object](#wohand-object)
47
47
  - [`press()` method](#press-method)
48
48
  - [`turnOn()` method](#turnon-method)
49
49
  - [`turnOff()` method](#turnoff-method)
50
50
  - [`down()` method](#down-method)
51
51
  - [`up()` method](#up-method)
52
- - [`WoCurtain` object](#switchbotdevicewocurtain-object)
52
+ - [`WoCurtain` object](#wocurtain-object)
53
53
  - [`open()` method](#open-method)
54
54
  - [`close()` method](#close-method)
55
55
  - [`pause()` method](#pause-method)
56
56
  - [`runToPos()` method](#runtopos-method)
57
- - [`WoPlugMini` object](#switchbotdevicewoplugmini-object)
57
+ - [`WoPlugMini` object](#woplugmini-object)
58
58
  - [`turnOn()` method](#turnon-method)
59
59
  - [`turnOff()` method](#turnoff-method)
60
60
  - [`toggle()` method](#toggle-method)
61
+ - [`WoSmartLock` object](#wosmartlock-object)
62
+ - [`lock()` method](#lock-method)
63
+ - [`unlock()` method](#unlock-method)
64
+ - [`unlock_no_unlatch()` method](#unlock_no_unlatch-method)
65
+ - [`info()` method](#info-method)
61
66
  - [Advertisement data](#advertisement-data)
62
67
  - [Bot (WoHand)](#bot-wohand)
63
68
  - [Meter (WoSensorTH)](#meter-wosensorth)
@@ -876,6 +881,49 @@ If no connection is established with the device, this method automatically estab
876
881
 
877
882
  ---
878
883
 
884
+ ---
885
+ ## `WoSmartLock` object
886
+
887
+ The `WoSmartLock ` object represents a SmartLock, which is created through the discovery process triggered by the [`Switchbot.discover()`](#Switchbot-discover-method) method.
888
+
889
+ Actually, the `WoSmartLock ` is an object inherited from the [`SwitchbotDevice`](#SwitchbotDevice-object). You can use not only the method described in this section but also the properties and methods implemented in the [`SwitchbotDevice`](#SwitchbotDevice-object) object.
890
+
891
+ ### `setKey()` method
892
+
893
+ The `setKey()` method initialises the key information required for encrypted communication with the SmartLock
894
+
895
+ This must be set before any control commands are sent to the device. To obtain the key information you will need to use an external tool - see [`pySwitchbot`](https://github.com/Danielhiversen/pySwitchbot/tree/master?tab=readme-ov-file#obtaining-locks-encryption-key) project for an example script.
896
+
897
+ | Property | Type | Description |
898
+ | :--------------- | :------ | :------------------------------------------------------------------------------------------------------------------------------------- |
899
+ | `keyId` | String | unique2 character ID for the key. (e.g., `"ff"`) returned from the SwitchBot api for your device |
900
+ | `encryptionKey` | String | the unique encryption key returned from the SwitchBot api for your device |
901
+
902
+ ### `lock()` method
903
+
904
+ The `lock()` method sends a lock command to the SmartLock. This method returns a `Promise` object. A `boolean` value indicating whether the SmartLock is locked (`true`), is passed to the `resolve()` method of the Promise.
905
+
906
+ If no connection is established with the device, this method automatically establishes a connection with the device, then finally closes the connection. You don't have to call the [`connect()`](#SwitchbotDevice-connect-method) method in advance.
907
+
908
+ ### `unlock()` method
909
+
910
+ The `unlock()` method sends an unlock command to the SmartLock. This method returns a `Promise` object. A `boolean` value indicating whether the SmartLock is locked (`false`), is passed to the `resolve()` method of the Promise.
911
+
912
+ If no connection is established with the device, this method automatically establishes a connection with the device, then finally closes the connection. You don't have to call the [`connect()`](#SwitchbotDevice-connect-method) method in advance.
913
+
914
+ ### `unlockNoUnlatch()` method
915
+
916
+ The `unlockNoUnlatch()` method sends a partial unlock command to the SmartLock, unlocking without the full unlatch.
917
+
918
+ If no connection is established with the device, this method automatically establishes a connection with the device, then finally closes the connection. You don't have to call the [`connect()`](#SwitchbotDevice-connect-method) method in advance.
919
+
920
+ ### `info()` method
921
+
922
+ The `info()` method retreieves state information from the SmartLock, This method returns a `Promise` object. An `object` value indicating with the state infor, is passed to the `resolve()` method of the Promise.
923
+
924
+ If no connection is established with the device, this method automatically establishes a connection with the device, then finally closes the connection. You don't have to call the [`connect()`](#SwitchbotDevice-connect-method) method in advance.
925
+
926
+
879
927
  ## Advertisement data
880
928
 
881
929
  After the [`startScan()`](#startscan-method) method is invoked, the [`onadvertisement`](#Switchbot-onadvertisement-event-handler) event handler will be called whenever an advertising packet comes from the switchbot devices. An object containing the properties as follows will be passed to the event handler:
@@ -1,6 +1,22 @@
1
1
  /// <reference types="node" />
2
2
  import { SwitchbotDevice } from '../device.js';
3
+ import { Peripheral } from '@abandonware/noble';
3
4
  export declare class WoSmartLock extends SwitchbotDevice {
5
+ _iv: any;
6
+ _key_id: string;
7
+ _encryption_key: any;
8
+ static COMMAND_GET_CK_IV: string;
9
+ static COMMAND_LOCK_INFO: string;
10
+ static COMMAND_UNLOCK: string;
11
+ static COMMAND_UNLOCK_NO_UNLATCH: string;
12
+ static COMMAND_LOCK: string;
13
+ static Result: {
14
+ ERROR: number;
15
+ SUCCESS: number;
16
+ SUCCESS_LOW_BATTERY: number;
17
+ };
18
+ static validateResponse(res: Buffer): number;
19
+ static getLockStatus(code: number): "LOCKED" | "UNLOCKED" | "LOCKING" | "UNLOCKING" | "LOCKING_STOP" | "UNLOCKING_STOP" | "NOT_FULLY_LOCKED" | "UNKNOWN";
4
20
  static parseServiceData(manufacturerData: Buffer, onlog: ((message: string) => void) | undefined): {
5
21
  model: string;
6
22
  modelName: string;
@@ -14,5 +30,16 @@ export declare class WoSmartLock extends SwitchbotDevice {
14
30
  unlocked_alarm: boolean;
15
31
  auto_lock_paused: boolean;
16
32
  } | null;
33
+ constructor(peripheral: Peripheral, noble: any);
34
+ setKey(keyId: string, encryptionKey: string): void;
35
+ unlock(): Promise<number>;
36
+ unlockNoUnlatch(): Promise<number>;
37
+ lock(): Promise<number>;
38
+ info(): Promise<unknown>;
39
+ _encrypt(str: string): string;
40
+ _decrypt(data: Buffer): Buffer;
41
+ _getIv(): Promise<any>;
42
+ _encryptedCommand(key: string): Promise<Buffer>;
43
+ _operateLock(key: string, encrypt?: boolean): Promise<any>;
17
44
  }
18
45
  //# sourceMappingURL=wosmartlock.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"wosmartlock.d.ts","sourceRoot":"","sources":["../../src/device/wosmartlock.ts"],"names":[],"mappings":";AAIA,OAAO,EAAE,eAAe,EAAE,MAAM,cAAc,CAAC;AAE/C,qBAAa,WAAY,SAAQ,eAAe;IAC9C,MAAM,CAAC,gBAAgB,CAAC,gBAAgB,EAAE,MAAM,EAAE,KAAK,EAAE,CAAC,CAAC,OAAO,EAAE,MAAM,KAAK,IAAI,CAAC,GAAG,SAAS;;;;;;;;;;;;;CAuEjG"}
1
+ {"version":3,"file":"wosmartlock.d.ts","sourceRoot":"","sources":["../../src/device/wosmartlock.ts"],"names":[],"mappings":";AAIA,OAAO,EAAE,eAAe,EAAE,MAAM,cAAc,CAAC;AAC/C,OAAO,EAAE,UAAU,EAAE,MAAM,oBAAoB,CAAC;AAGhD,qBAAa,WAAY,SAAQ,eAAe;IAC9C,GAAG,EAAC,GAAG,CAAC;IACR,OAAO,EAAC,MAAM,CAAC;IACf,eAAe,EAAC,GAAG,CAAC;IAEpB,MAAM,CAAC,iBAAiB,SAAc;IACtC,MAAM,CAAC,iBAAiB,SAAgB;IACxC,MAAM,CAAC,cAAc,SAAoB;IACzC,MAAM,CAAC,yBAAyB,SAAoB;IACpD,MAAM,CAAC,YAAY,SAAoB;IAEvC,MAAM,CAAC,MAAM;;;;MAIX;IAEF,MAAM,CAAC,gBAAgB,CAAC,GAAG,EAAE,MAAM;IAYnC,MAAM,CAAC,aAAa,CAAC,IAAI,EAAE,MAAM;IAqBjC,MAAM,CAAC,gBAAgB,CAAC,gBAAgB,EAAE,MAAM,EAAE,KAAK,EAAE,CAAC,CAAC,OAAO,EAAE,MAAM,KAAK,IAAI,CAAC,GAAG,SAAS;;;;;;;;;;;;;gBAwCpF,UAAU,EAAE,UAAU,EAAE,KAAK,EAAE,GAAG;IAiB9C,MAAM,CAAC,KAAK,EAAE,MAAM,EAAE,aAAa,EAAE,MAAM;IAiB3C,MAAM;IAsBN,eAAe;IAsBf,IAAI;IAsBJ,IAAI;IAkBJ,QAAQ,CAAC,GAAG,EAAC,MAAM;IAKnB,QAAQ,CAAC,IAAI,EAAC,MAAM;IAKd,MAAM;IAQN,iBAAiB,CAAC,GAAG,EAAE,MAAM;IAoBnC,YAAY,CAAC,GAAG,EAAE,MAAM,EAAE,OAAO,GAAE,OAAc;CAwBlD"}
@@ -1,51 +1,67 @@
1
- /* Copyright(C) 2024, donavanbecker (https://github.com/donavanbecker). All rights reserved.
2
- *
1
+ /*
3
2
  * wosmartlock.ts: Switchbot BLE API registration.
3
+ * adapted off the work done by [pySwitchbot](https://github.com/Danielhiversen/pySwitchbot)
4
4
  */
5
5
  import { SwitchbotDevice } from '../device.js';
6
+ import * as Crypto from 'crypto';
6
7
  export class WoSmartLock extends SwitchbotDevice {
8
+ _iv;
9
+ _key_id;
10
+ _encryption_key;
11
+ static COMMAND_GET_CK_IV = '570f2103';
12
+ static COMMAND_LOCK_INFO = '570f4f8101';
13
+ static COMMAND_UNLOCK = '570f4e01011080';
14
+ static COMMAND_UNLOCK_NO_UNLATCH = '570f4e010110a0';
15
+ static COMMAND_LOCK = '570f4e01011000';
16
+ static Result = {
17
+ ERROR: 0x00,
18
+ SUCCESS: 0x01,
19
+ SUCCESS_LOW_BATTERY: 0x06,
20
+ };
21
+ static validateResponse(res) {
22
+ if (res.length >= 3) {
23
+ switch (res.readUInt8(0)) {
24
+ case WoSmartLock.Result.SUCCESS:
25
+ return WoSmartLock.Result.SUCCESS;
26
+ case WoSmartLock.Result.SUCCESS_LOW_BATTERY:
27
+ return WoSmartLock.Result.SUCCESS_LOW_BATTERY;
28
+ }
29
+ }
30
+ return WoSmartLock.Result.ERROR;
31
+ }
32
+ static getLockStatus(code) {
33
+ switch (code) {
34
+ case 0b0000000:
35
+ return 'LOCKED';
36
+ case 0b0010000:
37
+ return 'UNLOCKED';
38
+ case 0b0100000:
39
+ return 'LOCKING';
40
+ case 0b0110000:
41
+ return 'UNLOCKING';
42
+ case 0b1000000:
43
+ return 'LOCKING_STOP';
44
+ case 0b1010000:
45
+ return 'UNLOCKING_STOP';
46
+ case 0b1100000: //Only EU lock type
47
+ return 'NOT_FULLY_LOCKED';
48
+ default:
49
+ return 'UNKNOWN';
50
+ }
51
+ }
7
52
  static parseServiceData(manufacturerData, onlog) {
8
- if (manufacturerData.length !== 6) {
53
+ if (manufacturerData.length !== 12) {
9
54
  if (onlog && typeof onlog === 'function') {
10
- onlog(`[parseServiceDataForWoSmartLock] Buffer length ${manufacturerData.length} !== 6!`);
55
+ onlog(`[parseServiceDataForWoSmartLock] Buffer length ${manufacturerData.length} !== 12!`);
11
56
  }
12
57
  return null;
13
58
  }
14
59
  const byte2 = manufacturerData.readUInt8(2);
15
60
  const byte7 = manufacturerData.readUInt8(7);
16
61
  const byte8 = manufacturerData.readUInt8(8);
17
- function getStatus(code) {
18
- switch (code) {
19
- case LockStatus.LOCKED:
20
- return 'LOCKED';
21
- case LockStatus.UNLOCKED:
22
- return 'UNLOCKED';
23
- case LockStatus.LOCKING:
24
- return 'LOCKING';
25
- case LockStatus.UNLOCKING:
26
- return 'UNLOCKING';
27
- case LockStatus.LOCKING_STOP:
28
- return 'LOCKING_STOP';
29
- case LockStatus.UNLOCKING_STOP:
30
- return 'UNLOCKING_STOP';
31
- case LockStatus.NOT_FULLY_LOCKED:
32
- return 'NOT_FULLY_LOCKED';
33
- default:
34
- return 'UNKNOWN';
35
- }
36
- }
37
- const LockStatus = {
38
- LOCKED: 0b0000000,
39
- UNLOCKED: 0b0010000,
40
- LOCKING: 0b0100000,
41
- UNLOCKING: 0b0110000,
42
- LOCKING_STOP: 0b1000000,
43
- UNLOCKING_STOP: 0b1010000,
44
- NOT_FULLY_LOCKED: 0b1100000, //Only EU lock type
45
- };
46
62
  const battery = byte2 & 0b01111111; // %
47
63
  const calibration = byte7 & 0b10000000 ? true : false;
48
- const status = getStatus(byte7 & 0b01110000);
64
+ const status = WoSmartLock.getLockStatus(byte7 & 0b01110000);
49
65
  const update_from_secondary_lock = byte7 & 0b00001000 ? true : false;
50
66
  const door_open = byte7 & 0b00000100 ? true : false;
51
67
  const double_lock_mode = byte8 & 0b10000000 ? true : false;
@@ -67,5 +83,167 @@ export class WoSmartLock extends SwitchbotDevice {
67
83
  };
68
84
  return data;
69
85
  }
86
+ constructor(peripheral, noble) {
87
+ super(peripheral, noble);
88
+ this._iv = null;
89
+ this._key_id = '';
90
+ this._encryption_key = null;
91
+ }
92
+ /* ------------------------------------------------------------------
93
+ * setKey()
94
+ * - initialise the encryption key info for valid lock communication, this currently must be retrived externally
95
+ *
96
+ * [Arguments]
97
+ * - keyId, encryptionKey
98
+ *
99
+ * [Return value]
100
+ * - void
101
+ * ---------------------------------------------------------------- */
102
+ setKey(keyId, encryptionKey) {
103
+ this._iv = null;
104
+ this._key_id = keyId;
105
+ this._encryption_key = Buffer.from(encryptionKey, 'hex');
106
+ }
107
+ /* ------------------------------------------------------------------
108
+ * unlock()
109
+ * - Unlock the Smart Lock
110
+ *
111
+ * [Arguments]
112
+ * - none
113
+ *
114
+ * [Return value]
115
+ * - Promise object
116
+ * WoSmartLock.LockResult will be passed to the `resolve()`.
117
+ * ---------------------------------------------------------------- */
118
+ unlock() {
119
+ return new Promise((resolve, reject) => {
120
+ this._operateLock(WoSmartLock.COMMAND_UNLOCK)
121
+ .then((resBuf) => {
122
+ resolve(WoSmartLock.validateResponse(resBuf));
123
+ }).catch((error) => {
124
+ reject(error);
125
+ });
126
+ });
127
+ }
128
+ /* ------------------------------------------------------------------
129
+ * unlockNoUnlatch()
130
+ * - Unlock the Smart Lock without unlatching door
131
+ *
132
+ * [Arguments]
133
+ * - none
134
+ *
135
+ * [Return value]
136
+ * - Promise object
137
+ * WoSmartLock.LockResult will be passed to the `resolve()`.
138
+ * ---------------------------------------------------------------- */
139
+ unlockNoUnlatch() {
140
+ return new Promise((resolve, reject) => {
141
+ this._operateLock(WoSmartLock.COMMAND_UNLOCK_NO_UNLATCH)
142
+ .then((resBuf) => {
143
+ resolve(WoSmartLock.validateResponse(resBuf));
144
+ }).catch((error) => {
145
+ reject(error);
146
+ });
147
+ });
148
+ }
149
+ /* ------------------------------------------------------------------
150
+ * lock()
151
+ * - Lock the Smart Lock
152
+ *
153
+ * [Arguments]
154
+ * - none
155
+ *
156
+ * [Return value]
157
+ * - Promise object
158
+ * WoSmartLock.LockResult will be passed to the `resolve()`.
159
+ * ---------------------------------------------------------------- */
160
+ lock() {
161
+ return new Promise((resolve, reject) => {
162
+ this._operateLock(WoSmartLock.COMMAND_LOCK)
163
+ .then((resBuf) => {
164
+ resolve(WoSmartLock.validateResponse(resBuf));
165
+ }).catch((error) => {
166
+ reject(error);
167
+ });
168
+ });
169
+ }
170
+ /* ------------------------------------------------------------------
171
+ * info()
172
+ * - Get general state info from the Smart Lock
173
+ *
174
+ * [Arguments]
175
+ * - none
176
+ *
177
+ * [Return value]
178
+ * - Promise object
179
+ * state object will be passed to the `resolve()`
180
+ * ---------------------------------------------------------------- */
181
+ info() {
182
+ return new Promise((resolve, reject) => {
183
+ this._operateLock(WoSmartLock.COMMAND_LOCK_INFO)
184
+ .then(resBuf => {
185
+ const data = {
186
+ 'calibration': Boolean(resBuf[1] & 0b10000000),
187
+ 'status': WoSmartLock.getLockStatus((resBuf[1] & 0b01110000)),
188
+ 'door_open': Boolean(resBuf[1] & 0b00000100),
189
+ 'unclosed_alarm': Boolean(resBuf[2] & 0b00100000),
190
+ 'unlocked_alarm': Boolean(resBuf[2] & 0b00010000),
191
+ };
192
+ resolve(data);
193
+ }).catch((error) => {
194
+ reject(error);
195
+ });
196
+ });
197
+ }
198
+ _encrypt(str) {
199
+ const cipher = Crypto.createCipheriv('aes-128-ctr', this._encryption_key, this._iv);
200
+ return Buffer.concat([cipher.update(str, 'hex'), cipher.final()]).toString('hex');
201
+ }
202
+ _decrypt(data) {
203
+ const decipher = Crypto.createDecipheriv('aes-128-ctr', this._encryption_key, this._iv);
204
+ return Buffer.concat([decipher.update(data), decipher.final()]);
205
+ }
206
+ async _getIv() {
207
+ if (this._iv === null) {
208
+ const res = await this._operateLock(WoSmartLock.COMMAND_GET_CK_IV + this._key_id, false);
209
+ this._iv = res.subarray(4);
210
+ }
211
+ return this._iv;
212
+ }
213
+ async _encryptedCommand(key) {
214
+ const iv = await this._getIv();
215
+ const req = Buffer.from(key.substring(0, 2) + this._key_id + Buffer.from(iv.subarray(0, 2)).toString('hex') + this._encrypt(key.substring(2)), 'hex');
216
+ const bytes = await this._command(req);
217
+ const buf = Buffer.from(bytes);
218
+ const code = WoSmartLock.validateResponse(buf);
219
+ if (code !== WoSmartLock.Result.ERROR) {
220
+ return Buffer.concat([buf.subarray(0, 1), this._decrypt(buf.subarray(4))]);
221
+ }
222
+ else {
223
+ throw (new Error('The device returned an error: 0x' + buf.toString('hex')));
224
+ }
225
+ }
226
+ _operateLock(key, encrypt = true) {
227
+ //encrypted command
228
+ if (encrypt) {
229
+ return this._encryptedCommand(key);
230
+ }
231
+ //unencypted command
232
+ return new Promise((resolve, reject) => {
233
+ const req = Buffer.from(key.substring(0, 2) + '000000' + key.substring(2), 'hex');
234
+ this._command(req).then(bytes => {
235
+ const buf = Buffer.from(bytes);
236
+ const code = WoSmartLock.validateResponse(buf);
237
+ if (code === WoSmartLock.Result.ERROR) {
238
+ reject(new Error('The device returned an error: 0x' + buf.toString('hex')));
239
+ }
240
+ else {
241
+ resolve(buf);
242
+ }
243
+ }).catch(error => {
244
+ reject(error);
245
+ });
246
+ });
247
+ }
70
248
  }
71
249
  //# sourceMappingURL=wosmartlock.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"wosmartlock.js","sourceRoot":"","sources":["../../src/device/wosmartlock.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"wosmartlock.js","sourceRoot":"","sources":["../../src/device/wosmartlock.ts"],"names":[],"mappings":"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"}
package/dist/device.d.ts CHANGED
@@ -16,10 +16,10 @@ export declare class SwitchbotDevice {
16
16
  _READ_TIMEOUT_MSEC: number;
17
17
  _WRITE_TIMEOUT_MSEC: number;
18
18
  _COMMAND_TIMEOUT_MSEC: number;
19
- _id: string | undefined;
20
- _address: string | undefined;
21
- _model: string | undefined;
22
- _modelName: string | undefined;
19
+ _id: string | null;
20
+ _address: string | null;
21
+ _model: any;
22
+ _modelName: any;
23
23
  _was_connected_explicitly: boolean;
24
24
  _connected: boolean;
25
25
  _onconnect: () => void;
@@ -27,10 +27,10 @@ export declare class SwitchbotDevice {
27
27
  _ondisconnect_internal: () => void;
28
28
  _onnotify_internal: (buf: Buffer) => void;
29
29
  constructor(peripheral: Peripheral, noble: any);
30
- get id(): string | undefined;
31
- get address(): string | undefined;
32
- get model(): string | undefined;
33
- get modelName(): string | undefined;
30
+ get id(): string | null;
31
+ get address(): string | null;
32
+ get model(): any;
33
+ get modelName(): any;
34
34
  get connectionState(): "error" | "connected" | "connecting" | "disconnected" | "disconnecting";
35
35
  set onconnect(func: () => void);
36
36
  set ondisconnect(func: () => void);
@@ -1 +1 @@
1
- {"version":3,"file":"device.d.ts","sourceRoot":"","sources":["../src/device.ts"],"names":[],"mappings":";AAIA,OAAO,EAAE,cAAc,EAAE,UAAU,EAAE,OAAO,EAAE,MAAM,oBAAoB,CAAC;AAIzE,KAAK,KAAK,GAAG;IACX,KAAK,EAAE,cAAc,GAAG,IAAI,CAAC;IAC7B,MAAM,EAAE,cAAc,GAAG,IAAI,CAAC;IAC9B,MAAM,EAAE,cAAc,GAAG,IAAI,CAAC;CAC/B,GAAG,IAAI,CAAC;AAET,qBAAa,eAAe;IAC1B,WAAW,aAAC;IACZ,MAAM,MAAC;IACP,MAAM,EAAE,KAAK,CAAC;IACd,kBAAkB,SAAsC;IACxD,gBAAgB,SAAsC;IACtD,iBAAiB,SAAsC;IACvD,iBAAiB,SAAU;IAC3B,kBAAkB,SAAQ;IAC1B,mBAAmB,SAAQ;IAC3B,qBAAqB,SAAQ;IAC7B,GAAG,qBAAC;IACJ,QAAQ,qBAAC;IACT,MAAM,qBAAC;IACP,UAAU,qBAAC;IACX,yBAAyB,UAAC;IAC1B,UAAU,UAAC;IACX,UAAU,EAAE,MAAM,IAAI,CAAC;IACvB,aAAa,EAAE,MAAM,IAAI,CAAC;IAC1B,sBAAsB,EAAE,MAAM,IAAI,CAAC;IACnC,kBAAkB,EAAE,CAAC,GAAG,EAAE,MAAM,KAAK,IAAI,CAAC;gBAS9B,UAAU,EAAE,UAAU,EAAE,KAAK,EAAE,GAAG;IAsB9C,IAAI,EAAE,uBAEL;IAED,IAAI,OAAO,uBAEV;IAED,IAAI,KAAK,uBAER;IAED,IAAI,SAAS,uBAEZ;IAED,IAAI,eAAe,4EAMlB;IAGD,IAAI,SAAS,CAAC,IAAI,EAAE,MAAM,IAAI,EAK7B;IAED,IAAI,YAAY,CAAC,IAAI,EAAE,MAAM,IAAI,EAKhC;IAaD,OAAO;IAKP,QAAQ;IA4DR,mBAAmB,IAAI,OAAO,CAAC,KAAK,CAAC;IAsErC,iBAAiB;IAwBjB,wBAAwB,CAAC,OAAO,EAAE,OAAO;IAYzC,UAAU;IAoBV,YAAY;IAyBZ,UAAU;IAyBV,WAAW;IAqBX,aAAa;IAwCb,aAAa,CAAC,IAAI,EAAE,MAAM;IA4C1B,QAAQ,CAAC,OAAO,EAAE,MAAM;IAgCxB,oBAAoB;IAoBpB,KAAK,CAAC,IAAI,EAAE,cAAc;IAuB1B,MAAM,CAAC,IAAI,EAAE,cAAc,EAAE,GAAG,EAAE,MAAM;CAqBzC"}
1
+ {"version":3,"file":"device.d.ts","sourceRoot":"","sources":["../src/device.ts"],"names":[],"mappings":";AAIA,OAAO,EAAE,cAAc,EAAE,UAAU,EAAE,OAAO,EAAE,MAAM,oBAAoB,CAAC;AAIzE,KAAK,KAAK,GAAG;IACX,KAAK,EAAE,cAAc,GAAG,IAAI,CAAC;IAC7B,MAAM,EAAE,cAAc,GAAG,IAAI,CAAC;IAC9B,MAAM,EAAE,cAAc,GAAG,IAAI,CAAC;CAC/B,GAAG,IAAI,CAAC;AAET,qBAAa,eAAe;IAC1B,WAAW,aAAC;IACZ,MAAM,MAAC;IACP,MAAM,EAAE,KAAK,CAAC;IACd,kBAAkB,SAAsC;IACxD,gBAAgB,SAAsC;IACtD,iBAAiB,SAAsC;IACvD,iBAAiB,SAAU;IAC3B,kBAAkB,SAAQ;IAC1B,mBAAmB,SAAQ;IAC3B,qBAAqB,SAAQ;IAC7B,GAAG,gBAAC;IACJ,QAAQ,gBAAC;IACT,MAAM,MAAC;IACP,UAAU,MAAC;IACX,yBAAyB,UAAC;IAC1B,UAAU,UAAC;IACX,UAAU,EAAE,MAAM,IAAI,CAAC;IACvB,aAAa,EAAE,MAAM,IAAI,CAAC;IAC1B,sBAAsB,EAAE,MAAM,IAAI,CAAC;IACnC,kBAAkB,EAAE,CAAC,GAAG,EAAE,MAAM,KAAK,IAAI,CAAC;gBAS9B,UAAU,EAAE,UAAU,EAAE,KAAK,EAAE,GAAG;IAuB9C,IAAI,EAAE,kBAEL;IAED,IAAI,OAAO,kBAEV;IAED,IAAI,KAAK,QAER;IAED,IAAI,SAAS,QAEZ;IAED,IAAI,eAAe,4EAMlB;IAGD,IAAI,SAAS,CAAC,IAAI,EAAE,MAAM,IAAI,EAK7B;IAED,IAAI,YAAY,CAAC,IAAI,EAAE,MAAM,IAAI,EAKhC;IAaD,OAAO;IAKP,QAAQ;IA4DR,mBAAmB,IAAI,OAAO,CAAC,KAAK,CAAC;IAsErC,iBAAiB;IAwBjB,wBAAwB,CAAC,OAAO,EAAE,OAAO;IAYzC,UAAU;IAoBV,YAAY;IAyBZ,UAAU;IAyBV,WAAW;IAqBX,aAAa;IAwCb,aAAa,CAAC,IAAI,EAAE,MAAM;IA4C1B,QAAQ,CAAC,OAAO,EAAE,MAAM;IAgCxB,oBAAoB;IAoBpB,KAAK,CAAC,IAAI,EAAE,cAAc;IAuB1B,MAAM,CAAC,IAAI,EAAE,cAAc,EAAE,GAAG,EAAE,MAAM;CAqBzC"}
package/dist/device.js CHANGED
@@ -35,10 +35,10 @@ export class SwitchbotDevice {
35
35
  this._chars = null;
36
36
  // Save the device information
37
37
  const ad = Advertising.parse(peripheral);
38
- this._id = ad?.id;
39
- this._address = ad?.address;
40
- this._model = ad?.serviceData.model;
41
- this._modelName = ad?.serviceData.modelName;
38
+ this._id = ad ? ad.id : null;
39
+ this._address = ad ? ad.address : null;
40
+ this._model = ad ? ad.serviceData.model : null;
41
+ this._modelName = ad ? ad.serviceData.modelName : null;
42
42
  this._was_connected_explicitly = false;
43
43
  this._connected = false;
44
44
  this._onconnect = () => { };
@@ -244,7 +244,7 @@ export class SwitchbotDevice {
244
244
  }
245
245
  _subscribe() {
246
246
  return new Promise((resolve, reject) => {
247
- const char = this._chars?.notify;
247
+ const char = this._chars ? this._chars.notify : null;
248
248
  if (!char) {
249
249
  reject(new Error('No notify characteristic was found.'));
250
250
  return;
@@ -263,7 +263,7 @@ export class SwitchbotDevice {
263
263
  }
264
264
  _unsubscribe() {
265
265
  return new Promise((resolve) => {
266
- const char = this._chars?.notify;
266
+ const char = this._chars ? this._chars.notify : null;
267
267
  if (!char) {
268
268
  resolve();
269
269
  return;
@@ -333,7 +333,7 @@ export class SwitchbotDevice {
333
333
  let name = '';
334
334
  this._connect()
335
335
  .then(() => {
336
- if (!this._chars?.device) {
336
+ if (!this._chars || !this._chars.device) {
337
337
  // Some models of Bot don't seem to support this characteristic UUID
338
338
  throw new Error('The device does not support the characteristic UUID 0x' +
339
339
  this._CHAR_UUID_DEVICE +
@@ -378,7 +378,7 @@ export class SwitchbotDevice {
378
378
  const buf = Buffer.from(name, 'utf8');
379
379
  this._connect()
380
380
  .then(() => {
381
- if (!this._chars?.device) {
381
+ if (!this._chars || !this._chars.device) {
382
382
  // Some models of Bot don't seem to support this characteristic UUID
383
383
  throw new Error('The device does not support the characteristic UUID 0x' +
384
384
  this._CHAR_UUID_DEVICE +
@@ -409,7 +409,7 @@ export class SwitchbotDevice {
409
409
  let res_buf;
410
410
  this._connect()
411
411
  .then(() => {
412
- if (!this._chars?.write) {
412
+ if (!this._chars || !this._chars.write) {
413
413
  return reject(new Error('No characteristics available.'));
414
414
  }
415
415
  return this._write(this._chars.write, req_buf);
@@ -1 +1 @@
1
- {"version":3,"file":"device.js","sourceRoot":"","sources":["../src/device.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"device.js","sourceRoot":"","sources":["../src/device.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"switchbot.d.ts","sourceRoot":"","sources":["../src/switchbot.ts"],"names":[],"mappings":"AAMA,OAAO,EAAE,eAAe,EAAE,MAAM,aAAa,CAAC;AAa9C,OAAO,EAAE,EAAE,EAAE,MAAM,kBAAkB,CAAC;AAEtC,OAAO,EAAE,UAAU,EAAE,MAAM,oBAAoB,CAAC;AAEhD,KAAK,MAAM,GAAG;IACZ,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,EAAE,CAAC,EAAE,MAAM,CAAC;IACZ,KAAK,CAAC,EAAE,KAAK,CAAC;IACd,KAAK,CAAC,EAAE,GAAG,CAAC;CACb,CAAA;AAED,qBAAa,SAAS;IACpB,OAAO,CAAC,KAAK,CAAgB;IAC7B,KAAK,CAAC,EAAE,GAAG,CAAC;IACZ,UAAU,CAAC,EAAE,CAAC,MAAM,EAAE,eAAe,KAAK,IAAI,CAAC;IAC/C,eAAe,CAAC,EAAE,CAAC,EAAE,EAAE,EAAE,KAAK,IAAI,CAAC;IACnC,KAAK,EAAE,CAAC,CAAC,OAAO,EAAE,MAAM,KAAK,IAAI,CAAC,GAAG,SAAS,CAAC;IAC/C,QAAQ,UAAS;IACjB,0BAA0B,SAAQ;IAClC,yBAAyB,UAAM;IAC/B,MAAM,CAAC,KAAK,EAAE,GAAG,CAAC;IAClB,MAAM,CAAC,KAAK,EAAE,GAAG,CAAC;gBAaN,MAAM,CAAC,EAAE,MAAM;IAKrB,IAAI,CAAC,MAAM,CAAC,EAAE,MAAM;IAqD1B,QAAQ,CAAC,MAAM,GAAE,MAAW;IAgHtB,KAAK;IAwCX,eAAe,CAAC,UAAU,EAAE,UAAU,EAAE,EAAE,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM;IAyDjE,iBAAiB,CAAC,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM;IA6EnD,SAAS,CAAC,MAAM,GAAE,MAAW;IAwF7B,QAAQ;IAgBR,IAAI,CAAC,IAAI,EAAE,MAAM;CAmBlB;AAED,OAAO,EAAE,eAAe,EAAE,CAAC"}
1
+ {"version":3,"file":"switchbot.d.ts","sourceRoot":"","sources":["../src/switchbot.ts"],"names":[],"mappings":"AAMA,OAAO,EAAE,eAAe,EAAE,MAAM,aAAa,CAAC;AAc9C,OAAO,EAAE,EAAE,EAAE,MAAM,kBAAkB,CAAC;AAEtC,OAAO,EAAE,UAAU,EAAE,MAAM,oBAAoB,CAAC;AAEhD,KAAK,MAAM,GAAG;IACZ,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,EAAE,CAAC,EAAE,MAAM,CAAC;IACZ,KAAK,CAAC,EAAE,KAAK,CAAC;IACd,KAAK,CAAC,EAAE,GAAG,CAAC;CACb,CAAA;AAED,qBAAa,SAAS;IACpB,OAAO,CAAC,KAAK,CAAgB;IAC7B,KAAK,CAAC,EAAE,GAAG,CAAC;IACZ,UAAU,CAAC,EAAE,CAAC,MAAM,EAAE,eAAe,KAAK,IAAI,CAAC;IAC/C,eAAe,CAAC,EAAE,CAAC,EAAE,EAAE,EAAE,KAAK,IAAI,CAAC;IACnC,KAAK,EAAE,CAAC,CAAC,OAAO,EAAE,MAAM,KAAK,IAAI,CAAC,GAAG,SAAS,CAAC;IAC/C,QAAQ,UAAS;IACjB,0BAA0B,SAAQ;IAClC,yBAAyB,UAAM;IAC/B,MAAM,CAAC,KAAK,EAAE,GAAG,CAAC;IAClB,MAAM,CAAC,KAAK,EAAE,GAAG,CAAC;gBAaN,MAAM,CAAC,EAAE,MAAM;IAKrB,IAAI,CAAC,MAAM,CAAC,EAAE,MAAM;IAqD1B,QAAQ,CAAC,MAAM,GAAE,MAAW;IAmHtB,KAAK;IAwCX,eAAe,CAAC,UAAU,EAAE,UAAU,EAAE,EAAE,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM;IAyDjE,iBAAiB,CAAC,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM;IA6EnD,SAAS,CAAC,MAAM,GAAE,MAAW;IA2F7B,QAAQ;IAkBR,IAAI,CAAC,IAAI,EAAE,MAAM;CAmBlB;AAED,OAAO,EAAE,eAAe,EAAE,CAAC"}
package/dist/switchbot.js CHANGED
@@ -16,6 +16,7 @@ import { WoHumi } from './device/wohumi.js';
16
16
  import { WoPlugMini } from './device/woplugmini.js';
17
17
  import { WoBulb } from './device/wobulb.js';
18
18
  import { WoStrip } from './device/wostrip.js';
19
+ import { WoSmartLock } from './device/wosmartlock.js';
19
20
  export class SwitchBot {
20
21
  ready;
21
22
  noble;
@@ -138,24 +139,25 @@ export class SwitchBot {
138
139
  // Initialize the noble object
139
140
  this._init()
140
141
  .then(() => {
142
+ if (this.noble == null) {
143
+ return reject(new Error('noble failed to initialize'));
144
+ }
141
145
  const peripherals = {};
142
146
  let timer = setTimeout(() => { }, 0);
143
147
  const finishDiscovery = () => {
144
148
  if (timer) {
145
149
  clearTimeout(timer);
146
150
  }
147
- this.noble?.removeAllListeners('discover');
148
- this.noble?.stopScanning();
151
+ this.noble.removeAllListeners('discover');
152
+ this.noble.stopScanning();
149
153
  const device_list = [];
150
154
  for (const addr in peripherals) {
151
155
  device_list.push(peripherals[addr]);
152
156
  }
153
- if (device_list.length) {
154
- resolve(device_list);
155
- }
157
+ resolve(device_list);
156
158
  };
157
159
  // Set a handler for the 'discover' event
158
- this.noble?.on('discover', (peripheral) => {
160
+ this.noble.on('discover', (peripheral) => {
159
161
  const device = this.getDeviceObject(peripheral, p.id, p.model);
160
162
  if (!device) {
161
163
  return;
@@ -171,7 +173,7 @@ export class SwitchBot {
171
173
  }
172
174
  });
173
175
  // Start scanning
174
- this.noble?.startScanning(this.PRIMARY_SERVICE_UUID_LIST, false, (error) => {
176
+ this.noble.startScanning(this.PRIMARY_SERVICE_UUID_LIST, false, (error) => {
175
177
  if (error) {
176
178
  reject(error);
177
179
  return;
@@ -195,7 +197,7 @@ export class SwitchBot {
195
197
  resolve();
196
198
  return;
197
199
  }
198
- this.noble?.once('stateChange', (state) => {
200
+ this.noble.once('stateChange', (state) => {
199
201
  switch (state) {
200
202
  case 'unsupported':
201
203
  case 'unauthorized':
@@ -256,7 +258,7 @@ export class SwitchBot {
256
258
  device = new WoPlugMini(peripheral, this.noble);
257
259
  break;
258
260
  case 'o':
259
- //device = new SwitchbotDeviceWoSmartLock(peripheral, this.noble);
261
+ device = new WoSmartLock(peripheral, this.noble);
260
262
  break;
261
263
  case 'i':
262
264
  device = new WoSensorTH(peripheral, this.noble);
@@ -387,13 +389,16 @@ export class SwitchBot {
387
389
  // Initialize the noble object
388
390
  this._init()
389
391
  .then(() => {
392
+ if (this.noble == null) {
393
+ return reject(new Error('noble object failed to initialize'));
394
+ }
390
395
  // Determine the values of the parameters
391
396
  const p = {
392
397
  model: params.model || '',
393
398
  id: params.id || '',
394
399
  };
395
400
  // Set a handler for the 'discover' event
396
- this.noble?.on('discover', (peripheral) => {
401
+ this.noble.on('discover', (peripheral) => {
397
402
  const ad = Advertising.parse(peripheral, this.onlog);
398
403
  if (this.filterAdvertising(ad, p.id, p.model)) {
399
404
  if (this.onadvertisement &&
@@ -403,7 +408,7 @@ export class SwitchBot {
403
408
  }
404
409
  });
405
410
  // Start scanning
406
- this.noble?.startScanning(this.PRIMARY_SERVICE_UUID_LIST, true, (error) => {
411
+ this.noble.startScanning(this.PRIMARY_SERVICE_UUID_LIST, true, (error) => {
407
412
  if (error) {
408
413
  reject(error);
409
414
  }
@@ -429,8 +434,10 @@ export class SwitchBot {
429
434
  * - none
430
435
  * ---------------------------------------------------------------- */
431
436
  stopScan() {
432
- this.noble?.removeAllListeners('discover');
433
- this.noble?.stopScanning();
437
+ if (this.noble == null)
438
+ return;
439
+ this.noble.removeAllListeners('discover');
440
+ this.noble.stopScanning();
434
441
  }
435
442
  /* ------------------------------------------------------------------
436
443
  * wait(msec) {
@@ -1 +1 @@
1
- {"version":3,"file":"switchbot.js","sourceRoot":"","sources":["../src/switchbot.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"switchbot.js","sourceRoot":"","sources":["../src/switchbot.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "node-switchbot",
3
- "version": "2.1.0-beta.0",
3
+ "version": "2.1.0-beta.1",
4
4
  "description": "The node-switchbot is a Node.js module which allows you to control your Switchbot Devices through Bluetooth (BLE).",
5
5
  "homepage": "https://github.com/OpenWonderLabs/node-switchbot",
6
6
  "author": "OpenWonderLabs (https://github.com/OpenWonderLabs)",