node-switchbot 2.0.2-beta.3 → 2.0.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.
Files changed (56) hide show
  1. package/dist/advertising.d.ts +0 -155
  2. package/dist/advertising.d.ts.map +1 -1
  3. package/dist/advertising.js +28 -466
  4. package/dist/advertising.js.map +1 -1
  5. package/dist/device/woblindtilt.d.ts +9 -0
  6. package/dist/device/woblindtilt.d.ts.map +1 -1
  7. package/dist/device/woblindtilt.js +25 -0
  8. package/dist/device/woblindtilt.js.map +1 -1
  9. package/dist/device/wobulb.d.ts +16 -0
  10. package/dist/device/wobulb.d.ts.map +1 -1
  11. package/dist/device/wobulb.js +47 -0
  12. package/dist/device/wobulb.js.map +1 -1
  13. package/dist/device/wocontact.d.ts +12 -0
  14. package/dist/device/wocontact.d.ts.map +1 -1
  15. package/dist/device/wocontact.js +37 -0
  16. package/dist/device/wocontact.js.map +1 -1
  17. package/dist/device/wocurtain.d.ts +10 -0
  18. package/dist/device/wocurtain.d.ts.map +1 -1
  19. package/dist/device/wocurtain.js +30 -0
  20. package/dist/device/wocurtain.js.map +1 -1
  21. package/dist/device/wohand.d.ts +7 -0
  22. package/dist/device/wohand.d.ts.map +1 -1
  23. package/dist/device/wohand.js +21 -0
  24. package/dist/device/wohand.js.map +1 -1
  25. package/dist/device/wohumi.d.ts +7 -0
  26. package/dist/device/wohumi.d.ts.map +1 -1
  27. package/dist/device/wohumi.js +21 -0
  28. package/dist/device/wohumi.js.map +1 -1
  29. package/dist/device/woiosensorth.d.ts +11 -0
  30. package/dist/device/woiosensorth.d.ts.map +1 -1
  31. package/dist/device/woiosensorth.js +34 -0
  32. package/dist/device/woiosensorth.js.map +1 -1
  33. package/dist/device/woplugmini.d.ts +22 -0
  34. package/dist/device/woplugmini.d.ts.map +1 -1
  35. package/dist/device/woplugmini.js +66 -0
  36. package/dist/device/woplugmini.js.map +1 -1
  37. package/dist/device/wopresence.d.ts +12 -0
  38. package/dist/device/wopresence.d.ts.map +1 -1
  39. package/dist/device/wopresence.js +32 -0
  40. package/dist/device/wopresence.js.map +1 -1
  41. package/dist/device/wosensorth.d.ts +22 -0
  42. package/dist/device/wosensorth.d.ts.map +1 -1
  43. package/dist/device/wosensorth.js +54 -0
  44. package/dist/device/wosensorth.js.map +1 -1
  45. package/dist/device/wosmartlock.d.ts +17 -0
  46. package/dist/device/wosmartlock.d.ts.map +1 -0
  47. package/dist/device/wosmartlock.js +52 -0
  48. package/dist/device/wosmartlock.js.map +1 -0
  49. package/dist/device/wostrip.d.ts +15 -1
  50. package/dist/device/wostrip.d.ts.map +1 -1
  51. package/dist/device/wostrip.js +43 -1
  52. package/dist/device/wostrip.js.map +1 -1
  53. package/dist/switchbot.d.ts.map +1 -1
  54. package/dist/switchbot.js +2 -1
  55. package/dist/switchbot.js.map +1 -1
  56. package/package.json +2 -2
@@ -1,4 +1,18 @@
1
1
  import { Buffer } from 'buffer';
2
+ import { parseServiceDataForWoHand } from './device/wohand.js';
3
+ import { parseServiceDataForWoSensorTH } from './device/wosensorth.js';
4
+ import { parseServiceDataForWoHumi } from './device/wohumi.js';
5
+ import { parseServiceDataForWoPresence } from './device/wopresence.js';
6
+ import { parseServiceDataForWoContact } from './device/wocontact.js';
7
+ import { parseServiceDataForWoCurtain } from './device/wocurtain.js';
8
+ import { parseServiceDataForWoBlindTilt } from './device/woblindtilt.js';
9
+ import { parseServiceDataForWoBulb } from './device/wobulb.js';
10
+ import { parseServiceDataForWoPlugMiniUS } from './device/woplugmini.js';
11
+ import { parseServiceDataForWoPlugMiniJP } from './device/woplugmini.js';
12
+ import { parseServiceDataForWoSmartLock } from './device/wosmartlock.js';
13
+ import { parseServiceDataForWoSensorTHPlus } from './device/wosensorth.js';
14
+ import { parseServiceDataForWoStrip } from './device/wostrip.js';
15
+ import { parseServiceDataForWoIOSensorTH } from './device/woiosensorth.js';
2
16
  export class Advertising {
3
17
  constructor() { }
4
18
  /* ------------------------------------------------------------------
@@ -83,46 +97,46 @@ export class Advertising {
83
97
  const model = buf.slice(0, 1).toString('utf8');
84
98
  let sd;
85
99
  if (model === 'H') {
86
- sd = this.parseServiceDataForWoHand(buf, onlog); //WoHand
100
+ sd = parseServiceDataForWoHand(buf, onlog); //WoHand
87
101
  }
88
102
  else if (model === 'T') {
89
- sd = this.parseServiceDataForWoSensorTH(buf, onlog); //WoSensorTH
103
+ sd = parseServiceDataForWoSensorTH(buf, onlog); //WoSensorTH
90
104
  }
91
105
  else if (model === 'e') {
92
- sd = this.parseServiceDataForWoHumi(buf, onlog); //WoHumi
106
+ sd = parseServiceDataForWoHumi(buf, onlog); //WoHumi
93
107
  }
94
108
  else if (model === 's') {
95
- sd = this.parseServiceDataForWoPresence(manufacturerData, onlog); //WoPresence
109
+ sd = parseServiceDataForWoPresence(buf, onlog); //WoPresence
96
110
  }
97
111
  else if (model === 'd') {
98
- sd = this.parseServiceDataForWoContact(manufacturerData, onlog); //WoContact
112
+ sd = parseServiceDataForWoContact(buf, onlog); //WoContact
99
113
  }
100
114
  else if (model === 'c' || model === '{') {
101
- sd = this.parseServiceDataForWoCurtain(buf, onlog); // WoCurtain
115
+ sd = parseServiceDataForWoCurtain(buf, onlog); // WoCurtain
102
116
  }
103
117
  else if (model === 'x') {
104
- sd = this.parseServiceDataForWoBlindTilt(buf, onlog); // WoBlindTilt
118
+ sd = parseServiceDataForWoBlindTilt(buf, onlog); // WoBlindTilt
105
119
  }
106
120
  else if (model === 'u') {
107
- sd = this.parseServiceDataForWoBulb(manufacturerData, onlog); // WoBulb
121
+ sd = parseServiceDataForWoBulb(manufacturerData, onlog); // WoBulb
108
122
  }
109
123
  else if (model === 'g') {
110
- sd = this.parseServiceDataForWoPlugMiniUS(manufacturerData, onlog); // WoPlugMini (US)
124
+ sd = parseServiceDataForWoPlugMiniUS(manufacturerData, onlog); // WoPlugMini (US)
111
125
  }
112
126
  else if (model === 'j') {
113
- sd = this.parseServiceDataForWoPlugMiniJP(manufacturerData, onlog); // WoPlugMini (JP)
127
+ sd = parseServiceDataForWoPlugMiniJP(manufacturerData, onlog); // WoPlugMini (JP)
114
128
  }
115
129
  else if (model === 'o') {
116
- sd = this.parseServiceDataForWoSmartLock(manufacturerData, onlog); // WoSmartLock
130
+ sd = parseServiceDataForWoSmartLock(manufacturerData, onlog); // WoSmartLock
117
131
  }
118
132
  else if (model === 'i') {
119
- sd = this.parseServiceDataForWoSensorTHPlus(buf, onlog); // WoMeterPlus
133
+ sd = parseServiceDataForWoSensorTHPlus(buf, onlog); // WoMeterPlus
120
134
  }
121
135
  else if (model === 'r') {
122
- sd = this.parseServiceDataForWoStrip(buf, onlog); // WoStrip
136
+ sd = parseServiceDataForWoStrip(buf, onlog); // WoStrip
123
137
  }
124
138
  else if (model === 'w') {
125
- sd = this.parseServiceDataForWoIOSensorTH(buf, manufacturerData, onlog); // Indoor/Outdoor Thermo-Hygrometer
139
+ sd = parseServiceDataForWoIOSensorTH(buf, manufacturerData, onlog); // Indoor/Outdoor Thermo-Hygrometer
126
140
  }
127
141
  else {
128
142
  if (onlog && typeof onlog === 'function') {
@@ -164,457 +178,5 @@ export class Advertising {
164
178
  }
165
179
  return data;
166
180
  }
167
- static parseServiceDataForWoHand(buf, onlog) {
168
- if (buf.length !== 3) {
169
- if (onlog && typeof onlog === 'function') {
170
- onlog(`[parseServiceDataForWoHand] Buffer length ${buf.length} !== 3!`);
171
- }
172
- return null;
173
- }
174
- const byte1 = buf.readUInt8(1);
175
- const byte2 = buf.readUInt8(2);
176
- const mode = byte1 & 0b10000000 ? true : false; // Whether the light switch Add-on is used or not. 0 = press, 1 = switch
177
- const state = byte1 & 0b01000000 ? false : true; // Whether the switch status is ON or OFF. 0 = on, 1 = off
178
- const battery = byte2 & 0b01111111; // %
179
- const data = {
180
- model: 'H',
181
- modelName: 'WoHand',
182
- mode: mode,
183
- state: state,
184
- battery: battery,
185
- };
186
- return data;
187
- }
188
- static parseServiceDataForWoSensorTH(buf, onlog) {
189
- if (buf.length !== 6) {
190
- if (onlog && typeof onlog === 'function') {
191
- onlog(`[parseServiceDataForWoSensorTH] Buffer length ${buf.length} !== 6!`);
192
- }
193
- return null;
194
- }
195
- const byte2 = buf.readUInt8(2);
196
- const byte3 = buf.readUInt8(3);
197
- const byte4 = buf.readUInt8(4);
198
- const byte5 = buf.readUInt8(5);
199
- const temp_sign = byte4 & 0b10000000 ? 1 : -1;
200
- const temp_c = temp_sign * ((byte4 & 0b01111111) + (byte3 & 0b00001111) / 10);
201
- const temp_f = Math.round(((temp_c * 9 / 5) + 32) * 10) / 10;
202
- const data = {
203
- model: 'T',
204
- modelName: 'WoSensorTH',
205
- temperature: {
206
- c: temp_c,
207
- f: temp_f,
208
- },
209
- fahrenheit: byte5 & 0b10000000 ? true : false,
210
- humidity: byte5 & 0b01111111,
211
- battery: byte2 & 0b01111111,
212
- };
213
- return data;
214
- }
215
- static parseServiceDataForWoHumi(buf, onlog) {
216
- if (buf.length !== 8) {
217
- if (onlog && typeof onlog === 'function') {
218
- onlog(`[parseServiceDataForWoHumi] Buffer length ${buf.length} !== 8!`);
219
- }
220
- return null;
221
- }
222
- const byte1 = buf.readUInt8(1);
223
- const byte4 = buf.readUInt8(4);
224
- const onState = byte1 & 0b10000000 ? true : false; // 1 - on
225
- const autoMode = byte4 & 0b10000000 ? true : false; // 1 - auto
226
- const percentage = byte4 & 0b01111111; // 0-100%, 101/102/103 - Quick gear 1/2/3
227
- const data = {
228
- model: 'e',
229
- modelName: 'WoHumi',
230
- onState: onState,
231
- autoMode: autoMode,
232
- percentage: autoMode ? 0 : percentage,
233
- };
234
- return data;
235
- }
236
- static parseServiceDataForWoPresence(manufacturerData, onlog) {
237
- if (manufacturerData.length !== 6) {
238
- if (onlog && typeof onlog === 'function') {
239
- onlog(`[parseServiceDataForWoPresence] Buffer length ${manufacturerData.length} !== 6!`);
240
- }
241
- return null;
242
- }
243
- const byte1 = manufacturerData.readUInt8(1);
244
- const byte2 = manufacturerData.readUInt8(2);
245
- const byte5 = manufacturerData.readUInt8(5);
246
- const tested = byte1 & 0b10000000 ? true : false;
247
- const movement = byte1 & 0b01000000 ? true : false;
248
- const battery = byte2 & 0b01111111;
249
- const led = (byte5 & 0b00100000) >> 5;
250
- const iot = (byte5 & 0b00010000) >> 4;
251
- const sense_distance = (byte5 & 0b00001100) >> 2;
252
- const lightLevel = byte5 & 0b00000011;
253
- const is_light = byte5 & 0b00000010 ? true : false;
254
- const data = {
255
- model: 's',
256
- modelName: 'WoMotion',
257
- tested: tested,
258
- movement: movement,
259
- battery: battery,
260
- led: led,
261
- iot: iot,
262
- sense_distance: sense_distance,
263
- lightLevel: lightLevel === 1 ? 'dark' : lightLevel === 2 ? 'bright' : 'unknown',
264
- is_light: is_light,
265
- };
266
- return data;
267
- }
268
- static parseServiceDataForWoContact(manufacturerData, onlog) {
269
- if (manufacturerData.length !== 9) {
270
- if (onlog && typeof onlog === 'function') {
271
- onlog(`[parseServiceDataForWoContact] Buffer length ${manufacturerData.length} !== 9!`);
272
- }
273
- return null;
274
- }
275
- const byte1 = manufacturerData.readUInt8(1);
276
- const byte2 = manufacturerData.readUInt8(2);
277
- const byte3 = manufacturerData.readUInt8(3);
278
- const byte8 = manufacturerData.readUInt8(8);
279
- const hallState = (byte3 >> 1) & 0b00000011;
280
- const tested = byte1 & 0b10000000;
281
- const movement = byte1 & 0b01000000 ? true : false; // 1 - Movement detected
282
- const battery = byte2 & 0b01111111; // %
283
- const contact_open = (byte3 & 0b00000010) === 0b00000010;
284
- const contact_timeout = (byte3 & 0b00000100) === 0b00000100;
285
- const lightLevel = byte3 & 0b00000001;
286
- const button_count = byte8 & 0b00001111;
287
- const data = {
288
- model: 'd',
289
- modelName: 'WoContact',
290
- movement: movement,
291
- tested: tested,
292
- battery: battery,
293
- contact_open: contact_open,
294
- contact_timeout: contact_timeout,
295
- lightLevel: lightLevel === 0 ? 'dark' : 'bright',
296
- button_count: button_count,
297
- doorState: hallState === 0
298
- ? 'close'
299
- : hallState === 1
300
- ? 'open'
301
- : 'timeout no closed',
302
- };
303
- return data;
304
- }
305
- static parseServiceDataForWoCurtain(buf, onlog) {
306
- if (buf.length !== 5 && buf.length !== 6) {
307
- if (onlog && typeof onlog === 'function') {
308
- onlog(`[parseServiceDataForWoCurtain] Buffer length ${buf.length} !== 5 or 6!`);
309
- }
310
- return null;
311
- }
312
- const byte1 = buf.readUInt8(1);
313
- const byte2 = buf.readUInt8(2);
314
- const byte3 = buf.readUInt8(3);
315
- const byte4 = buf.readUInt8(4);
316
- const calibration = byte1 & 0b01000000 ? true : false; // Whether the calibration is compconsted
317
- const battery = byte2 & 0b01111111; // %
318
- const inMotion = byte3 & 0b10000000 ? true : false;
319
- const currPosition = byte3 & 0b01111111; // current positon %
320
- const lightLevel = (byte4 >> 4) & 0b00001111; // light sensor level (1-10)
321
- const deviceChain = byte4 & 0b00000111;
322
- const model = buf.slice(0, 1).toString('utf8');
323
- const data = {
324
- model: model,
325
- modelName: 'WoCurtain',
326
- calibration: calibration,
327
- battery: battery,
328
- inMotion: inMotion,
329
- position: currPosition,
330
- lightLevel: lightLevel,
331
- deviceChain: deviceChain,
332
- };
333
- return data;
334
- }
335
- static parseServiceDataForWoBlindTilt(buf, onlog) {
336
- if (buf.length !== 5 && buf.length !== 6) {
337
- if (onlog && typeof onlog === 'function') {
338
- onlog(`[parseServiceDataForWoBlindTilt] Buffer length ${buf.length} !== 5 or 6!`);
339
- }
340
- return null;
341
- }
342
- const byte1 = buf.readUInt8(1);
343
- const byte2 = buf.readUInt8(2);
344
- const calibration = byte1 & 0b00000001 ? true : false; // Whether the calibration is completed
345
- const battery = byte2 & 0b01111111; // %
346
- const inMotion = byte2 & 0b10000000 ? true : false;
347
- const tilt = byte2 & 0b01111111; // current tilt % (100 - _tilt) if reverse else _tilt,
348
- const lightLevel = (byte1 >> 4) & 0b00001111; // light sensor level (1-10)
349
- const data = {
350
- model: 'x',
351
- modelName: 'WoBlindTilt',
352
- calibration: calibration,
353
- battery: battery,
354
- inMotion: inMotion,
355
- tilt: tilt,
356
- lightLevel: lightLevel,
357
- };
358
- return data;
359
- }
360
- static parseServiceDataForWoBulb(manufacturerData, onlog) {
361
- if (manufacturerData.length !== 13) {
362
- if (onlog && typeof onlog === 'function') {
363
- onlog(`[parseServiceDataForWoBulb] Buffer length ${manufacturerData.length} !== 13!`);
364
- }
365
- return null;
366
- }
367
- const byte1 = manufacturerData.readUInt8(1); //power and light status
368
- //const byte2 = manufacturerData.readUInt8(2);//bulb brightness
369
- const byte3 = manufacturerData.readUInt8(3); //bulb R
370
- const byte4 = manufacturerData.readUInt8(4); //bulb G
371
- const byte5 = manufacturerData.readUInt8(5); //bulb B
372
- const byte6 = manufacturerData.readUInt8(6); //bulb temperature
373
- const byte7 = manufacturerData.readUInt8(7);
374
- const byte8 = manufacturerData.readUInt8(8);
375
- const byte9 = manufacturerData.readUInt8(9);
376
- const byte10 = manufacturerData.readUInt8(10); //bulb mode
377
- const power = byte1;
378
- const red = byte3;
379
- const green = byte4;
380
- const blue = byte5;
381
- const color_temperature = byte6;
382
- const state = byte7 & 0b01111111 ? true : false;
383
- const brightness = byte7 & 0b01111111;
384
- const delay = byte8 & 0b10000000;
385
- const preset = byte8 & 0b00001000;
386
- const color_mode = byte8 & 0b00000111;
387
- const speed = byte9 & 0b01111111;
388
- const loop_index = byte10 & 0b11111110;
389
- const data = {
390
- model: 'u',
391
- modelName: 'WoBulb',
392
- color_temperature: color_temperature,
393
- power: power,
394
- state: state,
395
- red: red,
396
- green: green,
397
- blue: blue,
398
- brightness: brightness,
399
- delay: delay,
400
- preset: preset,
401
- color_mode: color_mode,
402
- speed: speed,
403
- loop_index: loop_index,
404
- };
405
- return data;
406
- }
407
- static parseServiceDataForWoPlugMiniUS(manufacturerData, onlog) {
408
- if (manufacturerData.length !== 14) {
409
- if (onlog && typeof onlog === 'function') {
410
- onlog(`[parseServiceDataForWoPlugMiniUS] Buffer length ${manufacturerData.length} should be 14`);
411
- }
412
- return null;
413
- }
414
- const byte9 = manufacturerData.readUInt8(9); // byte9: plug mini state; 0x00=off, 0x80=on
415
- const byte10 = manufacturerData.readUInt8(10); // byte10: bit0: 0=no delay,1=delay, bit1:0=no timer, 1=timer; bit2:0=no sync time, 1=sync'ed time
416
- const byte11 = manufacturerData.readUInt8(11); // byte11: wifi rssi
417
- const byte12 = manufacturerData.readUInt8(12); // byte12: bit7: overload?
418
- const byte13 = manufacturerData.readUInt8(13); // byte12[bit0~6] + byte13: current power value
419
- const state = byte9 === 0x00 ? 'off' : byte9 === 0x80 ? 'on' : null;
420
- const delay = !!(byte10 & 0b00000001);
421
- const timer = !!(byte10 & 0b00000010);
422
- const syncUtcTime = !!(byte10 & 0b00000100);
423
- const wifiRssi = byte11;
424
- const overload = !!(byte12 & 0b10000000);
425
- const currentPower = (((byte12 & 0b01111111) << 8) + byte13) / 10; // in watt
426
- // TODO: voltage ???
427
- const data = {
428
- model: 'g',
429
- modelName: 'WoPlugMini',
430
- state: state,
431
- delay: delay,
432
- timer: timer,
433
- syncUtcTime: syncUtcTime,
434
- wifiRssi: wifiRssi,
435
- overload: overload,
436
- currentPower: currentPower,
437
- };
438
- return data;
439
- }
440
- static parseServiceDataForWoPlugMiniJP(manufacturerData, onlog) {
441
- if (manufacturerData.length !== 14) {
442
- if (onlog && typeof onlog === 'function') {
443
- onlog(`[parseServiceDataForWoPlugMiniJP] Buffer length ${manufacturerData.length} should be 14`);
444
- }
445
- return null;
446
- }
447
- const byte9 = manufacturerData.readUInt8(9); // byte9: plug mini state; 0x00=off, 0x80=on
448
- const byte10 = manufacturerData.readUInt8(10); // byte10: bit0: 0=no delay,1=delay, bit1:0=no timer, 1=timer; bit2:0=no sync time, 1=sync'ed time
449
- const byte11 = manufacturerData.readUInt8(11); // byte11: wifi rssi
450
- const byte12 = manufacturerData.readUInt8(12); // byte12: bit7: overload?
451
- const byte13 = manufacturerData.readUInt8(13); // byte12[bit0~6] + byte13: current power value
452
- const state = byte9 === 0x00 ? 'off' : byte9 === 0x80 ? 'on' : null;
453
- const delay = !!(byte10 & 0b00000001);
454
- const timer = !!(byte10 & 0b00000010);
455
- const syncUtcTime = !!(byte10 & 0b00000100);
456
- const wifiRssi = byte11;
457
- const overload = !!(byte12 & 0b10000000);
458
- const currentPower = (((byte12 & 0b01111111) << 8) + byte13) / 10; // in watt
459
- // TODO: voltage ???
460
- const data = {
461
- model: 'j',
462
- modelName: 'WoPlugMini',
463
- state: state,
464
- delay: delay,
465
- timer: timer,
466
- syncUtcTime: syncUtcTime,
467
- wifiRssi: wifiRssi,
468
- overload: overload,
469
- currentPower: currentPower,
470
- };
471
- return data;
472
- }
473
- static parseServiceDataForWoSmartLock(manufacturerData, onlog) {
474
- if (manufacturerData.length !== 6) {
475
- if (onlog && typeof onlog === 'function') {
476
- onlog(`[parseServiceDataForWoSmartLock] Buffer length ${manufacturerData.length} !== 6!`);
477
- }
478
- return null;
479
- }
480
- const byte2 = manufacturerData.readUInt8(2);
481
- const byte7 = manufacturerData.readUInt8(7);
482
- const byte8 = manufacturerData.readUInt8(8);
483
- const LockStatus = {
484
- LOCKED: 0b0000000,
485
- UNLOCKED: 0b0010000,
486
- LOCKING: 0b0100000,
487
- UNLOCKING: 0b0110000,
488
- LOCKING_STOP: 0b1000000,
489
- UNLOCKING_STOP: 0b1010000,
490
- NOT_FULLY_LOCKED: 0b1100000, //Only EU lock type
491
- };
492
- const battery = byte2 & 0b01111111; // %
493
- const calibration = byte7 & 0b10000000 ? true : false;
494
- const status = LockStatus[byte7 & 0b01110000];
495
- const update_from_secondary_lock = byte7 & 0b00001000 ? true : false;
496
- const door_open = byte7 & 0b00000100 ? true : false;
497
- const double_lock_mode = byte8 & 0b10000000 ? true : false;
498
- const unclosed_alarm = byte8 & 0b00100000 ? true : false;
499
- const unlocked_alarm = byte8 & 0b00010000 ? true : false;
500
- const auto_lock_paused = byte8 & 0b00000010 ? true : false;
501
- const data = {
502
- model: 'o',
503
- modelName: 'WoSmartLock',
504
- battery: battery,
505
- calibration: calibration,
506
- status: status,
507
- update_from_secondary_lock: update_from_secondary_lock,
508
- door_open: door_open,
509
- double_lock_mode: double_lock_mode,
510
- unclosed_alarm: unclosed_alarm,
511
- unlocked_alarm: unlocked_alarm,
512
- auto_lock_paused: auto_lock_paused,
513
- };
514
- return data;
515
- }
516
- static parseServiceDataForWoSensorTHPlus(buf, onlog) {
517
- if (buf.length !== 6) {
518
- if (onlog && typeof onlog === 'function') {
519
- onlog(`[parseServiceDataForWoSensorTHPlus] Buffer length ${buf.length} !== 6!`);
520
- }
521
- return null;
522
- }
523
- const byte2 = buf.readUInt8(2);
524
- const byte3 = buf.readUInt8(3);
525
- const byte4 = buf.readUInt8(4);
526
- const byte5 = buf.readUInt8(5);
527
- const temp_sign = byte4 & 0b10000000 ? 1 : -1;
528
- const temp_c = temp_sign * ((byte4 & 0b01111111) + (byte3 & 0b00001111) / 10);
529
- const temp_f = Math.round(((temp_c * 9 / 5) + 32) * 10) / 10;
530
- const data = {
531
- model: 'i',
532
- modelName: 'WoSensorTHPlus',
533
- temperature: {
534
- c: temp_c,
535
- f: temp_f,
536
- },
537
- fahrenheit: byte5 & 0b10000000 ? true : false,
538
- humidity: byte5 & 0b01111111,
539
- battery: byte2 & 0b01111111,
540
- };
541
- return data;
542
- }
543
- static parseServiceDataForWoStrip(buf, onlog) {
544
- if (buf.length !== 18) {
545
- if (onlog && typeof onlog === 'function') {
546
- onlog(`[parseServiceDataForWoStrip] Buffer length ${buf.length} !== 18!`);
547
- }
548
- return null;
549
- }
550
- //const byte1 = buf.readUInt8(1);//power and light status
551
- //const byte2 = buf.readUInt8(2);//bulb brightness
552
- const byte3 = buf.readUInt8(3); //bulb R
553
- const byte4 = buf.readUInt8(4); //bulb G
554
- const byte5 = buf.readUInt8(5); //bulb B
555
- const byte7 = buf.readUInt8(7);
556
- const byte8 = buf.readUInt8(8);
557
- const byte9 = buf.readUInt8(9);
558
- const byte10 = buf.readUInt8(10);
559
- const state = byte7 & 0b10000000 ? true : false;
560
- const brightness = byte7 & 0b01111111;
561
- const red = byte3;
562
- const green = byte4;
563
- const blue = byte5;
564
- const delay = byte8 & 0b10000000;
565
- const preset = byte8 & 0b00001000;
566
- const color_mode = byte8 & 0b00000111;
567
- const speed = byte9 & 0b01111111;
568
- const loop_index = byte10 & 0b11111110;
569
- const data = {
570
- model: 'r',
571
- modelName: 'WoStrip',
572
- state: state,
573
- brightness: brightness,
574
- red: red,
575
- green: green,
576
- blue: blue,
577
- delay: delay,
578
- preset: preset,
579
- color_mode: color_mode,
580
- speed: speed,
581
- loop_index: loop_index,
582
- };
583
- return data;
584
- }
585
- static parseServiceDataForWoIOSensorTH(serviceDataBuf, manufacturerDataBuf, onlog) {
586
- if (serviceDataBuf.length !== 3) {
587
- if (onlog && typeof onlog === 'function') {
588
- onlog(`[parseServiceDataForWoIOSensorTH] Service Data Buffer length ${serviceDataBuf.length} !== 3!`);
589
- }
590
- return null;
591
- }
592
- if (manufacturerDataBuf.length !== 14) {
593
- if (onlog && typeof onlog === 'function') {
594
- onlog(`[parseServiceDataForWoIOSensorTH] Manufacturer Data Buffer length ${manufacturerDataBuf.length} !== 14!`);
595
- }
596
- return null;
597
- }
598
- const mdByte10 = manufacturerDataBuf.readUInt8(10);
599
- const mdByte11 = manufacturerDataBuf.readUInt8(11);
600
- const mdByte12 = manufacturerDataBuf.readUInt8(12);
601
- const sdByte2 = serviceDataBuf.readUInt8(2);
602
- const temp_sign = mdByte11 & 0b10000000 ? 1 : -1;
603
- const temp_c = temp_sign * ((mdByte11 & 0b01111111) + (mdByte10 & 0b00001111) / 10);
604
- const temp_f = Math.round(((temp_c * 9 / 5) + 32) * 10) / 10;
605
- const data = {
606
- model: 'w',
607
- modelName: 'WoIOSensorTH',
608
- temperature: {
609
- c: temp_c,
610
- f: temp_f,
611
- },
612
- fahrenheit: mdByte12 & 0b10000000 ? true : false, // needs to be confirmed!
613
- humidity: mdByte12 & 0b01111111,
614
- battery: sdByte2 & 0b01111111,
615
- };
616
- console.log(data);
617
- return data;
618
- }
619
181
  }
620
182
  //# sourceMappingURL=advertising.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"advertising.js","sourceRoot":"","sources":["../src/advertising.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"advertising.js","sourceRoot":"","sources":["../src/advertising.ts"],"names":[],"mappings":"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"}
@@ -1,4 +1,13 @@
1
1
  import { SwitchbotDevice } from '../switchbot.js';
2
+ export declare function parseServiceDataForWoBlindTilt(buf: any, onlog: any): {
3
+ model: string;
4
+ modelName: string;
5
+ calibration: boolean;
6
+ battery: number;
7
+ inMotion: boolean;
8
+ tilt: number;
9
+ lightLevel: number;
10
+ } | null;
2
11
  export declare class WoBlindTilt extends SwitchbotDevice {
3
12
  open(): Promise<void>;
4
13
  close(): Promise<void>;
@@ -1 +1 @@
1
- {"version":3,"file":"woblindtilt.d.ts","sourceRoot":"","sources":["../../src/device/woblindtilt.ts"],"names":[],"mappings":"AAMA,OAAO,EAAE,eAAe,EAAE,MAAM,iBAAiB,CAAC;AAElD,qBAAa,WAAY,SAAQ,eAAe;IAY9C,IAAI;IAeJ,KAAK;IAeL,KAAK;IAeL,QAAQ,CAAC,OAAO,KAAA,EAAE,IAAI,KAAA;IAiCtB,iBAAiB,CAAC,KAAK,KAAA;CAqBxB"}
1
+ {"version":3,"file":"woblindtilt.d.ts","sourceRoot":"","sources":["../../src/device/woblindtilt.ts"],"names":[],"mappings":"AAMA,OAAO,EAAE,eAAe,EAAE,MAAM,iBAAiB,CAAC;AAElD,wBAAgB,8BAA8B,CAAC,GAAG,KAAA,EAAE,KAAK,KAAA;;;;;;;;SA6BxD;AAED,qBAAa,WAAY,SAAQ,eAAe;IAY9C,IAAI;IAeJ,KAAK;IAeL,KAAK;IAeL,QAAQ,CAAC,OAAO,KAAA,EAAE,IAAI,KAAA;IAiCtB,iBAAiB,CAAC,KAAK,KAAA;CAqBxB"}
@@ -4,6 +4,31 @@
4
4
  */
5
5
  import { Buffer } from 'buffer';
6
6
  import { SwitchbotDevice } from '../switchbot.js';
7
+ export function parseServiceDataForWoBlindTilt(buf, onlog) {
8
+ if (buf.length !== 5 && buf.length !== 6) {
9
+ if (onlog && typeof onlog === 'function') {
10
+ onlog(`[parseServiceDataForWoBlindTilt] Buffer length ${buf.length} !== 5 or 6!`);
11
+ }
12
+ return null;
13
+ }
14
+ const byte1 = buf.readUInt8(1);
15
+ const byte2 = buf.readUInt8(2);
16
+ const calibration = byte1 & 0b00000001 ? true : false; // Whether the calibration is completed
17
+ const battery = byte2 & 0b01111111; // %
18
+ const inMotion = byte2 & 0b10000000 ? true : false;
19
+ const tilt = byte2 & 0b01111111; // current tilt % (100 - _tilt) if reverse else _tilt,
20
+ const lightLevel = (byte1 >> 4) & 0b00001111; // light sensor level (1-10)
21
+ const data = {
22
+ model: 'x',
23
+ modelName: 'WoBlindTilt',
24
+ calibration: calibration,
25
+ battery: battery,
26
+ inMotion: inMotion,
27
+ tilt: tilt,
28
+ lightLevel: lightLevel,
29
+ };
30
+ return data;
31
+ }
7
32
  export class WoBlindTilt extends SwitchbotDevice {
8
33
  /* ------------------------------------------------------------------
9
34
  * open()
@@ -1 +1 @@
1
- {"version":3,"file":"woblindtilt.js","sourceRoot":"","sources":["../../src/device/woblindtilt.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"woblindtilt.js","sourceRoot":"","sources":["../../src/device/woblindtilt.ts"],"names":[],"mappings":"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"}