node-switchbot 1.6.0-beta.3 → 1.6.0-beta.4
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/lib/switchbot-advertising.js +57 -57
- package/package.json +1 -1
|
@@ -371,23 +371,23 @@ class SwitchbotAdvertising {
|
|
|
371
371
|
return null;
|
|
372
372
|
}
|
|
373
373
|
|
|
374
|
-
|
|
375
|
-
|
|
376
|
-
|
|
377
|
-
|
|
378
|
-
|
|
379
|
-
|
|
380
|
-
|
|
381
|
-
|
|
382
|
-
|
|
383
|
-
|
|
384
|
-
|
|
385
|
-
|
|
386
|
-
|
|
387
|
-
|
|
388
|
-
|
|
389
|
-
|
|
390
|
-
|
|
374
|
+
let byte6 = buf.readUInt8(6);
|
|
375
|
+
let byte7 = buf.readUInt8(7);
|
|
376
|
+
let byte8 = buf.readUInt8(8);
|
|
377
|
+
let byte9 = buf.readUInt8(9);
|
|
378
|
+
let byte10 = buf.readUInt8(10);
|
|
379
|
+
|
|
380
|
+
|
|
381
|
+
let sequence_number = byte6;
|
|
382
|
+
let state = byte7 & 0b01111111 ? true : false;
|
|
383
|
+
let brightness = byte7 & 0b01111111;
|
|
384
|
+
let delay = byte8 & 0b10000000;
|
|
385
|
+
let preset = byte8 & 0b00001000;
|
|
386
|
+
let color_mode = byte8 & 0b00000111;
|
|
387
|
+
let speed = byte9 & 0b01111111;
|
|
388
|
+
let loop_index = byte10 & 0b11111110;
|
|
389
|
+
|
|
390
|
+
let data = {
|
|
391
391
|
model: "u",
|
|
392
392
|
modelName: "WoBulb",
|
|
393
393
|
sequence_number: sequence_number,
|
|
@@ -412,22 +412,22 @@ class SwitchbotAdvertising {
|
|
|
412
412
|
}
|
|
413
413
|
return null;
|
|
414
414
|
}
|
|
415
|
-
|
|
416
|
-
|
|
417
|
-
|
|
418
|
-
|
|
419
|
-
|
|
420
|
-
|
|
421
|
-
|
|
422
|
-
|
|
423
|
-
|
|
424
|
-
|
|
425
|
-
|
|
426
|
-
|
|
427
|
-
|
|
415
|
+
let byte9 = buf.readUInt8(9); // byte9: plug mini state; 0x00=off, 0x80=on
|
|
416
|
+
let byte10 = buf.readUInt8(10); // byte10: bit0: 0=no delay,1=delay, bit1:0=no timer, 1=timer; bit2:0=no sync time, 1=sync'ed time
|
|
417
|
+
let byte11 = buf.readUInt8(11); // byte11: wifi rssi
|
|
418
|
+
let byte12 = buf.readUInt8(12); // byte12: bit7: overload?
|
|
419
|
+
let byte13 = buf.readUInt8(13); // byte12[bit0~6] + byte13: current power value
|
|
420
|
+
|
|
421
|
+
let state = byte9 === 0x00 ? "off" : byte9 === 0x80 ? "on" : null;
|
|
422
|
+
let delay = !!(byte10 & 0b00000001);
|
|
423
|
+
let timer = !!(byte10 & 0b00000010);
|
|
424
|
+
let syncUtcTime = !!(byte10 & 0b00000100);
|
|
425
|
+
let wifiRssi = byte11;
|
|
426
|
+
let overload = !!(byte12 & 0b10000000);
|
|
427
|
+
let currentPower = (((byte12 & 0b01111111) << 8) + byte13) / 10; // in watt
|
|
428
428
|
// TODO: voltage ???
|
|
429
429
|
|
|
430
|
-
|
|
430
|
+
let data = {
|
|
431
431
|
model: "g",
|
|
432
432
|
modelName: "WoPlugMini",
|
|
433
433
|
state: state,
|
|
@@ -451,22 +451,22 @@ class SwitchbotAdvertising {
|
|
|
451
451
|
}
|
|
452
452
|
return null;
|
|
453
453
|
}
|
|
454
|
-
|
|
455
|
-
|
|
456
|
-
|
|
457
|
-
|
|
458
|
-
|
|
459
|
-
|
|
460
|
-
|
|
461
|
-
|
|
462
|
-
|
|
463
|
-
|
|
464
|
-
|
|
465
|
-
|
|
466
|
-
|
|
454
|
+
let byte9 = buf.readUInt8(9); // byte9: plug mini state; 0x00=off, 0x80=on
|
|
455
|
+
let byte10 = buf.readUInt8(10); // byte10: bit0: 0=no delay,1=delay, bit1:0=no timer, 1=timer; bit2:0=no sync time, 1=sync'ed time
|
|
456
|
+
let byte11 = buf.readUInt8(11); // byte11: wifi rssi
|
|
457
|
+
let byte12 = buf.readUInt8(12); // byte12: bit7: overload?
|
|
458
|
+
let byte13 = buf.readUInt8(13); // byte12[bit0~6] + byte13: current power value
|
|
459
|
+
|
|
460
|
+
let state = byte9 === 0x00 ? "off" : byte9 === 0x80 ? "on" : null;
|
|
461
|
+
let delay = !!(byte10 & 0b00000001);
|
|
462
|
+
let timer = !!(byte10 & 0b00000010);
|
|
463
|
+
let syncUtcTime = !!(byte10 & 0b00000100);
|
|
464
|
+
let wifiRssi = byte11;
|
|
465
|
+
let overload = !!(byte12 & 0b10000000);
|
|
466
|
+
let currentPower = (((byte12 & 0b01111111) << 8) + byte13) / 10; // in watt
|
|
467
467
|
// TODO: voltage ???
|
|
468
468
|
|
|
469
|
-
|
|
469
|
+
let data = {
|
|
470
470
|
model: "j",
|
|
471
471
|
modelName: "WoPlugMini",
|
|
472
472
|
state: state,
|
|
@@ -550,20 +550,20 @@ class SwitchbotAdvertising {
|
|
|
550
550
|
return null;
|
|
551
551
|
}
|
|
552
552
|
|
|
553
|
-
|
|
554
|
-
|
|
555
|
-
|
|
556
|
-
|
|
553
|
+
let byte7 = buf.readUInt8(7);
|
|
554
|
+
let byte8 = buf.readUInt8(8);
|
|
555
|
+
let byte9 = buf.readUInt8(9);
|
|
556
|
+
let byte10 = buf.readUInt8(10);
|
|
557
557
|
|
|
558
|
-
|
|
559
|
-
|
|
560
|
-
|
|
561
|
-
|
|
562
|
-
|
|
563
|
-
|
|
564
|
-
|
|
558
|
+
let state = byte7 & 0b10000000 ? true : false;
|
|
559
|
+
let lightLevel = byte7 & 0b01111111;
|
|
560
|
+
let delay = byte8 & 0b10000000;
|
|
561
|
+
let preset = byte8 & 0b00001000;
|
|
562
|
+
let color_mode = byte8 & 0b00000111;
|
|
563
|
+
let speed = byte9 & 0b01111111;
|
|
564
|
+
let loop_index = byte10 & 0b11111110;
|
|
565
565
|
|
|
566
|
-
|
|
566
|
+
let data = {
|
|
567
567
|
model: "r",
|
|
568
568
|
modelName: "WoStrip",
|
|
569
569
|
state: state,
|
package/package.json
CHANGED