node-switchbot 2.0.2-beta.7 → 2.0.2-beta.9
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 +2 -2
- package/dist/advertising.d.ts.map +1 -1
- package/dist/advertising.js +61 -65
- package/dist/advertising.js.map +1 -1
- package/dist/device/woblindtilt.d.ts +9 -9
- package/dist/device/woblindtilt.d.ts.map +1 -1
- package/dist/device/woblindtilt.js +24 -24
- package/dist/device/woblindtilt.js.map +1 -1
- package/dist/device/wobulb.d.ts +16 -16
- package/dist/device/wobulb.d.ts.map +1 -1
- package/dist/device/wobulb.js +47 -47
- package/dist/device/wobulb.js.map +1 -1
- package/dist/device/wocontact.d.ts +12 -13
- package/dist/device/wocontact.d.ts.map +1 -1
- package/dist/device/wocontact.js +36 -37
- package/dist/device/wocontact.js.map +1 -1
- package/dist/device/wocurtain.d.ts +10 -10
- package/dist/device/wocurtain.d.ts.map +1 -1
- package/dist/device/wocurtain.js +29 -29
- package/dist/device/wocurtain.js.map +1 -1
- package/dist/device/wohand.d.ts +7 -7
- package/dist/device/wohand.d.ts.map +1 -1
- package/dist/device/wohand.js +20 -20
- package/dist/device/wohand.js.map +1 -1
- package/dist/device/wohumi.d.ts +7 -7
- package/dist/device/wohumi.d.ts.map +1 -1
- package/dist/device/wohumi.js +20 -20
- package/dist/device/wohumi.js.map +1 -1
- package/dist/device/woiosensorth.d.ts +11 -11
- package/dist/device/woiosensorth.d.ts.map +1 -1
- package/dist/device/woiosensorth.js +32 -32
- package/dist/device/woiosensorth.js.map +1 -1
- package/dist/device/woplugmini.d.ts +22 -22
- package/dist/device/woplugmini.d.ts.map +1 -1
- package/dist/device/woplugmini.js +66 -66
- package/dist/device/woplugmini.js.map +1 -1
- package/dist/device/wopresence.d.ts +12 -12
- package/dist/device/wopresence.d.ts.map +1 -1
- package/dist/device/wopresence.js +31 -31
- package/dist/device/wopresence.js.map +1 -1
- package/dist/device/wosensorth.d.ts +22 -22
- package/dist/device/wosensorth.d.ts.map +1 -1
- package/dist/device/wosensorth.js +51 -51
- package/dist/device/wosensorth.js.map +1 -1
- package/dist/device/wosmartlock.d.ts +13 -13
- package/dist/device/wosmartlock.d.ts.map +1 -1
- package/dist/device/wosmartlock.js +42 -42
- package/dist/device/wosmartlock.js.map +1 -1
- package/dist/device/wostrip.d.ts +15 -15
- package/dist/device/wostrip.d.ts.map +1 -1
- package/dist/device/wostrip.js +43 -43
- package/dist/device/wostrip.js.map +1 -1
- package/dist/device.d.ts.map +1 -1
- package/dist/device.js +5 -7
- package/dist/device.js.map +1 -1
- package/dist/switchbot.d.ts +1 -1
- package/dist/switchbot.d.ts.map +1 -1
- package/dist/switchbot.js +5 -6
- package/dist/switchbot.js.map +1 -1
- package/package.json +1 -1
|
@@ -1,16 +1,16 @@
|
|
|
1
1
|
import { SwitchbotDevice } from '../switchbot.js';
|
|
2
|
-
export declare function parseServiceDataForWoPresence(buf: any, onlog: any): Promise<{
|
|
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 {
|
|
3
|
+
static parseServiceData(buf: any, onlog: any): {
|
|
4
|
+
model: string;
|
|
5
|
+
modelName: string;
|
|
6
|
+
tested: boolean;
|
|
7
|
+
movement: boolean;
|
|
8
|
+
battery: number;
|
|
9
|
+
led: number;
|
|
10
|
+
iot: number;
|
|
11
|
+
sense_distance: number;
|
|
12
|
+
lightLevel: string;
|
|
13
|
+
is_light: boolean;
|
|
14
|
+
} | null;
|
|
15
15
|
}
|
|
16
16
|
//# sourceMappingURL=wopresence.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"wopresence.d.ts","sourceRoot":"","sources":["../../src/device/wopresence.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,eAAe,EAAE,MAAM,iBAAiB,CAAC;AAElD,
|
|
1
|
+
{"version":3,"file":"wopresence.d.ts","sourceRoot":"","sources":["../../src/device/wopresence.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,eAAe,EAAE,MAAM,iBAAiB,CAAC;AAElD,qBAAa,UAAW,SAAQ,eAAe;IAC7C,MAAM,CAAC,gBAAgB,CAAC,GAAG,KAAA,EAAE,KAAK,KAAA;;;;;;;;;;;;CAuCnC"}
|
|
@@ -1,36 +1,36 @@
|
|
|
1
1
|
import { SwitchbotDevice } from '../switchbot.js';
|
|
2
|
-
export
|
|
3
|
-
|
|
4
|
-
if (
|
|
5
|
-
onlog
|
|
2
|
+
export class WoPresence extends SwitchbotDevice {
|
|
3
|
+
static parseServiceData(buf, onlog) {
|
|
4
|
+
if (buf.length !== 6) {
|
|
5
|
+
if (onlog && typeof onlog === 'function') {
|
|
6
|
+
onlog(`[parseServiceDataForWoPresence] Buffer length ${buf.length} !== 6!`);
|
|
7
|
+
}
|
|
8
|
+
return null;
|
|
6
9
|
}
|
|
7
|
-
|
|
10
|
+
const byte1 = buf.readUInt8(1);
|
|
11
|
+
const byte2 = buf.readUInt8(2);
|
|
12
|
+
const byte5 = buf.readUInt8(5);
|
|
13
|
+
const tested = byte1 & 0b10000000 ? true : false;
|
|
14
|
+
const movement = byte1 & 0b01000000 ? true : false;
|
|
15
|
+
const battery = byte2 & 0b01111111;
|
|
16
|
+
const led = (byte5 & 0b00100000) >> 5;
|
|
17
|
+
const iot = (byte5 & 0b00010000) >> 4;
|
|
18
|
+
const sense_distance = (byte5 & 0b00001100) >> 2;
|
|
19
|
+
const lightLevel = byte5 & 0b00000011;
|
|
20
|
+
const is_light = byte5 & 0b00000010 ? true : false;
|
|
21
|
+
const data = {
|
|
22
|
+
model: 's',
|
|
23
|
+
modelName: 'WoMotion',
|
|
24
|
+
tested: tested,
|
|
25
|
+
movement: movement,
|
|
26
|
+
battery: battery,
|
|
27
|
+
led: led,
|
|
28
|
+
iot: iot,
|
|
29
|
+
sense_distance: sense_distance,
|
|
30
|
+
lightLevel: lightLevel === 1 ? 'dark' : lightLevel === 2 ? 'bright' : 'unknown',
|
|
31
|
+
is_light: is_light,
|
|
32
|
+
};
|
|
33
|
+
return data;
|
|
8
34
|
}
|
|
9
|
-
const byte1 = buf.readUInt8(1);
|
|
10
|
-
const byte2 = buf.readUInt8(2);
|
|
11
|
-
const byte5 = buf.readUInt8(5);
|
|
12
|
-
const tested = byte1 & 0b10000000 ? true : false;
|
|
13
|
-
const movement = byte1 & 0b01000000 ? true : false;
|
|
14
|
-
const battery = byte2 & 0b01111111;
|
|
15
|
-
const led = (byte5 & 0b00100000) >> 5;
|
|
16
|
-
const iot = (byte5 & 0b00010000) >> 4;
|
|
17
|
-
const sense_distance = (byte5 & 0b00001100) >> 2;
|
|
18
|
-
const lightLevel = byte5 & 0b00000011;
|
|
19
|
-
const is_light = byte5 & 0b00000010 ? true : false;
|
|
20
|
-
const data = {
|
|
21
|
-
model: 's',
|
|
22
|
-
modelName: 'WoMotion',
|
|
23
|
-
tested: tested,
|
|
24
|
-
movement: movement,
|
|
25
|
-
battery: battery,
|
|
26
|
-
led: led,
|
|
27
|
-
iot: iot,
|
|
28
|
-
sense_distance: sense_distance,
|
|
29
|
-
lightLevel: lightLevel === 1 ? 'dark' : lightLevel === 2 ? 'bright' : 'unknown',
|
|
30
|
-
is_light: is_light,
|
|
31
|
-
};
|
|
32
|
-
return data;
|
|
33
|
-
}
|
|
34
|
-
export class WoPresence extends SwitchbotDevice {
|
|
35
35
|
}
|
|
36
36
|
//# sourceMappingURL=wopresence.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"wopresence.js","sourceRoot":"","sources":["../../src/device/wopresence.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,eAAe,EAAE,MAAM,iBAAiB,CAAC;AAElD,MAAM,
|
|
1
|
+
{"version":3,"file":"wopresence.js","sourceRoot":"","sources":["../../src/device/wopresence.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,eAAe,EAAE,MAAM,iBAAiB,CAAC;AAElD,MAAM,OAAO,UAAW,SAAQ,eAAe;IAC7C,MAAM,CAAC,gBAAgB,CAAC,GAAG,EAAE,KAAK;QAChC,IAAI,GAAG,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;YACrB,IAAI,KAAK,IAAI,OAAO,KAAK,KAAK,UAAU,EAAE,CAAC;gBACzC,KAAK,CACH,iDAAiD,GAAG,CAAC,MAAM,SAAS,CACrE,CAAC;YACJ,CAAC;YACD,OAAO,IAAI,CAAC;QACd,CAAC;QAED,MAAM,KAAK,GAAG,GAAG,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC;QAC/B,MAAM,KAAK,GAAG,GAAG,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC;QAC/B,MAAM,KAAK,GAAG,GAAG,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC;QAE/B,MAAM,MAAM,GAAG,KAAK,GAAG,UAAU,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,KAAK,CAAC;QACjD,MAAM,QAAQ,GAAG,KAAK,GAAG,UAAU,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,KAAK,CAAC;QACnD,MAAM,OAAO,GAAG,KAAK,GAAG,UAAU,CAAC;QACnC,MAAM,GAAG,GAAG,CAAC,KAAK,GAAG,UAAU,CAAC,IAAI,CAAC,CAAC;QACtC,MAAM,GAAG,GAAG,CAAC,KAAK,GAAG,UAAU,CAAC,IAAI,CAAC,CAAC;QACtC,MAAM,cAAc,GAAG,CAAC,KAAK,GAAG,UAAU,CAAC,IAAI,CAAC,CAAC;QACjD,MAAM,UAAU,GAAG,KAAK,GAAG,UAAU,CAAC;QACtC,MAAM,QAAQ,GAAG,KAAK,GAAG,UAAU,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,KAAK,CAAC;QAEnD,MAAM,IAAI,GAAG;YACX,KAAK,EAAE,GAAG;YACV,SAAS,EAAE,UAAU;YACrB,MAAM,EAAE,MAAM;YACd,QAAQ,EAAE,QAAQ;YAClB,OAAO,EAAE,OAAO;YAChB,GAAG,EAAE,GAAG;YACR,GAAG,EAAE,GAAG;YACR,cAAc,EAAE,cAAc;YAC9B,UAAU,EACA,UAAU,KAAK,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,UAAU,KAAK,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,SAAS;YAC7E,QAAQ,EAAE,QAAQ;SACnB,CAAC;QAEF,OAAO,IAAI,CAAC;IACd,CAAC;CACF"}
|
|
@@ -1,26 +1,26 @@
|
|
|
1
1
|
import { SwitchbotDevice } from '../switchbot.js';
|
|
2
|
-
export declare function parseServiceDataForWoSensorTH(buf: any, onlog: any): Promise<{
|
|
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
|
-
export declare function parseServiceDataForWoSensorTHPlus(buf: any, onlog: any): {
|
|
14
|
-
model: string;
|
|
15
|
-
modelName: string;
|
|
16
|
-
temperature: {
|
|
17
|
-
c: number;
|
|
18
|
-
f: number;
|
|
19
|
-
};
|
|
20
|
-
fahrenheit: boolean;
|
|
21
|
-
humidity: number;
|
|
22
|
-
battery: number;
|
|
23
|
-
} | null;
|
|
24
2
|
export declare class WoSensorTH extends SwitchbotDevice {
|
|
3
|
+
static parseServiceData(buf: any, onlog: any): {
|
|
4
|
+
model: string;
|
|
5
|
+
modelName: string;
|
|
6
|
+
temperature: {
|
|
7
|
+
c: number;
|
|
8
|
+
f: number;
|
|
9
|
+
};
|
|
10
|
+
fahrenheit: boolean;
|
|
11
|
+
humidity: number;
|
|
12
|
+
battery: number;
|
|
13
|
+
} | null;
|
|
14
|
+
static parseServiceData_Plus(buf: any, onlog: any): {
|
|
15
|
+
model: string;
|
|
16
|
+
modelName: string;
|
|
17
|
+
temperature: {
|
|
18
|
+
c: number;
|
|
19
|
+
f: number;
|
|
20
|
+
};
|
|
21
|
+
fahrenheit: boolean;
|
|
22
|
+
humidity: number;
|
|
23
|
+
battery: number;
|
|
24
|
+
} | null;
|
|
25
25
|
}
|
|
26
26
|
//# sourceMappingURL=wosensorth.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"wosensorth.d.ts","sourceRoot":"","sources":["../../src/device/wosensorth.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,eAAe,EAAE,MAAM,iBAAiB,CAAC;AAElD,
|
|
1
|
+
{"version":3,"file":"wosensorth.d.ts","sourceRoot":"","sources":["../../src/device/wosensorth.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,eAAe,EAAE,MAAM,iBAAiB,CAAC;AAElD,qBAAa,UAAW,SAAQ,eAAe;IAC7C,MAAM,CAAC,gBAAgB,CAAC,GAAG,KAAA,EAAE,KAAK,KAAA;;;;;;;;;;;IAiClC,MAAM,CAAC,qBAAqB,CAAC,GAAG,KAAA,EAAE,KAAK,KAAA;;;;;;;;;;;CAgCxC"}
|
|
@@ -1,58 +1,58 @@
|
|
|
1
1
|
import { SwitchbotDevice } from '../switchbot.js';
|
|
2
|
-
export
|
|
3
|
-
|
|
4
|
-
if (
|
|
5
|
-
onlog
|
|
2
|
+
export class WoSensorTH extends SwitchbotDevice {
|
|
3
|
+
static parseServiceData(buf, onlog) {
|
|
4
|
+
if (buf.length !== 6) {
|
|
5
|
+
if (onlog && typeof onlog === 'function') {
|
|
6
|
+
onlog(`[parseServiceDataForWoSensorTH] Buffer length ${buf.length} !== 6!`);
|
|
7
|
+
}
|
|
8
|
+
return null;
|
|
6
9
|
}
|
|
7
|
-
|
|
10
|
+
const byte2 = buf.readUInt8(2);
|
|
11
|
+
const byte3 = buf.readUInt8(3);
|
|
12
|
+
const byte4 = buf.readUInt8(4);
|
|
13
|
+
const byte5 = buf.readUInt8(5);
|
|
14
|
+
const temp_sign = byte4 & 0b10000000 ? 1 : -1;
|
|
15
|
+
const temp_c = temp_sign * ((byte4 & 0b01111111) + (byte3 & 0b00001111) / 10);
|
|
16
|
+
const temp_f = Math.round(((temp_c * 9 / 5) + 32) * 10) / 10;
|
|
17
|
+
const data = {
|
|
18
|
+
model: 'T',
|
|
19
|
+
modelName: 'WoSensorTH',
|
|
20
|
+
temperature: {
|
|
21
|
+
c: temp_c,
|
|
22
|
+
f: temp_f,
|
|
23
|
+
},
|
|
24
|
+
fahrenheit: byte5 & 0b10000000 ? true : false,
|
|
25
|
+
humidity: byte5 & 0b01111111,
|
|
26
|
+
battery: byte2 & 0b01111111,
|
|
27
|
+
};
|
|
28
|
+
return data;
|
|
8
29
|
}
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
const temp_f = Math.round(((temp_c * 9 / 5) + 32) * 10) / 10;
|
|
16
|
-
const data = {
|
|
17
|
-
model: 'T',
|
|
18
|
-
modelName: 'WoSensorTH',
|
|
19
|
-
temperature: {
|
|
20
|
-
c: temp_c,
|
|
21
|
-
f: temp_f,
|
|
22
|
-
},
|
|
23
|
-
fahrenheit: byte5 & 0b10000000 ? true : false,
|
|
24
|
-
humidity: byte5 & 0b01111111,
|
|
25
|
-
battery: byte2 & 0b01111111,
|
|
26
|
-
};
|
|
27
|
-
return data;
|
|
28
|
-
}
|
|
29
|
-
export function parseServiceDataForWoSensorTHPlus(buf, onlog) {
|
|
30
|
-
if (buf.length !== 6) {
|
|
31
|
-
if (onlog && typeof onlog === 'function') {
|
|
32
|
-
onlog(`[parseServiceDataForWoSensorTHPlus] Buffer length ${buf.length} !== 6!`);
|
|
30
|
+
static parseServiceData_Plus(buf, onlog) {
|
|
31
|
+
if (buf.length !== 6) {
|
|
32
|
+
if (onlog && typeof onlog === 'function') {
|
|
33
|
+
onlog(`[parseServiceDataForWoSensorTHPlus] Buffer length ${buf.length} !== 6!`);
|
|
34
|
+
}
|
|
35
|
+
return null;
|
|
33
36
|
}
|
|
34
|
-
|
|
37
|
+
const byte2 = buf.readUInt8(2);
|
|
38
|
+
const byte3 = buf.readUInt8(3);
|
|
39
|
+
const byte4 = buf.readUInt8(4);
|
|
40
|
+
const byte5 = buf.readUInt8(5);
|
|
41
|
+
const temp_sign = byte4 & 0b10000000 ? 1 : -1;
|
|
42
|
+
const temp_c = temp_sign * ((byte4 & 0b01111111) + (byte3 & 0b00001111) / 10);
|
|
43
|
+
const temp_f = Math.round(((temp_c * 9 / 5) + 32) * 10) / 10;
|
|
44
|
+
const data = {
|
|
45
|
+
model: 'i',
|
|
46
|
+
modelName: 'WoSensorTHPlus',
|
|
47
|
+
temperature: {
|
|
48
|
+
c: temp_c,
|
|
49
|
+
f: temp_f,
|
|
50
|
+
},
|
|
51
|
+
fahrenheit: byte5 & 0b10000000 ? true : false,
|
|
52
|
+
humidity: byte5 & 0b01111111,
|
|
53
|
+
battery: byte2 & 0b01111111,
|
|
54
|
+
};
|
|
55
|
+
return data;
|
|
35
56
|
}
|
|
36
|
-
const byte2 = buf.readUInt8(2);
|
|
37
|
-
const byte3 = buf.readUInt8(3);
|
|
38
|
-
const byte4 = buf.readUInt8(4);
|
|
39
|
-
const byte5 = buf.readUInt8(5);
|
|
40
|
-
const temp_sign = byte4 & 0b10000000 ? 1 : -1;
|
|
41
|
-
const temp_c = temp_sign * ((byte4 & 0b01111111) + (byte3 & 0b00001111) / 10);
|
|
42
|
-
const temp_f = Math.round(((temp_c * 9 / 5) + 32) * 10) / 10;
|
|
43
|
-
const data = {
|
|
44
|
-
model: 'i',
|
|
45
|
-
modelName: 'WoSensorTHPlus',
|
|
46
|
-
temperature: {
|
|
47
|
-
c: temp_c,
|
|
48
|
-
f: temp_f,
|
|
49
|
-
},
|
|
50
|
-
fahrenheit: byte5 & 0b10000000 ? true : false,
|
|
51
|
-
humidity: byte5 & 0b01111111,
|
|
52
|
-
battery: byte2 & 0b01111111,
|
|
53
|
-
};
|
|
54
|
-
return data;
|
|
55
|
-
}
|
|
56
|
-
export class WoSensorTH extends SwitchbotDevice {
|
|
57
57
|
}
|
|
58
58
|
//# sourceMappingURL=wosensorth.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"wosensorth.js","sourceRoot":"","sources":["../../src/device/wosensorth.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,eAAe,EAAE,MAAM,iBAAiB,CAAC;AAElD,MAAM,
|
|
1
|
+
{"version":3,"file":"wosensorth.js","sourceRoot":"","sources":["../../src/device/wosensorth.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,17 +1,17 @@
|
|
|
1
1
|
import { SwitchbotDevice } from '../switchbot.js';
|
|
2
|
-
export declare function parseServiceDataForWoSmartLock(manufacturerData: any, onlog: any): Promise<{
|
|
3
|
-
model: string;
|
|
4
|
-
modelName: string;
|
|
5
|
-
battery: number;
|
|
6
|
-
calibration: boolean;
|
|
7
|
-
status: any;
|
|
8
|
-
update_from_secondary_lock: boolean;
|
|
9
|
-
door_open: boolean;
|
|
10
|
-
double_lock_mode: boolean;
|
|
11
|
-
unclosed_alarm: boolean;
|
|
12
|
-
unlocked_alarm: boolean;
|
|
13
|
-
auto_lock_paused: boolean;
|
|
14
|
-
} | null>;
|
|
15
2
|
export declare class WoSmartLock extends SwitchbotDevice {
|
|
3
|
+
static parseServiceData(manufacturerData: any, onlog: any): {
|
|
4
|
+
model: string;
|
|
5
|
+
modelName: string;
|
|
6
|
+
battery: number;
|
|
7
|
+
calibration: boolean;
|
|
8
|
+
status: any;
|
|
9
|
+
update_from_secondary_lock: boolean;
|
|
10
|
+
door_open: boolean;
|
|
11
|
+
double_lock_mode: boolean;
|
|
12
|
+
unclosed_alarm: boolean;
|
|
13
|
+
unlocked_alarm: boolean;
|
|
14
|
+
auto_lock_paused: boolean;
|
|
15
|
+
} | null;
|
|
16
16
|
}
|
|
17
17
|
//# sourceMappingURL=wosmartlock.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"wosmartlock.d.ts","sourceRoot":"","sources":["../../src/device/wosmartlock.ts"],"names":[],"mappings":"AAMA,OAAO,EAAE,eAAe,EAAE,MAAM,iBAAiB,CAAC;AAElD,
|
|
1
|
+
{"version":3,"file":"wosmartlock.d.ts","sourceRoot":"","sources":["../../src/device/wosmartlock.ts"],"names":[],"mappings":"AAMA,OAAO,EAAE,eAAe,EAAE,MAAM,iBAAiB,CAAC;AAElD,qBAAa,WAAY,SAAQ,eAAe;IAC9C,MAAM,CAAC,gBAAgB,CAAC,gBAAgB,KAAA,EAAE,KAAK,KAAA;;;;;;;;;;;;;CAmDhD"}
|
|
@@ -4,49 +4,49 @@
|
|
|
4
4
|
*/
|
|
5
5
|
//import { Buffer } from 'buffer';
|
|
6
6
|
import { SwitchbotDevice } from '../switchbot.js';
|
|
7
|
-
export
|
|
8
|
-
|
|
9
|
-
if (
|
|
10
|
-
onlog
|
|
7
|
+
export class WoSmartLock extends SwitchbotDevice {
|
|
8
|
+
static parseServiceData(manufacturerData, onlog) {
|
|
9
|
+
if (manufacturerData.length !== 6) {
|
|
10
|
+
if (onlog && typeof onlog === 'function') {
|
|
11
|
+
onlog(`[parseServiceDataForWoSmartLock] Buffer length ${manufacturerData.length} !== 6!`);
|
|
12
|
+
}
|
|
13
|
+
return null;
|
|
11
14
|
}
|
|
12
|
-
|
|
15
|
+
const byte2 = manufacturerData.readUInt8(2);
|
|
16
|
+
const byte7 = manufacturerData.readUInt8(7);
|
|
17
|
+
const byte8 = manufacturerData.readUInt8(8);
|
|
18
|
+
const LockStatus = {
|
|
19
|
+
LOCKED: 0b0000000,
|
|
20
|
+
UNLOCKED: 0b0010000,
|
|
21
|
+
LOCKING: 0b0100000,
|
|
22
|
+
UNLOCKING: 0b0110000,
|
|
23
|
+
LOCKING_STOP: 0b1000000,
|
|
24
|
+
UNLOCKING_STOP: 0b1010000,
|
|
25
|
+
NOT_FULLY_LOCKED: 0b1100000, //Only EU lock type
|
|
26
|
+
};
|
|
27
|
+
const battery = byte2 & 0b01111111; // %
|
|
28
|
+
const calibration = byte7 & 0b10000000 ? true : false;
|
|
29
|
+
const status = LockStatus[byte7 & 0b01110000];
|
|
30
|
+
const update_from_secondary_lock = byte7 & 0b00001000 ? true : false;
|
|
31
|
+
const door_open = byte7 & 0b00000100 ? true : false;
|
|
32
|
+
const double_lock_mode = byte8 & 0b10000000 ? true : false;
|
|
33
|
+
const unclosed_alarm = byte8 & 0b00100000 ? true : false;
|
|
34
|
+
const unlocked_alarm = byte8 & 0b00010000 ? true : false;
|
|
35
|
+
const auto_lock_paused = byte8 & 0b00000010 ? true : false;
|
|
36
|
+
const data = {
|
|
37
|
+
model: 'o',
|
|
38
|
+
modelName: 'WoSmartLock',
|
|
39
|
+
battery: battery,
|
|
40
|
+
calibration: calibration,
|
|
41
|
+
status: status,
|
|
42
|
+
update_from_secondary_lock: update_from_secondary_lock,
|
|
43
|
+
door_open: door_open,
|
|
44
|
+
double_lock_mode: double_lock_mode,
|
|
45
|
+
unclosed_alarm: unclosed_alarm,
|
|
46
|
+
unlocked_alarm: unlocked_alarm,
|
|
47
|
+
auto_lock_paused: auto_lock_paused,
|
|
48
|
+
};
|
|
49
|
+
return data;
|
|
13
50
|
}
|
|
14
|
-
const byte2 = manufacturerData.readUInt8(2);
|
|
15
|
-
const byte7 = manufacturerData.readUInt8(7);
|
|
16
|
-
const byte8 = manufacturerData.readUInt8(8);
|
|
17
|
-
const LockStatus = {
|
|
18
|
-
LOCKED: 0b0000000,
|
|
19
|
-
UNLOCKED: 0b0010000,
|
|
20
|
-
LOCKING: 0b0100000,
|
|
21
|
-
UNLOCKING: 0b0110000,
|
|
22
|
-
LOCKING_STOP: 0b1000000,
|
|
23
|
-
UNLOCKING_STOP: 0b1010000,
|
|
24
|
-
NOT_FULLY_LOCKED: 0b1100000, //Only EU lock type
|
|
25
|
-
};
|
|
26
|
-
const battery = byte2 & 0b01111111; // %
|
|
27
|
-
const calibration = byte7 & 0b10000000 ? true : false;
|
|
28
|
-
const status = LockStatus[byte7 & 0b01110000];
|
|
29
|
-
const update_from_secondary_lock = byte7 & 0b00001000 ? true : false;
|
|
30
|
-
const door_open = byte7 & 0b00000100 ? true : false;
|
|
31
|
-
const double_lock_mode = byte8 & 0b10000000 ? true : false;
|
|
32
|
-
const unclosed_alarm = byte8 & 0b00100000 ? true : false;
|
|
33
|
-
const unlocked_alarm = byte8 & 0b00010000 ? true : false;
|
|
34
|
-
const auto_lock_paused = byte8 & 0b00000010 ? true : false;
|
|
35
|
-
const data = {
|
|
36
|
-
model: 'o',
|
|
37
|
-
modelName: 'WoSmartLock',
|
|
38
|
-
battery: battery,
|
|
39
|
-
calibration: calibration,
|
|
40
|
-
status: status,
|
|
41
|
-
update_from_secondary_lock: update_from_secondary_lock,
|
|
42
|
-
door_open: door_open,
|
|
43
|
-
double_lock_mode: double_lock_mode,
|
|
44
|
-
unclosed_alarm: unclosed_alarm,
|
|
45
|
-
unlocked_alarm: unlocked_alarm,
|
|
46
|
-
auto_lock_paused: auto_lock_paused,
|
|
47
|
-
};
|
|
48
|
-
return data;
|
|
49
|
-
}
|
|
50
|
-
export class WoSmartLock extends SwitchbotDevice {
|
|
51
51
|
}
|
|
52
52
|
//# sourceMappingURL=wosmartlock.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"wosmartlock.js","sourceRoot":"","sources":["../../src/device/wosmartlock.ts"],"names":[],"mappings":"AAAA;;;GAGG;AACH,kCAAkC;AAElC,OAAO,EAAE,eAAe,EAAE,MAAM,iBAAiB,CAAC;AAElD,MAAM,
|
|
1
|
+
{"version":3,"file":"wosmartlock.js","sourceRoot":"","sources":["../../src/device/wosmartlock.ts"],"names":[],"mappings":"AAAA;;;GAGG;AACH,kCAAkC;AAElC,OAAO,EAAE,eAAe,EAAE,MAAM,iBAAiB,CAAC;AAElD,MAAM,OAAO,WAAY,SAAQ,eAAe;IAC9C,MAAM,CAAC,gBAAgB,CAAC,gBAAgB,EAAE,KAAK;QAC7C,IAAI,gBAAgB,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;YAClC,IAAI,KAAK,IAAI,OAAO,KAAK,KAAK,UAAU,EAAE,CAAC;gBACzC,KAAK,CACH,kDAAkD,gBAAgB,CAAC,MAAM,SAAS,CACnF,CAAC;YACJ,CAAC;YACD,OAAO,IAAI,CAAC;QACd,CAAC;QACD,MAAM,KAAK,GAAG,gBAAgB,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC;QAC5C,MAAM,KAAK,GAAG,gBAAgB,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC;QAC5C,MAAM,KAAK,GAAG,gBAAgB,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC;QAG5C,MAAM,UAAU,GAAG;YACjB,MAAM,EAAE,SAAS;YACjB,QAAQ,EAAE,SAAS;YACnB,OAAO,EAAE,SAAS;YAClB,SAAS,EAAE,SAAS;YACpB,YAAY,EAAE,SAAS;YACvB,cAAc,EAAE,SAAS;YACzB,gBAAgB,EAAE,SAAS,EAAG,mBAAmB;SAClD,CAAC;QAEF,MAAM,OAAO,GAAG,KAAK,GAAG,UAAU,CAAC,CAAC,IAAI;QACxC,MAAM,WAAW,GAAG,KAAK,GAAG,UAAU,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,KAAK,CAAC;QACtD,MAAM,MAAM,GAAG,UAAU,CAAC,KAAK,GAAG,UAAU,CAAC,CAAC;QAC9C,MAAM,0BAA0B,GAAG,KAAK,GAAG,UAAU,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,KAAK,CAAC;QACrE,MAAM,SAAS,GAAG,KAAK,GAAG,UAAU,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,KAAK,CAAC;QACpD,MAAM,gBAAgB,GAAG,KAAK,GAAG,UAAU,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,KAAK,CAAC;QAC3D,MAAM,cAAc,GAAG,KAAK,GAAG,UAAU,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,KAAK,CAAC;QACzD,MAAM,cAAc,GAAG,KAAK,GAAG,UAAU,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,KAAK,CAAC;QACzD,MAAM,gBAAgB,GAAG,KAAK,GAAG,UAAU,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,KAAK,CAAC;QAE3D,MAAM,IAAI,GAAG;YACX,KAAK,EAAE,GAAG;YACV,SAAS,EAAE,aAAa;YACxB,OAAO,EAAE,OAAO;YAChB,WAAW,EAAE,WAAW;YACxB,MAAM,EAAE,MAAM;YACd,0BAA0B,EAAE,0BAA0B;YACtD,SAAS,EAAE,SAAS;YACpB,gBAAgB,EAAE,gBAAgB;YAClC,cAAc,EAAE,cAAc;YAC9B,cAAc,EAAE,cAAc;YAC9B,gBAAgB,EAAE,gBAAgB;SACnC,CAAC;QAEF,OAAO,IAAI,CAAC;IACd,CAAC;CAEF"}
|
package/dist/device/wostrip.d.ts
CHANGED
|
@@ -1,22 +1,22 @@
|
|
|
1
1
|
import { SwitchbotDevice } from '../switchbot.js';
|
|
2
|
-
export declare function parseServiceDataForWoStrip(buf: any, onlog: any): Promise<{
|
|
3
|
-
model: string;
|
|
4
|
-
modelName: string;
|
|
5
|
-
state: boolean;
|
|
6
|
-
brightness: number;
|
|
7
|
-
red: any;
|
|
8
|
-
green: any;
|
|
9
|
-
blue: any;
|
|
10
|
-
delay: number;
|
|
11
|
-
preset: number;
|
|
12
|
-
color_mode: number;
|
|
13
|
-
speed: number;
|
|
14
|
-
loop_index: number;
|
|
15
|
-
} | null>;
|
|
16
2
|
/**
|
|
17
|
-
* @see https://github.com/OpenWonderLabs/SwitchBotAPI-BLE/
|
|
3
|
+
* @see https://github.com/OpenWonderLabs/SwitchBotAPI-BLE/blob/latest/devicetypes/colorbulb.md
|
|
18
4
|
*/
|
|
19
5
|
export declare class WoStrip extends SwitchbotDevice {
|
|
6
|
+
static parseServiceData(buf: any, onlog: any): {
|
|
7
|
+
model: string;
|
|
8
|
+
modelName: string;
|
|
9
|
+
state: boolean;
|
|
10
|
+
brightness: number;
|
|
11
|
+
red: any;
|
|
12
|
+
green: any;
|
|
13
|
+
blue: any;
|
|
14
|
+
delay: number;
|
|
15
|
+
preset: number;
|
|
16
|
+
color_mode: number;
|
|
17
|
+
speed: number;
|
|
18
|
+
loop_index: number;
|
|
19
|
+
} | null;
|
|
20
20
|
/**
|
|
21
21
|
* @returns {Promise<boolean>} resolves with a boolean that tells whether the plug in ON(true) or OFF(false)
|
|
22
22
|
*/
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"wostrip.d.ts","sourceRoot":"","sources":["../../src/device/wostrip.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,eAAe,EAAE,MAAM,iBAAiB,CAAC;AAElD,
|
|
1
|
+
{"version":3,"file":"wostrip.d.ts","sourceRoot":"","sources":["../../src/device/wostrip.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,eAAe,EAAE,MAAM,iBAAiB,CAAC;AAElD;;GAEG;AACH,qBAAa,OAAQ,SAAQ,eAAe;IAC1C,MAAM,CAAC,gBAAgB,CAAC,GAAG,KAAA,EAAE,KAAK,KAAA;;;;;;;;;;;;;;IAiDlC;;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;IAarC;;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/wostrip.js
CHANGED
|
@@ -1,51 +1,51 @@
|
|
|
1
1
|
import { Buffer } from 'buffer';
|
|
2
2
|
import { SwitchbotDevice } from '../switchbot.js';
|
|
3
|
-
export async function parseServiceDataForWoStrip(buf, onlog) {
|
|
4
|
-
if (buf.length !== 18) {
|
|
5
|
-
if (onlog && typeof onlog === 'function') {
|
|
6
|
-
onlog(`[parseServiceDataForWoStrip] Buffer length ${buf.length} !== 18!`);
|
|
7
|
-
}
|
|
8
|
-
return null;
|
|
9
|
-
}
|
|
10
|
-
//const byte1 = buf.readUInt8(1);//power and light status
|
|
11
|
-
//const byte2 = buf.readUInt8(2);//bulb brightness
|
|
12
|
-
const byte3 = buf.readUInt8(3); //bulb R
|
|
13
|
-
const byte4 = buf.readUInt8(4); //bulb G
|
|
14
|
-
const byte5 = buf.readUInt8(5); //bulb B
|
|
15
|
-
const byte7 = buf.readUInt8(7);
|
|
16
|
-
const byte8 = buf.readUInt8(8);
|
|
17
|
-
const byte9 = buf.readUInt8(9);
|
|
18
|
-
const byte10 = buf.readUInt8(10);
|
|
19
|
-
const state = byte7 & 0b10000000 ? true : false;
|
|
20
|
-
const brightness = byte7 & 0b01111111;
|
|
21
|
-
const red = byte3;
|
|
22
|
-
const green = byte4;
|
|
23
|
-
const blue = byte5;
|
|
24
|
-
const delay = byte8 & 0b10000000;
|
|
25
|
-
const preset = byte8 & 0b00001000;
|
|
26
|
-
const color_mode = byte8 & 0b00000111;
|
|
27
|
-
const speed = byte9 & 0b01111111;
|
|
28
|
-
const loop_index = byte10 & 0b11111110;
|
|
29
|
-
const data = {
|
|
30
|
-
model: 'r',
|
|
31
|
-
modelName: 'WoStrip',
|
|
32
|
-
state: state,
|
|
33
|
-
brightness: brightness,
|
|
34
|
-
red: red,
|
|
35
|
-
green: green,
|
|
36
|
-
blue: blue,
|
|
37
|
-
delay: delay,
|
|
38
|
-
preset: preset,
|
|
39
|
-
color_mode: color_mode,
|
|
40
|
-
speed: speed,
|
|
41
|
-
loop_index: loop_index,
|
|
42
|
-
};
|
|
43
|
-
return data;
|
|
44
|
-
}
|
|
45
3
|
/**
|
|
46
|
-
* @see https://github.com/OpenWonderLabs/SwitchBotAPI-BLE/
|
|
4
|
+
* @see https://github.com/OpenWonderLabs/SwitchBotAPI-BLE/blob/latest/devicetypes/colorbulb.md
|
|
47
5
|
*/
|
|
48
6
|
export class WoStrip extends SwitchbotDevice {
|
|
7
|
+
static parseServiceData(buf, onlog) {
|
|
8
|
+
if (buf.length !== 18) {
|
|
9
|
+
if (onlog && typeof onlog === 'function') {
|
|
10
|
+
onlog(`[parseServiceDataForWoStrip] Buffer length ${buf.length} !== 18!`);
|
|
11
|
+
}
|
|
12
|
+
return null;
|
|
13
|
+
}
|
|
14
|
+
//const byte1 = buf.readUInt8(1);//power and light status
|
|
15
|
+
//const byte2 = buf.readUInt8(2);//bulb brightness
|
|
16
|
+
const byte3 = buf.readUInt8(3); //bulb R
|
|
17
|
+
const byte4 = buf.readUInt8(4); //bulb G
|
|
18
|
+
const byte5 = buf.readUInt8(5); //bulb B
|
|
19
|
+
const byte7 = buf.readUInt8(7);
|
|
20
|
+
const byte8 = buf.readUInt8(8);
|
|
21
|
+
const byte9 = buf.readUInt8(9);
|
|
22
|
+
const byte10 = buf.readUInt8(10);
|
|
23
|
+
const state = byte7 & 0b10000000 ? true : false;
|
|
24
|
+
const brightness = byte7 & 0b01111111;
|
|
25
|
+
const red = byte3;
|
|
26
|
+
const green = byte4;
|
|
27
|
+
const blue = byte5;
|
|
28
|
+
const delay = byte8 & 0b10000000;
|
|
29
|
+
const preset = byte8 & 0b00001000;
|
|
30
|
+
const color_mode = byte8 & 0b00000111;
|
|
31
|
+
const speed = byte9 & 0b01111111;
|
|
32
|
+
const loop_index = byte10 & 0b11111110;
|
|
33
|
+
const data = {
|
|
34
|
+
model: 'r',
|
|
35
|
+
modelName: 'WoStrip',
|
|
36
|
+
state: state,
|
|
37
|
+
brightness: brightness,
|
|
38
|
+
red: red,
|
|
39
|
+
green: green,
|
|
40
|
+
blue: blue,
|
|
41
|
+
delay: delay,
|
|
42
|
+
preset: preset,
|
|
43
|
+
color_mode: color_mode,
|
|
44
|
+
speed: speed,
|
|
45
|
+
loop_index: loop_index,
|
|
46
|
+
};
|
|
47
|
+
return data;
|
|
48
|
+
}
|
|
49
49
|
/**
|
|
50
50
|
* @returns {Promise<boolean>} resolves with a boolean that tells whether the plug in ON(true) or OFF(false)
|
|
51
51
|
*/
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"wostrip.js","sourceRoot":"","sources":["../../src/device/wostrip.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":"wostrip.js","sourceRoot":"","sources":["../../src/device/wostrip.ts"],"names":[],"mappings":"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"}
|
package/dist/device.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"device.d.ts","sourceRoot":"","sources":["../src/device.ts"],"names":[],"mappings":"AAYA,qBAAa,eAAe;IAC1B,WAAW,MAAC;IACZ,MAAM,MAAC;IACP,MAAM,MAAC;IACP,kBAAkB,MAAC;IACnB,gBAAgB,MAAC;IACjB,iBAAiB,MAAC;IAClB,iBAAiB,MAAC;IAClB,kBAAkB,MAAC;IACnB,mBAAmB,MAAC;IACpB,qBAAqB,MAAC;IACtB,GAAG,MAAC;IACJ,QAAQ,MAAC;IACT,MAAM,MAAC;IACP,UAAU,MAAC;IACX,yBAAyB,MAAC;IAC1B,UAAU,MAAC;IACX,UAAU,EAAE,MAAM,IAAI,CAAC;IACvB,aAAa,EAAE,MAAM,IAAI,CAAC;IAC1B,sBAAsB,EAAE,MAAM,IAAI,CAAC;IACnC,kBAAkB,EAAE,MAAM,IAAI,CAAC;gBASnB,UAAU,KAAA,EAAE,KAAK,KAAA;
|
|
1
|
+
{"version":3,"file":"device.d.ts","sourceRoot":"","sources":["../src/device.ts"],"names":[],"mappings":"AAYA,qBAAa,eAAe;IAC1B,WAAW,MAAC;IACZ,MAAM,MAAC;IACP,MAAM,MAAC;IACP,kBAAkB,MAAC;IACnB,gBAAgB,MAAC;IACjB,iBAAiB,MAAC;IAClB,iBAAiB,MAAC;IAClB,kBAAkB,MAAC;IACnB,mBAAmB,MAAC;IACpB,qBAAqB,MAAC;IACtB,GAAG,MAAC;IACJ,QAAQ,MAAC;IACT,MAAM,MAAC;IACP,UAAU,MAAC;IACX,yBAAyB,MAAC;IAC1B,UAAU,MAAC;IACX,UAAU,EAAE,MAAM,IAAI,CAAC;IACvB,aAAa,EAAE,MAAM,IAAI,CAAC;IAC1B,sBAAsB,EAAE,MAAM,IAAI,CAAC;IACnC,kBAAkB,EAAE,MAAM,IAAI,CAAC;gBASnB,UAAU,KAAA,EAAE,KAAK,KAAA;IAwB7B,IAAI,EAAE,QAEL;IAED,IAAI,OAAO,QAEV;IAED,IAAI,KAAK,QAER;IAED,IAAI,SAAS,QAEZ;IAED,IAAI,eAAe,QAMlB;IAGD,IAAI,SAAS,CAAC,IAAI,KAAA,EAKjB;IAED,IAAI,YAAY,CAAC,IAAI,KAAA,EAKpB;IAaD,OAAO;IAKP,QAAQ;IA4DR,mBAAmB;IAsEnB,iBAAiB;IAwBjB,wBAAwB,CAAC,OAAO,KAAA;IAYhC,UAAU;IAoBV,YAAY;IAyBZ,UAAU;IAyBV,WAAW;IAqBX,aAAa;IAwCb,aAAa,CAAC,IAAI,KAAA;IA4ClB,QAAQ,CAAC,OAAO,KAAA;IAgChB,oBAAoB;IAsBpB,KAAK,CAAC,IAAI,KAAA;IAuBV,MAAM,CAAC,IAAI,KAAA,EAAE,GAAG,KAAA;CAqBjB"}
|
package/dist/device.js
CHANGED
|
@@ -37,13 +37,11 @@ export class SwitchbotDevice {
|
|
|
37
37
|
this._SERV_UUID_PRIMARY = 'cba20d00224d11e69fb80002a5d5c51b';
|
|
38
38
|
this._CHAR_UUID_WRITE = 'cba20002224d11e69fb80002a5d5c51b';
|
|
39
39
|
// Save the device information
|
|
40
|
-
|
|
41
|
-
|
|
42
|
-
|
|
43
|
-
|
|
44
|
-
|
|
45
|
-
this._modelName = ad?.serviceData.modelName;
|
|
46
|
-
})();
|
|
40
|
+
const ad = Advertising.parse(peripheral);
|
|
41
|
+
this._id = ad?.id;
|
|
42
|
+
this._address = ad?.address;
|
|
43
|
+
this._model = ad?.serviceData.model;
|
|
44
|
+
this._modelName = ad?.serviceData.modelName;
|
|
47
45
|
this._was_connected_explicitly = false;
|
|
48
46
|
this._connected = false;
|
|
49
47
|
this._onconnect = () => { };
|