node-switchbot 2.1.2-beta.1 → 2.1.2-beta.11

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.
Files changed (75) hide show
  1. package/CHANGELOG.md +11 -1
  2. package/dist/advertising.d.ts +77 -44
  3. package/dist/advertising.d.ts.map +1 -1
  4. package/dist/advertising.js +59 -48
  5. package/dist/advertising.js.map +1 -1
  6. package/dist/device/woblindtilt.d.ts +4 -2
  7. package/dist/device/woblindtilt.d.ts.map +1 -1
  8. package/dist/device/woblindtilt.js +4 -2
  9. package/dist/device/woblindtilt.js.map +1 -1
  10. package/dist/device/wobulb.d.ts +4 -2
  11. package/dist/device/wobulb.d.ts.map +1 -1
  12. package/dist/device/wobulb.js +4 -2
  13. package/dist/device/wobulb.js.map +1 -1
  14. package/dist/device/wocontact.d.ts +4 -2
  15. package/dist/device/wocontact.d.ts.map +1 -1
  16. package/dist/device/wocontact.js +4 -2
  17. package/dist/device/wocontact.js.map +1 -1
  18. package/dist/device/wocurtain.d.ts +3 -1
  19. package/dist/device/wocurtain.d.ts.map +1 -1
  20. package/dist/device/wocurtain.js +6 -2
  21. package/dist/device/wocurtain.js.map +1 -1
  22. package/dist/device/wohand.d.ts +4 -2
  23. package/dist/device/wohand.d.ts.map +1 -1
  24. package/dist/device/wohand.js +4 -2
  25. package/dist/device/wohand.js.map +1 -1
  26. package/dist/device/wohub2.d.ts +6 -4
  27. package/dist/device/wohub2.d.ts.map +1 -1
  28. package/dist/device/wohub2.js +17 -14
  29. package/dist/device/wohub2.js.map +1 -1
  30. package/dist/device/wohumi.d.ts +4 -2
  31. package/dist/device/wohumi.d.ts.map +1 -1
  32. package/dist/device/wohumi.js +4 -2
  33. package/dist/device/wohumi.js.map +1 -1
  34. package/dist/device/woiosensorth.d.ts +4 -2
  35. package/dist/device/woiosensorth.d.ts.map +1 -1
  36. package/dist/device/woiosensorth.js +4 -2
  37. package/dist/device/woiosensorth.js.map +1 -1
  38. package/dist/device/woplugmini.d.ts +7 -4
  39. package/dist/device/woplugmini.d.ts.map +1 -1
  40. package/dist/device/woplugmini.js +7 -4
  41. package/dist/device/woplugmini.js.map +1 -1
  42. package/dist/device/wopresence.d.ts +4 -2
  43. package/dist/device/wopresence.d.ts.map +1 -1
  44. package/dist/device/wopresence.js +4 -2
  45. package/dist/device/wopresence.js.map +1 -1
  46. package/dist/device/wosensorth.d.ts +7 -4
  47. package/dist/device/wosensorth.d.ts.map +1 -1
  48. package/dist/device/wosensorth.js +7 -4
  49. package/dist/device/wosensorth.js.map +1 -1
  50. package/dist/device/wosmartlock.d.ts +6 -2
  51. package/dist/device/wosmartlock.d.ts.map +1 -1
  52. package/dist/device/wosmartlock.js +6 -2
  53. package/dist/device/wosmartlock.js.map +1 -1
  54. package/dist/device/wosmartlockpro.d.ts +50 -0
  55. package/dist/device/wosmartlockpro.d.ts.map +1 -0
  56. package/dist/device/wosmartlockpro.js +257 -0
  57. package/dist/device/wosmartlockpro.js.map +1 -0
  58. package/dist/device/wostrip.d.ts +4 -2
  59. package/dist/device/wostrip.d.ts.map +1 -1
  60. package/dist/device/wostrip.js +4 -2
  61. package/dist/device/wostrip.js.map +1 -1
  62. package/dist/device.d.ts +2 -2
  63. package/dist/device.d.ts.map +1 -1
  64. package/dist/index.d.ts +1 -0
  65. package/dist/index.d.ts.map +1 -1
  66. package/dist/index.js +1 -0
  67. package/dist/index.js.map +1 -1
  68. package/dist/switchbot.d.ts.map +1 -1
  69. package/dist/switchbot.js +71 -54
  70. package/dist/switchbot.js.map +1 -1
  71. package/dist/types.d.ts +228 -0
  72. package/dist/types.d.ts.map +1 -0
  73. package/dist/types.js +110 -0
  74. package/dist/types.js.map +1 -0
  75. package/package.json +8 -8
@@ -0,0 +1,50 @@
1
+ /// <reference types="node" />
2
+ import { SwitchbotDevice } from '../device.js';
3
+ import { SwitchBotBLEModel, SwitchBotBLEModelName, SwitchBotBLEModelFriendlyName } from '../types.js';
4
+ import Noble from '@stoprocent/noble';
5
+ export declare class WoSmartLockPro extends SwitchbotDevice {
6
+ _iv: Buffer | null;
7
+ _key_id: string;
8
+ _encryption_key: Buffer | null;
9
+ static COMMAND_GET_CK_IV: string;
10
+ static COMMAND_LOCK_INFO: string;
11
+ static COMMAND_UNLOCK: string;
12
+ static COMMAND_UNLOCK_NO_UNLATCH: string;
13
+ static COMMAND_LOCK: string;
14
+ static COMMAND_ENABLE_NOTIFICATIONS: string;
15
+ static COMMAND_DISABLE_NOTIFICATIONS: string;
16
+ static Result: {
17
+ ERROR: number;
18
+ SUCCESS: number;
19
+ SUCCESS_LOW_BATTERY: number;
20
+ };
21
+ static validateResponse(res: Buffer): number;
22
+ static getLockStatus(code: number): "LOCKED" | "UNLOCKED" | "LOCKING" | "UNLOCKING" | "LOCKING_STOP" | "UNLOCKING_STOP" | "NOT_FULLY_LOCKED" | "UNKNOWN";
23
+ static parseServiceData(serviceData: Buffer, manufacturerData: Buffer, onlog: ((message: string) => void) | undefined): {
24
+ model: SwitchBotBLEModel;
25
+ modelName: SwitchBotBLEModelName;
26
+ modelFriendlyName: SwitchBotBLEModelFriendlyName;
27
+ battery: number;
28
+ calibration: boolean;
29
+ status: string;
30
+ update_from_secondary_lock: boolean;
31
+ door_open: boolean;
32
+ double_lock_mode: boolean;
33
+ unclosed_alarm: boolean;
34
+ unlocked_alarm: boolean;
35
+ auto_lock_paused: boolean;
36
+ night_latch: boolean;
37
+ } | null;
38
+ constructor(peripheral: Noble.Peripheral, noble: typeof Noble);
39
+ setKey(keyId: string, encryptionKey: string): void;
40
+ unlock(): Promise<number>;
41
+ unlockNoUnlatch(): Promise<number>;
42
+ lock(): Promise<number>;
43
+ info(): Promise<unknown>;
44
+ _encrypt(str: string): string;
45
+ _decrypt(data: Buffer): Buffer;
46
+ _getIv(): Promise<Buffer>;
47
+ _encryptedCommand(key: string): Promise<Buffer>;
48
+ _operateLock(key: string, encrypt?: boolean): Promise<Buffer>;
49
+ }
50
+ //# sourceMappingURL=wosmartlockpro.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"wosmartlockpro.d.ts","sourceRoot":"","sources":["../../src/device/wosmartlockpro.ts"],"names":[],"mappings":";AAIA,OAAO,EAAE,eAAe,EAAE,MAAM,cAAc,CAAC;AAC/C,OAAO,EAAE,iBAAiB,EAAE,qBAAqB,EAAE,6BAA6B,EAAE,MAAM,aAAa,CAAC;AACtG,OAAO,KAAK,MAAM,mBAAmB,CAAC;AAGtC,qBAAa,cAAe,SAAQ,eAAe;IACjD,GAAG,EAAE,MAAM,GAAG,IAAI,CAAC;IACnB,OAAO,EAAE,MAAM,CAAC;IAChB,eAAe,EAAE,MAAM,GAAG,IAAI,CAAC;IAE/B,MAAM,CAAC,iBAAiB,SAAc;IACtC,MAAM,CAAC,iBAAiB,SAAgB;IACxC,MAAM,CAAC,cAAc,SAAoB;IACzC,MAAM,CAAC,yBAAyB,SAAoB;IACpD,MAAM,CAAC,YAAY,SAAoB;IACvC,MAAM,CAAC,4BAA4B,SAAsB;IACzD,MAAM,CAAC,6BAA6B,SAAU;IAE9C,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,WAAW,EAAE,MAAM,EAAE,gBAAgB,EAAE,MAAM,EAAE,KAAK,EAAE,CAAC,CAAC,OAAO,EAAE,MAAM,KAAK,IAAI,CAAC,GAAG,SAAS;;;;;;;;;;;;;;;gBA8CzG,UAAU,EAAE,KAAK,CAAC,UAAU,EAAE,KAAK,EAAE,OAAO,KAAK;IAiB7D,MAAM,CAAC,KAAK,EAAE,MAAM,EAAE,aAAa,EAAE,MAAM;IAiB3C,MAAM;IAsBN,eAAe;IAsBf,IAAI;IAsBJ,IAAI;IAkBJ,QAAQ,CAAC,GAAG,EAAE,MAAM;IAKpB,QAAQ,CAAC,IAAI,EAAE,MAAM;IAKf,MAAM,IAAI,OAAO,CAAC,MAAM,CAAC;IAQzB,iBAAiB,CAAC,GAAG,EAAE,MAAM;IAoBnC,YAAY,CAAC,GAAG,EAAE,MAAM,EAAE,OAAO,GAAE,OAAc,GAAG,OAAO,CAAC,MAAM,CAAC;CAwBpE"}
@@ -0,0 +1,257 @@
1
+ /*
2
+ * wosmartlock.ts: Switchbot BLE API registration.
3
+ * adapted off the work done by [pySwitchbot](https://github.com/Danielhiversen/pySwitchbot)
4
+ */
5
+ import { SwitchbotDevice } from '../device.js';
6
+ import { SwitchBotBLEModel, SwitchBotBLEModelName, SwitchBotBLEModelFriendlyName } from '../types.js';
7
+ import * as Crypto from 'crypto';
8
+ export class WoSmartLockPro extends SwitchbotDevice {
9
+ _iv;
10
+ _key_id;
11
+ _encryption_key;
12
+ static COMMAND_GET_CK_IV = '570f2103';
13
+ static COMMAND_LOCK_INFO = '570f4f8102';
14
+ static COMMAND_UNLOCK = '0f4e0101000180';
15
+ static COMMAND_UNLOCK_NO_UNLATCH = '570f4e010110a0';
16
+ static COMMAND_LOCK = '0f4e0101000100';
17
+ static COMMAND_ENABLE_NOTIFICATIONS = '0e01001e00008101';
18
+ static COMMAND_DISABLE_NOTIFICATIONS = '0e00';
19
+ static Result = {
20
+ ERROR: 0x00,
21
+ SUCCESS: 0x01,
22
+ SUCCESS_LOW_BATTERY: 0x06,
23
+ };
24
+ static validateResponse(res) {
25
+ if (res.length >= 3) {
26
+ switch (res.readUInt8(0)) {
27
+ case WoSmartLockPro.Result.SUCCESS:
28
+ return WoSmartLockPro.Result.SUCCESS;
29
+ case WoSmartLockPro.Result.SUCCESS_LOW_BATTERY:
30
+ return WoSmartLockPro.Result.SUCCESS_LOW_BATTERY;
31
+ }
32
+ }
33
+ return WoSmartLockPro.Result.ERROR;
34
+ }
35
+ static getLockStatus(code) {
36
+ switch (code) {
37
+ case 0b0000000:
38
+ return 'LOCKED';
39
+ case 0b0010000:
40
+ return 'UNLOCKED';
41
+ case 0b0100000:
42
+ return 'LOCKING';
43
+ case 0b0110000:
44
+ return 'UNLOCKING';
45
+ case 0b1000000:
46
+ return 'LOCKING_STOP';
47
+ case 0b1010000:
48
+ return 'UNLOCKING_STOP';
49
+ case 0b1100000: //Only EU lock type
50
+ return 'NOT_FULLY_LOCKED';
51
+ default:
52
+ return 'UNKNOWN';
53
+ }
54
+ }
55
+ static parseServiceData(serviceData, manufacturerData, onlog) {
56
+ if (manufacturerData.length < 11) {
57
+ if (onlog && typeof onlog === 'function') {
58
+ onlog(`[parseServiceDataForWoSmartLockPro] Buffer length ${manufacturerData.length} is too short!`);
59
+ }
60
+ return null;
61
+ }
62
+ // adv data needs both service data and manufacturer data
63
+ // byte var names based on documentation
64
+ const byte2 = serviceData.readUInt8(2);
65
+ const byte15 = manufacturerData.readUInt8(9);
66
+ const byte16 = manufacturerData.readUInt8(10);
67
+ const battery = byte2 & 0b01111111; // %
68
+ const calibration = byte15 & 0b10000000 ? true : false;
69
+ const status = WoSmartLockPro.getLockStatus(byte15 & 0b01110000);
70
+ const update_from_secondary_lock = byte15 & 0b00001000 ? true : false;
71
+ const door_open = byte15 & 0b00000100 ? true : false;
72
+ const double_lock_mode = byte16 & 0b10000000 ? true : false;
73
+ const unclosed_alarm = byte16 & 0b00100000 ? true : false;
74
+ const unlocked_alarm = byte16 & 0b00010000 ? true : false;
75
+ const auto_lock_paused = byte16 & 0b00000010 ? true : false;
76
+ const night_latch = manufacturerData.length > 11 && manufacturerData.readUInt8(11) & 0b00000001 ? true : false;
77
+ const data = {
78
+ model: SwitchBotBLEModel.LockPro,
79
+ modelName: SwitchBotBLEModelName.LockPro,
80
+ modelFriendlyName: SwitchBotBLEModelFriendlyName.LockPro,
81
+ battery: battery,
82
+ calibration: calibration,
83
+ status: status,
84
+ update_from_secondary_lock: update_from_secondary_lock,
85
+ door_open: door_open,
86
+ double_lock_mode: double_lock_mode,
87
+ unclosed_alarm: unclosed_alarm,
88
+ unlocked_alarm: unlocked_alarm,
89
+ auto_lock_paused: auto_lock_paused,
90
+ night_latch: night_latch,
91
+ };
92
+ return data;
93
+ }
94
+ constructor(peripheral, noble) {
95
+ super(peripheral, noble);
96
+ this._iv = null;
97
+ this._key_id = '';
98
+ this._encryption_key = null;
99
+ }
100
+ /* ------------------------------------------------------------------
101
+ * setKey()
102
+ * - initialise the encryption key info for valid lock communication, this currently must be retrived externally
103
+ *
104
+ * [Arguments]
105
+ * - keyId, encryptionKey
106
+ *
107
+ * [Return value]
108
+ * - void
109
+ * ---------------------------------------------------------------- */
110
+ setKey(keyId, encryptionKey) {
111
+ this._iv = null;
112
+ this._key_id = keyId;
113
+ this._encryption_key = Buffer.from(encryptionKey, 'hex');
114
+ }
115
+ /* ------------------------------------------------------------------
116
+ * unlock()
117
+ * - Unlock the Smart Lock
118
+ *
119
+ * [Arguments]
120
+ * - none
121
+ *
122
+ * [Return value]
123
+ * - Promise object
124
+ * WoSmartLockPro.LockResult will be passed to the `resolve()`.
125
+ * ---------------------------------------------------------------- */
126
+ unlock() {
127
+ return new Promise((resolve, reject) => {
128
+ this._operateLock(WoSmartLockPro.COMMAND_UNLOCK)
129
+ .then((resBuf) => {
130
+ resolve(WoSmartLockPro.validateResponse(resBuf));
131
+ }).catch((error) => {
132
+ reject(error);
133
+ });
134
+ });
135
+ }
136
+ /* ------------------------------------------------------------------
137
+ * unlockNoUnlatch()
138
+ * - Unlock the Smart Lock without unlatching door
139
+ *
140
+ * [Arguments]
141
+ * - none
142
+ *
143
+ * [Return value]
144
+ * - Promise object
145
+ * WoSmartLockPro.LockResult will be passed to the `resolve()`.
146
+ * ---------------------------------------------------------------- */
147
+ unlockNoUnlatch() {
148
+ return new Promise((resolve, reject) => {
149
+ this._operateLock(WoSmartLockPro.COMMAND_UNLOCK_NO_UNLATCH)
150
+ .then((resBuf) => {
151
+ resolve(WoSmartLockPro.validateResponse(resBuf));
152
+ }).catch((error) => {
153
+ reject(error);
154
+ });
155
+ });
156
+ }
157
+ /* ------------------------------------------------------------------
158
+ * lock()
159
+ * - Lock the Smart Lock
160
+ *
161
+ * [Arguments]
162
+ * - none
163
+ *
164
+ * [Return value]
165
+ * - Promise object
166
+ * WoSmartLockPro.LockResult will be passed to the `resolve()`.
167
+ * ---------------------------------------------------------------- */
168
+ lock() {
169
+ return new Promise((resolve, reject) => {
170
+ this._operateLock(WoSmartLockPro.COMMAND_LOCK)
171
+ .then((resBuf) => {
172
+ resolve(WoSmartLockPro.validateResponse(resBuf));
173
+ }).catch((error) => {
174
+ reject(error);
175
+ });
176
+ });
177
+ }
178
+ /* ------------------------------------------------------------------
179
+ * info()
180
+ * - Get general state info from the Smart Lock
181
+ *
182
+ * [Arguments]
183
+ * - none
184
+ *
185
+ * [Return value]
186
+ * - Promise object
187
+ * state object will be passed to the `resolve()`
188
+ * ---------------------------------------------------------------- */
189
+ info() {
190
+ return new Promise((resolve, reject) => {
191
+ this._operateLock(WoSmartLockPro.COMMAND_LOCK_INFO)
192
+ .then(resBuf => {
193
+ const data = {
194
+ 'calibration': Boolean(resBuf[1] & 0b10000000),
195
+ 'status': WoSmartLockPro.getLockStatus((resBuf[1] & 0b01110000)),
196
+ 'door_open': Boolean(resBuf[1] & 0b00000100),
197
+ 'unclosed_alarm': Boolean(resBuf[2] & 0b00100000),
198
+ 'unlocked_alarm': Boolean(resBuf[2] & 0b00010000),
199
+ };
200
+ resolve(data);
201
+ }).catch((error) => {
202
+ reject(error);
203
+ });
204
+ });
205
+ }
206
+ _encrypt(str) {
207
+ const cipher = Crypto.createCipheriv('aes-128-ctr', this._encryption_key, this._iv);
208
+ return Buffer.concat([cipher.update(str, 'hex'), cipher.final()]).toString('hex');
209
+ }
210
+ _decrypt(data) {
211
+ const decipher = Crypto.createDecipheriv('aes-128-ctr', this._encryption_key, this._iv);
212
+ return Buffer.concat([decipher.update(data), decipher.final()]);
213
+ }
214
+ async _getIv() {
215
+ if (this._iv === null) {
216
+ const res = await this._operateLock(WoSmartLockPro.COMMAND_GET_CK_IV + this._key_id, false);
217
+ this._iv = res.subarray(4);
218
+ }
219
+ return this._iv;
220
+ }
221
+ async _encryptedCommand(key) {
222
+ const iv = await this._getIv();
223
+ 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');
224
+ const bytes = await this._command(req);
225
+ const buf = Buffer.from(bytes);
226
+ const code = WoSmartLockPro.validateResponse(buf);
227
+ if (code !== WoSmartLockPro.Result.ERROR) {
228
+ return Buffer.concat([buf.subarray(0, 1), this._decrypt(buf.subarray(4))]);
229
+ }
230
+ else {
231
+ throw (new Error('The device returned an error: 0x' + buf.toString('hex')));
232
+ }
233
+ }
234
+ _operateLock(key, encrypt = true) {
235
+ //encrypted command
236
+ if (encrypt) {
237
+ return this._encryptedCommand(key);
238
+ }
239
+ //unencypted command
240
+ return new Promise((resolve, reject) => {
241
+ const req = Buffer.from(key.substring(0, 2) + '000000' + key.substring(2), 'hex');
242
+ this._command(req).then(bytes => {
243
+ const buf = Buffer.from(bytes);
244
+ const code = WoSmartLockPro.validateResponse(buf);
245
+ if (code === WoSmartLockPro.Result.ERROR) {
246
+ reject(new Error('The device returned an error: 0x' + buf.toString('hex')));
247
+ }
248
+ else {
249
+ resolve(buf);
250
+ }
251
+ }).catch(error => {
252
+ reject(error);
253
+ });
254
+ });
255
+ }
256
+ }
257
+ //# sourceMappingURL=wosmartlockpro.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"wosmartlockpro.js","sourceRoot":"","sources":["../../src/device/wosmartlockpro.ts"],"names":[],"mappings":"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"}
@@ -1,12 +1,14 @@
1
1
  /// <reference types="node" />
2
2
  import { SwitchbotDevice } from '../device.js';
3
+ import { SwitchBotBLEModel, SwitchBotBLEModelName, SwitchBotBLEModelFriendlyName } from '../types.js';
3
4
  /**
4
5
  * @see https://github.com/OpenWonderLabs/SwitchBotAPI-BLE/blob/latest/devicetypes/colorbulb.md
5
6
  */
6
7
  export declare class WoStrip extends SwitchbotDevice {
7
8
  static parseServiceData(buf: Buffer, onlog: ((message: string) => void) | undefined): {
8
- model: string;
9
- modelName: string;
9
+ model: SwitchBotBLEModel;
10
+ modelName: SwitchBotBLEModelName;
11
+ modelFriendlyName: SwitchBotBLEModelFriendlyName;
10
12
  state: boolean;
11
13
  brightness: number;
12
14
  red: number;
@@ -1 +1 @@
1
- {"version":3,"file":"wostrip.d.ts","sourceRoot":"","sources":["../../src/device/wostrip.ts"],"names":[],"mappings":";AAIA,OAAO,EAAE,eAAe,EAAE,MAAM,cAAc,CAAC;AAE/C;;GAEG;AACH,qBAAa,OAAQ,SAAQ,eAAe;IAC1C,MAAM,CAAC,gBAAgB,CAAC,GAAG,EAAE,MAAM,EAAE,KAAK,EAAE,CAAC,CAAC,OAAO,EAAE,MAAM,KAAK,IAAI,CAAC,GAAG,SAAS;;;;;;;;;;;;;;IAiDnF;;OAEG;IACH,SAAS;IAIT;;OAEG;IACH,SAAS,CAAC,YAAY,EAAE,MAAM,EAAE;IAKhC;;OAEG;IACH,MAAM;IAIN;;OAEG;IACH,OAAO;IAIP;;OAEG;IACH,aAAa,CAAC,UAAU,EAAE,MAAM;IAmBhC;;OAEG;IACH,mBAAmB,CAAC,iBAAiB,EAAE,OAAO;IAa9C;;OAEG;IACH,MAAM,CAAC,UAAU,EAAE,MAAM,EAAE,GAAG,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM;IAgEnE;;OAEG;IACH,WAAW,CAAC,KAAK,EAAE,MAAM,EAAE;CAgC5B"}
1
+ {"version":3,"file":"wostrip.d.ts","sourceRoot":"","sources":["../../src/device/wostrip.ts"],"names":[],"mappings":";AAIA,OAAO,EAAE,eAAe,EAAE,MAAM,cAAc,CAAC;AAC/C,OAAO,EAAE,iBAAiB,EAAE,qBAAqB,EAAE,6BAA6B,EAAE,MAAM,aAAa,CAAC;AAEtG;;GAEG;AACH,qBAAa,OAAQ,SAAQ,eAAe;IAC1C,MAAM,CAAC,gBAAgB,CAAC,GAAG,EAAE,MAAM,EAAE,KAAK,EAAE,CAAC,CAAC,OAAO,EAAE,MAAM,KAAK,IAAI,CAAC,GAAG,SAAS;;;;;;;;;;;;;;;IAkDnF;;OAEG;IACH,SAAS;IAIT;;OAEG;IACH,SAAS,CAAC,YAAY,EAAE,MAAM,EAAE;IAKhC;;OAEG;IACH,MAAM;IAIN;;OAEG;IACH,OAAO;IAIP;;OAEG;IACH,aAAa,CAAC,UAAU,EAAE,MAAM;IAmBhC;;OAEG;IACH,mBAAmB,CAAC,iBAAiB,EAAE,OAAO;IAa9C;;OAEG;IACH,MAAM,CAAC,UAAU,EAAE,MAAM,EAAE,GAAG,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM;IAgEnE;;OAEG;IACH,WAAW,CAAC,KAAK,EAAE,MAAM,EAAE;CAgC5B"}
@@ -3,6 +3,7 @@
3
3
  * wostrip.ts: Switchbot BLE API registration.
4
4
  */
5
5
  import { SwitchbotDevice } from '../device.js';
6
+ import { SwitchBotBLEModel, SwitchBotBLEModelName, SwitchBotBLEModelFriendlyName } from '../types.js';
6
7
  /**
7
8
  * @see https://github.com/OpenWonderLabs/SwitchBotAPI-BLE/blob/latest/devicetypes/colorbulb.md
8
9
  */
@@ -34,8 +35,9 @@ export class WoStrip extends SwitchbotDevice {
34
35
  const speed = byte9 & 0b01111111;
35
36
  const loop_index = byte10 & 0b11111110;
36
37
  const data = {
37
- model: 'r',
38
- modelName: 'WoStrip',
38
+ model: SwitchBotBLEModel.StripLight,
39
+ modelName: SwitchBotBLEModelName.StripLight,
40
+ modelFriendlyName: SwitchBotBLEModelFriendlyName.StripLight,
39
41
  state: state,
40
42
  brightness: brightness,
41
43
  red: red,
@@ -1 +1 @@
1
- {"version":3,"file":"wostrip.js","sourceRoot":"","sources":["../../src/device/wostrip.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"wostrip.js","sourceRoot":"","sources":["../../src/device/wostrip.ts"],"names":[],"mappings":"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"}
package/dist/device.d.ts CHANGED
@@ -19,7 +19,7 @@ export declare class SwitchbotDevice {
19
19
  _id: string | null;
20
20
  _address: string | null;
21
21
  _model: string | null;
22
- _modelName: string | null;
22
+ _modelName: import("./types.js").SwitchBotBLEModelName | null;
23
23
  _was_connected_explicitly: boolean;
24
24
  _connected: boolean;
25
25
  _onconnect: () => void;
@@ -30,7 +30,7 @@ export declare class SwitchbotDevice {
30
30
  get id(): string | null;
31
31
  get address(): string | null;
32
32
  get model(): string | null;
33
- get modelName(): string | null;
33
+ get modelName(): import("./types.js").SwitchBotBLEModelName | null;
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,KAAK,MAAM,mBAAmB,CAAC;AAItC,KAAK,KAAK,GAAG;IACX,KAAK,EAAE,KAAK,CAAC,cAAc,GAAG,IAAI,CAAC;IACnC,MAAM,EAAE,KAAK,CAAC,cAAc,GAAG,IAAI,CAAC;IACpC,MAAM,EAAE,KAAK,CAAC,cAAc,GAAG,IAAI,CAAC;CACrC,GAAG,IAAI,CAAC;AAET,qBAAa,eAAe;IAC1B,WAAW,mBAAC;IACZ,MAAM,eAAC;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,gBAAC;IACP,UAAU,gBAAC;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,KAAK,CAAC,UAAU,EAAE,KAAK,EAAE,OAAO,KAAK;IAuB7D,IAAI,EAAE,kBAEL;IAED,IAAI,OAAO,kBAEV;IAED,IAAI,KAAK,kBAER;IAED,IAAI,SAAS,kBAEZ;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,IAAI,OAAO,CAAC,KAAK,CAAC,OAAO,EAAE,CAAC;IAwB7C,wBAAwB,CAAC,OAAO,EAAE,KAAK,CAAC,OAAO,GAAG,OAAO,CAAC,KAAK,CAAC,cAAc,EAAE,CAAC;IAYjF,UAAU;IAoBV,YAAY;IAyBZ,UAAU;IAyBV,WAAW;IAmBX,aAAa;IAwCb,aAAa,CAAC,IAAI,EAAE,MAAM;IA4C1B,QAAQ,CAAC,OAAO,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC;IAgC1C,oBAAoB,IAAI,OAAO,CAAC,MAAM,CAAC;IAoBvC,KAAK,CAAC,IAAI,EAAE,KAAK,CAAC,cAAc,GAAG,OAAO,CAAC,MAAM,CAAC;IAuBlD,MAAM,CAAC,IAAI,EAAE,KAAK,CAAC,cAAc,EAAE,GAAG,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,GAAG,MAAM,CAAC;CAqBxE"}
1
+ {"version":3,"file":"device.d.ts","sourceRoot":"","sources":["../src/device.ts"],"names":[],"mappings":";AAIA,OAAO,KAAK,MAAM,mBAAmB,CAAC;AAItC,KAAK,KAAK,GAAG;IACX,KAAK,EAAE,KAAK,CAAC,cAAc,GAAG,IAAI,CAAC;IACnC,MAAM,EAAE,KAAK,CAAC,cAAc,GAAG,IAAI,CAAC;IACpC,MAAM,EAAE,KAAK,CAAC,cAAc,GAAG,IAAI,CAAC;CACrC,GAAG,IAAI,CAAC;AAET,qBAAa,eAAe;IAC1B,WAAW,mBAAC;IACZ,MAAM,eAAC;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,gBAAC;IACP,UAAU,oDAAC;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,KAAK,CAAC,UAAU,EAAE,KAAK,EAAE,OAAO,KAAK;IAuB7D,IAAI,EAAE,kBAEL;IAED,IAAI,OAAO,kBAEV;IAED,IAAI,KAAK,kBAER;IAED,IAAI,SAAS,sDAEZ;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,IAAI,OAAO,CAAC,KAAK,CAAC,OAAO,EAAE,CAAC;IAwB7C,wBAAwB,CAAC,OAAO,EAAE,KAAK,CAAC,OAAO,GAAG,OAAO,CAAC,KAAK,CAAC,cAAc,EAAE,CAAC;IAYjF,UAAU;IAoBV,YAAY;IAyBZ,UAAU;IAyBV,WAAW;IAmBX,aAAa;IAwCb,aAAa,CAAC,IAAI,EAAE,MAAM;IA4C1B,QAAQ,CAAC,OAAO,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC;IAgC1C,oBAAoB,IAAI,OAAO,CAAC,MAAM,CAAC;IAoBvC,KAAK,CAAC,IAAI,EAAE,KAAK,CAAC,cAAc,GAAG,OAAO,CAAC,MAAM,CAAC;IAuBlD,MAAM,CAAC,IAAI,EAAE,KAAK,CAAC,cAAc,EAAE,GAAG,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,GAAG,MAAM,CAAC;CAqBxE"}
package/dist/index.d.ts CHANGED
@@ -1,2 +1,3 @@
1
1
  export * from './switchbot.js';
2
+ export { SwitchBotBLEDevice, SwitchBotModel, SwitchBotBLEModel, SwitchBotBLEModelName, SwitchBotBLEModelFriendlyName } from './types.js';
2
3
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAIA,cAAc,gBAAgB,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAIA,cAAc,gBAAgB,CAAC;AAC/B,OAAO,EAAE,kBAAkB,EAAE,cAAc,EAAE,iBAAiB,EAAE,qBAAqB,EAAE,6BAA6B,EAAE,MAAM,YAAY,CAAC"}
package/dist/index.js CHANGED
@@ -3,4 +3,5 @@
3
3
  * index.ts: Switchbot BLE API registration.
4
4
  */
5
5
  export * from './switchbot.js';
6
+ export { SwitchBotModel, SwitchBotBLEModel, SwitchBotBLEModelName, SwitchBotBLEModelFriendlyName } from './types.js';
6
7
  //# sourceMappingURL=index.js.map
package/dist/index.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA;;;GAGG;AACH,cAAc,gBAAgB,CAAC"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA;;;GAGG;AACH,cAAc,gBAAgB,CAAC;AAC/B,OAAO,EAAsB,cAAc,EAAE,iBAAiB,EAAE,qBAAqB,EAAE,6BAA6B,EAAE,MAAM,YAAY,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"switchbot.d.ts","sourceRoot":"","sources":["../src/switchbot.ts"],"names":[],"mappings":"AAIA,OAAO,KAAK,MAAM,mBAAmB,CAAC;AAGtC,OAAO,EAAE,eAAe,EAAE,MAAM,aAAa,CAAC;AAc9C,OAAO,EAAE,EAAE,EAAE,MAAM,kBAAkB,CAAC;AAEtC,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,OAAO,KAAK,CAAC;CACtB,CAAA;AAED,qBAAa,SAAS;IACpB,OAAO,CAAC,KAAK,CAAgB;IAC7B,KAAK,EAAG,OAAO,KAAK,CAAC;IACrB,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,0BAA0B,SAAQ;IAClC,yBAAyB,UAAM;gBAanB,MAAM,CAAC,EAAE,MAAM;IAKrB,IAAI,CAAC,MAAM,CAAC,EAAE,MAAM;IAkD1B,QAAQ,CAAC,MAAM,GAAE,MAAW;IAmHtB,KAAK;IAwCX,eAAe,CAAC,UAAU,EAAE,KAAK,CAAC,UAAU,EAAE,EAAE,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM;IAyDvE,iBAAiB,CAAC,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM;IA6EnD,SAAS,CAAC,MAAM,GAAE,MAAW;IA2F7B,QAAQ;IAoBR,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":"AAIA,OAAO,KAAK,MAAM,mBAAmB,CAAC;AAGtC,OAAO,EAAE,eAAe,EAAE,MAAM,aAAa,CAAC;AAgB9C,OAAO,EAAE,EAAE,EAAE,MAAM,kBAAkB,CAAC;AAGtC,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,OAAO,KAAK,CAAC;CACtB,CAAA;AAED,qBAAa,SAAS;IACpB,OAAO,CAAC,KAAK,CAAgB;IAC7B,KAAK,EAAG,OAAO,KAAK,CAAC;IACrB,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,0BAA0B,SAAQ;IAClC,yBAAyB,UAAM;gBAanB,MAAM,CAAC,EAAE,MAAM;IAKrB,IAAI,CAAC,MAAM,CAAC,EAAE,MAAM;IAmD1B,QAAQ,CAAC,MAAM,GAAE,MAAW;IAqHtB,KAAK;IAwCX,eAAe,CAAC,UAAU,EAAE,KAAK,CAAC,UAAU,EAAE,EAAE,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM;IA+DvE,iBAAiB,CAAC,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM;IAgFnD,SAAS,CAAC,MAAM,GAAE,MAAW;IA6F7B,QAAQ;IAoBR,IAAI,CAAC,IAAI,EAAE,MAAM;CAmBlB;AAED,OAAO,EAAE,eAAe,EAAE,CAAC"}