node-switchbot 2.0.2-beta.6 → 2.0.2-beta.8
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/dist/advertising.d.ts +155 -0
- package/dist/advertising.d.ts.map +1 -1
- package/dist/advertising.js +500 -64
- package/dist/advertising.js.map +1 -1
- package/dist/device/woblindtilt.d.ts +0 -9
- package/dist/device/woblindtilt.d.ts.map +1 -1
- package/dist/device/woblindtilt.js +0 -25
- package/dist/device/woblindtilt.js.map +1 -1
- package/dist/device/wobulb.d.ts +0 -16
- package/dist/device/wobulb.d.ts.map +1 -1
- package/dist/device/wobulb.js +0 -47
- package/dist/device/wobulb.js.map +1 -1
- package/dist/device/wocontact.d.ts +0 -13
- package/dist/device/wocontact.d.ts.map +1 -1
- package/dist/device/wocontact.js +0 -38
- package/dist/device/wocontact.js.map +1 -1
- package/dist/device/wocurtain.d.ts +0 -10
- package/dist/device/wocurtain.d.ts.map +1 -1
- package/dist/device/wocurtain.js +0 -30
- package/dist/device/wocurtain.js.map +1 -1
- package/dist/device/wohand.d.ts +0 -7
- package/dist/device/wohand.d.ts.map +1 -1
- package/dist/device/wohand.js +0 -21
- package/dist/device/wohand.js.map +1 -1
- package/dist/device/wohumi.d.ts +0 -7
- package/dist/device/wohumi.d.ts.map +1 -1
- package/dist/device/wohumi.js +0 -21
- package/dist/device/wohumi.js.map +1 -1
- package/dist/device/woiosensorth.d.ts +0 -11
- package/dist/device/woiosensorth.d.ts.map +1 -1
- package/dist/device/woiosensorth.js +0 -34
- package/dist/device/woiosensorth.js.map +1 -1
- package/dist/device/woplugmini.d.ts +0 -22
- package/dist/device/woplugmini.d.ts.map +1 -1
- package/dist/device/woplugmini.js +0 -66
- package/dist/device/woplugmini.js.map +1 -1
- package/dist/device/wopresence.d.ts +0 -12
- package/dist/device/wopresence.d.ts.map +1 -1
- package/dist/device/wopresence.js +0 -32
- package/dist/device/wopresence.js.map +1 -1
- package/dist/device/wosensorth.d.ts +0 -22
- package/dist/device/wosensorth.d.ts.map +1 -1
- package/dist/device/wosensorth.js +0 -54
- package/dist/device/wosensorth.js.map +1 -1
- package/dist/device/wostrip.d.ts +1 -15
- package/dist/device/wostrip.d.ts.map +1 -1
- package/dist/device/wostrip.js +1 -43
- package/dist/device/wostrip.js.map +1 -1
- package/dist/switchbot.d.ts.map +1 -1
- package/dist/switchbot.js +1 -2
- package/dist/switchbot.js.map +1 -1
- package/package.json +2 -2
- package/dist/device/wosmartlock.d.ts +0 -17
- package/dist/device/wosmartlock.d.ts.map +0 -1
- package/dist/device/wosmartlock.js +0 -52
- package/dist/device/wosmartlock.js.map +0 -1
|
@@ -4,31 +4,6 @@
|
|
|
4
4
|
*/
|
|
5
5
|
import { Buffer } from 'buffer';
|
|
6
6
|
import { SwitchbotDevice } from '../switchbot.js';
|
|
7
|
-
export function parseServiceDataForWoBlindTilt(manufacturerData, onlog) {
|
|
8
|
-
if (manufacturerData.length !== 5 && manufacturerData.length !== 6) {
|
|
9
|
-
if (onlog && typeof onlog === 'function') {
|
|
10
|
-
onlog(`[parseServiceDataForWoBlindTilt] Buffer length ${manufacturerData.length} !== 5 or 6!`);
|
|
11
|
-
}
|
|
12
|
-
return null;
|
|
13
|
-
}
|
|
14
|
-
const byte1 = manufacturerData.readUInt8(1);
|
|
15
|
-
const byte2 = manufacturerData.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 = Math.max(Math.min(byte2 & 0b01111111, 100), 0); // 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
|
-
}
|
|
32
7
|
export class WoBlindTilt extends SwitchbotDevice {
|
|
33
8
|
/* ------------------------------------------------------------------
|
|
34
9
|
* open()
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"woblindtilt.js","sourceRoot":"","sources":["../../src/device/woblindtilt.ts"],"names":[],"mappings":"AAAA;;;GAGG;AACH,OAAO,EAAE,MAAM,EAAE,MAAM,QAAQ,CAAC;AAEhC,OAAO,EAAE,eAAe,EAAE,MAAM,iBAAiB,CAAC;AAElD,MAAM,
|
|
1
|
+
{"version":3,"file":"woblindtilt.js","sourceRoot":"","sources":["../../src/device/woblindtilt.ts"],"names":[],"mappings":"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"}
|
package/dist/device/wobulb.d.ts
CHANGED
|
@@ -1,20 +1,4 @@
|
|
|
1
1
|
import { SwitchbotDevice } from '../switchbot.js';
|
|
2
|
-
export declare function parseServiceDataForWoBulb(manufacturerData: any, onlog: any): {
|
|
3
|
-
model: string;
|
|
4
|
-
modelName: string;
|
|
5
|
-
color_temperature: any;
|
|
6
|
-
power: any;
|
|
7
|
-
state: boolean;
|
|
8
|
-
red: any;
|
|
9
|
-
green: any;
|
|
10
|
-
blue: any;
|
|
11
|
-
brightness: number;
|
|
12
|
-
delay: number;
|
|
13
|
-
preset: number;
|
|
14
|
-
color_mode: number;
|
|
15
|
-
speed: number;
|
|
16
|
-
loop_index: number;
|
|
17
|
-
} | null;
|
|
18
2
|
/**
|
|
19
3
|
* @see https://github.com/OpenWonderLabs/SwitchBotAPI-BLE/blob/latest/devicetypes/colorbulb.md
|
|
20
4
|
*/
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"wobulb.d.ts","sourceRoot":"","sources":["../../src/device/wobulb.ts"],"names":[],"mappings":"AAMA,OAAO,EAAE,eAAe,EAAE,MAAM,iBAAiB,CAAC;AAElD
|
|
1
|
+
{"version":3,"file":"wobulb.d.ts","sourceRoot":"","sources":["../../src/device/wobulb.ts"],"names":[],"mappings":"AAMA,OAAO,EAAE,eAAe,EAAE,MAAM,iBAAiB,CAAC;AAElD;;GAEG;AACH,qBAAa,MAAO,SAAQ,eAAe;IACzC;;OAEG;IACH,SAAS;IAIT;;OAEG;IACH,SAAS,CAAC,YAAY,KAAA;IAKtB;;OAEG;IACH,MAAM;IAIN;;OAEG;IACH,OAAO;IAIP;;OAEG;IACH,aAAa,CAAC,UAAU,KAAA;IAmBxB;;OAEG;IACH,mBAAmB,CAAC,iBAAiB,KAAA;IAmBrC;;OAEG;IACH,MAAM,CAAC,UAAU,KAAA,EAAE,GAAG,KAAA,EAAE,KAAK,KAAA,EAAE,IAAI,KAAA;IAgEnC;;OAEG;IACH,WAAW,CAAC,KAAK,KAAA;CAgClB"}
|
package/dist/device/wobulb.js
CHANGED
|
@@ -4,53 +4,6 @@
|
|
|
4
4
|
*/
|
|
5
5
|
import { Buffer } from 'buffer';
|
|
6
6
|
import { SwitchbotDevice } from '../switchbot.js';
|
|
7
|
-
export function parseServiceDataForWoBulb(manufacturerData, onlog) {
|
|
8
|
-
if (manufacturerData.length !== 13) {
|
|
9
|
-
if (onlog && typeof onlog === 'function') {
|
|
10
|
-
onlog(`[parseServiceDataForWoBulb] Buffer length ${manufacturerData.length} !== 13!`);
|
|
11
|
-
}
|
|
12
|
-
return null;
|
|
13
|
-
}
|
|
14
|
-
const byte1 = manufacturerData.readUInt8(1); //power and light status
|
|
15
|
-
//const byte2 = manufacturerData.readUInt8(2);//bulb brightness
|
|
16
|
-
const byte3 = manufacturerData.readUInt8(3); //bulb R
|
|
17
|
-
const byte4 = manufacturerData.readUInt8(4); //bulb G
|
|
18
|
-
const byte5 = manufacturerData.readUInt8(5); //bulb B
|
|
19
|
-
const byte6 = manufacturerData.readUInt8(6); //bulb temperature
|
|
20
|
-
const byte7 = manufacturerData.readUInt8(7);
|
|
21
|
-
const byte8 = manufacturerData.readUInt8(8);
|
|
22
|
-
const byte9 = manufacturerData.readUInt8(9);
|
|
23
|
-
const byte10 = manufacturerData.readUInt8(10); //bulb mode
|
|
24
|
-
const power = byte1;
|
|
25
|
-
const red = byte3;
|
|
26
|
-
const green = byte4;
|
|
27
|
-
const blue = byte5;
|
|
28
|
-
const color_temperature = byte6;
|
|
29
|
-
const state = byte7 & 0b01111111 ? true : false;
|
|
30
|
-
const brightness = byte7 & 0b01111111;
|
|
31
|
-
const delay = byte8 & 0b10000000;
|
|
32
|
-
const preset = byte8 & 0b00001000;
|
|
33
|
-
const color_mode = byte8 & 0b00000111;
|
|
34
|
-
const speed = byte9 & 0b01111111;
|
|
35
|
-
const loop_index = byte10 & 0b11111110;
|
|
36
|
-
const data = {
|
|
37
|
-
model: 'u',
|
|
38
|
-
modelName: 'WoBulb',
|
|
39
|
-
color_temperature: color_temperature,
|
|
40
|
-
power: power,
|
|
41
|
-
state: state,
|
|
42
|
-
red: red,
|
|
43
|
-
green: green,
|
|
44
|
-
blue: blue,
|
|
45
|
-
brightness: brightness,
|
|
46
|
-
delay: delay,
|
|
47
|
-
preset: preset,
|
|
48
|
-
color_mode: color_mode,
|
|
49
|
-
speed: speed,
|
|
50
|
-
loop_index: loop_index,
|
|
51
|
-
};
|
|
52
|
-
return data;
|
|
53
|
-
}
|
|
54
7
|
/**
|
|
55
8
|
* @see https://github.com/OpenWonderLabs/SwitchBotAPI-BLE/blob/latest/devicetypes/colorbulb.md
|
|
56
9
|
*/
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"wobulb.js","sourceRoot":"","sources":["../../src/device/wobulb.ts"],"names":[],"mappings":"AAAA;;;GAGG;AACH,OAAO,EAAE,MAAM,EAAE,MAAM,QAAQ,CAAC;AAEhC,OAAO,EAAE,eAAe,EAAE,MAAM,iBAAiB,CAAC;AAElD
|
|
1
|
+
{"version":3,"file":"wobulb.js","sourceRoot":"","sources":["../../src/device/wobulb.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,17 +1,4 @@
|
|
|
1
1
|
import { SwitchbotDevice } from '../switchbot.js';
|
|
2
|
-
export declare function parseServiceDataForWoContact(buf: any, onlog: any): {
|
|
3
|
-
model: string;
|
|
4
|
-
modelName: string;
|
|
5
|
-
modelFriendlyName: string;
|
|
6
|
-
movement: boolean;
|
|
7
|
-
tested: number;
|
|
8
|
-
battery: number;
|
|
9
|
-
contact_open: boolean;
|
|
10
|
-
contact_timeout: boolean;
|
|
11
|
-
lightLevel: string;
|
|
12
|
-
button_count: number;
|
|
13
|
-
doorState: string;
|
|
14
|
-
} | null;
|
|
15
2
|
export declare class WoContact extends SwitchbotDevice {
|
|
16
3
|
}
|
|
17
4
|
//# sourceMappingURL=wocontact.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"wocontact.d.ts","sourceRoot":"","sources":["../../src/device/wocontact.ts"],"names":[],"mappings":"AAIA,OAAO,EAAE,eAAe,EAAE,MAAM,iBAAiB,CAAC;AAElD,
|
|
1
|
+
{"version":3,"file":"wocontact.d.ts","sourceRoot":"","sources":["../../src/device/wocontact.ts"],"names":[],"mappings":"AAIA,OAAO,EAAE,eAAe,EAAE,MAAM,iBAAiB,CAAC;AAElD,qBAAa,SAAU,SAAQ,eAAe;CAAG"}
|
package/dist/device/wocontact.js
CHANGED
|
@@ -3,44 +3,6 @@
|
|
|
3
3
|
* wocontact.ts: Switchbot BLE API registration.
|
|
4
4
|
*/
|
|
5
5
|
import { SwitchbotDevice } from '../switchbot.js';
|
|
6
|
-
export function parseServiceDataForWoContact(buf, onlog) {
|
|
7
|
-
if (buf.length !== 9) {
|
|
8
|
-
if (onlog && typeof onlog === 'function') {
|
|
9
|
-
onlog(`[parseServiceDataForWoContact] Buffer length ${buf.length} !== 9!`);
|
|
10
|
-
}
|
|
11
|
-
return null;
|
|
12
|
-
}
|
|
13
|
-
const byte1 = buf.readUInt8(1);
|
|
14
|
-
const byte2 = buf.readUInt8(2);
|
|
15
|
-
const byte3 = buf.readUInt8(3);
|
|
16
|
-
const byte8 = buf.readUInt8(8);
|
|
17
|
-
const hallState = (byte3 >> 1) & 0b00000011;
|
|
18
|
-
const tested = byte1 & 0b10000000;
|
|
19
|
-
const movement = byte1 & 0b01000000 ? true : false; // 1 - Movement detected
|
|
20
|
-
const battery = byte2 & 0b01111111; // %
|
|
21
|
-
const contact_open = (byte3 & 0b00000010) === 0b00000010;
|
|
22
|
-
const contact_timeout = (byte3 & 0b00000100) === 0b00000100;
|
|
23
|
-
const lightLevel = byte3 & 0b00000001;
|
|
24
|
-
const button_count = byte8 & 0b00001111;
|
|
25
|
-
const data = {
|
|
26
|
-
model: 'd',
|
|
27
|
-
modelName: 'WoContact',
|
|
28
|
-
modelFriendlyName: 'Curtain 3',
|
|
29
|
-
movement: movement,
|
|
30
|
-
tested: tested,
|
|
31
|
-
battery: battery,
|
|
32
|
-
contact_open: contact_open,
|
|
33
|
-
contact_timeout: contact_timeout,
|
|
34
|
-
lightLevel: lightLevel === 0 ? 'dark' : 'bright',
|
|
35
|
-
button_count: button_count,
|
|
36
|
-
doorState: hallState === 0
|
|
37
|
-
? 'close'
|
|
38
|
-
: hallState === 1
|
|
39
|
-
? 'open'
|
|
40
|
-
: 'timeout no closed',
|
|
41
|
-
};
|
|
42
|
-
return data;
|
|
43
|
-
}
|
|
44
6
|
export class WoContact extends SwitchbotDevice {
|
|
45
7
|
}
|
|
46
8
|
//# sourceMappingURL=wocontact.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"wocontact.js","sourceRoot":"","sources":["../../src/device/wocontact.ts"],"names":[],"mappings":"AAAA;;;GAGG;AACH,OAAO,EAAE,eAAe,EAAE,MAAM,iBAAiB,CAAC;AAElD,MAAM,
|
|
1
|
+
{"version":3,"file":"wocontact.js","sourceRoot":"","sources":["../../src/device/wocontact.ts"],"names":[],"mappings":"AAAA;;;GAGG;AACH,OAAO,EAAE,eAAe,EAAE,MAAM,iBAAiB,CAAC;AAElD,MAAM,OAAO,SAAU,SAAQ,eAAe;CAAG"}
|
|
@@ -1,14 +1,4 @@
|
|
|
1
1
|
import { SwitchbotDevice } from '../switchbot.js';
|
|
2
|
-
export declare function parseServiceDataForWoCurtain(buf: any, onlog: any): {
|
|
3
|
-
model: any;
|
|
4
|
-
modelName: string;
|
|
5
|
-
calibration: boolean;
|
|
6
|
-
battery: number;
|
|
7
|
-
inMotion: boolean;
|
|
8
|
-
position: number;
|
|
9
|
-
lightLevel: number;
|
|
10
|
-
deviceChain: number;
|
|
11
|
-
} | null;
|
|
12
2
|
export declare class WoCurtain extends SwitchbotDevice {
|
|
13
3
|
open(mode: any): Promise<unknown>;
|
|
14
4
|
close(mode: any): Promise<unknown>;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"wocurtain.d.ts","sourceRoot":"","sources":["../../src/device/wocurtain.ts"],"names":[],"mappings":"AAMA,OAAO,EAAE,eAAe,EAAE,MAAM,iBAAiB,CAAC;AAElD,
|
|
1
|
+
{"version":3,"file":"wocurtain.d.ts","sourceRoot":"","sources":["../../src/device/wocurtain.ts"],"names":[],"mappings":"AAMA,OAAO,EAAE,eAAe,EAAE,MAAM,iBAAiB,CAAC;AAElD,qBAAa,SAAU,SAAQ,eAAe;IAY5C,IAAI,CAAC,IAAI,KAAA;IAeT,KAAK,CAAC,IAAI,KAAA;IAeV,KAAK;IAgBL,QAAQ,CAAC,OAAO,KAAA,EAAE,IAAI,SAAO;IA6B7B,eAAe,CAAC,KAAK,KAAA;CAqBtB"}
|
package/dist/device/wocurtain.js
CHANGED
|
@@ -4,36 +4,6 @@
|
|
|
4
4
|
*/
|
|
5
5
|
import { Buffer } from 'buffer';
|
|
6
6
|
import { SwitchbotDevice } from '../switchbot.js';
|
|
7
|
-
export function parseServiceDataForWoCurtain(buf, onlog) {
|
|
8
|
-
if (buf.length !== 5 && buf.length !== 6) {
|
|
9
|
-
if (onlog && typeof onlog === 'function') {
|
|
10
|
-
onlog(`[parseServiceDataForWoCurtain] 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 byte3 = buf.readUInt8(3);
|
|
17
|
-
const byte4 = buf.readUInt8(4);
|
|
18
|
-
const calibration = byte1 & 0b01000000 ? true : false; // Whether the calibration is compconsted
|
|
19
|
-
const battery = byte2 & 0b01111111; // %
|
|
20
|
-
const inMotion = byte3 & 0b10000000 ? true : false;
|
|
21
|
-
const currPosition = byte3 & 0b01111111; // current positon %
|
|
22
|
-
const lightLevel = (byte4 >> 4) & 0b00001111; // light sensor level (1-10)
|
|
23
|
-
const deviceChain = byte4 & 0b00000111;
|
|
24
|
-
const model = buf.slice(0, 1).toString('utf8');
|
|
25
|
-
const data = {
|
|
26
|
-
model: model,
|
|
27
|
-
modelName: 'WoCurtain',
|
|
28
|
-
calibration: calibration,
|
|
29
|
-
battery: battery,
|
|
30
|
-
inMotion: inMotion,
|
|
31
|
-
position: currPosition,
|
|
32
|
-
lightLevel: lightLevel,
|
|
33
|
-
deviceChain: deviceChain,
|
|
34
|
-
};
|
|
35
|
-
return data;
|
|
36
|
-
}
|
|
37
7
|
export class WoCurtain extends SwitchbotDevice {
|
|
38
8
|
/* ------------------------------------------------------------------
|
|
39
9
|
* open()
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"wocurtain.js","sourceRoot":"","sources":["../../src/device/wocurtain.ts"],"names":[],"mappings":"AAAA;;;GAGG;AACH,OAAO,EAAE,MAAM,EAAE,MAAM,QAAQ,CAAC;AAEhC,OAAO,EAAE,eAAe,EAAE,MAAM,iBAAiB,CAAC;AAElD,MAAM,
|
|
1
|
+
{"version":3,"file":"wocurtain.js","sourceRoot":"","sources":["../../src/device/wocurtain.ts"],"names":[],"mappings":"AAAA;;;GAGG;AACH,OAAO,EAAE,MAAM,EAAE,MAAM,QAAQ,CAAC;AAEhC,OAAO,EAAE,eAAe,EAAE,MAAM,iBAAiB,CAAC;AAElD,MAAM,OAAO,SAAU,SAAQ,eAAe;IAC5C;;;;;;;;;;0EAUsE;IACtE,IAAI,CAAC,IAAI;QACP,OAAO,IAAI,CAAC,QAAQ,CAAC,CAAC,EAAE,IAAI,CAAC,CAAC;IAChC,CAAC;IAED;;;;;;;;;;0EAUsE;IACtE,KAAK,CAAC,IAAI;QACR,OAAO,IAAI,CAAC,QAAQ,CAAC,GAAG,EAAE,IAAI,CAAC,CAAC;IAClC,CAAC;IAED;;;;;;;;;;0EAUsE;IACtE,KAAK;QACH,OAAO,IAAI,CAAC,eAAe,CAAC,CAAC,IAAI,EAAE,IAAI,EAAE,IAAI,EAAE,IAAI,EAAE,IAAI,EAAE,IAAI,CAAC,CAAC,CAAC;IACpE,CAAC;IAED;;;;;;;;;;;0EAWsE;IACtE,QAAQ,CAAC,OAAO,EAAE,IAAI,GAAG,IAAI;QAC3B,IAAI,OAAO,OAAO,KAAK,QAAQ,EAAE,CAAC;YAChC,OAAO,IAAI,OAAO,CAAC,CAAC,OAAO,EAAE,MAAM,EAAE,EAAE;gBACrC,MAAM,CACJ,IAAI,KAAK,CACP,uDAAuD;oBACrD,OAAO,OAAO,CACjB,CACF,CAAC;YACJ,CAAC,CAAC,CAAC;QACL,CAAC;QACD,IAAI,OAAO,IAAI,KAAK,QAAQ,EAAE,CAAC;YAC7B,OAAO,IAAI,OAAO,CAAC,CAAC,OAAO,EAAE,MAAM,EAAE,EAAE;gBACrC,MAAM,CACJ,IAAI,KAAK,CAAC,yCAAyC,GAAG,OAAO,IAAI,CAAC,CACnE,CAAC;YACJ,CAAC,CAAC,CAAC;QACL,CAAC;QACD,IAAI,IAAI,GAAG,CAAC,EAAE,CAAC;YACb,IAAI,GAAG,IAAI,CAAC;QACd,CAAC;QACD,IAAI,OAAO,GAAG,GAAG,EAAE,CAAC;YAClB,OAAO,GAAG,GAAG,CAAC;QAChB,CAAC;aAAM,IAAI,OAAO,GAAG,CAAC,EAAE,CAAC;YACvB,OAAO,GAAG,CAAC,CAAC;QACd,CAAC;QACD,OAAO,IAAI,CAAC,eAAe,CAAC,CAAC,IAAI,EAAE,IAAI,EAAE,IAAI,EAAE,IAAI,EAAE,IAAI,EAAE,IAAI,EAAE,OAAO,CAAC,CAAC,CAAC;IAC7E,CAAC;IAED,eAAe,CAAC,KAAK;QACnB,OAAO,IAAI,OAAO,CAAO,CAAC,OAAO,EAAE,MAAM,EAAE,EAAE;YAC3C,MAAM,OAAO,GAAG,MAAM,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;YACnC,IAAI,CAAC,QAAQ,CAAC,OAAO,CAAC;iBACnB,IAAI,CAAC,CAAC,OAAgB,EAAE,EAAE;gBACzB,MAAM,IAAI,GAAI,OAAkB,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC;gBAC9C,IAAK,OAAkB,CAAC,MAAM,KAAK,CAAC,IAAI,IAAI,KAAK,IAAI,EAAE,CAAC;oBACtD,OAAO,EAAE,CAAC;gBACZ,CAAC;qBAAM,CAAC;oBACN,MAAM,CACJ,IAAI,KAAK,CACP,kCAAkC,GAAI,OAAkB,CAAC,QAAQ,CAAC,KAAK,CAAC,CACzE,CACF,CAAC;gBACJ,CAAC;YACH,CAAC,CAAC;iBACD,KAAK,CAAC,CAAC,KAAK,EAAE,EAAE;gBACf,MAAM,CAAC,KAAK,CAAC,CAAC;YAChB,CAAC,CAAC,CAAC;QACP,CAAC,CAAC,CAAC;IACL,CAAC;CACF"}
|
package/dist/device/wohand.d.ts
CHANGED
|
@@ -1,11 +1,4 @@
|
|
|
1
1
|
import { SwitchbotDevice } from '../switchbot.js';
|
|
2
|
-
export declare function parseServiceDataForWoHand(buf: any, onlog: any): {
|
|
3
|
-
model: string;
|
|
4
|
-
modelName: string;
|
|
5
|
-
mode: boolean;
|
|
6
|
-
state: boolean;
|
|
7
|
-
battery: number;
|
|
8
|
-
} | null;
|
|
9
2
|
export declare class WoHand extends SwitchbotDevice {
|
|
10
3
|
press(): Promise<void>;
|
|
11
4
|
turnOn(): Promise<void>;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"wohand.d.ts","sourceRoot":"","sources":["../../src/device/wohand.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,eAAe,EAAE,MAAM,iBAAiB,CAAC;AAElD,
|
|
1
|
+
{"version":3,"file":"wohand.d.ts","sourceRoot":"","sources":["../../src/device/wohand.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,eAAe,EAAE,MAAM,iBAAiB,CAAC;AAElD,qBAAa,MAAO,SAAQ,eAAe;IAYzC,KAAK;IAeL,MAAM;IAeN,OAAO;IAeP,IAAI;IAeJ,EAAE;IAIF,WAAW,CAAC,KAAK,KAAA;CAqBlB"}
|
package/dist/device/wohand.js
CHANGED
|
@@ -1,26 +1,5 @@
|
|
|
1
1
|
import { Buffer } from 'buffer';
|
|
2
2
|
import { SwitchbotDevice } from '../switchbot.js';
|
|
3
|
-
export function parseServiceDataForWoHand(buf, onlog) {
|
|
4
|
-
if (buf.length !== 3) {
|
|
5
|
-
if (onlog && typeof onlog === 'function') {
|
|
6
|
-
onlog(`[parseServiceDataForWoHand] Buffer length ${buf.length} !== 3!`);
|
|
7
|
-
}
|
|
8
|
-
return null;
|
|
9
|
-
}
|
|
10
|
-
const byte1 = buf.readUInt8(1);
|
|
11
|
-
const byte2 = buf.readUInt8(2);
|
|
12
|
-
const mode = byte1 & 0b10000000 ? true : false; // Whether the light switch Add-on is used or not. 0 = press, 1 = switch
|
|
13
|
-
const state = byte1 & 0b01000000 ? false : true; // Whether the switch status is ON or OFF. 0 = on, 1 = off
|
|
14
|
-
const battery = byte2 & 0b01111111; // %
|
|
15
|
-
const data = {
|
|
16
|
-
model: 'H',
|
|
17
|
-
modelName: 'WoHand',
|
|
18
|
-
mode: mode,
|
|
19
|
-
state: state,
|
|
20
|
-
battery: battery,
|
|
21
|
-
};
|
|
22
|
-
return data;
|
|
23
|
-
}
|
|
24
3
|
export class WoHand extends SwitchbotDevice {
|
|
25
4
|
/* ------------------------------------------------------------------
|
|
26
5
|
* press()
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"wohand.js","sourceRoot":"","sources":["../../src/device/wohand.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,EAAE,MAAM,QAAQ,CAAC;AAEhC,OAAO,EAAE,eAAe,EAAE,MAAM,iBAAiB,CAAC;AAElD,MAAM,
|
|
1
|
+
{"version":3,"file":"wohand.js","sourceRoot":"","sources":["../../src/device/wohand.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,EAAE,MAAM,QAAQ,CAAC;AAEhC,OAAO,EAAE,eAAe,EAAE,MAAM,iBAAiB,CAAC;AAElD,MAAM,OAAO,MAAO,SAAQ,eAAe;IACzC;;;;;;;;;;0EAUsE;IACtE,KAAK;QACH,OAAO,IAAI,CAAC,WAAW,CAAC,CAAC,IAAI,EAAE,IAAI,EAAE,IAAI,CAAC,CAAC,CAAC;IAC9C,CAAC;IAED;;;;;;;;;;0EAUsE;IACtE,MAAM;QACJ,OAAO,IAAI,CAAC,WAAW,CAAC,CAAC,IAAI,EAAE,IAAI,EAAE,IAAI,CAAC,CAAC,CAAC;IAC9C,CAAC;IAED;;;;;;;;;;0EAUsE;IACtE,OAAO;QACL,OAAO,IAAI,CAAC,WAAW,CAAC,CAAC,IAAI,EAAE,IAAI,EAAE,IAAI,CAAC,CAAC,CAAC;IAC9C,CAAC;IAED;;;;;;;;;;0EAUsE;IACtE,IAAI;QACF,OAAO,IAAI,CAAC,WAAW,CAAC,CAAC,IAAI,EAAE,IAAI,EAAE,IAAI,CAAC,CAAC,CAAC;IAC9C,CAAC;IAED;;;;;;;;;;0EAUsE;IACtE,EAAE;QACA,OAAO,IAAI,CAAC,WAAW,CAAC,CAAC,IAAI,EAAE,IAAI,EAAE,IAAI,CAAC,CAAC,CAAC;IAC9C,CAAC;IAED,WAAW,CAAC,KAAK;QACf,OAAO,IAAI,OAAO,CAAO,CAAC,OAAO,EAAE,MAAM,EAAE,EAAE;YAC3C,MAAM,OAAO,GAAG,MAAM,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;YACnC,IAAI,CAAC,QAAQ,CAAC,OAAO,CAAC;iBACnB,IAAI,CAAC,CAAC,OAAgB,EAAE,EAAE;gBACzB,MAAM,IAAI,GAAI,OAAkB,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC;gBAC9C,IAAK,OAAkB,CAAC,MAAM,KAAK,CAAC,IAAI,CAAC,IAAI,KAAK,IAAI,IAAI,IAAI,KAAK,IAAI,CAAC,EAAE,CAAC;oBACzE,OAAO,EAAE,CAAC;gBACZ,CAAC;qBAAM,CAAC;oBACN,MAAM,CACJ,IAAI,KAAK,CACP,kCAAkC,GAAI,OAAkB,CAAC,QAAQ,CAAC,KAAK,CAAC,CACzE,CACF,CAAC;gBACJ,CAAC;YACH,CAAC,CAAC;iBACD,KAAK,CAAC,CAAC,KAAK,EAAE,EAAE;gBACf,MAAM,CAAC,KAAK,CAAC,CAAC;YAChB,CAAC,CAAC,CAAC;QACP,CAAC,CAAC,CAAC;IACL,CAAC;CACF"}
|
package/dist/device/wohumi.d.ts
CHANGED
|
@@ -1,11 +1,4 @@
|
|
|
1
1
|
import { SwitchbotDevice } from '../switchbot.js';
|
|
2
|
-
export declare function parseServiceDataForWoHumi(buf: any, onlog: any): {
|
|
3
|
-
model: string;
|
|
4
|
-
modelName: string;
|
|
5
|
-
onState: boolean;
|
|
6
|
-
autoMode: boolean;
|
|
7
|
-
percentage: number;
|
|
8
|
-
} | null;
|
|
9
2
|
export declare class WoHumi extends SwitchbotDevice {
|
|
10
3
|
press(): Promise<void>;
|
|
11
4
|
turnOn(): Promise<void>;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"wohumi.d.ts","sourceRoot":"","sources":["../../src/device/wohumi.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,eAAe,EAAE,MAAM,iBAAiB,CAAC;AAElD,
|
|
1
|
+
{"version":3,"file":"wohumi.d.ts","sourceRoot":"","sources":["../../src/device/wohumi.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,eAAe,EAAE,MAAM,iBAAiB,CAAC;AAElD,qBAAa,MAAO,SAAQ,eAAe;IAYzC,KAAK;IAeL,MAAM;IAeN,OAAO;IAeP,IAAI;IAeJ,EAAE;IAIF,WAAW,CAAC,KAAK,KAAA;CAqBlB"}
|
package/dist/device/wohumi.js
CHANGED
|
@@ -1,26 +1,5 @@
|
|
|
1
1
|
import { Buffer } from 'buffer';
|
|
2
2
|
import { SwitchbotDevice } from '../switchbot.js';
|
|
3
|
-
export function parseServiceDataForWoHumi(buf, onlog) {
|
|
4
|
-
if (buf.length !== 8) {
|
|
5
|
-
if (onlog && typeof onlog === 'function') {
|
|
6
|
-
onlog(`[parseServiceDataForWoHumi] Buffer length ${buf.length} !== 8!`);
|
|
7
|
-
}
|
|
8
|
-
return null;
|
|
9
|
-
}
|
|
10
|
-
const byte1 = buf.readUInt8(1);
|
|
11
|
-
const byte4 = buf.readUInt8(4);
|
|
12
|
-
const onState = byte1 & 0b10000000 ? true : false; // 1 - on
|
|
13
|
-
const autoMode = byte4 & 0b10000000 ? true : false; // 1 - auto
|
|
14
|
-
const percentage = byte4 & 0b01111111; // 0-100%, 101/102/103 - Quick gear 1/2/3
|
|
15
|
-
const data = {
|
|
16
|
-
model: 'e',
|
|
17
|
-
modelName: 'WoHumi',
|
|
18
|
-
onState: onState,
|
|
19
|
-
autoMode: autoMode,
|
|
20
|
-
percentage: autoMode ? 0 : percentage,
|
|
21
|
-
};
|
|
22
|
-
return data;
|
|
23
|
-
}
|
|
24
3
|
export class WoHumi extends SwitchbotDevice {
|
|
25
4
|
/* ------------------------------------------------------------------
|
|
26
5
|
* press()
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"wohumi.js","sourceRoot":"","sources":["../../src/device/wohumi.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,EAAE,MAAM,QAAQ,CAAC;AAEhC,OAAO,EAAE,eAAe,EAAE,MAAM,iBAAiB,CAAC;AAElD,MAAM,
|
|
1
|
+
{"version":3,"file":"wohumi.js","sourceRoot":"","sources":["../../src/device/wohumi.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,EAAE,MAAM,QAAQ,CAAC;AAEhC,OAAO,EAAE,eAAe,EAAE,MAAM,iBAAiB,CAAC;AAElD,MAAM,OAAO,MAAO,SAAQ,eAAe;IACzC;;;;;;;;;;0EAUsE;IACtE,KAAK;QACH,OAAO,IAAI,CAAC,WAAW,CAAC,CAAC,IAAI,EAAE,IAAI,EAAE,IAAI,CAAC,CAAC,CAAC;IAC9C,CAAC;IAED;;;;;;;;;;0EAUsE;IACtE,MAAM;QACJ,OAAO,IAAI,CAAC,WAAW,CAAC,CAAC,IAAI,EAAE,IAAI,EAAE,IAAI,CAAC,CAAC,CAAC;IAC9C,CAAC;IAED;;;;;;;;;;0EAUsE;IACtE,OAAO;QACL,OAAO,IAAI,CAAC,WAAW,CAAC,CAAC,IAAI,EAAE,IAAI,EAAE,IAAI,CAAC,CAAC,CAAC;IAC9C,CAAC;IAED;;;;;;;;;;0EAUsE;IACtE,IAAI;QACF,OAAO,IAAI,CAAC,WAAW,CAAC,CAAC,IAAI,EAAE,IAAI,EAAE,IAAI,CAAC,CAAC,CAAC;IAC9C,CAAC;IAED;;;;;;;;;;0EAUsE;IACtE,EAAE;QACA,OAAO,IAAI,CAAC,WAAW,CAAC,CAAC,IAAI,EAAE,IAAI,EAAE,IAAI,CAAC,CAAC,CAAC;IAC9C,CAAC;IAED,WAAW,CAAC,KAAK;QACf,OAAO,IAAI,OAAO,CAAO,CAAC,OAAO,EAAE,MAAM,EAAE,EAAE;YAC3C,MAAM,OAAO,GAAG,MAAM,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;YACnC,IAAI,CAAC,QAAQ,CAAC,OAAO,CAAC;iBACnB,IAAI,CAAC,CAAC,OAAgB,EAAE,EAAE;gBACzB,MAAM,IAAI,GAAI,OAAkB,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC;gBAC9C,IAAK,OAAkB,CAAC,MAAM,KAAK,CAAC,IAAI,CAAC,IAAI,KAAK,IAAI,IAAI,IAAI,KAAK,IAAI,CAAC,EAAE,CAAC;oBACzE,OAAO,EAAE,CAAC;gBACZ,CAAC;qBAAM,CAAC;oBACN,MAAM,CACJ,IAAI,KAAK,CACP,kCAAkC,GAAI,OAAkB,CAAC,QAAQ,CAAC,KAAK,CAAC,CACzE,CACF,CAAC;gBACJ,CAAC;YACH,CAAC,CAAC;iBACD,KAAK,CAAC,CAAC,KAAK,EAAE,EAAE;gBACf,MAAM,CAAC,KAAK,CAAC,CAAC;YAChB,CAAC,CAAC,CAAC;QACP,CAAC,CAAC,CAAC;IACL,CAAC;CACF"}
|
|
@@ -1,15 +1,4 @@
|
|
|
1
1
|
import { SwitchbotDevice } from '../switchbot.js';
|
|
2
|
-
export declare function parseServiceDataForWoIOSensorTH(serviceDataBuf: any, manufacturerDataBuf: any, onlog: any): {
|
|
3
|
-
model: string;
|
|
4
|
-
modelName: string;
|
|
5
|
-
temperature: {
|
|
6
|
-
c: number;
|
|
7
|
-
f: number;
|
|
8
|
-
};
|
|
9
|
-
fahrenheit: boolean;
|
|
10
|
-
humidity: number;
|
|
11
|
-
battery: number;
|
|
12
|
-
} | null;
|
|
13
2
|
export declare class WoIOSensorTH extends SwitchbotDevice {
|
|
14
3
|
}
|
|
15
4
|
//# sourceMappingURL=woiosensorth.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"woiosensorth.d.ts","sourceRoot":"","sources":["../../src/device/woiosensorth.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,eAAe,EAAE,MAAM,iBAAiB,CAAC;AAElD,
|
|
1
|
+
{"version":3,"file":"woiosensorth.d.ts","sourceRoot":"","sources":["../../src/device/woiosensorth.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,eAAe,EAAE,MAAM,iBAAiB,CAAC;AAElD,qBAAa,YAAa,SAAQ,eAAe;CAAG"}
|
|
@@ -1,38 +1,4 @@
|
|
|
1
1
|
import { SwitchbotDevice } from '../switchbot.js';
|
|
2
|
-
export function parseServiceDataForWoIOSensorTH(serviceDataBuf, manufacturerDataBuf, onlog) {
|
|
3
|
-
if (serviceDataBuf.length !== 3) {
|
|
4
|
-
if (onlog && typeof onlog === 'function') {
|
|
5
|
-
onlog(`[parseServiceDataForWoIOSensorTH] Service Data Buffer length ${serviceDataBuf.length} !== 3!`);
|
|
6
|
-
}
|
|
7
|
-
return null;
|
|
8
|
-
}
|
|
9
|
-
if (manufacturerDataBuf.length !== 14) {
|
|
10
|
-
if (onlog && typeof onlog === 'function') {
|
|
11
|
-
onlog(`[parseServiceDataForWoIOSensorTH] Manufacturer Data Buffer length ${manufacturerDataBuf.length} !== 14!`);
|
|
12
|
-
}
|
|
13
|
-
return null;
|
|
14
|
-
}
|
|
15
|
-
const mdByte10 = manufacturerDataBuf.readUInt8(10);
|
|
16
|
-
const mdByte11 = manufacturerDataBuf.readUInt8(11);
|
|
17
|
-
const mdByte12 = manufacturerDataBuf.readUInt8(12);
|
|
18
|
-
const sdByte2 = serviceDataBuf.readUInt8(2);
|
|
19
|
-
const temp_sign = mdByte11 & 0b10000000 ? 1 : -1;
|
|
20
|
-
const temp_c = temp_sign * ((mdByte11 & 0b01111111) + (mdByte10 & 0b00001111) / 10);
|
|
21
|
-
const temp_f = Math.round(((temp_c * 9 / 5) + 32) * 10) / 10;
|
|
22
|
-
const data = {
|
|
23
|
-
model: 'w',
|
|
24
|
-
modelName: 'WoIOSensorTH',
|
|
25
|
-
temperature: {
|
|
26
|
-
c: temp_c,
|
|
27
|
-
f: temp_f,
|
|
28
|
-
},
|
|
29
|
-
fahrenheit: mdByte12 & 0b10000000 ? true : false, // needs to be confirmed!
|
|
30
|
-
humidity: mdByte12 & 0b01111111,
|
|
31
|
-
battery: sdByte2 & 0b01111111,
|
|
32
|
-
};
|
|
33
|
-
console.log(data);
|
|
34
|
-
return data;
|
|
35
|
-
}
|
|
36
2
|
export class WoIOSensorTH extends SwitchbotDevice {
|
|
37
3
|
}
|
|
38
4
|
//# sourceMappingURL=woiosensorth.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"woiosensorth.js","sourceRoot":"","sources":["../../src/device/woiosensorth.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,eAAe,EAAE,MAAM,iBAAiB,CAAC;AAElD,MAAM,
|
|
1
|
+
{"version":3,"file":"woiosensorth.js","sourceRoot":"","sources":["../../src/device/woiosensorth.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,eAAe,EAAE,MAAM,iBAAiB,CAAC;AAElD,MAAM,OAAO,YAAa,SAAQ,eAAe;CAAG"}
|
|
@@ -1,26 +1,4 @@
|
|
|
1
1
|
import { SwitchbotDevice } from '../switchbot.js';
|
|
2
|
-
export declare function parseServiceDataForWoPlugMiniUS(manufacturerData: any, onlog: any): {
|
|
3
|
-
model: string;
|
|
4
|
-
modelName: string;
|
|
5
|
-
state: string | null;
|
|
6
|
-
delay: boolean;
|
|
7
|
-
timer: boolean;
|
|
8
|
-
syncUtcTime: boolean;
|
|
9
|
-
wifiRssi: any;
|
|
10
|
-
overload: boolean;
|
|
11
|
-
currentPower: number;
|
|
12
|
-
} | null;
|
|
13
|
-
export declare function parseServiceDataForWoPlugMiniJP(manufacturerData: any, onlog: any): {
|
|
14
|
-
model: string;
|
|
15
|
-
modelName: string;
|
|
16
|
-
state: string | null;
|
|
17
|
-
delay: boolean;
|
|
18
|
-
timer: boolean;
|
|
19
|
-
syncUtcTime: boolean;
|
|
20
|
-
wifiRssi: any;
|
|
21
|
-
overload: boolean;
|
|
22
|
-
currentPower: number;
|
|
23
|
-
} | null;
|
|
24
2
|
/**
|
|
25
3
|
* @see https://github.com/OpenWonderLabs/SwitchBotAPI-BLE/blob/latest/devicetypes/plugmini.md
|
|
26
4
|
*/
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"woplugmini.d.ts","sourceRoot":"","sources":["../../src/device/woplugmini.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,eAAe,EAAE,MAAM,iBAAiB,CAAC;AAElD
|
|
1
|
+
{"version":3,"file":"woplugmini.d.ts","sourceRoot":"","sources":["../../src/device/woplugmini.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,eAAe,EAAE,MAAM,iBAAiB,CAAC;AAElD;;GAEG;AACH,qBAAa,UAAW,SAAQ,eAAe;IAC7C;;OAEG;IACH,SAAS;IAIT;;OAEG;IACH,SAAS,CAAC,YAAY,KAAA;IAKtB;;OAEG;IACH,MAAM;IAIN;;OAEG;IACH,OAAO;IAIP;;OAEG;IACH,MAAM;IAIN;;OAEG;IACH,WAAW,CAAC,KAAK,KAAA;CAgClB"}
|
|
@@ -1,71 +1,5 @@
|
|
|
1
1
|
import { Buffer } from 'buffer';
|
|
2
2
|
import { SwitchbotDevice } from '../switchbot.js';
|
|
3
|
-
export function parseServiceDataForWoPlugMiniUS(manufacturerData, onlog) {
|
|
4
|
-
if (manufacturerData.length !== 14) {
|
|
5
|
-
if (onlog && typeof onlog === 'function') {
|
|
6
|
-
onlog(`[parseServiceDataForWoPlugMiniUS] Buffer length ${manufacturerData.length} should be 14`);
|
|
7
|
-
}
|
|
8
|
-
return null;
|
|
9
|
-
}
|
|
10
|
-
const byte9 = manufacturerData.readUInt8(9); // byte9: plug mini state; 0x00=off, 0x80=on
|
|
11
|
-
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
|
|
12
|
-
const byte11 = manufacturerData.readUInt8(11); // byte11: wifi rssi
|
|
13
|
-
const byte12 = manufacturerData.readUInt8(12); // byte12: bit7: overload?
|
|
14
|
-
const byte13 = manufacturerData.readUInt8(13); // byte12[bit0~6] + byte13: current power value
|
|
15
|
-
const state = byte9 === 0x00 ? 'off' : byte9 === 0x80 ? 'on' : null;
|
|
16
|
-
const delay = !!(byte10 & 0b00000001);
|
|
17
|
-
const timer = !!(byte10 & 0b00000010);
|
|
18
|
-
const syncUtcTime = !!(byte10 & 0b00000100);
|
|
19
|
-
const wifiRssi = byte11;
|
|
20
|
-
const overload = !!(byte12 & 0b10000000);
|
|
21
|
-
const currentPower = (((byte12 & 0b01111111) << 8) + byte13) / 10; // in watt
|
|
22
|
-
// TODO: voltage ???
|
|
23
|
-
const data = {
|
|
24
|
-
model: 'g',
|
|
25
|
-
modelName: 'WoPlugMini',
|
|
26
|
-
state: state,
|
|
27
|
-
delay: delay,
|
|
28
|
-
timer: timer,
|
|
29
|
-
syncUtcTime: syncUtcTime,
|
|
30
|
-
wifiRssi: wifiRssi,
|
|
31
|
-
overload: overload,
|
|
32
|
-
currentPower: currentPower,
|
|
33
|
-
};
|
|
34
|
-
return data;
|
|
35
|
-
}
|
|
36
|
-
export function parseServiceDataForWoPlugMiniJP(manufacturerData, onlog) {
|
|
37
|
-
if (manufacturerData.length !== 14) {
|
|
38
|
-
if (onlog && typeof onlog === 'function') {
|
|
39
|
-
onlog(`[parseServiceDataForWoPlugMiniJP] Buffer length ${manufacturerData.length} should be 14`);
|
|
40
|
-
}
|
|
41
|
-
return null;
|
|
42
|
-
}
|
|
43
|
-
const byte9 = manufacturerData.readUInt8(9); // byte9: plug mini state; 0x00=off, 0x80=on
|
|
44
|
-
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
|
|
45
|
-
const byte11 = manufacturerData.readUInt8(11); // byte11: wifi rssi
|
|
46
|
-
const byte12 = manufacturerData.readUInt8(12); // byte12: bit7: overload?
|
|
47
|
-
const byte13 = manufacturerData.readUInt8(13); // byte12[bit0~6] + byte13: current power value
|
|
48
|
-
const state = byte9 === 0x00 ? 'off' : byte9 === 0x80 ? 'on' : null;
|
|
49
|
-
const delay = !!(byte10 & 0b00000001);
|
|
50
|
-
const timer = !!(byte10 & 0b00000010);
|
|
51
|
-
const syncUtcTime = !!(byte10 & 0b00000100);
|
|
52
|
-
const wifiRssi = byte11;
|
|
53
|
-
const overload = !!(byte12 & 0b10000000);
|
|
54
|
-
const currentPower = (((byte12 & 0b01111111) << 8) + byte13) / 10; // in watt
|
|
55
|
-
// TODO: voltage ???
|
|
56
|
-
const data = {
|
|
57
|
-
model: 'j',
|
|
58
|
-
modelName: 'WoPlugMini',
|
|
59
|
-
state: state,
|
|
60
|
-
delay: delay,
|
|
61
|
-
timer: timer,
|
|
62
|
-
syncUtcTime: syncUtcTime,
|
|
63
|
-
wifiRssi: wifiRssi,
|
|
64
|
-
overload: overload,
|
|
65
|
-
currentPower: currentPower,
|
|
66
|
-
};
|
|
67
|
-
return data;
|
|
68
|
-
}
|
|
69
3
|
/**
|
|
70
4
|
* @see https://github.com/OpenWonderLabs/SwitchBotAPI-BLE/blob/latest/devicetypes/plugmini.md
|
|
71
5
|
*/
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"woplugmini.js","sourceRoot":"","sources":["../../src/device/woplugmini.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,EAAE,MAAM,QAAQ,CAAC;AAEhC,OAAO,EAAE,eAAe,EAAE,MAAM,iBAAiB,CAAC;AAElD
|
|
1
|
+
{"version":3,"file":"woplugmini.js","sourceRoot":"","sources":["../../src/device/woplugmini.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,EAAE,MAAM,QAAQ,CAAC;AAEhC,OAAO,EAAE,eAAe,EAAE,MAAM,iBAAiB,CAAC;AAElD;;GAEG;AACH,MAAM,OAAO,UAAW,SAAQ,eAAe;IAC7C;;OAEG;IACH,SAAS;QACP,OAAO,IAAI,CAAC,WAAW,CAAC,CAAC,IAAI,EAAE,IAAI,EAAE,IAAI,EAAE,IAAI,CAAC,CAAC,CAAC;IACpD,CAAC;IAED;;OAEG;IACH,SAAS,CAAC,YAAY;QACpB,MAAM,IAAI,GAAG,CAAC,IAAI,EAAE,IAAI,EAAE,IAAI,EAAE,IAAI,CAAC,CAAC;QACtC,OAAO,IAAI,CAAC,WAAW,CAAC,CAAC,GAAG,IAAI,EAAE,GAAG,YAAY,CAAC,CAAC,CAAC;IACtD,CAAC;IAED;;OAEG;IACH,MAAM;QACJ,OAAO,IAAI,CAAC,SAAS,CAAC,CAAC,IAAI,EAAE,IAAI,CAAC,CAAC,CAAC;IACtC,CAAC;IAED;;OAEG;IACH,OAAO;QACL,OAAO,IAAI,CAAC,SAAS,CAAC,CAAC,IAAI,EAAE,IAAI,CAAC,CAAC,CAAC;IACtC,CAAC;IAED;;OAEG;IACH,MAAM;QACJ,OAAO,IAAI,CAAC,SAAS,CAAC,CAAC,IAAI,EAAE,IAAI,CAAC,CAAC,CAAC;IACtC,CAAC;IAED;;OAEG;IACH,WAAW,CAAC,KAAK;QACf,MAAM,OAAO,GAAG,MAAM,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;QACnC,OAAO,IAAI,OAAO,CAAC,CAAC,OAAO,EAAE,MAAM,EAAE,EAAE;YACrC,IAAI,CAAC,QAAQ,CAAC,OAAO,CAAC;iBACnB,IAAI,CAAC,CAAC,SAAS,EAAE,EAAE;gBAClB,MAAM,OAAO,GAAG,MAAM,CAAC,IAAI,CAAC,SAAuB,CAAC,CAAC;gBACrD,IAAI,OAAO,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;oBACzB,MAAM,IAAI,GAAG,OAAO,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC;oBAClC,IAAI,IAAI,KAAK,IAAI,IAAI,IAAI,KAAK,IAAI,EAAE,CAAC;wBACnC,MAAM,KAAK,GAAG,IAAI,KAAK,IAAI,CAAC;wBAC5B,OAAO,CAAC,KAAK,CAAC,CAAC;oBACjB,CAAC;yBAAM,CAAC;wBACN,MAAM,CACJ,IAAI,KAAK,CACP,kCAAkC,GAAG,OAAO,CAAC,QAAQ,CAAC,KAAK,CAAC,CAC7D,CACF,CAAC;oBACJ,CAAC;gBACH,CAAC;qBAAM,CAAC;oBACN,MAAM,CACJ,IAAI,KAAK,CACP,8CAA8C;wBAC5C,OAAO,CAAC,QAAQ,CAAC,KAAK,CAAC,CAC1B,CACF,CAAC;gBACJ,CAAC;YACH,CAAC,CAAC;iBACD,KAAK,CAAC,CAAC,KAAK,EAAE,EAAE;gBACf,MAAM,CAAC,KAAK,CAAC,CAAC;YAChB,CAAC,CAAC,CAAC;QACP,CAAC,CAAC,CAAC;IACL,CAAC;CACF"}
|
|
@@ -1,16 +1,4 @@
|
|
|
1
1
|
import { SwitchbotDevice } from '../switchbot.js';
|
|
2
|
-
export declare function parseServiceDataForWoPresence(buf: any, onlog: any): {
|
|
3
|
-
model: string;
|
|
4
|
-
modelName: string;
|
|
5
|
-
tested: boolean;
|
|
6
|
-
movement: boolean;
|
|
7
|
-
battery: number;
|
|
8
|
-
led: number;
|
|
9
|
-
iot: number;
|
|
10
|
-
sense_distance: number;
|
|
11
|
-
lightLevel: string;
|
|
12
|
-
is_light: boolean;
|
|
13
|
-
} | null;
|
|
14
2
|
export declare class WoPresence extends SwitchbotDevice {
|
|
15
3
|
}
|
|
16
4
|
//# sourceMappingURL=wopresence.d.ts.map
|