homebridge-tsvesync 1.0.69 → 1.0.71
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/.clinerules +10 -0
- package/dist/accessories/air-purifier.accessory.d.ts +9 -0
- package/dist/accessories/air-purifier.accessory.d.ts.map +1 -1
- package/dist/accessories/air-purifier.accessory.js +189 -50
- package/dist/accessories/air-purifier.accessory.js.map +1 -1
- package/dist/accessories/humidifier.accessory.d.ts.map +1 -1
- package/dist/accessories/humidifier.accessory.js +124 -21
- package/dist/accessories/humidifier.accessory.js.map +1 -1
- package/package.json +2 -2
- package/src/accessories/air-purifier.accessory.ts +209 -40
- package/src/accessories/humidifier.accessory.ts +141 -23
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"humidifier.accessory.js","sourceRoot":"","sources":["../../src/accessories/humidifier.accessory.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"humidifier.accessory.js","sourceRoot":"","sources":["../../src/accessories/humidifier.accessory.ts"],"names":[],"mappings":"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"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "homebridge-tsvesync",
|
|
3
|
-
"version": "1.0.
|
|
3
|
+
"version": "1.0.71",
|
|
4
4
|
"description": "Homebridge plugin for VeSync devices including Levoit air purifiers, humidifiers, and Etekcity smart outlets",
|
|
5
5
|
"main": "dist/index.js",
|
|
6
6
|
"scripts": {
|
|
@@ -98,7 +98,7 @@
|
|
|
98
98
|
"axios": "^1.6.5",
|
|
99
99
|
"dotenv": "^16.3.1",
|
|
100
100
|
"js-yaml": "^4.1.0",
|
|
101
|
-
"tsvesync": "1.0.
|
|
101
|
+
"tsvesync": "1.0.71"
|
|
102
102
|
},
|
|
103
103
|
"devDependencies": {
|
|
104
104
|
"@types/jest": "^29.5.11",
|
|
@@ -3,9 +3,34 @@ import { BaseAccessory } from './base.accessory';
|
|
|
3
3
|
import { TSVESyncPlatform } from '../platform';
|
|
4
4
|
import { DeviceCapabilities, VeSyncAirPurifier } from '../types/device.types';
|
|
5
5
|
|
|
6
|
+
// Extended interface to include LV-series specific methods and properties
|
|
7
|
+
interface ExtendedVeSyncAirPurifier extends VeSyncAirPurifier {
|
|
8
|
+
deviceType: string;
|
|
9
|
+
// Override setMode from base interface to make it more specific
|
|
10
|
+
setMode(mode: string): Promise<boolean>;
|
|
11
|
+
// Add additional methods specific to LV-series
|
|
12
|
+
autoMode?(): Promise<boolean>;
|
|
13
|
+
manualMode?(): Promise<boolean>;
|
|
14
|
+
sleepMode?(): Promise<boolean>;
|
|
15
|
+
setDisplay?(on: boolean): Promise<boolean>;
|
|
16
|
+
turnOnDisplay?(): Promise<boolean>;
|
|
17
|
+
turnOffDisplay?(): Promise<boolean>;
|
|
18
|
+
setChildLock?(enabled: boolean): Promise<boolean>;
|
|
19
|
+
setOscillation?(enabled: boolean): Promise<boolean>;
|
|
20
|
+
hasFeature?(feature: string): boolean;
|
|
21
|
+
details?: {
|
|
22
|
+
filter_life?: number;
|
|
23
|
+
child_lock?: boolean;
|
|
24
|
+
air_quality_value?: number;
|
|
25
|
+
air_quality?: string;
|
|
26
|
+
screen_status?: 'on' | 'off';
|
|
27
|
+
};
|
|
28
|
+
}
|
|
29
|
+
|
|
6
30
|
export class AirPurifierAccessory extends BaseAccessory {
|
|
7
31
|
private readonly capabilities: DeviceCapabilities;
|
|
8
32
|
protected readonly device: VeSyncAirPurifier;
|
|
33
|
+
private isLVSeries: boolean;
|
|
9
34
|
|
|
10
35
|
constructor(
|
|
11
36
|
platform: TSVESyncPlatform,
|
|
@@ -15,6 +40,14 @@ export class AirPurifierAccessory extends BaseAccessory {
|
|
|
15
40
|
super(platform, accessory, device);
|
|
16
41
|
this.device = device;
|
|
17
42
|
this.capabilities = this.getDeviceCapabilities();
|
|
43
|
+
|
|
44
|
+
// Detect if this is an LV-series device (LV-PUR131S or LV-RH131S)
|
|
45
|
+
const extendedDevice = this.device as ExtendedVeSyncAirPurifier;
|
|
46
|
+
this.isLVSeries = extendedDevice.deviceType?.startsWith('LV-') || false;
|
|
47
|
+
|
|
48
|
+
if (this.isLVSeries) {
|
|
49
|
+
this.platform.log.debug(`Detected LV-series device: ${this.device.deviceName} (${extendedDevice.deviceType})`);
|
|
50
|
+
}
|
|
18
51
|
}
|
|
19
52
|
|
|
20
53
|
/**
|
|
@@ -32,6 +65,13 @@ export class AirPurifierAccessory extends BaseAccessory {
|
|
|
32
65
|
this.setActive.bind(this)
|
|
33
66
|
);
|
|
34
67
|
|
|
68
|
+
// Set up target state characteristic for mode mapping
|
|
69
|
+
this.setupCharacteristic(
|
|
70
|
+
this.platform.Characteristic.TargetAirPurifierState,
|
|
71
|
+
this.getTargetState.bind(this),
|
|
72
|
+
this.setTargetState.bind(this)
|
|
73
|
+
);
|
|
74
|
+
|
|
35
75
|
// Set up speed control
|
|
36
76
|
this.setupCharacteristic(
|
|
37
77
|
this.platform.Characteristic.RotationSpeed,
|
|
@@ -77,53 +117,167 @@ export class AirPurifierAccessory extends BaseAccessory {
|
|
|
77
117
|
isOn ? 2 : 0
|
|
78
118
|
);
|
|
79
119
|
|
|
120
|
+
// Get the extended device to access mode information
|
|
121
|
+
const extendedDevice = this.device as ExtendedVeSyncAirPurifier;
|
|
122
|
+
|
|
80
123
|
// Update target state (AUTO = 0, MANUAL = 1)
|
|
124
|
+
// If mode is available, use it to determine target state
|
|
125
|
+
let targetState = 1; // Default to MANUAL
|
|
126
|
+
if (extendedDevice.mode) {
|
|
127
|
+
targetState = extendedDevice.mode === 'auto' ? 0 : 1;
|
|
128
|
+
}
|
|
129
|
+
|
|
81
130
|
this.service.updateCharacteristic(
|
|
82
131
|
this.platform.Characteristic.TargetAirPurifierState,
|
|
83
|
-
|
|
132
|
+
targetState
|
|
84
133
|
);
|
|
85
134
|
|
|
86
|
-
// Update rotation speed
|
|
135
|
+
// Update rotation speed
|
|
87
136
|
let rotationSpeed = 0;
|
|
88
137
|
if (isOn && details.speed !== undefined) {
|
|
89
|
-
|
|
90
|
-
|
|
91
|
-
|
|
92
|
-
|
|
93
|
-
|
|
94
|
-
|
|
138
|
+
if (this.isLVSeries) {
|
|
139
|
+
// For LV-series devices, speed is limited to 1-3
|
|
140
|
+
// Convert device speed (1-3) to HomeKit percentage (0-100)
|
|
141
|
+
switch (details.speed) {
|
|
142
|
+
case 1: rotationSpeed = 33; break; // Low
|
|
143
|
+
case 2: rotationSpeed = 66; break; // Medium
|
|
144
|
+
case 3: rotationSpeed = 100; break; // High
|
|
145
|
+
}
|
|
146
|
+
} else {
|
|
147
|
+
// For standard devices, speed can be 1-5
|
|
148
|
+
// Convert device speed (1-5) to HomeKit percentage (0-100)
|
|
149
|
+
switch (details.speed) {
|
|
150
|
+
case 1: rotationSpeed = 20; break; // Sleep
|
|
151
|
+
case 2: rotationSpeed = 40; break; // Low
|
|
152
|
+
case 3: rotationSpeed = 60; break; // Medium
|
|
153
|
+
case 4: rotationSpeed = 80; break; // High
|
|
154
|
+
case 5: rotationSpeed = 100; break; // Turbo
|
|
155
|
+
}
|
|
95
156
|
}
|
|
96
157
|
}
|
|
97
158
|
this.service.updateCharacteristic(this.platform.Characteristic.RotationSpeed, rotationSpeed);
|
|
98
159
|
}
|
|
99
160
|
|
|
100
161
|
/**
|
|
101
|
-
*
|
|
162
|
+
* Get target state (AUTO = 0, MANUAL = 1)
|
|
102
163
|
*/
|
|
103
|
-
private async
|
|
104
|
-
const
|
|
105
|
-
|
|
106
|
-
|
|
107
|
-
// Turn off the device instead of setting speed to 0
|
|
108
|
-
await this.device.turnOff();
|
|
109
|
-
return;
|
|
110
|
-
}
|
|
164
|
+
private async getTargetState(): Promise<CharacteristicValue> {
|
|
165
|
+
const extendedDevice = this.device as ExtendedVeSyncAirPurifier;
|
|
166
|
+
return extendedDevice.mode === 'auto' ? 0 : 1;
|
|
167
|
+
}
|
|
111
168
|
|
|
112
|
-
|
|
113
|
-
|
|
114
|
-
|
|
115
|
-
|
|
116
|
-
|
|
117
|
-
|
|
118
|
-
|
|
119
|
-
|
|
120
|
-
|
|
121
|
-
|
|
122
|
-
|
|
123
|
-
|
|
169
|
+
/**
|
|
170
|
+
* Set target state (AUTO = 0, MANUAL = 1)
|
|
171
|
+
*/
|
|
172
|
+
private async setTargetState(value: CharacteristicValue): Promise<void> {
|
|
173
|
+
try {
|
|
174
|
+
const targetState = value as number;
|
|
175
|
+
const extendedDevice = this.device as ExtendedVeSyncAirPurifier;
|
|
176
|
+
|
|
177
|
+
// Map HomeKit target states to device modes
|
|
178
|
+
const mode = targetState === 0 ? 'auto' : 'manual';
|
|
179
|
+
this.platform.log.debug(`Setting mode to ${mode} for device: ${this.device.deviceName}`);
|
|
180
|
+
|
|
181
|
+
let success = false;
|
|
182
|
+
|
|
183
|
+
// Use the appropriate method to set the mode
|
|
184
|
+
if (targetState === 0 && typeof extendedDevice.autoMode === 'function') {
|
|
185
|
+
success = await extendedDevice.autoMode();
|
|
186
|
+
} else if (targetState === 1 && typeof extendedDevice.manualMode === 'function') {
|
|
187
|
+
success = await extendedDevice.manualMode();
|
|
188
|
+
} else if (typeof extendedDevice.setMode === 'function') {
|
|
189
|
+
success = await extendedDevice.setMode(mode as 'auto' | 'manual' | 'sleep');
|
|
190
|
+
} else if (typeof this.device.setMode === 'function') {
|
|
191
|
+
success = await this.device.setMode(mode);
|
|
192
|
+
} else {
|
|
193
|
+
throw new Error('Device API does not support mode setting operations');
|
|
194
|
+
}
|
|
195
|
+
|
|
196
|
+
if (!success) {
|
|
197
|
+
throw new Error(`Failed to set mode to ${mode}`);
|
|
198
|
+
}
|
|
199
|
+
|
|
200
|
+
// Update device state and characteristics
|
|
201
|
+
await this.updateDeviceSpecificStates(this.device);
|
|
202
|
+
} catch (error) {
|
|
203
|
+
this.handleDeviceError('set target state', error);
|
|
124
204
|
}
|
|
205
|
+
}
|
|
125
206
|
|
|
126
|
-
|
|
207
|
+
/**
|
|
208
|
+
* Handle set rotation speed
|
|
209
|
+
*/
|
|
210
|
+
private async handleSetRotationSpeed(value: CharacteristicValue): Promise<void> {
|
|
211
|
+
try {
|
|
212
|
+
const percentage = value as number;
|
|
213
|
+
this.platform.log.debug(`Setting rotation speed to ${percentage}% for device: ${this.device.deviceName}`);
|
|
214
|
+
|
|
215
|
+
if (percentage === 0) {
|
|
216
|
+
// Turn off the device instead of setting speed to 0
|
|
217
|
+
this.platform.log.debug(`Turning off device ${this.device.deviceName} due to 0% rotation speed`);
|
|
218
|
+
const success = await this.device.turnOff();
|
|
219
|
+
if (!success) {
|
|
220
|
+
throw new Error('Failed to turn off device');
|
|
221
|
+
}
|
|
222
|
+
return;
|
|
223
|
+
}
|
|
224
|
+
|
|
225
|
+
const extendedDevice = this.device as ExtendedVeSyncAirPurifier;
|
|
226
|
+
|
|
227
|
+
// For LV-series devices, ensure the device is in manual mode before changing fan speed
|
|
228
|
+
if (this.isLVSeries && extendedDevice.mode !== 'manual') {
|
|
229
|
+
this.platform.log.debug(`Setting device to manual mode before changing fan speed: ${this.device.deviceName}`);
|
|
230
|
+
|
|
231
|
+
// Use the appropriate method to set manual mode
|
|
232
|
+
if (typeof extendedDevice.manualMode === 'function') {
|
|
233
|
+
const modeSuccess = await extendedDevice.manualMode();
|
|
234
|
+
this.platform.log.debug(`Set manual mode result: ${modeSuccess ? 'success' : 'failed'}`);
|
|
235
|
+
} else if (typeof extendedDevice.setMode === 'function') {
|
|
236
|
+
const modeSuccess = await extendedDevice.setMode('manual');
|
|
237
|
+
this.platform.log.debug(`Set manual mode result: ${modeSuccess ? 'success' : 'failed'}`);
|
|
238
|
+
}
|
|
239
|
+
}
|
|
240
|
+
|
|
241
|
+
let speed: number;
|
|
242
|
+
|
|
243
|
+
if (this.isLVSeries) {
|
|
244
|
+
// For LV-series devices, speed is limited to 1-3
|
|
245
|
+
// Convert HomeKit percentage (0-100) to device speed (1-3)
|
|
246
|
+
if (percentage <= 33) {
|
|
247
|
+
speed = 1; // Low
|
|
248
|
+
} else if (percentage <= 66) {
|
|
249
|
+
speed = 2; // Medium
|
|
250
|
+
} else {
|
|
251
|
+
speed = 3; // High
|
|
252
|
+
}
|
|
253
|
+
} else {
|
|
254
|
+
// For standard devices, speed can be 1-5
|
|
255
|
+
// Convert HomeKit percentage (0-100) to device speed (1-5)
|
|
256
|
+
if (percentage <= 20) {
|
|
257
|
+
speed = 1; // Sleep
|
|
258
|
+
} else if (percentage <= 40) {
|
|
259
|
+
speed = 2; // Low
|
|
260
|
+
} else if (percentage <= 60) {
|
|
261
|
+
speed = 3; // Medium
|
|
262
|
+
} else if (percentage <= 80) {
|
|
263
|
+
speed = 4; // High
|
|
264
|
+
} else {
|
|
265
|
+
speed = 5; // Turbo
|
|
266
|
+
}
|
|
267
|
+
}
|
|
268
|
+
|
|
269
|
+
this.platform.log.debug(`Setting fan speed to ${speed} for device: ${this.device.deviceName}`);
|
|
270
|
+
const success = await this.device.changeFanSpeed(speed);
|
|
271
|
+
|
|
272
|
+
if (!success) {
|
|
273
|
+
throw new Error(`Failed to set speed to ${speed}`);
|
|
274
|
+
}
|
|
275
|
+
|
|
276
|
+
// Update device state and characteristics
|
|
277
|
+
await this.updateDeviceSpecificStates(this.device);
|
|
278
|
+
} catch (error) {
|
|
279
|
+
this.handleDeviceError('set rotation speed', error);
|
|
280
|
+
}
|
|
127
281
|
}
|
|
128
282
|
|
|
129
283
|
private async getActive(): Promise<CharacteristicValue> {
|
|
@@ -133,6 +287,8 @@ export class AirPurifierAccessory extends BaseAccessory {
|
|
|
133
287
|
private async setActive(value: CharacteristicValue): Promise<void> {
|
|
134
288
|
try {
|
|
135
289
|
const isOn = value as number === 1;
|
|
290
|
+
this.platform.log.debug(`Setting device ${this.device.deviceName} to ${isOn ? 'on' : 'off'}`);
|
|
291
|
+
|
|
136
292
|
const success = isOn ? await this.device.turnOn() : await this.device.turnOff();
|
|
137
293
|
|
|
138
294
|
if (!success) {
|
|
@@ -152,15 +308,28 @@ export class AirPurifierAccessory extends BaseAccessory {
|
|
|
152
308
|
return 0;
|
|
153
309
|
}
|
|
154
310
|
|
|
155
|
-
|
|
156
|
-
|
|
157
|
-
|
|
158
|
-
|
|
159
|
-
|
|
160
|
-
|
|
161
|
-
|
|
162
|
-
|
|
163
|
-
|
|
311
|
+
if (this.isLVSeries) {
|
|
312
|
+
// For LV-series devices, speed is limited to 1-3
|
|
313
|
+
// Convert device speed (1-3) to HomeKit percentage (0-100)
|
|
314
|
+
switch (this.device.speed) {
|
|
315
|
+
case 0: return 0; // Off
|
|
316
|
+
case 1: return 33; // Low
|
|
317
|
+
case 2: return 66; // Medium
|
|
318
|
+
case 3: return 100; // High
|
|
319
|
+
default: return 0;
|
|
320
|
+
}
|
|
321
|
+
} else {
|
|
322
|
+
// For standard devices, speed can be 1-5
|
|
323
|
+
// Convert device speed (1-5) to HomeKit percentage (0-100)
|
|
324
|
+
switch (this.device.speed) {
|
|
325
|
+
case 0: return 0; // Off
|
|
326
|
+
case 1: return 20; // Sleep
|
|
327
|
+
case 2: return 40; // Low
|
|
328
|
+
case 3: return 60; // Medium
|
|
329
|
+
case 4: return 80; // High
|
|
330
|
+
case 5: return 100; // Turbo
|
|
331
|
+
default: return 0;
|
|
332
|
+
}
|
|
164
333
|
}
|
|
165
334
|
}
|
|
166
|
-
}
|
|
335
|
+
}
|