node-switchbot 2.5.0-beta.31 → 2.5.0-beta.33

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (104) hide show
  1. package/dist/advertising.d.ts +3 -3
  2. package/dist/advertising.d.ts.map +1 -1
  3. package/dist/advertising.js +26 -25
  4. package/dist/advertising.js.map +1 -1
  5. package/dist/device/woblindtilt.d.ts +3 -4
  6. package/dist/device/woblindtilt.d.ts.map +1 -1
  7. package/dist/device/woblindtilt.js +7 -3
  8. package/dist/device/woblindtilt.js.map +1 -1
  9. package/dist/device/wobulb.d.ts +2 -3
  10. package/dist/device/wobulb.d.ts.map +1 -1
  11. package/dist/device/wobulb.js +8 -4
  12. package/dist/device/wobulb.js.map +1 -1
  13. package/dist/device/woceilinglight.d.ts +4 -4
  14. package/dist/device/woceilinglight.d.ts.map +1 -1
  15. package/dist/device/woceilinglight.js +10 -5
  16. package/dist/device/woceilinglight.js.map +1 -1
  17. package/dist/device/wocontact.d.ts +2 -3
  18. package/dist/device/wocontact.d.ts.map +1 -1
  19. package/dist/device/wocontact.js +3 -3
  20. package/dist/device/wocontact.js.map +1 -1
  21. package/dist/device/wocurtain.d.ts +2 -3
  22. package/dist/device/wocurtain.d.ts.map +1 -1
  23. package/dist/device/wocurtain.js +7 -3
  24. package/dist/device/wocurtain.js.map +1 -1
  25. package/dist/device/wohand.d.ts +2 -3
  26. package/dist/device/wohand.d.ts.map +1 -1
  27. package/dist/device/wohand.js +7 -3
  28. package/dist/device/wohand.js.map +1 -1
  29. package/dist/device/wohub2.d.ts +2 -3
  30. package/dist/device/wohub2.d.ts.map +1 -1
  31. package/dist/device/wohub2.js +3 -3
  32. package/dist/device/wohub2.js.map +1 -1
  33. package/dist/device/wohumi.d.ts +2 -3
  34. package/dist/device/wohumi.d.ts.map +1 -1
  35. package/dist/device/wohumi.js +7 -3
  36. package/dist/device/wohumi.js.map +1 -1
  37. package/dist/device/woiosensorth.d.ts +2 -3
  38. package/dist/device/woiosensorth.d.ts.map +1 -1
  39. package/dist/device/woiosensorth.js +4 -4
  40. package/dist/device/woiosensorth.js.map +1 -1
  41. package/dist/device/woplugmini.d.ts +5 -4
  42. package/dist/device/woplugmini.d.ts.map +1 -1
  43. package/dist/device/woplugmini.js +13 -7
  44. package/dist/device/woplugmini.js.map +1 -1
  45. package/dist/device/wopresence.d.ts +2 -3
  46. package/dist/device/wopresence.d.ts.map +1 -1
  47. package/dist/device/wopresence.js +3 -3
  48. package/dist/device/wopresence.js.map +1 -1
  49. package/dist/device/wosensorth.d.ts +4 -4
  50. package/dist/device/wosensorth.d.ts.map +1 -1
  51. package/dist/device/wosensorth.js +6 -5
  52. package/dist/device/wosensorth.js.map +1 -1
  53. package/dist/device/wosmartlock.d.ts +8 -3
  54. package/dist/device/wosmartlock.d.ts.map +1 -1
  55. package/dist/device/wosmartlock.js +9 -3
  56. package/dist/device/wosmartlock.js.map +1 -1
  57. package/dist/device/wosmartlockpro.d.ts +8 -3
  58. package/dist/device/wosmartlockpro.d.ts.map +1 -1
  59. package/dist/device/wosmartlockpro.js +9 -3
  60. package/dist/device/wosmartlockpro.js.map +1 -1
  61. package/dist/device/wostrip.d.ts +2 -3
  62. package/dist/device/wostrip.d.ts.map +1 -1
  63. package/dist/device/wostrip.js +3 -3
  64. package/dist/device/wostrip.js.map +1 -1
  65. package/dist/device.d.ts +9 -1
  66. package/dist/device.d.ts.map +1 -1
  67. package/dist/device.js +13 -2
  68. package/dist/device.js.map +1 -1
  69. package/dist/switchbot-ble.d.ts.map +1 -1
  70. package/dist/switchbot-ble.js +2 -2
  71. package/dist/switchbot-ble.js.map +1 -1
  72. package/dist/test/advertising.test.js +7 -4
  73. package/dist/test/advertising.test.js.map +1 -1
  74. package/dist/test/woblindtilt.test.js +75 -1
  75. package/dist/test/woblindtilt.test.js.map +1 -1
  76. package/dist/test/wobulb.test.js +94 -1
  77. package/dist/test/wobulb.test.js.map +1 -1
  78. package/dist/test/woceilinglight.test.js +80 -1
  79. package/dist/test/woceilinglight.test.js.map +1 -1
  80. package/dist/test/wocontact.test.js +64 -1
  81. package/dist/test/wocontact.test.js.map +1 -1
  82. package/dist/test/wocurtain.test.js +74 -1
  83. package/dist/test/wocurtain.test.js.map +1 -1
  84. package/dist/test/wohand.test.js +55 -1
  85. package/dist/test/wohand.test.js.map +1 -1
  86. package/dist/test/wohub2.test.js +79 -1
  87. package/dist/test/wohub2.test.js.map +1 -1
  88. package/dist/test/wohumi.test.js +81 -1
  89. package/dist/test/wohumi.test.js.map +1 -1
  90. package/dist/test/woiosensorth.test.js +39 -1
  91. package/dist/test/woiosensorth.test.js.map +1 -1
  92. package/dist/test/woplugmini.test.js +113 -1
  93. package/dist/test/woplugmini.test.js.map +1 -1
  94. package/dist/test/wopresence.test.js +67 -1
  95. package/dist/test/wopresence.test.js.map +1 -1
  96. package/dist/test/wosensorth.test.js +50 -1
  97. package/dist/test/wosensorth.test.js.map +1 -1
  98. package/dist/test/wosmartlock.test.js +150 -1
  99. package/dist/test/wosmartlock.test.js.map +1 -1
  100. package/dist/test/wosmartlockpro.test.js +150 -1
  101. package/dist/test/wosmartlockpro.test.js.map +1 -1
  102. package/dist/test/wostrip.test.js +101 -1
  103. package/dist/test/wostrip.test.js.map +1 -1
  104. package/package.json +1 -1
@@ -1,11 +1,9 @@
1
1
  import type * as Noble from '@stoprocent/noble';
2
- import type { SwitchBotBLE } from './switchbot-ble.js';
3
2
  import type { Ad } from './types/types.js';
4
3
  /**
5
4
  * Represents the advertising data parser for SwitchBot devices.
6
5
  */
7
6
  export declare class Advertising {
8
- static switchBotBLE: SwitchBotBLE;
9
7
  constructor();
10
8
  /**
11
9
  * Parses the advertisement data coming from SwitchBot device.
@@ -14,9 +12,10 @@ export declare class Advertising {
14
12
  * and extracts relevant information based on the device type.
15
13
  *
16
14
  * @param {Noble.Peripheral} peripheral - The peripheral device object from noble.
15
+ * @param {Function} emitLog - The function to emit log messages.
17
16
  * @returns {Promise<Ad | null>} - An object containing parsed data specific to the SwitchBot device type, or `null` if the device is not recognized.
18
17
  */
19
- static parse(peripheral: Noble.Peripheral): Promise<Ad | null>;
18
+ static parse(peripheral: Noble.Peripheral, emitLog: (level: string, message: string) => void): Promise<Ad | null>;
20
19
  /**
21
20
  * Validates if the buffer is a valid Buffer object with a minimum length.
22
21
  *
@@ -30,6 +29,7 @@ export declare class Advertising {
30
29
  * @param {string} model - The device model.
31
30
  * @param {Buffer} serviceData - The service data buffer.
32
31
  * @param {Buffer} manufacturerData - The manufacturer data buffer.
32
+ * @param {Function} emitLog - The function to emit log messages.
33
33
  * @returns {Promise<any>} - The parsed service data.
34
34
  */
35
35
  private static parseServiceData;
@@ -1 +1 @@
1
- {"version":3,"file":"advertising.d.ts","sourceRoot":"","sources":["../src/advertising.ts"],"names":[],"mappings":"AAIA,OAAO,KAAK,KAAK,KAAK,MAAM,mBAAmB,CAAA;AAE/C,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,oBAAoB,CAAA;AACtD,OAAO,KAAK,EAAE,EAAE,EAAe,MAAM,kBAAkB,CAAA;AAqBvD;;GAEG;AACH,qBAAa,WAAW;IACtB,MAAM,CAAC,YAAY,EAAE,YAAY,CAAA;;IAGjC;;;;;;;;OAQG;WACU,KAAK,CAChB,UAAU,EAAE,KAAK,CAAC,UAAU,GAC3B,OAAO,CAAC,EAAE,GAAG,IAAI,CAAC;IAgCrB;;;;;OAKG;IACH,OAAO,CAAC,MAAM,CAAC,cAAc;IAI7B;;;;;;;OAOG;mBACkB,gBAAgB;IAiDrC;;;;;OAKG;IACH,OAAO,CAAC,MAAM,CAAC,aAAa;CAY7B"}
1
+ {"version":3,"file":"advertising.d.ts","sourceRoot":"","sources":["../src/advertising.ts"],"names":[],"mappings":"AAIA,OAAO,KAAK,KAAK,KAAK,MAAM,mBAAmB,CAAA;AAE/C,OAAO,KAAK,EAAE,EAAE,EAAe,MAAM,kBAAkB,CAAA;AAqBvD;;GAEG;AACH,qBAAa,WAAW;;IAGtB;;;;;;;;;OASG;WACU,KAAK,CAChB,UAAU,EAAE,KAAK,CAAC,UAAU,EAC5B,OAAO,EAAE,CAAC,KAAK,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,KAAK,IAAI,GAChD,OAAO,CAAC,EAAE,GAAG,IAAI,CAAC;IAgCrB;;;;;OAKG;IACH,OAAO,CAAC,MAAM,CAAC,cAAc;IAI7B;;;;;;;;OAQG;mBACkB,gBAAgB;IAkDrC;;;;;OAKG;IACH,OAAO,CAAC,MAAM,CAAC,aAAa;CAY7B"}
@@ -19,7 +19,6 @@ import { SwitchBotBLEModel } from './types/types.js';
19
19
  * Represents the advertising data parser for SwitchBot devices.
20
20
  */
21
21
  export class Advertising {
22
- static switchBotBLE;
23
22
  constructor() { }
24
23
  /**
25
24
  * Parses the advertisement data coming from SwitchBot device.
@@ -28,9 +27,10 @@ export class Advertising {
28
27
  * and extracts relevant information based on the device type.
29
28
  *
30
29
  * @param {Noble.Peripheral} peripheral - The peripheral device object from noble.
30
+ * @param {Function} emitLog - The function to emit log messages.
31
31
  * @returns {Promise<Ad | null>} - An object containing parsed data specific to the SwitchBot device type, or `null` if the device is not recognized.
32
32
  */
33
- static async parse(peripheral) {
33
+ static async parse(peripheral, emitLog) {
34
34
  const ad = peripheral.advertisement;
35
35
  if (!ad || !ad.serviceData) {
36
36
  return null;
@@ -41,9 +41,9 @@ export class Advertising {
41
41
  return null;
42
42
  }
43
43
  const model = serviceData.subarray(0, 1).toString('utf8');
44
- const sd = await Advertising.parseServiceData(model, serviceData, manufacturerData);
44
+ const sd = await Advertising.parseServiceData(model, serviceData, manufacturerData, emitLog);
45
45
  if (!sd) {
46
- this.switchBotBLE.emitLog('error', `[parseAdvertising.${peripheral.id}.${model}] return null, parsed serviceData empty!`);
46
+ emitLog('error', `[parseAdvertising.${peripheral.id}.${model}] return null, parsed serviceData empty!`);
47
47
  return null;
48
48
  }
49
49
  const address = Advertising.formatAddress(peripheral);
@@ -53,7 +53,7 @@ export class Advertising {
53
53
  rssi: peripheral.rssi,
54
54
  serviceData: { model, ...sd },
55
55
  };
56
- this.switchBotBLE.emitLog('debug', `[parseAdvertising.${peripheral.id}.${model}] return ${JSON.stringify(data)}`);
56
+ emitLog('debug', `[parseAdvertising.${peripheral.id}.${model}] return ${JSON.stringify(data)}`);
57
57
  return data;
58
58
  }
59
59
  /**
@@ -71,49 +71,50 @@ export class Advertising {
71
71
  * @param {string} model - The device model.
72
72
  * @param {Buffer} serviceData - The service data buffer.
73
73
  * @param {Buffer} manufacturerData - The manufacturer data buffer.
74
+ * @param {Function} emitLog - The function to emit log messages.
74
75
  * @returns {Promise<any>} - The parsed service data.
75
76
  */
76
- static async parseServiceData(model, serviceData, manufacturerData) {
77
+ static async parseServiceData(model, serviceData, manufacturerData, emitLog) {
77
78
  switch (model) {
78
79
  case SwitchBotBLEModel.Bot:
79
- return WoHand.parseServiceData(serviceData);
80
+ return WoHand.parseServiceData(serviceData, emitLog);
80
81
  case SwitchBotBLEModel.Curtain:
81
82
  case SwitchBotBLEModel.Curtain3:
82
- return WoCurtain.parseServiceData(serviceData, manufacturerData);
83
+ return WoCurtain.parseServiceData(serviceData, manufacturerData, emitLog);
83
84
  case SwitchBotBLEModel.Humidifier:
84
- return WoHumi.parseServiceData(serviceData);
85
+ return WoHumi.parseServiceData(serviceData, emitLog);
85
86
  case SwitchBotBLEModel.Meter:
86
- return WoSensorTH.parseServiceData(serviceData);
87
+ return WoSensorTH.parseServiceData(serviceData, emitLog);
87
88
  case SwitchBotBLEModel.MeterPlus:
88
- return WoSensorTH.parseServiceData_Plus(serviceData);
89
+ return WoSensorTH.parseServiceData_Plus(serviceData, emitLog);
89
90
  case SwitchBotBLEModel.Hub2:
90
- return WoHub2.parseServiceData(manufacturerData);
91
+ return WoHub2.parseServiceData(manufacturerData, emitLog);
91
92
  case SwitchBotBLEModel.OutdoorMeter:
92
- return WoIOSensorTH.parseServiceData(serviceData, manufacturerData);
93
+ return WoIOSensorTH.parseServiceData(serviceData, manufacturerData, emitLog);
93
94
  case SwitchBotBLEModel.MotionSensor:
94
- return WoPresence.parseServiceData(serviceData);
95
+ return WoPresence.parseServiceData(serviceData, emitLog);
95
96
  case SwitchBotBLEModel.ContactSensor:
96
- return WoContact.parseServiceData(serviceData);
97
+ return WoContact.parseServiceData(serviceData, emitLog);
97
98
  case SwitchBotBLEModel.ColorBulb:
98
- return WoBulb.parseServiceData(serviceData, manufacturerData);
99
+ return WoBulb.parseServiceData(serviceData, manufacturerData, emitLog);
99
100
  case SwitchBotBLEModel.CeilingLight:
100
- return WoCeilingLight.parseServiceData(manufacturerData);
101
+ return WoCeilingLight.parseServiceData(manufacturerData, emitLog);
101
102
  case SwitchBotBLEModel.CeilingLightPro:
102
- return WoCeilingLight.parseServiceData_Pro(manufacturerData);
103
+ return WoCeilingLight.parseServiceData_Pro(manufacturerData, emitLog);
103
104
  case SwitchBotBLEModel.StripLight:
104
- return WoStrip.parseServiceData(serviceData);
105
+ return WoStrip.parseServiceData(serviceData, emitLog);
105
106
  case SwitchBotBLEModel.PlugMiniUS:
106
- return WoPlugMini.parseServiceData_US(manufacturerData);
107
+ return WoPlugMini.parseServiceData_US(manufacturerData, emitLog);
107
108
  case SwitchBotBLEModel.PlugMiniJP:
108
- return WoPlugMini.parseServiceData_JP(manufacturerData);
109
+ return WoPlugMini.parseServiceData_JP(manufacturerData, emitLog);
109
110
  case SwitchBotBLEModel.Lock:
110
- return WoSmartLock.parseServiceData(serviceData, manufacturerData);
111
+ return WoSmartLock.parseServiceData(serviceData, manufacturerData, emitLog);
111
112
  case SwitchBotBLEModel.LockPro:
112
- return WoSmartLockPro.parseServiceData(serviceData, manufacturerData);
113
+ return WoSmartLockPro.parseServiceData(serviceData, manufacturerData, emitLog);
113
114
  case SwitchBotBLEModel.BlindTilt:
114
- return WoBlindTilt.parseServiceData(serviceData, manufacturerData);
115
+ return WoBlindTilt.parseServiceData(serviceData, manufacturerData, emitLog);
115
116
  default:
116
- this.switchBotBLE.emitLog('debug', `[parseAdvertising.${model}] return null, model "${model}" not available!`);
117
+ emitLog('debug', `[parseAdvertising.${model}] return null, model "${model}" not available!`);
117
118
  return null;
118
119
  }
119
120
  }
@@ -1 +1 @@
1
- {"version":3,"file":"advertising.js","sourceRoot":"","sources":["../src/advertising.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"advertising.js","sourceRoot":"","sources":["../src/advertising.ts"],"names":[],"mappings":"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"}
@@ -1,4 +1,3 @@
1
- import type { SwitchBotBLE } from '../switchbot-ble.js';
2
1
  import { Buffer } from 'node:buffer';
3
2
  import { SwitchbotDevice } from '../device.js';
4
3
  /**
@@ -7,15 +6,15 @@ import { SwitchbotDevice } from '../device.js';
7
6
  */
8
7
  export declare class WoBlindTilt extends SwitchbotDevice {
9
8
  private _reverse;
10
- static switchBotBLE: SwitchBotBLE;
11
9
  /**
12
10
  * Parses the service data and manufacturer data for the WoBlindTilt device.
13
11
  * @param {Buffer} serviceData - The service data buffer.
14
12
  * @param {Buffer} manufacturerData - The manufacturer data buffer.
13
+ * @param {Function} emitLog - The function to emit log messages.
15
14
  * @param {boolean} [reverse] - Whether to reverse the tilt percentage.
16
15
  * @returns {Promise<object | null>} - The parsed data object or null if the data is invalid.
17
16
  */
18
- static parseServiceData(serviceData: Buffer, manufacturerData: Buffer, reverse?: boolean): Promise<object | null>;
17
+ static parseServiceData(serviceData: Buffer, manufacturerData: Buffer, emitLog: (level: string, message: string) => void, reverse?: boolean): Promise<object | null>;
19
18
  /**
20
19
  * Opens the blind tilt to the fully open position.
21
20
  * @returns {Promise<void>}
@@ -71,6 +70,6 @@ export declare class WoBlindTilt extends SwitchbotDevice {
71
70
  * @returns {Promise<void>}
72
71
  * @private
73
72
  */
74
- private operateBlindTilt;
73
+ operateBlindTilt(bytes: number[]): Promise<void>;
75
74
  }
76
75
  //# sourceMappingURL=woblindtilt.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"woblindtilt.d.ts","sourceRoot":"","sources":["../../src/device/woblindtilt.ts"],"names":[],"mappings":"AAIA,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,qBAAqB,CAAA;AAEvD,OAAO,EAAE,MAAM,EAAE,MAAM,aAAa,CAAA;AAEpC,OAAO,EAAE,eAAe,EAAE,MAAM,cAAc,CAAA;AAG9C;;;GAGG;AACH,qBAAa,WAAY,SAAQ,eAAe;IAC9C,OAAO,CAAC,QAAQ,CAAiB;IACjC,MAAM,CAAC,YAAY,EAAE,YAAY,CAAA;IAEjC;;;;;;OAMG;WACU,gBAAgB,CAC3B,WAAW,EAAE,MAAM,EACnB,gBAAgB,EAAE,MAAM,EACxB,OAAO,GAAE,OAAe,GACvB,OAAO,CAAC,MAAM,GAAG,IAAI,CAAC;IA6BzB;;;OAGG;IACG,IAAI,IAAI,OAAO,CAAC,IAAI,CAAC;IAI3B;;;OAGG;IACG,OAAO,IAAI,OAAO,CAAC,IAAI,CAAC;IAI9B;;;OAGG;IACG,SAAS,IAAI,OAAO,CAAC,IAAI,CAAC;IAIhC;;;OAGG;IACG,KAAK,IAAI,OAAO,CAAC,IAAI,CAAC;IAS5B;;;OAGG;IACG,WAAW,IAAI,OAAO,CAAC,MAAM,CAAC;IAKpC;;;;;OAKG;YACW,YAAY;IAO1B;;;OAGG;IACG,YAAY,IAAI,OAAO,CAAC,MAAM,GAAG,IAAI,CAAC;IA2C5C;;;OAGG;IACG,KAAK,IAAI,OAAO,CAAC,IAAI,CAAC;IAI5B;;;;;OAKG;IACG,QAAQ,CAAC,OAAO,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IAU5D;;;;;OAKG;YACW,gBAAgB;CAO/B"}
1
+ {"version":3,"file":"woblindtilt.d.ts","sourceRoot":"","sources":["../../src/device/woblindtilt.ts"],"names":[],"mappings":"AAIA,OAAO,EAAE,MAAM,EAAE,MAAM,aAAa,CAAA;AAEpC,OAAO,EAAE,eAAe,EAAE,MAAM,cAAc,CAAA;AAG9C;;;GAGG;AACH,qBAAa,WAAY,SAAQ,eAAe;IAC9C,OAAO,CAAC,QAAQ,CAAiB;IAEjC;;;;;;;OAOG;WACU,gBAAgB,CAC3B,WAAW,EAAE,MAAM,EACnB,gBAAgB,EAAE,MAAM,EACxB,OAAO,EAAE,CAAC,KAAK,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,KAAK,IAAI,EACjD,OAAO,GAAE,OAAe,GACvB,OAAO,CAAC,MAAM,GAAG,IAAI,CAAC;IA6BzB;;;OAGG;IACG,IAAI,IAAI,OAAO,CAAC,IAAI,CAAC;IAI3B;;;OAGG;IACG,OAAO,IAAI,OAAO,CAAC,IAAI,CAAC;IAI9B;;;OAGG;IACG,SAAS,IAAI,OAAO,CAAC,IAAI,CAAC;IAIhC;;;OAGG;IACG,KAAK,IAAI,OAAO,CAAC,IAAI,CAAC;IAS5B;;;OAGG;IACG,WAAW,IAAI,OAAO,CAAC,MAAM,CAAC;IAKpC;;;;;OAKG;YACW,YAAY;IAO1B;;;OAGG;IACG,YAAY,IAAI,OAAO,CAAC,MAAM,GAAG,IAAI,CAAC;IA2C5C;;;OAGG;IACG,KAAK,IAAI,OAAO,CAAC,IAAI,CAAC;IAI5B;;;;;OAKG;IACG,QAAQ,CAAC,OAAO,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IAU5D;;;;;OAKG;IACU,gBAAgB,CAAC,KAAK,EAAE,MAAM,EAAE,GAAG,OAAO,CAAC,IAAI,CAAC;CAO9D"}
@@ -1,3 +1,7 @@
1
+ /* Copyright(C) 2024, donavanbecker (https://github.com/donavanbecker). All rights reserved.
2
+ *
3
+ * woblindtilt.ts: Switchbot BLE API registration.
4
+ */
1
5
  import { Buffer } from 'node:buffer';
2
6
  import { SwitchbotDevice } from '../device.js';
3
7
  import { SwitchBotBLEModel, SwitchBotBLEModelFriendlyName, SwitchBotBLEModelName } from '../types/types.js';
@@ -7,17 +11,17 @@ import { SwitchBotBLEModel, SwitchBotBLEModelFriendlyName, SwitchBotBLEModelName
7
11
  */
8
12
  export class WoBlindTilt extends SwitchbotDevice {
9
13
  _reverse = false;
10
- static switchBotBLE;
11
14
  /**
12
15
  * Parses the service data and manufacturer data for the WoBlindTilt device.
13
16
  * @param {Buffer} serviceData - The service data buffer.
14
17
  * @param {Buffer} manufacturerData - The manufacturer data buffer.
18
+ * @param {Function} emitLog - The function to emit log messages.
15
19
  * @param {boolean} [reverse] - Whether to reverse the tilt percentage.
16
20
  * @returns {Promise<object | null>} - The parsed data object or null if the data is invalid.
17
21
  */
18
- static async parseServiceData(serviceData, manufacturerData, reverse = false) {
22
+ static async parseServiceData(serviceData, manufacturerData, emitLog, reverse = false) {
19
23
  if (![5, 6].includes(manufacturerData.length)) {
20
- this.switchBotBLE.emitLog('error', `[parseServiceDataForWoBlindTilt] Buffer length ${manufacturerData.length} !== 5 or 6!`);
24
+ emitLog('error', `[parseServiceDataForWoBlindTilt] Buffer length ${manufacturerData.length} !== 5 or 6!`);
21
25
  return null;
22
26
  }
23
27
  const byte2 = serviceData.readUInt8(2);
@@ -1 +1 @@
1
- {"version":3,"file":"woblindtilt.js","sourceRoot":"","sources":["../../src/device/woblindtilt.ts"],"names":[],"mappings":"AAMA,OAAO,EAAE,MAAM,EAAE,MAAM,aAAa,CAAA;AAEpC,OAAO,EAAE,eAAe,EAAE,MAAM,cAAc,CAAA;AAC9C,OAAO,EAAE,iBAAiB,EAAE,6BAA6B,EAAE,qBAAqB,EAAE,MAAM,mBAAmB,CAAA;AAE3G;;;GAGG;AACH,MAAM,OAAO,WAAY,SAAQ,eAAe;IACtC,QAAQ,GAAY,KAAK,CAAA;IACjC,MAAM,CAAC,YAAY,CAAc;IAEjC;;;;;;OAMG;IACH,MAAM,CAAC,KAAK,CAAC,gBAAgB,CAC3B,WAAmB,EACnB,gBAAwB,EACxB,UAAmB,KAAK;QAExB,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,QAAQ,CAAC,gBAAgB,CAAC,MAAM,CAAC,EAAE,CAAC;YAC9C,IAAI,CAAC,YAAY,CAAC,OAAO,CAAC,OAAO,EAAE,kDAAkD,gBAAgB,CAAC,MAAM,cAAc,CAAC,CAAA;YAC3H,OAAO,IAAI,CAAA;QACb,CAAC;QAED,MAAM,KAAK,GAAG,WAAW,CAAC,SAAS,CAAC,CAAC,CAAC,CAAA;QACtC,MAAM,KAAK,GAAG,gBAAgB,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAA;QAE1C,MAAM,IAAI,GAAG,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC,GAAG,CAAC,KAAK,CAAC,SAAS,CAAC,CAAC,CAAC,GAAG,UAAU,EAAE,GAAG,CAAC,EAAE,CAAC,CAAC,CAAA;QACxE,MAAM,QAAQ,GAAG,CAAC,CAAC,CAAC,KAAK,GAAG,UAAU,CAAC,CAAA;QACvC,MAAM,UAAU,GAAG,CAAC,KAAK,CAAC,SAAS,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,GAAG,UAAU,CAAA;QACzD,MAAM,WAAW,GAAG,CAAC,CAAC,CAAC,KAAK,CAAC,SAAS,CAAC,CAAC,CAAC,GAAG,UAAU,CAAC,CAAA;QACvD,MAAM,cAAc,GAAG,KAAK,CAAC,SAAS,CAAC,CAAC,CAAC,CAAA;QACzC,MAAM,OAAO,GAAG,WAAW,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,KAAK,GAAG,UAAU,CAAC,CAAC,CAAC,IAAI,CAAA;QAElE,OAAO;YACL,KAAK,EAAE,iBAAiB,CAAC,SAAS;YAClC,SAAS,EAAE,qBAAqB,CAAC,SAAS;YAC1C,iBAAiB,EAAE,6BAA6B,CAAC,SAAS;YAC1D,WAAW;YACX,OAAO;YACP,QAAQ;YACR,IAAI,EAAE,OAAO,CAAC,CAAC,CAAC,GAAG,GAAG,IAAI,CAAC,CAAC,CAAC,IAAI;YACjC,UAAU;YACV,cAAc;SACf,CAAA;IACH,CAAC;IAED;;;OAGG;IACH,KAAK,CAAC,IAAI;QACR,MAAM,IAAI,CAAC,gBAAgB,CAAC,CAAC,IAAI,EAAE,IAAI,EAAE,IAAI,EAAE,IAAI,EAAE,IAAI,EAAE,IAAI,EAAE,IAAI,CAAC,CAAC,CAAA;IACzE,CAAC;IAED;;;OAGG;IACH,KAAK,CAAC,OAAO;QACX,MAAM,IAAI,CAAC,gBAAgB,CAAC,CAAC,IAAI,EAAE,IAAI,EAAE,IAAI,EAAE,IAAI,EAAE,IAAI,EAAE,IAAI,EAAE,IAAI,CAAC,CAAC,CAAA;IACzE,CAAC;IAED;;;OAGG;IACH,KAAK,CAAC,SAAS;QACb,MAAM,IAAI,CAAC,gBAAgB,CAAC,CAAC,IAAI,EAAE,IAAI,EAAE,IAAI,EAAE,IAAI,EAAE,IAAI,EAAE,IAAI,EAAE,IAAI,CAAC,CAAC,CAAA;IACzE,CAAC;IAED;;;OAGG;IACH,KAAK,CAAC,KAAK;QACT,MAAM,QAAQ,GAAG,MAAM,IAAI,CAAC,WAAW,EAAE,CAAA;QACzC,IAAI,QAAQ,GAAG,EAAE,EAAE,CAAC;YAClB,MAAM,IAAI,CAAC,OAAO,EAAE,CAAA;QACtB,CAAC;aAAM,CAAC;YACN,MAAM,IAAI,CAAC,SAAS,EAAE,CAAA;QACxB,CAAC;IACH,CAAC;IAED;;;OAGG;IACH,KAAK,CAAC,WAAW;QACf,MAAM,YAAY,GAAG,MAAM,IAAI,CAAC,YAAY,CAAC,MAAM,CAAC,CAAA;QACpD,OAAO,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,IAAI,CAAC,GAAG,CAAC,YAAY,EAAE,GAAG,CAAC,CAAC,CAAA;IACjD,CAAC;IAED;;;;;OAKG;IACK,KAAK,CAAC,YAAY,CAAC,GAAW;QACpC,IAAI,GAAG,KAAK,MAAM,EAAE,CAAC;YACnB,OAAO,EAAE,CAAA,CAAC,gBAAgB;QAC5B,CAAC;QACD,MAAM,IAAI,KAAK,CAAC,gBAAgB,GAAG,EAAE,CAAC,CAAA;IACxC,CAAC;IAED;;;OAGG;IACH,KAAK,CAAC,YAAY;QAChB,MAAM,IAAI,GAAQ,MAAM,IAAI,CAAC,YAAY,EAAE,CAAA;QAC3C,IAAI,CAAC,IAAI,EAAE,CAAC;YACV,OAAO,IAAI,CAAA;QACb,CAAC;QAED,MAAM,IAAI,GAAG,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,GAAG,CAAC,EAAE,CAAC,CAAC,CAAA;QAChD,MAAM,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,GAAG,UAAU,CAAC,CAAA;QAC5C,IAAI,OAAO,GAAG,KAAK,CAAA;QACnB,IAAI,OAAO,GAAG,KAAK,CAAA;QACnB,IAAI,EAAE,GAAG,KAAK,CAAA;QAEd,IAAI,MAAM,EAAE,CAAC;YACX,OAAO,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,GAAG,UAAU,CAAC,CAAA;YACvC,OAAO,GAAG,CAAC,OAAO,IAAI,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,GAAG,UAAU,CAAC,CAAA;YACnD,IAAI,OAAO,EAAE,CAAC;gBACZ,MAAM,IAAI,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,GAAG,UAAU,CAAC,CAAA;gBAC1C,EAAE,GAAG,IAAI,CAAC,CAAC,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,IAAI,CAAA;YACnC,CAAC;iBAAM,CAAC;gBACN,EAAE,GAAG,IAAI,GAAG,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC,CAAC,IAAI,GAAG,EAAE,CAAA;YAC5C,CAAC;QACH,CAAC;QAED,OAAO;YACL,OAAO,EAAE,IAAI,CAAC,CAAC,CAAC;YAChB,QAAQ,EAAE,IAAI,CAAC,CAAC,CAAC,GAAG,IAAI;YACxB,KAAK,EAAE,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,GAAG,UAAU,CAAC;YACpC,KAAK,EAAE,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,GAAG,UAAU,CAAC;YACpC,UAAU,EAAE,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,GAAG,UAAU,CAAC;YACzC,WAAW,EAAE,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,GAAG,UAAU,CAAC;YAC1C,UAAU,EAAE,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,GAAG,UAAU,CAAC;YACzC,QAAQ,EAAE,MAAM;YAChB,eAAe,EAAE;gBACf,OAAO,EAAE,MAAM,IAAI,OAAO;gBAC1B,OAAO,EAAE,MAAM,IAAI,OAAO;gBAC1B,EAAE,EAAE,MAAM,IAAI,EAAE;gBAChB,IAAI,EAAE,MAAM,IAAI,CAAC,EAAE;aACpB;YACD,IAAI,EAAE,IAAI,CAAC,QAAQ,CAAC,CAAC,CAAC,GAAG,GAAG,IAAI,CAAC,CAAC,CAAC,IAAI;YACvC,MAAM,EAAE,IAAI,CAAC,CAAC,CAAC;SAChB,CAAA;IACH,CAAC;IAED;;;OAGG;IACH,KAAK,CAAC,KAAK;QACT,MAAM,IAAI,CAAC,gBAAgB,CAAC,CAAC,IAAI,EAAE,IAAI,EAAE,IAAI,EAAE,IAAI,EAAE,IAAI,EAAE,IAAI,CAAC,CAAC,CAAA;IACnE,CAAC;IAED;;;;;OAKG;IACH,KAAK,CAAC,QAAQ,CAAC,OAAe,EAAE,IAAY;QAC1C,IAAI,OAAO,OAAO,KAAK,QAAQ,IAAI,OAAO,GAAG,CAAC,IAAI,OAAO,GAAG,GAAG,EAAE,CAAC;YAChE,MAAM,IAAI,UAAU,CAAC,4CAA4C,CAAC,CAAA;QACpE,CAAC;QACD,IAAI,OAAO,IAAI,KAAK,QAAQ,IAAI,IAAI,GAAG,CAAC,IAAI,IAAI,GAAG,CAAC,EAAE,CAAC;YACrD,MAAM,IAAI,UAAU,CAAC,uCAAuC,CAAC,CAAA;QAC/D,CAAC;QACD,MAAM,IAAI,CAAC,gBAAgB,CAAC,CAAC,IAAI,EAAE,IAAI,EAAE,IAAI,EAAE,IAAI,EAAE,IAAI,EAAE,IAAI,EAAE,OAAO,CAAC,CAAC,CAAA;IAC5E,CAAC;IAED;;;;;OAKG;IACK,KAAK,CAAC,gBAAgB,CAAC,KAAe;QAC5C,MAAM,MAAM,GAAG,MAAM,CAAC,IAAI,CAAC,KAAK,CAAC,CAAA;QACjC,MAAM,MAAM,GAAG,MAAM,IAAI,CAAC,OAAO,CAAC,MAAM,CAAC,CAAA;QACzC,IAAI,MAAM,CAAC,MAAM,KAAK,CAAC,IAAI,MAAM,CAAC,SAAS,CAAC,CAAC,CAAC,KAAK,IAAI,EAAE,CAAC;YACxD,MAAM,IAAI,KAAK,CAAC,mCAAmC,MAAM,CAAC,QAAQ,CAAC,KAAK,CAAC,EAAE,CAAC,CAAA;QAC9E,CAAC;IACH,CAAC;CACF"}
1
+ {"version":3,"file":"woblindtilt.js","sourceRoot":"","sources":["../../src/device/woblindtilt.ts"],"names":[],"mappings":"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"}
@@ -1,4 +1,3 @@
1
- import type { SwitchBotBLE } from '../switchbot-ble.js';
2
1
  import { Buffer } from 'node:buffer';
3
2
  import { SwitchbotDevice } from '../device.js';
4
3
  /**
@@ -6,14 +5,14 @@ import { SwitchbotDevice } from '../device.js';
6
5
  * @see https://github.com/OpenWonderLabs/SwitchBotAPI-BLE/blob/latest/devicetypes/colorbulb.md
7
6
  */
8
7
  export declare class WoBulb extends SwitchbotDevice {
9
- static switchBotBLE: SwitchBotBLE;
10
8
  /**
11
9
  * Parses the service data for WoBulb.
12
10
  * @param {Buffer} serviceData - The service data buffer.
13
11
  * @param {Buffer} manufacturerData - The manufacturer data buffer.
12
+ * @param {Function} emitLog - The function to emit log messages.
14
13
  * @returns {Promise<object | null>} - Parsed service data or null if invalid.
15
14
  */
16
- static parseServiceData(serviceData: Buffer, manufacturerData: Buffer): Promise<object | null>;
15
+ static parseServiceData(serviceData: Buffer, manufacturerData: Buffer, emitLog: (level: string, message: string) => void): Promise<object | null>;
17
16
  /**
18
17
  * Reads the state of the bulb.
19
18
  * @returns {Promise<boolean>} - Resolves with a boolean indicating whether the bulb is ON (true) or OFF (false).
@@ -1 +1 @@
1
- {"version":3,"file":"wobulb.d.ts","sourceRoot":"","sources":["../../src/device/wobulb.ts"],"names":[],"mappings":"AAIA,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,qBAAqB,CAAA;AAEvD,OAAO,EAAE,MAAM,EAAE,MAAM,aAAa,CAAA;AAEpC,OAAO,EAAE,eAAe,EAAE,MAAM,cAAc,CAAA;AAG9C;;;GAGG;AACH,qBAAa,MAAO,SAAQ,eAAe;IACzC,MAAM,CAAC,YAAY,EAAE,YAAY,CAAA;IACjC;;;;;OAKG;WACU,gBAAgB,CAC3B,WAAW,EAAE,MAAM,EACnB,gBAAgB,EAAE,MAAM,GACvB,OAAO,CAAC,MAAM,GAAG,IAAI,CAAC;IAyCzB;;;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;;;;OAIG;IACG,mBAAmB,CAAC,iBAAiB,EAAE,MAAM,GAAG,OAAO,CAAC,OAAO,CAAC;IAOtE;;;;;;;OAOG;IACG,MAAM,CAAC,UAAU,EAAE,MAAM,EAAE,GAAG,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,GAAG,OAAO,CAAC,OAAO,CAAC;IAO5F;;;;;OAKG;YACW,WAAW;CAY1B"}
1
+ {"version":3,"file":"wobulb.d.ts","sourceRoot":"","sources":["../../src/device/wobulb.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;;;;;;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,MAAM,GAAG,IAAI,CAAC;IAyCzB;;;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;;;;OAIG;IACG,mBAAmB,CAAC,iBAAiB,EAAE,MAAM,GAAG,OAAO,CAAC,OAAO,CAAC;IAOtE;;;;;;;OAOG;IACG,MAAM,CAAC,UAAU,EAAE,MAAM,EAAE,GAAG,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,GAAG,OAAO,CAAC,OAAO,CAAC;IAO5F;;;;;OAKG;YACW,WAAW;CAY1B"}
@@ -1,3 +1,7 @@
1
+ /* Copyright(C) 2024, donavanbecker (https://github.com/donavanbecker). All rights reserved.
2
+ *
3
+ * wobulb.ts: Switchbot BLE API registration.
4
+ */
1
5
  import { Buffer } from 'node:buffer';
2
6
  import { SwitchbotDevice } from '../device.js';
3
7
  import { SwitchBotBLEModel, SwitchBotBLEModelFriendlyName, SwitchBotBLEModelName } from '../types/types.js';
@@ -6,20 +10,20 @@ import { SwitchBotBLEModel, SwitchBotBLEModelFriendlyName, SwitchBotBLEModelName
6
10
  * @see https://github.com/OpenWonderLabs/SwitchBotAPI-BLE/blob/latest/devicetypes/colorbulb.md
7
11
  */
8
12
  export class WoBulb extends SwitchbotDevice {
9
- static switchBotBLE;
10
13
  /**
11
14
  * Parses the service data for WoBulb.
12
15
  * @param {Buffer} serviceData - The service data buffer.
13
16
  * @param {Buffer} manufacturerData - The manufacturer data buffer.
17
+ * @param {Function} emitLog - The function to emit log messages.
14
18
  * @returns {Promise<object | null>} - Parsed service data or null if invalid.
15
19
  */
16
- static async parseServiceData(serviceData, manufacturerData) {
20
+ static async parseServiceData(serviceData, manufacturerData, emitLog) {
17
21
  if (serviceData.length !== 18) {
18
- this.switchBotBLE.emitLog('error', `[parseServiceDataForWoBulb] Buffer length ${serviceData.length} !== 18!`);
22
+ emitLog('error', `[parseServiceDataForWoBulb] Buffer length ${serviceData.length} !== 18!`);
19
23
  return null;
20
24
  }
21
25
  if (manufacturerData.length !== 13) {
22
- this.switchBotBLE.emitLog('error', `[parseServiceDataForWoBulb] Buffer length ${manufacturerData.length} !== 13!`);
26
+ emitLog('error', `[parseServiceDataForWoBulb] Buffer length ${manufacturerData.length} !== 13!`);
23
27
  return null;
24
28
  }
25
29
  const [, byte1, , byte3, byte4, byte5, byte6, byte7, byte8, byte9, byte10,] = manufacturerData;
@@ -1 +1 @@
1
- {"version":3,"file":"wobulb.js","sourceRoot":"","sources":["../../src/device/wobulb.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"wobulb.js","sourceRoot":"","sources":["../../src/device/wobulb.ts"],"names":[],"mappings":"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"}
@@ -1,4 +1,3 @@
1
- import type { SwitchBotBLE } from '../switchbot-ble.js';
2
1
  import { Buffer } from 'node:buffer';
3
2
  import { SwitchbotDevice } from '../device.js';
4
3
  /**
@@ -6,19 +5,20 @@ import { SwitchbotDevice } from '../device.js';
6
5
  * @see https://github.com/OpenWonderLabs/SwitchBotAPI-BLE/blob/latest/devicetypes/colorbulb.md
7
6
  */
8
7
  export declare class WoCeilingLight extends SwitchbotDevice {
9
- static switchBotBLE: SwitchBotBLE;
10
8
  /**
11
9
  * Parses the service data for WoCeilingLight.
12
10
  * @param {Buffer} manufacturerData - The manufacturer data buffer.
11
+ * @param {Function} emitLog - The function to emit log messages.
13
12
  * @returns {Promise<object | null>} - Parsed service data or null if invalid.
14
13
  */
15
- static parseServiceData(manufacturerData: Buffer): Promise<object | null>;
14
+ static parseServiceData(manufacturerData: Buffer, emitLog: (level: string, message: string) => void): Promise<object | null>;
16
15
  /**
17
16
  * Parses the service data for WoCeilingLight Pro.
18
17
  * @param {Buffer} manufacturerData - The manufacturer data buffer.
18
+ * @param {Function} emitLog - The function to emit log messages.
19
19
  * @returns {Promise<object | null>} - Parsed service data or null if invalid.
20
20
  */
21
- static parseServiceData_Pro(manufacturerData: Buffer): Promise<object | null>;
21
+ static parseServiceData_Pro(manufacturerData: Buffer, emitLog: (level: string, message: string) => void): Promise<object | null>;
22
22
  /**
23
23
  * Reads the state of the ceiling light.
24
24
  * @returns {Promise<boolean>} - Resolves with a boolean indicating whether the light is ON (true) or OFF (false).
@@ -1 +1 @@
1
- {"version":3,"file":"woceilinglight.d.ts","sourceRoot":"","sources":["../../src/device/woceilinglight.ts"],"names":[],"mappings":"AAIA,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,qBAAqB,CAAA;AAEvD,OAAO,EAAE,MAAM,EAAE,MAAM,aAAa,CAAA;AAEpC,OAAO,EAAE,eAAe,EAAE,MAAM,cAAc,CAAA;AAG9C;;;GAGG;AACH,qBAAa,cAAe,SAAQ,eAAe;IACjD,MAAM,CAAC,YAAY,EAAE,YAAY,CAAA;IACjC;;;;OAIG;WACU,gBAAgB,CAC3B,gBAAgB,EAAE,MAAM,GACvB,OAAO,CAAC,MAAM,GAAG,IAAI,CAAC;IAqCzB;;;;OAIG;WACU,oBAAoB,CAC/B,gBAAgB,EAAE,MAAM,GACvB,OAAO,CAAC,MAAM,GAAG,IAAI,CAAC;IAqCzB;;;OAGG;IACG,SAAS,IAAI,OAAO,CAAC,OAAO,CAAC;IAInC;;;;OAIG;IACG,QAAQ,CAAC,YAAY,EAAE,MAAM,EAAE,GAAG,OAAO,CAAC,OAAO,CAAC;IAKxD;;;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;;;;OAIG;IACG,mBAAmB,CAAC,iBAAiB,EAAE,MAAM,GAAG,OAAO,CAAC,OAAO,CAAC;IAOtE;;;;;;;OAOG;IACG,MAAM,CAAC,UAAU,EAAE,MAAM,EAAE,GAAG,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,GAAG,OAAO,CAAC,OAAO,CAAC;IAY5F;;;;OAIG;IACU,mBAAmB,CAAC,KAAK,EAAE,MAAM,EAAE,GAAG,OAAO,CAAC,OAAO,CAAC;CAYpE"}
1
+ {"version":3,"file":"woceilinglight.d.ts","sourceRoot":"","sources":["../../src/device/woceilinglight.ts"],"names":[],"mappings":"AAIA,OAAO,EAAE,MAAM,EAAE,MAAM,aAAa,CAAA;AAEpC,OAAO,EAAE,eAAe,EAAE,MAAM,cAAc,CAAA;AAG9C;;;GAGG;AACH,qBAAa,cAAe,SAAQ,eAAe;IACjD;;;;;OAKG;WACU,gBAAgB,CAC3B,gBAAgB,EAAE,MAAM,EACxB,OAAO,EAAE,CAAC,KAAK,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,KAAK,IAAI,GAChD,OAAO,CAAC,MAAM,GAAG,IAAI,CAAC;IAqCzB;;;;;OAKG;WACU,oBAAoB,CAC/B,gBAAgB,EAAE,MAAM,EACxB,OAAO,EAAE,CAAC,KAAK,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,KAAK,IAAI,GAChD,OAAO,CAAC,MAAM,GAAG,IAAI,CAAC;IAqCzB;;;OAGG;IACG,SAAS,IAAI,OAAO,CAAC,OAAO,CAAC;IAInC;;;;OAIG;IACG,QAAQ,CAAC,YAAY,EAAE,MAAM,EAAE,GAAG,OAAO,CAAC,OAAO,CAAC;IAKxD;;;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;;;;OAIG;IACG,mBAAmB,CAAC,iBAAiB,EAAE,MAAM,GAAG,OAAO,CAAC,OAAO,CAAC;IAOtE;;;;;;;OAOG;IACG,MAAM,CAAC,UAAU,EAAE,MAAM,EAAE,GAAG,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,GAAG,OAAO,CAAC,OAAO,CAAC;IAY5F;;;;OAIG;IACU,mBAAmB,CAAC,KAAK,EAAE,MAAM,EAAE,GAAG,OAAO,CAAC,OAAO,CAAC;CAYpE"}
@@ -1,3 +1,7 @@
1
+ /* Copyright(C) 2024, donavanbecker (https://github.com/donavanbecker). All rights reserved.
2
+ *
3
+ * woceilinglight.ts: Switchbot BLE API registration.
4
+ */
1
5
  import { Buffer } from 'node:buffer';
2
6
  import { SwitchbotDevice } from '../device.js';
3
7
  import { SwitchBotBLEModel, SwitchBotBLEModelFriendlyName, SwitchBotBLEModelName } from '../types/types.js';
@@ -6,15 +10,15 @@ import { SwitchBotBLEModel, SwitchBotBLEModelFriendlyName, SwitchBotBLEModelName
6
10
  * @see https://github.com/OpenWonderLabs/SwitchBotAPI-BLE/blob/latest/devicetypes/colorbulb.md
7
11
  */
8
12
  export class WoCeilingLight extends SwitchbotDevice {
9
- static switchBotBLE;
10
13
  /**
11
14
  * Parses the service data for WoCeilingLight.
12
15
  * @param {Buffer} manufacturerData - The manufacturer data buffer.
16
+ * @param {Function} emitLog - The function to emit log messages.
13
17
  * @returns {Promise<object | null>} - Parsed service data or null if invalid.
14
18
  */
15
- static async parseServiceData(manufacturerData) {
19
+ static async parseServiceData(manufacturerData, emitLog) {
16
20
  if (manufacturerData.length !== 13) {
17
- this.switchBotBLE.emitLog('error', `[parseServiceDataForWoCeilingLight] Buffer length ${manufacturerData.length} !== 13!`);
21
+ emitLog('error', `[parseServiceDataForWoCeilingLight] Buffer length ${manufacturerData.length} !== 13!`);
18
22
  return null;
19
23
  }
20
24
  const [, byte1, , byte3, byte4, byte5, byte6, byte7, byte8, byte9, byte10,] = manufacturerData;
@@ -39,11 +43,12 @@ export class WoCeilingLight extends SwitchbotDevice {
39
43
  /**
40
44
  * Parses the service data for WoCeilingLight Pro.
41
45
  * @param {Buffer} manufacturerData - The manufacturer data buffer.
46
+ * @param {Function} emitLog - The function to emit log messages.
42
47
  * @returns {Promise<object | null>} - Parsed service data or null if invalid.
43
48
  */
44
- static async parseServiceData_Pro(manufacturerData) {
49
+ static async parseServiceData_Pro(manufacturerData, emitLog) {
45
50
  if (manufacturerData.length !== 13) {
46
- this.switchBotBLE.emitLog('error', `[parseServiceDataForWoCeilingLightPro] Buffer length ${manufacturerData.length} !== 13!`);
51
+ emitLog('error', `[parseServiceDataForWoCeilingLightPro] Buffer length ${manufacturerData.length} !== 13!`);
47
52
  return null;
48
53
  }
49
54
  const [, byte1, , byte3, byte4, byte5, byte6, byte7, byte8, byte9, byte10,] = manufacturerData;
@@ -1 +1 @@
1
- {"version":3,"file":"woceilinglight.js","sourceRoot":"","sources":["../../src/device/woceilinglight.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"woceilinglight.js","sourceRoot":"","sources":["../../src/device/woceilinglight.ts"],"names":[],"mappings":"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"}
@@ -1,17 +1,16 @@
1
1
  import type { Buffer } from 'node:buffer';
2
- import type { SwitchBotBLE } from '../switchbot-ble.js';
3
2
  import { SwitchbotDevice } from '../device.js';
4
3
  /**
5
4
  * Class representing a WoContact device.
6
5
  * @see https://github.com/OpenWonderLabs/SwitchBotAPI-BLE/blob/latest/devicetypes/contactsensor.md
7
6
  */
8
7
  export declare class WoContact extends SwitchbotDevice {
9
- static switchBotBLE: SwitchBotBLE;
10
8
  /**
11
9
  * Parses the service data for WoContact.
12
10
  * @param {Buffer} serviceData - The service data buffer.
11
+ * @param {Function} emitLog - The function to emit log messages.
13
12
  * @returns {Promise<object | null>} - Parsed service data or null if invalid.
14
13
  */
15
- static parseServiceData(serviceData: Buffer): Promise<object | null>;
14
+ static parseServiceData(serviceData: Buffer, emitLog: (level: string, message: string) => void): Promise<object | null>;
16
15
  }
17
16
  //# sourceMappingURL=wocontact.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"wocontact.d.ts","sourceRoot":"","sources":["../../src/device/wocontact.ts"],"names":[],"mappings":"AAIA,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,aAAa,CAAA;AAEzC,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,qBAAqB,CAAA;AAEvD,OAAO,EAAE,eAAe,EAAE,MAAM,cAAc,CAAA;AAG9C;;;GAGG;AACH,qBAAa,SAAU,SAAQ,eAAe;IAC5C,MAAM,CAAC,YAAY,EAAE,YAAY,CAAA;IACjC;;;;OAIG;WACU,gBAAgB,CAC3B,WAAW,EAAE,MAAM,GAClB,OAAO,CAAC,MAAM,GAAG,IAAI,CAAC;CAgC1B"}
1
+ {"version":3,"file":"wocontact.d.ts","sourceRoot":"","sources":["../../src/device/wocontact.ts"],"names":[],"mappings":"AAIA,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,aAAa,CAAA;AAEzC,OAAO,EAAE,eAAe,EAAE,MAAM,cAAc,CAAA;AAG9C;;;GAGG;AACH,qBAAa,SAAU,SAAQ,eAAe;IAC5C;;;;;OAKG;WACU,gBAAgB,CAC3B,WAAW,EAAE,MAAM,EACnB,OAAO,EAAE,CAAC,KAAK,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,KAAK,IAAI,GAChD,OAAO,CAAC,MAAM,GAAG,IAAI,CAAC;CAgC1B"}
@@ -5,15 +5,15 @@ import { SwitchBotBLEModel, SwitchBotBLEModelFriendlyName, SwitchBotBLEModelName
5
5
  * @see https://github.com/OpenWonderLabs/SwitchBotAPI-BLE/blob/latest/devicetypes/contactsensor.md
6
6
  */
7
7
  export class WoContact extends SwitchbotDevice {
8
- static switchBotBLE;
9
8
  /**
10
9
  * Parses the service data for WoContact.
11
10
  * @param {Buffer} serviceData - The service data buffer.
11
+ * @param {Function} emitLog - The function to emit log messages.
12
12
  * @returns {Promise<object | null>} - Parsed service data or null if invalid.
13
13
  */
14
- static async parseServiceData(serviceData) {
14
+ static async parseServiceData(serviceData, emitLog) {
15
15
  if (serviceData.length !== 9) {
16
- this.switchBotBLE.emitLog('error', `[parseServiceDataForWoContact] Buffer length ${serviceData.length} !== 9!`);
16
+ emitLog('error', `[parseServiceDataForWoContact] Buffer length ${serviceData.length} !== 9!`);
17
17
  return null;
18
18
  }
19
19
  const [byte1, byte2, byte3, , , , , , byte8] = serviceData;
@@ -1 +1 @@
1
- {"version":3,"file":"wocontact.js","sourceRoot":"","sources":["../../src/device/wocontact.ts"],"names":[],"mappings":"AAQA,OAAO,EAAE,eAAe,EAAE,MAAM,cAAc,CAAA;AAC9C,OAAO,EAAE,iBAAiB,EAAE,6BAA6B,EAAE,qBAAqB,EAAE,MAAM,mBAAmB,CAAA;AAE3G;;;GAGG;AACH,MAAM,OAAO,SAAU,SAAQ,eAAe;IAC5C,MAAM,CAAC,YAAY,CAAc;IACjC;;;;OAIG;IACH,MAAM,CAAC,KAAK,CAAC,gBAAgB,CAC3B,WAAmB;QAEnB,IAAI,WAAW,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;YAC7B,IAAI,CAAC,YAAY,CAAC,OAAO,CAAC,OAAO,EAAE,gDAAgD,WAAW,CAAC,MAAM,SAAS,CAAC,CAAA;YAC/G,OAAO,IAAI,CAAA;QACb,CAAC;QAED,MAAM,CAAC,KAAK,EAAE,KAAK,EAAE,KAAK,EAAE,AAAD,EAAG,AAAD,EAAG,AAAD,EAAG,AAAD,EAAG,AAAD,EAAG,KAAK,CAAC,GAAG,WAAW,CAAA;QAE1D,MAAM,SAAS,GAAG,CAAC,KAAK,IAAI,CAAC,CAAC,GAAG,UAAU,CAAA;QAC3C,MAAM,MAAM,GAAG,OAAO,CAAC,KAAK,GAAG,UAAU,CAAC,CAAA;QAC1C,MAAM,QAAQ,GAAG,OAAO,CAAC,KAAK,GAAG,UAAU,CAAC,CAAA;QAC5C,MAAM,OAAO,GAAG,KAAK,GAAG,UAAU,CAAA;QAClC,MAAM,YAAY,GAAG,OAAO,CAAC,KAAK,GAAG,UAAU,CAAC,CAAA;QAChD,MAAM,eAAe,GAAG,OAAO,CAAC,KAAK,GAAG,UAAU,CAAC,CAAA;QACnD,MAAM,UAAU,GAAG,KAAK,GAAG,UAAU,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,MAAM,CAAA;QACzD,MAAM,YAAY,GAAG,KAAK,GAAG,UAAU,CAAA;QACvC,MAAM,SAAS,GAAG,SAAS,KAAK,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,SAAS,KAAK,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,mBAAmB,CAAA;QAE5F,OAAO;YACL,KAAK,EAAE,iBAAiB,CAAC,aAAa;YACtC,SAAS,EAAE,qBAAqB,CAAC,aAAa;YAC9C,iBAAiB,EAAE,6BAA6B,CAAC,aAAa;YAC9D,QAAQ;YACR,MAAM;YACN,OAAO;YACP,YAAY;YACZ,eAAe;YACf,UAAU;YACV,YAAY;YACZ,SAAS;SACV,CAAA;IACH,CAAC;CACF"}
1
+ {"version":3,"file":"wocontact.js","sourceRoot":"","sources":["../../src/device/wocontact.ts"],"names":[],"mappings":"AAMA,OAAO,EAAE,eAAe,EAAE,MAAM,cAAc,CAAA;AAC9C,OAAO,EAAE,iBAAiB,EAAE,6BAA6B,EAAE,qBAAqB,EAAE,MAAM,mBAAmB,CAAA;AAE3G;;;GAGG;AACH,MAAM,OAAO,SAAU,SAAQ,eAAe;IAC5C;;;;;OAKG;IACH,MAAM,CAAC,KAAK,CAAC,gBAAgB,CAC3B,WAAmB,EACnB,OAAiD;QAEjD,IAAI,WAAW,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;YAC7B,OAAO,CAAC,OAAO,EAAE,gDAAgD,WAAW,CAAC,MAAM,SAAS,CAAC,CAAA;YAC7F,OAAO,IAAI,CAAA;QACb,CAAC;QAED,MAAM,CAAC,KAAK,EAAE,KAAK,EAAE,KAAK,EAAE,AAAD,EAAG,AAAD,EAAG,AAAD,EAAG,AAAD,EAAG,AAAD,EAAG,KAAK,CAAC,GAAG,WAAW,CAAA;QAE1D,MAAM,SAAS,GAAG,CAAC,KAAK,IAAI,CAAC,CAAC,GAAG,UAAU,CAAA;QAC3C,MAAM,MAAM,GAAG,OAAO,CAAC,KAAK,GAAG,UAAU,CAAC,CAAA;QAC1C,MAAM,QAAQ,GAAG,OAAO,CAAC,KAAK,GAAG,UAAU,CAAC,CAAA;QAC5C,MAAM,OAAO,GAAG,KAAK,GAAG,UAAU,CAAA;QAClC,MAAM,YAAY,GAAG,OAAO,CAAC,KAAK,GAAG,UAAU,CAAC,CAAA;QAChD,MAAM,eAAe,GAAG,OAAO,CAAC,KAAK,GAAG,UAAU,CAAC,CAAA;QACnD,MAAM,UAAU,GAAG,KAAK,GAAG,UAAU,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,MAAM,CAAA;QACzD,MAAM,YAAY,GAAG,KAAK,GAAG,UAAU,CAAA;QACvC,MAAM,SAAS,GAAG,SAAS,KAAK,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,SAAS,KAAK,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,mBAAmB,CAAA;QAE5F,OAAO;YACL,KAAK,EAAE,iBAAiB,CAAC,aAAa;YACtC,SAAS,EAAE,qBAAqB,CAAC,aAAa;YAC9C,iBAAiB,EAAE,6BAA6B,CAAC,aAAa;YAC9D,QAAQ;YACR,MAAM;YACN,OAAO;YACP,YAAY;YACZ,eAAe;YACf,UAAU;YACV,YAAY;YACZ,SAAS;SACV,CAAA;IACH,CAAC;CACF"}
@@ -1,4 +1,3 @@
1
- import type { SwitchBotBLE } from '../switchbot-ble.js';
2
1
  import { Buffer } from 'node:buffer';
3
2
  import { SwitchbotDevice } from '../device.js';
4
3
  /**
@@ -7,15 +6,15 @@ import { SwitchbotDevice } from '../device.js';
7
6
  * @see https://github.com/OpenWonderLabs/SwitchBotAPI-BLE/blob/latest/devicetypes/curtain3.md
8
7
  */
9
8
  export declare class WoCurtain extends SwitchbotDevice {
10
- static switchBotBLE: SwitchBotBLE;
11
9
  /**
12
10
  * Parses the service data for WoCurtain.
13
11
  * @param {Buffer} serviceData - The service data buffer.
14
12
  * @param {Buffer} manufacturerData - The manufacturer data buffer.
13
+ * @param {Function} emitLog - The function to emit log messages.
15
14
  * @param {boolean} [reverse] - Whether to reverse the position.
16
15
  * @returns {Promise<object | null>} - Parsed service data or null if invalid.
17
16
  */
18
- static parseServiceData(serviceData: Buffer, manufacturerData: Buffer, reverse?: boolean): Promise<object | null>;
17
+ static parseServiceData(serviceData: Buffer, manufacturerData: Buffer, emitLog: (level: string, message: string) => void, reverse?: boolean): Promise<object | null>;
19
18
  /**
20
19
  * Opens the curtain.
21
20
  * @param {number} [mode] - Running mode (0x01 = QuietDrift, 0xFF = Default).
@@ -1 +1 @@
1
- {"version":3,"file":"wocurtain.d.ts","sourceRoot":"","sources":["../../src/device/wocurtain.ts"],"names":[],"mappings":"AAIA,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,qBAAqB,CAAA;AAEvD,OAAO,EAAE,MAAM,EAAE,MAAM,aAAa,CAAA;AAEpC,OAAO,EAAE,eAAe,EAAE,MAAM,cAAc,CAAA;AAG9C;;;;GAIG;AACH,qBAAa,SAAU,SAAQ,eAAe;IAC5C,MAAM,CAAC,YAAY,EAAE,YAAY,CAAA;IACjC;;;;;;OAMG;WACU,gBAAgB,CAC3B,WAAW,EAAE,MAAM,EACnB,gBAAgB,EAAE,MAAM,EACxB,OAAO,GAAE,OAAe,GACvB,OAAO,CAAC,MAAM,GAAG,IAAI,CAAC;IA8CzB;;;;OAIG;IACG,IAAI,CAAC,IAAI,GAAE,MAAa,GAAG,OAAO,CAAC,IAAI,CAAC;IAI9C;;;;OAIG;IACG,KAAK,CAAC,IAAI,GAAE,MAAa,GAAG,OAAO,CAAC,IAAI,CAAC;IAI/C;;;OAGG;IACG,KAAK,IAAI,OAAO,CAAC,IAAI,CAAC;IAI5B;;;;;OAKG;IACG,QAAQ,CAAC,OAAO,EAAE,MAAM,EAAE,IAAI,GAAE,MAAa,GAAG,OAAO,CAAC,IAAI,CAAC;IAQnE;;;;OAIG;IACU,cAAc,CAAC,KAAK,EAAE,MAAM,EAAE,GAAG,OAAO,CAAC,IAAI,CAAC;CAS5D"}
1
+ {"version":3,"file":"wocurtain.d.ts","sourceRoot":"","sources":["../../src/device/wocurtain.ts"],"names":[],"mappings":"AAIA,OAAO,EAAE,MAAM,EAAE,MAAM,aAAa,CAAA;AAEpC,OAAO,EAAE,eAAe,EAAE,MAAM,cAAc,CAAA;AAG9C;;;;GAIG;AACH,qBAAa,SAAU,SAAQ,eAAe;IAC5C;;;;;;;OAOG;WACU,gBAAgB,CAC3B,WAAW,EAAE,MAAM,EACnB,gBAAgB,EAAE,MAAM,EACxB,OAAO,EAAE,CAAC,KAAK,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,KAAK,IAAI,EACjD,OAAO,GAAE,OAAe,GACvB,OAAO,CAAC,MAAM,GAAG,IAAI,CAAC;IA8CzB;;;;OAIG;IACG,IAAI,CAAC,IAAI,GAAE,MAAa,GAAG,OAAO,CAAC,IAAI,CAAC;IAI9C;;;;OAIG;IACG,KAAK,CAAC,IAAI,GAAE,MAAa,GAAG,OAAO,CAAC,IAAI,CAAC;IAI/C;;;OAGG;IACG,KAAK,IAAI,OAAO,CAAC,IAAI,CAAC;IAI5B;;;;;OAKG;IACG,QAAQ,CAAC,OAAO,EAAE,MAAM,EAAE,IAAI,GAAE,MAAa,GAAG,OAAO,CAAC,IAAI,CAAC;IAQnE;;;;OAIG;IACU,cAAc,CAAC,KAAK,EAAE,MAAM,EAAE,GAAG,OAAO,CAAC,IAAI,CAAC;CAS5D"}
@@ -1,3 +1,7 @@
1
+ /* Copyright(C) 2024, donavanbecker (https://github.com/donavanbecker). All rights reserved.
2
+ *
3
+ * wocurtain.ts: Switchbot BLE API registration.
4
+ */
1
5
  import { Buffer } from 'node:buffer';
2
6
  import { SwitchbotDevice } from '../device.js';
3
7
  import { SwitchBotBLEModelFriendlyName, SwitchBotBLEModelName } from '../types/types.js';
@@ -7,17 +11,17 @@ import { SwitchBotBLEModelFriendlyName, SwitchBotBLEModelName } from '../types/t
7
11
  * @see https://github.com/OpenWonderLabs/SwitchBotAPI-BLE/blob/latest/devicetypes/curtain3.md
8
12
  */
9
13
  export class WoCurtain extends SwitchbotDevice {
10
- static switchBotBLE;
11
14
  /**
12
15
  * Parses the service data for WoCurtain.
13
16
  * @param {Buffer} serviceData - The service data buffer.
14
17
  * @param {Buffer} manufacturerData - The manufacturer data buffer.
18
+ * @param {Function} emitLog - The function to emit log messages.
15
19
  * @param {boolean} [reverse] - Whether to reverse the position.
16
20
  * @returns {Promise<object | null>} - Parsed service data or null if invalid.
17
21
  */
18
- static async parseServiceData(serviceData, manufacturerData, reverse = false) {
22
+ static async parseServiceData(serviceData, manufacturerData, emitLog, reverse = false) {
19
23
  if (![5, 6].includes(serviceData.length)) {
20
- this.switchBotBLE.emitLog('error', `[parseServiceDataForWoCurtain] Buffer length ${serviceData.length} !== 5 or 6!`);
24
+ emitLog('error', `[parseServiceDataForWoCurtain] Buffer length ${serviceData.length} !== 5 or 6!`);
21
25
  return null;
22
26
  }
23
27
  const byte1 = serviceData.readUInt8(1);
@@ -1 +1 @@
1
- {"version":3,"file":"wocurtain.js","sourceRoot":"","sources":["../../src/device/wocurtain.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"wocurtain.js","sourceRoot":"","sources":["../../src/device/wocurtain.ts"],"names":[],"mappings":"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"}