node-switchbot 3.0.2-beta.2 → 3.0.2-beta.3
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.js +1 -1
- package/dist/advertising.js.map +1 -1
- package/dist/device/woblindtilt.d.ts +5 -2
- package/dist/device/woblindtilt.d.ts.map +1 -1
- package/dist/device/woblindtilt.js +6 -6
- package/dist/device/woblindtilt.js.map +1 -1
- package/dist/device/wobulb.d.ts +5 -2
- package/dist/device/wobulb.d.ts.map +1 -1
- package/dist/device/wobulb.js +14 -12
- package/dist/device/wobulb.js.map +1 -1
- package/dist/device/woceilinglight.d.ts +7 -4
- package/dist/device/woceilinglight.d.ts.map +1 -1
- package/dist/device/woceilinglight.js +15 -14
- package/dist/device/woceilinglight.js.map +1 -1
- package/dist/device/wocontact.d.ts +5 -2
- package/dist/device/wocontact.d.ts.map +1 -1
- package/dist/device/wocontact.js +6 -2
- package/dist/device/wocontact.js.map +1 -1
- package/dist/device/wocurtain.d.ts +5 -2
- package/dist/device/wocurtain.d.ts.map +1 -1
- package/dist/device/wocurtain.js +34 -20
- package/dist/device/wocurtain.js.map +1 -1
- package/dist/device/wohand.d.ts +6 -3
- package/dist/device/wohand.d.ts.map +1 -1
- package/dist/device/wohand.js +13 -14
- package/dist/device/wohand.js.map +1 -1
- package/dist/device/wohub2.d.ts +5 -2
- package/dist/device/wohub2.d.ts.map +1 -1
- package/dist/device/wohub2.js +6 -2
- package/dist/device/wohub2.js.map +1 -1
- package/dist/device/wohumi.d.ts +5 -2
- package/dist/device/wohumi.d.ts.map +1 -1
- package/dist/device/wohumi.js +6 -6
- package/dist/device/wohumi.js.map +1 -1
- package/dist/device/woiosensorth.d.ts +5 -2
- package/dist/device/woiosensorth.d.ts.map +1 -1
- package/dist/device/woiosensorth.js +6 -2
- package/dist/device/woiosensorth.js.map +1 -1
- package/dist/device/woplugmini.d.ts +8 -5
- package/dist/device/woplugmini.d.ts.map +1 -1
- package/dist/device/woplugmini.js +10 -10
- package/dist/device/woplugmini.js.map +1 -1
- package/dist/device/wopresence.d.ts +2 -0
- package/dist/device/wopresence.d.ts.map +1 -1
- package/dist/device/wopresence.js +3 -0
- package/dist/device/wopresence.js.map +1 -1
- package/dist/device/wosensorth.d.ts +2 -0
- package/dist/device/wosensorth.d.ts.map +1 -1
- package/dist/device/wosensorth.js +3 -0
- package/dist/device/wosensorth.js.map +1 -1
- package/dist/device/wostrip.d.ts +2 -0
- package/dist/device/wostrip.d.ts.map +1 -1
- package/dist/device/wostrip.js +3 -0
- package/dist/device/wostrip.js.map +1 -1
- package/dist/device.d.ts +33 -31
- package/dist/device.d.ts.map +1 -1
- package/dist/device.js +94 -90
- package/dist/device.js.map +1 -1
- package/dist/index.d.ts +17 -0
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +17 -0
- package/dist/index.js.map +1 -1
- package/dist/switchbot-ble.d.ts +22 -14
- package/dist/switchbot-ble.d.ts.map +1 -1
- package/dist/switchbot-ble.js +155 -289
- package/dist/switchbot-ble.js.map +1 -1
- package/dist/test/switchbot-ble.test.d.ts +2 -0
- package/dist/test/switchbot-ble.test.d.ts.map +1 -0
- package/dist/test/switchbot-ble.test.js +45 -0
- package/dist/test/switchbot-ble.test.js.map +1 -0
- package/dist/types/bledevicestatus.d.ts +5 -3
- package/dist/types/bledevicestatus.d.ts.map +1 -1
- package/package.json +1 -1
- package/dist/test/switchbot.test.d.ts +0 -2
- package/dist/test/switchbot.test.d.ts.map +0 -1
- package/dist/test/switchbot.test.js +0 -106
- package/dist/test/switchbot.test.js.map +0 -1
package/dist/device/wohand.js
CHANGED
|
@@ -1,7 +1,3 @@
|
|
|
1
|
-
/* Copyright(C) 2024, donavanbecker (https://github.com/donavanbecker). All rights reserved.
|
|
2
|
-
*
|
|
3
|
-
* wohand.ts: Switchbot BLE API registration.
|
|
4
|
-
*/
|
|
5
1
|
import { Buffer } from 'node:buffer';
|
|
6
2
|
import { SwitchbotDevice } from '../device.js';
|
|
7
3
|
import { SwitchBotBLEModel, SwitchBotBLEModelFriendlyName, SwitchBotBLEModelName } from '../types/types.js';
|
|
@@ -23,22 +19,25 @@ export class WoHand extends SwitchbotDevice {
|
|
|
23
19
|
}
|
|
24
20
|
const byte1 = serviceData.readUInt8(1);
|
|
25
21
|
const byte2 = serviceData.readUInt8(2);
|
|
26
|
-
|
|
22
|
+
const data = {
|
|
27
23
|
model: SwitchBotBLEModel.Bot,
|
|
28
24
|
modelName: SwitchBotBLEModelName.Bot,
|
|
29
25
|
modelFriendlyName: SwitchBotBLEModelFriendlyName.Bot,
|
|
30
|
-
mode: !!(byte1 & 0b10000000), // Whether the light switch Add-on is used or not. 0 = press, 1 = switch
|
|
26
|
+
mode: (!!(byte1 & 0b10000000)).toString(), // Whether the light switch Add-on is used or not. 0 = press, 1 = switch
|
|
31
27
|
state: !(byte1 & 0b01000000), // Whether the switch status is ON or OFF. 0 = on, 1 = off
|
|
32
28
|
battery: byte2 & 0b01111111, // %
|
|
33
29
|
};
|
|
30
|
+
return data;
|
|
31
|
+
}
|
|
32
|
+
constructor(peripheral, noble) {
|
|
33
|
+
super(peripheral, noble);
|
|
34
34
|
}
|
|
35
35
|
/**
|
|
36
36
|
* Sends a command to the bot.
|
|
37
|
-
* @param {number[]}
|
|
37
|
+
* @param {number[]} reqBuf - The command bytes.
|
|
38
38
|
* @returns {Promise<void>}
|
|
39
39
|
*/
|
|
40
|
-
async
|
|
41
|
-
const reqBuf = Buffer.from(bytes);
|
|
40
|
+
async sendCommand(reqBuf) {
|
|
42
41
|
const resBuf = await this.command(reqBuf);
|
|
43
42
|
const code = resBuf.readUInt8(0);
|
|
44
43
|
if (resBuf.length !== 3 || (code !== 0x01 && code !== 0x05)) {
|
|
@@ -50,35 +49,35 @@ export class WoHand extends SwitchbotDevice {
|
|
|
50
49
|
* @returns {Promise<void>}
|
|
51
50
|
*/
|
|
52
51
|
async press() {
|
|
53
|
-
await this.
|
|
52
|
+
await this.sendCommand(Buffer.from([0x57, 0x01, 0x00]));
|
|
54
53
|
}
|
|
55
54
|
/**
|
|
56
55
|
* Turns on the bot.
|
|
57
56
|
* @returns {Promise<void>}
|
|
58
57
|
*/
|
|
59
58
|
async turnOn() {
|
|
60
|
-
await this.
|
|
59
|
+
await this.sendCommand(Buffer.from([0x57, 0x01, 0x01]));
|
|
61
60
|
}
|
|
62
61
|
/**
|
|
63
62
|
* Turns off the bot.
|
|
64
63
|
* @returns {Promise<void>}
|
|
65
64
|
*/
|
|
66
65
|
async turnOff() {
|
|
67
|
-
await this.
|
|
66
|
+
await this.sendCommand(Buffer.from([0x57, 0x01, 0x02]));
|
|
68
67
|
}
|
|
69
68
|
/**
|
|
70
69
|
* Moves the bot down.
|
|
71
70
|
* @returns {Promise<void>}
|
|
72
71
|
*/
|
|
73
72
|
async down() {
|
|
74
|
-
await this.
|
|
73
|
+
await this.sendCommand(Buffer.from([0x57, 0x01, 0x03]));
|
|
75
74
|
}
|
|
76
75
|
/**
|
|
77
76
|
* Moves the bot up.
|
|
78
77
|
* @returns {Promise<void>}
|
|
79
78
|
*/
|
|
80
79
|
async up() {
|
|
81
|
-
await this.
|
|
80
|
+
await this.sendCommand(Buffer.from([0x57, 0x01, 0x04]));
|
|
82
81
|
}
|
|
83
82
|
}
|
|
84
83
|
//# sourceMappingURL=wohand.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"wohand.js","sourceRoot":"","sources":["../../src/device/wohand.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"wohand.js","sourceRoot":"","sources":["../../src/device/wohand.ts"],"names":[],"mappings":"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"}
|
package/dist/device/wohub2.d.ts
CHANGED
|
@@ -1,4 +1,6 @@
|
|
|
1
1
|
import type { Buffer } from 'node:buffer';
|
|
2
|
+
import type * as Noble from '@stoprocent/noble';
|
|
3
|
+
import type { hub2ServiceData } from '../types/bledevicestatus.js';
|
|
2
4
|
import { SwitchbotDevice } from '../device.js';
|
|
3
5
|
/**
|
|
4
6
|
* Class representing a WoHub2 device.
|
|
@@ -9,8 +11,9 @@ export declare class WoHub2 extends SwitchbotDevice {
|
|
|
9
11
|
* Parses the service data for WoHub2.
|
|
10
12
|
* @param {Buffer} manufacturerData - The manufacturer data buffer.
|
|
11
13
|
* @param {Function} emitLog - The function to emit log messages.
|
|
12
|
-
* @returns {Promise<
|
|
14
|
+
* @returns {Promise<hub2ServiceData | null>} - Parsed service data or null if invalid.
|
|
13
15
|
*/
|
|
14
|
-
static parseServiceData(manufacturerData: Buffer, emitLog: (level: string, message: string) => void): Promise<
|
|
16
|
+
static parseServiceData(manufacturerData: Buffer, emitLog: (level: string, message: string) => void): Promise<hub2ServiceData | null>;
|
|
17
|
+
constructor(peripheral: Noble.Peripheral, noble: typeof Noble);
|
|
15
18
|
}
|
|
16
19
|
//# sourceMappingURL=wohub2.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"wohub2.d.ts","sourceRoot":"","sources":["../../src/device/wohub2.ts"],"names":[],"mappings":"AAIA,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,aAAa,CAAA;AAEzC,OAAO,EAAE,eAAe,EAAE,MAAM,cAAc,CAAA;AAG9C;;;GAGG;AACH,qBAAa,MAAO,SAAQ,eAAe;IACzC;;;;;OAKG;WACU,gBAAgB,CAC3B,gBAAgB,EAAE,MAAM,EACxB,OAAO,EAAE,CAAC,KAAK,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,KAAK,IAAI,GAChD,OAAO,CAAC,
|
|
1
|
+
{"version":3,"file":"wohub2.d.ts","sourceRoot":"","sources":["../../src/device/wohub2.ts"],"names":[],"mappings":"AAIA,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,aAAa,CAAA;AAEzC,OAAO,KAAK,KAAK,KAAK,MAAM,mBAAmB,CAAA;AAE/C,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,6BAA6B,CAAA;AAElE,OAAO,EAAE,eAAe,EAAE,MAAM,cAAc,CAAA;AAG9C;;;GAGG;AACH,qBAAa,MAAO,SAAQ,eAAe;IACzC;;;;;OAKG;WACU,gBAAgB,CAC3B,gBAAgB,EAAE,MAAM,EACxB,OAAO,EAAE,CAAC,KAAK,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,KAAK,IAAI,GAChD,OAAO,CAAC,eAAe,GAAG,IAAI,CAAC;gBA2BtB,UAAU,EAAE,KAAK,CAAC,UAAU,EAAE,KAAK,EAAE,OAAO,KAAK;CAG9D"}
|
package/dist/device/wohub2.js
CHANGED
|
@@ -9,7 +9,7 @@ export class WoHub2 extends SwitchbotDevice {
|
|
|
9
9
|
* Parses the service data for WoHub2.
|
|
10
10
|
* @param {Buffer} manufacturerData - The manufacturer data buffer.
|
|
11
11
|
* @param {Function} emitLog - The function to emit log messages.
|
|
12
|
-
* @returns {Promise<
|
|
12
|
+
* @returns {Promise<hub2ServiceData | null>} - Parsed service data or null if invalid.
|
|
13
13
|
*/
|
|
14
14
|
static async parseServiceData(manufacturerData, emitLog) {
|
|
15
15
|
if (manufacturerData.length !== 16) {
|
|
@@ -21,7 +21,7 @@ export class WoHub2 extends SwitchbotDevice {
|
|
|
21
21
|
const tempC = tempSign * ((byte1 & 0b01111111) + (byte0 & 0b00001111) / 10);
|
|
22
22
|
const tempF = Math.round(((tempC * 9) / 5 + 32) * 10) / 10;
|
|
23
23
|
const lightLevel = byte12 & 0b11111;
|
|
24
|
-
|
|
24
|
+
const data = {
|
|
25
25
|
model: SwitchBotBLEModel.Hub2,
|
|
26
26
|
modelName: SwitchBotBLEModelName.Hub2,
|
|
27
27
|
modelFriendlyName: SwitchBotBLEModelFriendlyName.Hub2,
|
|
@@ -31,6 +31,10 @@ export class WoHub2 extends SwitchbotDevice {
|
|
|
31
31
|
humidity: byte2 & 0b01111111,
|
|
32
32
|
lightLevel,
|
|
33
33
|
};
|
|
34
|
+
return data;
|
|
35
|
+
}
|
|
36
|
+
constructor(peripheral, noble) {
|
|
37
|
+
super(peripheral, noble);
|
|
34
38
|
}
|
|
35
39
|
}
|
|
36
40
|
//# sourceMappingURL=wohub2.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"wohub2.js","sourceRoot":"","sources":["../../src/device/wohub2.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"wohub2.js","sourceRoot":"","sources":["../../src/device/wohub2.ts"],"names":[],"mappings":"AAUA,OAAO,EAAE,eAAe,EAAE,MAAM,cAAc,CAAA;AAC9C,OAAO,EAAE,iBAAiB,EAAE,6BAA6B,EAAE,qBAAqB,EAAE,MAAM,mBAAmB,CAAA;AAE3G;;;GAGG;AACH,MAAM,OAAO,MAAO,SAAQ,eAAe;IACzC;;;;;OAKG;IACH,MAAM,CAAC,KAAK,CAAC,gBAAgB,CAC3B,gBAAwB,EACxB,OAAiD;QAEjD,IAAI,gBAAgB,CAAC,MAAM,KAAK,EAAE,EAAE,CAAC;YACnC,OAAO,CAAC,YAAY,EAAE,6CAA6C,gBAAgB,CAAC,MAAM,UAAU,CAAC,CAAA;YACrG,OAAO,IAAI,CAAA;QACb,CAAC;QAED,MAAM,CAAC,KAAK,EAAE,KAAK,EAAE,KAAK,EAAE,AAAD,EAAG,AAAD,EAAG,AAAD,EAAG,AAAD,EAAG,AAAD,EAAG,AAAD,EAAG,AAAD,EAAG,AAAD,EAAG,AAAD,EAAG,MAAM,CAAC,GAAG,gBAAgB,CAAA;QAExE,MAAM,QAAQ,GAAG,KAAK,GAAG,UAAU,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAA;QAC5C,MAAM,KAAK,GAAG,QAAQ,GAAG,CAAC,CAAC,KAAK,GAAG,UAAU,CAAC,GAAG,CAAC,KAAK,GAAG,UAAU,CAAC,GAAG,EAAE,CAAC,CAAA;QAC3E,MAAM,KAAK,GAAG,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,KAAK,GAAG,CAAC,CAAC,GAAG,CAAC,GAAG,EAAE,CAAC,GAAG,EAAE,CAAC,GAAG,EAAE,CAAA;QAC1D,MAAM,UAAU,GAAG,MAAM,GAAG,OAAO,CAAA;QAEnC,MAAM,IAAI,GAAoB;YAC5B,KAAK,EAAE,iBAAiB,CAAC,IAAI;YAC7B,SAAS,EAAE,qBAAqB,CAAC,IAAI;YACrC,iBAAiB,EAAE,6BAA6B,CAAC,IAAI;YACrD,OAAO,EAAE,KAAK;YACd,UAAU,EAAE,KAAK;YACjB,eAAe,EAAE,CAAC,CAAC,CAAC,KAAK,GAAG,UAAU,CAAC;YACvC,QAAQ,EAAE,KAAK,GAAG,UAAU;YAC5B,UAAU;SACX,CAAA;QAED,OAAO,IAAI,CAAA;IACb,CAAC;IAED,YAAY,UAA4B,EAAE,KAAmB;QAC3D,KAAK,CAAC,UAAU,EAAE,KAAK,CAAC,CAAA;IAC1B,CAAC;CACF"}
|
package/dist/device/wohumi.d.ts
CHANGED
|
@@ -1,3 +1,5 @@
|
|
|
1
|
+
import type * as Noble from '@stoprocent/noble';
|
|
2
|
+
import type { humidifierServiceData } from '../types/bledevicestatus.js';
|
|
1
3
|
import { Buffer } from 'node:buffer';
|
|
2
4
|
import { SwitchbotDevice } from '../device.js';
|
|
3
5
|
/**
|
|
@@ -9,9 +11,10 @@ export declare class WoHumi extends SwitchbotDevice {
|
|
|
9
11
|
* Parses the service data for WoHumi.
|
|
10
12
|
* @param {Buffer} serviceData - The service data buffer.
|
|
11
13
|
* @param {Function} emitLog - The function to emit log messages.
|
|
12
|
-
* @returns {Promise<
|
|
14
|
+
* @returns {Promise<humidifierServiceData | null>} - Parsed service data or null if invalid.
|
|
13
15
|
*/
|
|
14
|
-
static parseServiceData(serviceData: Buffer, emitLog: (level: string, message: string) => void): Promise<
|
|
16
|
+
static parseServiceData(serviceData: Buffer, emitLog: (level: string, message: string) => void): Promise<humidifierServiceData | null>;
|
|
17
|
+
constructor(peripheral: Noble.Peripheral, noble: typeof Noble);
|
|
15
18
|
/**
|
|
16
19
|
* Sends a command to the humidifier.
|
|
17
20
|
* @param {number[]} bytes - The command bytes.
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"wohumi.d.ts","sourceRoot":"","sources":["../../src/device/wohumi.ts"],"names":[],"mappings":"AAIA,OAAO,EAAE,MAAM,EAAE,MAAM,aAAa,CAAA;AAEpC,OAAO,EAAE,eAAe,EAAE,MAAM,cAAc,CAAA;AAG9C;;;GAGG;AACH,qBAAa,MAAO,SAAQ,eAAe;IACzC;;;;;OAKG;WACU,gBAAgB,CAC3B,WAAW,EAAE,MAAM,EACnB,OAAO,EAAE,CAAC,KAAK,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,KAAK,IAAI,GAChD,OAAO,CAAC,
|
|
1
|
+
{"version":3,"file":"wohumi.d.ts","sourceRoot":"","sources":["../../src/device/wohumi.ts"],"names":[],"mappings":"AAIA,OAAO,KAAK,KAAK,KAAK,MAAM,mBAAmB,CAAA;AAE/C,OAAO,KAAK,EAAE,qBAAqB,EAAE,MAAM,6BAA6B,CAAA;AAExE,OAAO,EAAE,MAAM,EAAE,MAAM,aAAa,CAAA;AAEpC,OAAO,EAAE,eAAe,EAAE,MAAM,cAAc,CAAA;AAG9C;;;GAGG;AACH,qBAAa,MAAO,SAAQ,eAAe;IACzC;;;;;OAKG;WACU,gBAAgB,CAC3B,WAAW,EAAE,MAAM,EACnB,OAAO,EAAE,CAAC,KAAK,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,KAAK,IAAI,GAChD,OAAO,CAAC,qBAAqB,GAAG,IAAI,CAAC;gBA2B5B,UAAU,EAAE,KAAK,CAAC,UAAU,EAAE,KAAK,EAAE,OAAO,KAAK;IAI7D;;;;OAIG;IACU,WAAW,CAAC,KAAK,EAAE,MAAM,EAAE,GAAG,OAAO,CAAC,IAAI,CAAC;IAUxD;;;OAGG;IACG,KAAK,IAAI,OAAO,CAAC,IAAI,CAAC;IAI5B;;;OAGG;IACG,MAAM,IAAI,OAAO,CAAC,IAAI,CAAC;IAI7B;;;OAGG;IACG,OAAO,IAAI,OAAO,CAAC,IAAI,CAAC;IAI9B;;;OAGG;IACG,IAAI,IAAI,OAAO,CAAC,IAAI,CAAC;IAI3B;;;OAGG;IACG,EAAE,IAAI,OAAO,CAAC,IAAI,CAAC;CAG1B"}
|
package/dist/device/wohumi.js
CHANGED
|
@@ -1,7 +1,3 @@
|
|
|
1
|
-
/* Copyright(C) 2024, donavanbecker (https://github.com/donavanbecker). All rights reserved.
|
|
2
|
-
*
|
|
3
|
-
* wohumi.ts: Switchbot BLE API registration.
|
|
4
|
-
*/
|
|
5
1
|
import { Buffer } from 'node:buffer';
|
|
6
2
|
import { SwitchbotDevice } from '../device.js';
|
|
7
3
|
import { SwitchBotBLEModel, SwitchBotBLEModelFriendlyName, SwitchBotBLEModelName } from '../types/types.js';
|
|
@@ -14,7 +10,7 @@ export class WoHumi extends SwitchbotDevice {
|
|
|
14
10
|
* Parses the service data for WoHumi.
|
|
15
11
|
* @param {Buffer} serviceData - The service data buffer.
|
|
16
12
|
* @param {Function} emitLog - The function to emit log messages.
|
|
17
|
-
* @returns {Promise<
|
|
13
|
+
* @returns {Promise<humidifierServiceData | null>} - Parsed service data or null if invalid.
|
|
18
14
|
*/
|
|
19
15
|
static async parseServiceData(serviceData, emitLog) {
|
|
20
16
|
if (serviceData.length !== 8) {
|
|
@@ -27,7 +23,7 @@ export class WoHumi extends SwitchbotDevice {
|
|
|
27
23
|
const autoMode = !!(byte4 & 0b10000000); // 1 - auto
|
|
28
24
|
const percentage = byte4 & 0b01111111; // 0-100%, 101/102/103 - Quick gear 1/2/3
|
|
29
25
|
const humidity = autoMode ? 0 : percentage === 101 ? 33 : percentage === 102 ? 66 : percentage === 103 ? 100 : percentage;
|
|
30
|
-
|
|
26
|
+
const data = {
|
|
31
27
|
model: SwitchBotBLEModel.Humidifier,
|
|
32
28
|
modelName: SwitchBotBLEModelName.Humidifier,
|
|
33
29
|
modelFriendlyName: SwitchBotBLEModelFriendlyName.Humidifier,
|
|
@@ -36,6 +32,10 @@ export class WoHumi extends SwitchbotDevice {
|
|
|
36
32
|
percentage: autoMode ? 0 : percentage,
|
|
37
33
|
humidity,
|
|
38
34
|
};
|
|
35
|
+
return data;
|
|
36
|
+
}
|
|
37
|
+
constructor(peripheral, noble) {
|
|
38
|
+
super(peripheral, noble);
|
|
39
39
|
}
|
|
40
40
|
/**
|
|
41
41
|
* Sends a command to the humidifier.
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"wohumi.js","sourceRoot":"","sources":["../../src/device/wohumi.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"wohumi.js","sourceRoot":"","sources":["../../src/device/wohumi.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,4 +1,6 @@
|
|
|
1
1
|
import type { Buffer } from 'node:buffer';
|
|
2
|
+
import type * as Noble from '@stoprocent/noble';
|
|
3
|
+
import type { outdoorMeterServiceData } from '../types/bledevicestatus.js';
|
|
2
4
|
import { SwitchbotDevice } from '../device.js';
|
|
3
5
|
/**
|
|
4
6
|
* Class representing a WoIOSensorTH device.
|
|
@@ -10,8 +12,9 @@ export declare class WoIOSensorTH extends SwitchbotDevice {
|
|
|
10
12
|
* @param {Buffer} serviceData - The service data buffer.
|
|
11
13
|
* @param {Buffer} manufacturerData - The manufacturer data buffer.
|
|
12
14
|
* @param {Function} emitLog - The function to emit log messages.
|
|
13
|
-
* @returns {Promise<
|
|
15
|
+
* @returns {Promise<outdoorMeterServiceData | null>} - Parsed service data or null if invalid.
|
|
14
16
|
*/
|
|
15
|
-
static parseServiceData(serviceData: Buffer, manufacturerData: Buffer, emitLog: (level: string, message: string) => void): Promise<
|
|
17
|
+
static parseServiceData(serviceData: Buffer, manufacturerData: Buffer, emitLog: (level: string, message: string) => void): Promise<outdoorMeterServiceData | null>;
|
|
18
|
+
constructor(peripheral: Noble.Peripheral, noble: typeof Noble);
|
|
16
19
|
}
|
|
17
20
|
//# sourceMappingURL=woiosensorth.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"woiosensorth.d.ts","sourceRoot":"","sources":["../../src/device/woiosensorth.ts"],"names":[],"mappings":"AAIA,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,aAAa,CAAA;AAEzC,OAAO,EAAE,eAAe,EAAE,MAAM,cAAc,CAAA;AAG9C;;;GAGG;AACH,qBAAa,YAAa,SAAQ,eAAe;IAC/C;;;;;;OAMG;WACU,gBAAgB,CAC3B,WAAW,EAAE,MAAM,EACnB,gBAAgB,EAAE,MAAM,EACxB,OAAO,EAAE,CAAC,KAAK,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,KAAK,IAAI,GAChD,OAAO,CAAC,
|
|
1
|
+
{"version":3,"file":"woiosensorth.d.ts","sourceRoot":"","sources":["../../src/device/woiosensorth.ts"],"names":[],"mappings":"AAIA,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,aAAa,CAAA;AAEzC,OAAO,KAAK,KAAK,KAAK,MAAM,mBAAmB,CAAA;AAE/C,OAAO,KAAK,EAAE,uBAAuB,EAAE,MAAM,6BAA6B,CAAA;AAE1E,OAAO,EAAE,eAAe,EAAE,MAAM,cAAc,CAAA;AAG9C;;;GAGG;AACH,qBAAa,YAAa,SAAQ,eAAe;IAC/C;;;;;;OAMG;WACU,gBAAgB,CAC3B,WAAW,EAAE,MAAM,EACnB,gBAAgB,EAAE,MAAM,EACxB,OAAO,EAAE,CAAC,KAAK,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,KAAK,IAAI,GAChD,OAAO,CAAC,uBAAuB,GAAG,IAAI,CAAC;gBAmC9B,UAAU,EAAE,KAAK,CAAC,UAAU,EAAE,KAAK,EAAE,OAAO,KAAK;CAG9D"}
|
|
@@ -10,7 +10,7 @@ export class WoIOSensorTH extends SwitchbotDevice {
|
|
|
10
10
|
* @param {Buffer} serviceData - The service data buffer.
|
|
11
11
|
* @param {Buffer} manufacturerData - The manufacturer data buffer.
|
|
12
12
|
* @param {Function} emitLog - The function to emit log messages.
|
|
13
|
-
* @returns {Promise<
|
|
13
|
+
* @returns {Promise<outdoorMeterServiceData | null>} - Parsed service data or null if invalid.
|
|
14
14
|
*/
|
|
15
15
|
static async parseServiceData(serviceData, manufacturerData, emitLog) {
|
|
16
16
|
if (serviceData.length !== 3) {
|
|
@@ -30,7 +30,7 @@ export class WoIOSensorTH extends SwitchbotDevice {
|
|
|
30
30
|
const tempSign = mdByte11 & 0b10000000 ? 1 : -1;
|
|
31
31
|
const tempC = tempSign * ((mdByte11 & 0b01111111) + (mdByte10 & 0b00001111) / 10);
|
|
32
32
|
const tempF = Math.round(((tempC * 9) / 5 + 32) * 10) / 10;
|
|
33
|
-
|
|
33
|
+
const data = {
|
|
34
34
|
model: SwitchBotBLEModel.OutdoorMeter,
|
|
35
35
|
modelName: SwitchBotBLEModelName.OutdoorMeter,
|
|
36
36
|
modelFriendlyName: SwitchBotBLEModelFriendlyName.OutdoorMeter,
|
|
@@ -40,6 +40,10 @@ export class WoIOSensorTH extends SwitchbotDevice {
|
|
|
40
40
|
humidity: mdByte12 & 0b01111111,
|
|
41
41
|
battery: sdByte2 & 0b01111111,
|
|
42
42
|
};
|
|
43
|
+
return data;
|
|
44
|
+
}
|
|
45
|
+
constructor(peripheral, noble) {
|
|
46
|
+
super(peripheral, noble);
|
|
43
47
|
}
|
|
44
48
|
}
|
|
45
49
|
//# sourceMappingURL=woiosensorth.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"woiosensorth.js","sourceRoot":"","sources":["../../src/device/woiosensorth.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"woiosensorth.js","sourceRoot":"","sources":["../../src/device/woiosensorth.ts"],"names":[],"mappings":"AAUA,OAAO,EAAE,eAAe,EAAE,MAAM,cAAc,CAAA;AAC9C,OAAO,EAAE,iBAAiB,EAAE,6BAA6B,EAAE,qBAAqB,EAAE,MAAM,mBAAmB,CAAA;AAE3G;;;GAGG;AACH,MAAM,OAAO,YAAa,SAAQ,eAAe;IAC/C;;;;;;OAMG;IACH,MAAM,CAAC,KAAK,CAAC,gBAAgB,CAC3B,WAAmB,EACnB,gBAAwB,EACxB,OAAiD;QAEjD,IAAI,WAAW,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;YAC7B,OAAO,CAAC,YAAY,EAAE,gEAAgE,WAAW,CAAC,MAAM,SAAS,CAAC,CAAA;YAClH,OAAO,IAAI,CAAA;QACb,CAAC;QACD,IAAI,gBAAgB,CAAC,MAAM,KAAK,EAAE,EAAE,CAAC;YACnC,OAAO,CAAC,YAAY,EAAE,qEAAqE,gBAAgB,CAAC,MAAM,UAAU,CAAC,CAAA;YAC7H,OAAO,IAAI,CAAA;QACb,CAAC;QAED,MAAM,CAAC,QAAQ,EAAE,QAAQ,EAAE,QAAQ,CAAC,GAAG;YACrC,gBAAgB,CAAC,SAAS,CAAC,EAAE,CAAC;YAC9B,gBAAgB,CAAC,SAAS,CAAC,EAAE,CAAC;YAC9B,gBAAgB,CAAC,SAAS,CAAC,EAAE,CAAC;SAC/B,CAAA;QACD,MAAM,OAAO,GAAG,WAAW,CAAC,SAAS,CAAC,CAAC,CAAC,CAAA;QAExC,MAAM,QAAQ,GAAG,QAAQ,GAAG,UAAU,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAA;QAC/C,MAAM,KAAK,GAAG,QAAQ,GAAG,CAAC,CAAC,QAAQ,GAAG,UAAU,CAAC,GAAG,CAAC,QAAQ,GAAG,UAAU,CAAC,GAAG,EAAE,CAAC,CAAA;QACjF,MAAM,KAAK,GAAG,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,KAAK,GAAG,CAAC,CAAC,GAAG,CAAC,GAAG,EAAE,CAAC,GAAG,EAAE,CAAC,GAAG,EAAE,CAAA;QAE1D,MAAM,IAAI,GAA4B;YACpC,KAAK,EAAE,iBAAiB,CAAC,YAAY;YACrC,SAAS,EAAE,qBAAqB,CAAC,YAAY;YAC7C,iBAAiB,EAAE,6BAA6B,CAAC,YAAY;YAC7D,OAAO,EAAE,KAAK;YACd,UAAU,EAAE,KAAK;YACjB,eAAe,EAAE,CAAC,CAAC,CAAC,QAAQ,GAAG,UAAU,CAAC;YAC1C,QAAQ,EAAE,QAAQ,GAAG,UAAU;YAC/B,OAAO,EAAE,OAAO,GAAG,UAAU;SAC9B,CAAA;QAED,OAAO,IAAI,CAAA;IACb,CAAC;IAED,YAAY,UAA4B,EAAE,KAAmB;QAC3D,KAAK,CAAC,UAAU,EAAE,KAAK,CAAC,CAAA;IAC1B,CAAC;CACF"}
|
|
@@ -1,3 +1,5 @@
|
|
|
1
|
+
import type * as Noble from '@stoprocent/noble';
|
|
2
|
+
import type { plugMiniJPServiceData, plugMiniUSServiceData } from '../types/bledevicestatus.js';
|
|
1
3
|
import { Buffer } from 'node:buffer';
|
|
2
4
|
import { SwitchbotDevice } from '../device.js';
|
|
3
5
|
/**
|
|
@@ -9,24 +11,25 @@ export declare class WoPlugMini extends SwitchbotDevice {
|
|
|
9
11
|
* Parses the service data for WoPlugMini US.
|
|
10
12
|
* @param {Buffer} manufacturerData - The manufacturer data buffer.
|
|
11
13
|
* @param {Function} emitLog - The function to emit log messages.
|
|
12
|
-
* @returns {Promise<
|
|
14
|
+
* @returns {Promise<plugMiniUSServiceData | null>} - Parsed service data or null if invalid.
|
|
13
15
|
*/
|
|
14
|
-
static parseServiceData_US(manufacturerData: Buffer, emitLog: (level: string, message: string) => void): Promise<
|
|
16
|
+
static parseServiceData_US(manufacturerData: Buffer, emitLog: (level: string, message: string) => void): Promise<plugMiniUSServiceData | null>;
|
|
15
17
|
/**
|
|
16
18
|
* Parses the service data for WoPlugMini JP.
|
|
17
19
|
* @param {Buffer} manufacturerData - The manufacturer data buffer.
|
|
18
20
|
* @param {Function} emitLog - The function to emit log messages.
|
|
19
|
-
* @returns {Promise<
|
|
21
|
+
* @returns {Promise<plugMiniJPServiceData | null>} - Parsed service data or null if invalid.
|
|
20
22
|
*/
|
|
21
|
-
static parseServiceData_JP(manufacturerData: Buffer, emitLog: (level: string, message: string) => void): Promise<
|
|
23
|
+
static parseServiceData_JP(manufacturerData: Buffer, emitLog: (level: string, message: string) => void): Promise<plugMiniJPServiceData | null>;
|
|
22
24
|
/**
|
|
23
25
|
* Parses the service data for WoPlugMini.
|
|
24
26
|
* @param {Buffer} manufacturerData - The manufacturer data buffer.
|
|
25
27
|
* @param {SwitchBotBLEModel} model - The model of the plug mini.
|
|
26
28
|
* @param {Function} emitLog - The function to emit log messages.
|
|
27
|
-
* @returns {Promise<
|
|
29
|
+
* @returns {Promise<plugMiniUSServiceData | plugMiniJPServiceData | null>} - Parsed service data or null if invalid.
|
|
28
30
|
*/
|
|
29
31
|
private static parseServiceData;
|
|
32
|
+
constructor(peripheral: Noble.Peripheral, noble: typeof Noble);
|
|
30
33
|
/**
|
|
31
34
|
* Reads the state of the plug.
|
|
32
35
|
* @returns {Promise<boolean>} - Resolves with a boolean that tells whether the plug is ON (true) or OFF (false).
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"woplugmini.d.ts","sourceRoot":"","sources":["../../src/device/woplugmini.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"woplugmini.d.ts","sourceRoot":"","sources":["../../src/device/woplugmini.ts"],"names":[],"mappings":"AAIA,OAAO,KAAK,KAAK,KAAK,MAAM,mBAAmB,CAAA;AAE/C,OAAO,KAAK,EAAE,qBAAqB,EAAE,qBAAqB,EAAE,MAAM,6BAA6B,CAAA;AAE/F,OAAO,EAAE,MAAM,EAAE,MAAM,aAAa,CAAA;AAEpC,OAAO,EAAE,eAAe,EAAE,MAAM,cAAc,CAAA;AAG9C;;;GAGG;AACH,qBAAa,UAAW,SAAQ,eAAe;IAC7C;;;;;OAKG;WACU,mBAAmB,CAC9B,gBAAgB,EAAE,MAAM,EACxB,OAAO,EAAE,CAAC,KAAK,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,KAAK,IAAI,GAChD,OAAO,CAAC,qBAAqB,GAAG,IAAI,CAAC;IAIxC;;;;;OAKG;WACU,mBAAmB,CAC9B,gBAAgB,EAAE,MAAM,EACxB,OAAO,EAAE,CAAC,KAAK,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,KAAK,IAAI,GAChD,OAAO,CAAC,qBAAqB,GAAG,IAAI,CAAC;IAIxC;;;;;;OAMG;mBACkB,gBAAgB;gBA0CzB,UAAU,EAAE,KAAK,CAAC,UAAU,EAAE,KAAK,EAAE,OAAO,KAAK;IAI7D;;;OAGG;IACG,SAAS,IAAI,OAAO,CAAC,OAAO,CAAC;IAInC;;;;;OAKG;YACW,QAAQ;IAKtB;;;OAGG;IACG,MAAM,IAAI,OAAO,CAAC,OAAO,CAAC;IAIhC;;;OAGG;IACG,OAAO,IAAI,OAAO,CAAC,OAAO,CAAC;IAIjC;;;OAGG;IACG,MAAM,IAAI,OAAO,CAAC,OAAO,CAAC;IAIhC;;;;OAIG;IACU,WAAW,CAAC,KAAK,EAAE,MAAM,EAAE,GAAG,OAAO,CAAC,OAAO,CAAC;CAgB5D"}
|
|
@@ -1,7 +1,3 @@
|
|
|
1
|
-
/* Copyright(C) 2024, donavanbecker (https://github.com/donavanbecker). All rights reserved.
|
|
2
|
-
*
|
|
3
|
-
* woplugmini.ts: Switchbot BLE API registration.
|
|
4
|
-
*/
|
|
5
1
|
import { Buffer } from 'node:buffer';
|
|
6
2
|
import { SwitchbotDevice } from '../device.js';
|
|
7
3
|
import { SwitchBotBLEModel, SwitchBotBLEModelFriendlyName, SwitchBotBLEModelName } from '../types/types.js';
|
|
@@ -14,7 +10,7 @@ export class WoPlugMini extends SwitchbotDevice {
|
|
|
14
10
|
* Parses the service data for WoPlugMini US.
|
|
15
11
|
* @param {Buffer} manufacturerData - The manufacturer data buffer.
|
|
16
12
|
* @param {Function} emitLog - The function to emit log messages.
|
|
17
|
-
* @returns {Promise<
|
|
13
|
+
* @returns {Promise<plugMiniUSServiceData | null>} - Parsed service data or null if invalid.
|
|
18
14
|
*/
|
|
19
15
|
static async parseServiceData_US(manufacturerData, emitLog) {
|
|
20
16
|
return this.parseServiceData(manufacturerData, SwitchBotBLEModel.PlugMiniUS, emitLog);
|
|
@@ -23,7 +19,7 @@ export class WoPlugMini extends SwitchbotDevice {
|
|
|
23
19
|
* Parses the service data for WoPlugMini JP.
|
|
24
20
|
* @param {Buffer} manufacturerData - The manufacturer data buffer.
|
|
25
21
|
* @param {Function} emitLog - The function to emit log messages.
|
|
26
|
-
* @returns {Promise<
|
|
22
|
+
* @returns {Promise<plugMiniJPServiceData | null>} - Parsed service data or null if invalid.
|
|
27
23
|
*/
|
|
28
24
|
static async parseServiceData_JP(manufacturerData, emitLog) {
|
|
29
25
|
return this.parseServiceData(manufacturerData, SwitchBotBLEModel.PlugMiniJP, emitLog);
|
|
@@ -33,7 +29,7 @@ export class WoPlugMini extends SwitchbotDevice {
|
|
|
33
29
|
* @param {Buffer} manufacturerData - The manufacturer data buffer.
|
|
34
30
|
* @param {SwitchBotBLEModel} model - The model of the plug mini.
|
|
35
31
|
* @param {Function} emitLog - The function to emit log messages.
|
|
36
|
-
* @returns {Promise<
|
|
32
|
+
* @returns {Promise<plugMiniUSServiceData | plugMiniJPServiceData | null>} - Parsed service data or null if invalid.
|
|
37
33
|
*/
|
|
38
34
|
static async parseServiceData(manufacturerData, model, emitLog) {
|
|
39
35
|
if (manufacturerData.length !== 14) {
|
|
@@ -54,11 +50,11 @@ export class WoPlugMini extends SwitchbotDevice {
|
|
|
54
50
|
const wifiRssi = byte11;
|
|
55
51
|
const overload = !!(byte12 & 0b10000000);
|
|
56
52
|
const currentPower = (((byte12 & 0b01111111) << 8) + byte13) / 10; // in watt
|
|
57
|
-
|
|
58
|
-
model,
|
|
53
|
+
const data = {
|
|
54
|
+
model: model === SwitchBotBLEModel.PlugMiniUS ? SwitchBotBLEModel.PlugMiniUS : SwitchBotBLEModel.PlugMiniJP,
|
|
59
55
|
modelName: SwitchBotBLEModelName.PlugMini,
|
|
60
56
|
modelFriendlyName: SwitchBotBLEModelFriendlyName.PlugMini,
|
|
61
|
-
state,
|
|
57
|
+
state: state ?? 'unknown',
|
|
62
58
|
delay,
|
|
63
59
|
timer,
|
|
64
60
|
syncUtcTime,
|
|
@@ -66,6 +62,10 @@ export class WoPlugMini extends SwitchbotDevice {
|
|
|
66
62
|
overload,
|
|
67
63
|
currentPower,
|
|
68
64
|
};
|
|
65
|
+
return data;
|
|
66
|
+
}
|
|
67
|
+
constructor(peripheral, noble) {
|
|
68
|
+
super(peripheral, noble);
|
|
69
69
|
}
|
|
70
70
|
/**
|
|
71
71
|
* Reads the state of the plug.
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"woplugmini.js","sourceRoot":"","sources":["../../src/device/woplugmini.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"woplugmini.js","sourceRoot":"","sources":["../../src/device/woplugmini.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,4 +1,5 @@
|
|
|
1
1
|
import type { Buffer } from 'node:buffer';
|
|
2
|
+
import type * as Noble from '@stoprocent/noble';
|
|
2
3
|
import type { motionSensorServiceData } from '../types/bledevicestatus.js';
|
|
3
4
|
import { SwitchbotDevice } from '../device.js';
|
|
4
5
|
/**
|
|
@@ -13,5 +14,6 @@ export declare class WoPresence extends SwitchbotDevice {
|
|
|
13
14
|
* @returns {Promise<motionSensorServiceData | null>} - Parsed service data or null if invalid.
|
|
14
15
|
*/
|
|
15
16
|
static parseServiceData(serviceData: Buffer, emitLog: (level: string, message: string) => void): Promise<motionSensorServiceData | null>;
|
|
17
|
+
constructor(peripheral: Noble.Peripheral, noble: typeof Noble);
|
|
16
18
|
}
|
|
17
19
|
//# sourceMappingURL=wopresence.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"wopresence.d.ts","sourceRoot":"","sources":["../../src/device/wopresence.ts"],"names":[],"mappings":"AAIA,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,aAAa,CAAA;AAEzC,OAAO,KAAK,EAAE,uBAAuB,EAAE,MAAM,6BAA6B,CAAA;AAE1E,OAAO,EAAE,eAAe,EAAE,MAAM,cAAc,CAAA;AAG9C;;;GAGG;AACH,qBAAa,UAAW,SAAQ,eAAe;IAC7C;;;;;OAKG;WACU,gBAAgB,CAC3B,WAAW,EAAE,MAAM,EACnB,OAAO,EAAE,CAAC,KAAK,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,KAAK,IAAI,GAChD,OAAO,CAAC,uBAAuB,GAAG,IAAI,CAAC;
|
|
1
|
+
{"version":3,"file":"wopresence.d.ts","sourceRoot":"","sources":["../../src/device/wopresence.ts"],"names":[],"mappings":"AAIA,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,aAAa,CAAA;AAEzC,OAAO,KAAK,KAAK,KAAK,MAAM,mBAAmB,CAAA;AAE/C,OAAO,KAAK,EAAE,uBAAuB,EAAE,MAAM,6BAA6B,CAAA;AAE1E,OAAO,EAAE,eAAe,EAAE,MAAM,cAAc,CAAA;AAG9C;;;GAGG;AACH,qBAAa,UAAW,SAAQ,eAAe;IAC7C;;;;;OAKG;WACU,gBAAgB,CAC3B,WAAW,EAAE,MAAM,EACnB,OAAO,EAAE,CAAC,KAAK,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,KAAK,IAAI,GAChD,OAAO,CAAC,uBAAuB,GAAG,IAAI,CAAC;gBAyB9B,UAAU,EAAE,KAAK,CAAC,UAAU,EAAE,KAAK,EAAE,OAAO,KAAK;CAG9D"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"wopresence.js","sourceRoot":"","sources":["../../src/device/wopresence.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"wopresence.js","sourceRoot":"","sources":["../../src/device/wopresence.ts"],"names":[],"mappings":"AAUA,OAAO,EAAE,eAAe,EAAE,MAAM,cAAc,CAAA;AAC9C,OAAO,EAAE,iBAAiB,EAAE,6BAA6B,EAAE,qBAAqB,EAAE,MAAM,mBAAmB,CAAA;AAE3G;;;GAGG;AACH,MAAM,OAAO,UAAW,SAAQ,eAAe;IAC7C;;;;;OAKG;IACH,MAAM,CAAC,KAAK,CAAC,gBAAgB,CAC3B,WAAmB,EACnB,OAAiD;QAEjD,IAAI,WAAW,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;YAC7B,OAAO,CAAC,YAAY,EAAE,iDAAiD,WAAW,CAAC,MAAM,SAAS,CAAC,CAAA;YACnG,OAAO,IAAI,CAAA;QACb,CAAC;QAED,MAAM,CAAC,KAAK,EAAE,KAAK,EAAE,AAAD,EAAG,AAAD,EAAG,AAAD,EAAG,KAAK,CAAC,GAAG,WAAW,CAAA;QAE/C,MAAM,IAAI,GAA4B;YACpC,KAAK,EAAE,iBAAiB,CAAC,YAAY;YACrC,SAAS,EAAE,qBAAqB,CAAC,YAAY;YAC7C,iBAAiB,EAAE,6BAA6B,CAAC,YAAY;YAC7D,MAAM,EAAE,CAAC,CAAC,CAAC,KAAK,GAAG,UAAU,CAAC;YAC9B,QAAQ,EAAE,CAAC,CAAC,CAAC,KAAK,GAAG,UAAU,CAAC;YAChC,OAAO,EAAE,KAAK,GAAG,UAAU;YAC3B,GAAG,EAAE,CAAC,KAAK,GAAG,UAAU,CAAC,IAAI,CAAC;YAC9B,GAAG,EAAE,CAAC,KAAK,GAAG,UAAU,CAAC,IAAI,CAAC;YAC9B,cAAc,EAAE,CAAC,KAAK,GAAG,UAAU,CAAC,IAAI,CAAC;YACzC,UAAU,EAAE,CAAC,KAAK,GAAG,UAAU,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,KAAK,GAAG,UAAU,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,SAAS;YACnG,QAAQ,EAAE,CAAC,CAAC,CAAC,KAAK,GAAG,UAAU,CAAC;SACjC,CAAA;QAED,OAAO,IAAI,CAAA;IACb,CAAC;IAED,YAAY,UAA4B,EAAE,KAAmB;QAC3D,KAAK,CAAC,UAAU,EAAE,KAAK,CAAC,CAAA;IAC1B,CAAC;CACF"}
|
|
@@ -1,4 +1,5 @@
|
|
|
1
1
|
import type { Buffer } from 'node:buffer';
|
|
2
|
+
import type * as Noble from '@stoprocent/noble';
|
|
2
3
|
import type { meterPlusServiceData, meterServiceData } from '../types/bledevicestatus.js';
|
|
3
4
|
import { SwitchbotDevice } from '../device.js';
|
|
4
5
|
/**
|
|
@@ -20,5 +21,6 @@ export declare class WoSensorTH extends SwitchbotDevice {
|
|
|
20
21
|
* @returns {Promise<meterPlusServiceData | null>} - Parsed service data or null if invalid.
|
|
21
22
|
*/
|
|
22
23
|
static parseServiceData_Plus(serviceData: Buffer, emitLog: (level: string, message: string) => void): Promise<meterPlusServiceData | null>;
|
|
24
|
+
constructor(peripheral: Noble.Peripheral, noble: typeof Noble);
|
|
23
25
|
}
|
|
24
26
|
//# sourceMappingURL=wosensorth.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"wosensorth.d.ts","sourceRoot":"","sources":["../../src/device/wosensorth.ts"],"names":[],"mappings":"AAIA,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,aAAa,CAAA;AAEzC,OAAO,KAAK,EAAE,oBAAoB,EAAE,gBAAgB,EAAE,MAAM,6BAA6B,CAAA;AAEzF,OAAO,EAAE,eAAe,EAAE,MAAM,cAAc,CAAA;AAG9C;;;GAGG;AACH,qBAAa,UAAW,SAAQ,eAAe;IAC7C;;;;;OAKG;WACU,gBAAgB,CAC3B,WAAW,EAAE,MAAM,EACnB,OAAO,EAAE,CAAC,KAAK,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,KAAK,IAAI,GAChD,OAAO,CAAC,gBAAgB,GAAG,IAAI,CAAC;IAuBnC;;;;;OAKG;WACU,qBAAqB,CAChC,WAAW,EAAE,MAAM,EACnB,OAAO,EAAE,CAAC,KAAK,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,KAAK,IAAI,GAChD,OAAO,CAAC,oBAAoB,GAAG,IAAI,CAAC;
|
|
1
|
+
{"version":3,"file":"wosensorth.d.ts","sourceRoot":"","sources":["../../src/device/wosensorth.ts"],"names":[],"mappings":"AAIA,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,aAAa,CAAA;AAEzC,OAAO,KAAK,KAAK,KAAK,MAAM,mBAAmB,CAAA;AAE/C,OAAO,KAAK,EAAE,oBAAoB,EAAE,gBAAgB,EAAE,MAAM,6BAA6B,CAAA;AAEzF,OAAO,EAAE,eAAe,EAAE,MAAM,cAAc,CAAA;AAG9C;;;GAGG;AACH,qBAAa,UAAW,SAAQ,eAAe;IAC7C;;;;;OAKG;WACU,gBAAgB,CAC3B,WAAW,EAAE,MAAM,EACnB,OAAO,EAAE,CAAC,KAAK,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,KAAK,IAAI,GAChD,OAAO,CAAC,gBAAgB,GAAG,IAAI,CAAC;IAuBnC;;;;;OAKG;WACU,qBAAqB,CAChC,WAAW,EAAE,MAAM,EACnB,OAAO,EAAE,CAAC,KAAK,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,KAAK,IAAI,GAChD,OAAO,CAAC,oBAAoB,GAAG,IAAI,CAAC;gBAuB3B,UAAU,EAAE,KAAK,CAAC,UAAU,EAAE,KAAK,EAAE,OAAO,KAAK;CAG9D"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"wosensorth.js","sourceRoot":"","sources":["../../src/device/wosensorth.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"wosensorth.js","sourceRoot":"","sources":["../../src/device/wosensorth.ts"],"names":[],"mappings":"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"}
|
package/dist/device/wostrip.d.ts
CHANGED
|
@@ -1,3 +1,4 @@
|
|
|
1
|
+
import type * as Noble from '@stoprocent/noble';
|
|
1
2
|
import type { stripLightServiceData } from '../types/bledevicestatus.js';
|
|
2
3
|
import { Buffer } from 'node:buffer';
|
|
3
4
|
import { SwitchbotDevice } from '../device.js';
|
|
@@ -13,6 +14,7 @@ export declare class WoStrip extends SwitchbotDevice {
|
|
|
13
14
|
* @returns {Promise<stripLightServiceData | null>} - Parsed service data or null if invalid.
|
|
14
15
|
*/
|
|
15
16
|
static parseServiceData(serviceData: Buffer, emitLog: (level: string, message: string) => void): Promise<stripLightServiceData | null>;
|
|
17
|
+
constructor(peripheral: Noble.Peripheral, noble: typeof Noble);
|
|
16
18
|
/**
|
|
17
19
|
* Reads the state of the strip light.
|
|
18
20
|
* @returns {Promise<boolean>} - Resolves with true if the strip light is ON, false otherwise.
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"wostrip.d.ts","sourceRoot":"","sources":["../../src/device/wostrip.ts"],"names":[],"mappings":"AAIA,OAAO,KAAK,EAAE,qBAAqB,EAAE,MAAM,6BAA6B,CAAA;AAExE,OAAO,EAAE,MAAM,EAAE,MAAM,aAAa,CAAA;AAEpC,OAAO,EAAE,eAAe,EAAE,MAAM,cAAc,CAAA;AAG9C;;;GAGG;AACH,qBAAa,OAAQ,SAAQ,eAAe;IAC1C;;;;;OAKG;WACU,gBAAgB,CAC3B,WAAW,EAAE,MAAM,EACnB,OAAO,EAAE,CAAC,KAAK,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,KAAK,IAAI,GAChD,OAAO,CAAC,qBAAqB,GAAG,IAAI,CAAC;
|
|
1
|
+
{"version":3,"file":"wostrip.d.ts","sourceRoot":"","sources":["../../src/device/wostrip.ts"],"names":[],"mappings":"AAIA,OAAO,KAAK,KAAK,KAAK,MAAM,mBAAmB,CAAA;AAE/C,OAAO,KAAK,EAAE,qBAAqB,EAAE,MAAM,6BAA6B,CAAA;AAExE,OAAO,EAAE,MAAM,EAAE,MAAM,aAAa,CAAA;AAEpC,OAAO,EAAE,eAAe,EAAE,MAAM,cAAc,CAAA;AAG9C;;;GAGG;AACH,qBAAa,OAAQ,SAAQ,eAAe;IAC1C;;;;;OAKG;WACU,gBAAgB,CAC3B,WAAW,EAAE,MAAM,EACnB,OAAO,EAAE,CAAC,KAAK,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,KAAK,IAAI,GAChD,OAAO,CAAC,qBAAqB,GAAG,IAAI,CAAC;gBAoC5B,UAAU,EAAE,KAAK,CAAC,UAAU,EAAE,KAAK,EAAE,OAAO,KAAK;IAI7D;;;OAGG;IACG,SAAS,IAAI,OAAO,CAAC,OAAO,CAAC;IAInC;;;;;OAKG;IACU,QAAQ,CAAC,YAAY,EAAE,MAAM,EAAE,GAAG,OAAO,CAAC,OAAO,CAAC;IAK/D;;;OAGG;IACG,MAAM,IAAI,OAAO,CAAC,OAAO,CAAC;IAIhC;;;OAGG;IACG,OAAO,IAAI,OAAO,CAAC,OAAO,CAAC;IAIjC;;;;OAIG;IACG,aAAa,CAAC,UAAU,EAAE,MAAM,GAAG,OAAO,CAAC,OAAO,CAAC;IAOzD;;;;;;;OAOG;IACG,MAAM,CAAC,UAAU,EAAE,MAAM,EAAE,GAAG,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,GAAG,OAAO,CAAC,OAAO,CAAC;IAa5F;;;;;OAKG;IACU,iBAAiB,CAAC,KAAK,EAAE,MAAM,EAAE,GAAG,OAAO,CAAC,OAAO,CAAC;CAelE"}
|
package/dist/device/wostrip.js
CHANGED
|
@@ -44,6 +44,9 @@ export class WoStrip extends SwitchbotDevice {
|
|
|
44
44
|
};
|
|
45
45
|
return data;
|
|
46
46
|
}
|
|
47
|
+
constructor(peripheral, noble) {
|
|
48
|
+
super(peripheral, noble);
|
|
49
|
+
}
|
|
47
50
|
/**
|
|
48
51
|
* Reads the state of the strip light.
|
|
49
52
|
* @returns {Promise<boolean>} - Resolves with true if the strip light is ON, false otherwise.
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"wostrip.js","sourceRoot":"","sources":["../../src/device/wostrip.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"wostrip.js","sourceRoot":"","sources":["../../src/device/wostrip.ts"],"names":[],"mappings":"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"}
|