homebridge-smartthings-oauth 1.0.67 → 1.0.68-beta.0

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/CHANGELOG.md CHANGED
@@ -1,6 +1,18 @@
1
1
  # Changelog
2
2
  All notable changes to this project will be documented in this file.
3
3
 
4
+ ## [1.0.68-beta.0] - Air purifier support + AC numeric fan-mode mapping
5
+
6
+ > Two device-support improvements bundled for beta testing. **Air purifiers** (#48) now derive their HomeKit fan slider from the device's advertised mode list, expose HEPA filter life, and let an always-`null` humidity sensor self-heal. **Air conditioners** (#49) that report numeric/`max` fan modes (`1`/`2`/`3`/`4`/`max`) now map to the correct HomeKit speed instead of snapping back to `0%`. Both are opt-in by virtue of the devices that report these capabilities; existing ACs/purifiers using the legacy `auto`/`low`/`medium`/`high` set are unaffected. Please report any issues before the stable release.
7
+
8
+ ### Fixed
9
+ - **Air purifier fan modes** (#48) — Samsung air purifiers now derive their HomeKit speed slider from `airConditionerFanMode.supportedAcFanModes`, so models that expose modes like `smart`, `max`, `windfree`, `sleep`, or `pet` no longer receive unsupported hardcoded `low`/`high` commands. Devices that omit or empty `supportedAcFanModes` fall back to the legacy `auto`/`low`/`medium`/`high` set so fan control continues to work.
10
+ - **Air purifier HEPA filter life** (#48) — purifiers that report `custom.hepaFilter` now expose HomeKit filter life and change indication. Non-numeric HEPA usage values are ignored safely instead of pushing `NaN` to HomeKit.
11
+ - **Air conditioner fan speed for numeric/max fan modes** (#49) — ACs that report fan modes like `1`, `2`, `3`, `4`, or `max` via `airConditionerFanMode.availableAcFanModes` / `supportedAcFanModes` now map those advertised modes to HomeKit `RotationSpeed` instead of snapping back to `0%`. The mapping prefers the device's currently selectable `availableAcFanModes`, falls back to the legacy `auto`/`low`/`medium`/`high`/`turbo` set when a driver omits or empties those attributes, preserves the existing legacy display percentages, and keeps `auto` at `0%`. Thanks to @codemoo.
12
+
13
+ ### Changed
14
+ - **Air purifier RotationSpeed mapping** (#48) — Auto mode now reports `0%`, and manual modes are distributed across 0-100% based on the device's supported fan-mode list. Existing scenes or automations that depend on an exact purifier speed percentage may need to be re-saved.
15
+ - **Air purifier humidity presentation** (#48) — `relativeHumidityMeasurement` now falls through to the generic humidity sensor mapping instead of being consumed by the air purifier combo service. Purifiers that report humidity keep a humidity sensor; purifiers that only declare humidity but always return `null` self-remove the dead tile after polling.
4
16
  ## [1.0.67] - Optional SmartThings webhook signature verification
5
17
 
6
18
  > Stable release of the `1.0.67-beta.0` work (below), validated end-to-end against live SmartThings traffic: with verification enabled, the signed `CONFIRMATION` handshake and live device `EVENT`s are accepted and applied, while unsigned/forged requests are rejected with **HTTP 401**; with the flag off (the default) webhook handling is unchanged. Opt-in and **off by default**, so existing setups are unaffected until they enable it.
@@ -886,4 +898,4 @@ All notable changes to this project will be documented in this file.
886
898
  - Updated `config.schema.json` to hide the `AccessToken` and `WebhookToken` fields from the Homebridge configuration UI, as these are handled automatically by the OAuth2 flow and persistent storage.
887
899
 
888
900
  ### Fixed
889
- - Resolved TypeScript build error `TS2345: Argument of type 'OptionalMode | undefined' is not assignable...` by adding a non-null assertion (`!`) where `this.optionalMode` is used in the single-mode setup path within the constructor of `AirConditionerService`, ensuring type safety in that specific code path.
901
+ - Resolved TypeScript build error `TS2345: Argument of type 'OptionalMode | undefined' is not assignable...` by adding a non-null assertion (`!`) where `this.optionalMode` is used in the single-mode setup path within the constructor of `AirConditionerService`, ensuring type safety in that specific code path.
@@ -1 +1 @@
1
- {"version":3,"file":"multiServiceAccessory.d.ts","sourceRoot":"","sources":["../src/multiServiceAccessory.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"multiServiceAccessory.d.ts","sourceRoot":"","sources":["../src/multiServiceAccessory.ts"],"names":[],"mappings":"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"}
@@ -560,11 +560,14 @@ MultiServiceAccessory.comboCapabilityMap = [
560
560
  capabilities: ['switch', 'airConditionerFanMode'],
561
561
  optionalCapabilities: [
562
562
  'custom.filterState',
563
+ 'custom.hepaFilter',
563
564
  'airQualitySensor',
564
565
  'dustSensor',
565
566
  'veryFineDustSensor',
566
567
  'odorSensor',
567
- 'relativeHumidityMeasurement',
568
+ // relativeHumidityMeasurement is deliberately NOT consumed here: it falls through to the
569
+ // base-map HumidityService (a SensorService) which shows a value when reported and removes
570
+ // itself when the device only ever returns null — per-device, no config flag, like temperature.
568
571
  ],
569
572
  service: airPurifierService_1.AirPurifierService,
570
573
  },
@@ -1 +1 @@
1
- {"version":3,"file":"multiServiceAccessory.js","sourceRoot":"","sources":["../src/multiServiceAccessory.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"multiServiceAccessory.js","sourceRoot":"","sources":["../src/multiServiceAccessory.ts"],"names":[],"mappings":"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"}
@@ -15,6 +15,13 @@ export declare class AirConditionerService extends BaseService {
15
15
  private windFreeModeSwitchService;
16
16
  private multipleOptionalModesEnabled;
17
17
  private justSetFanToAuto;
18
+ private static readonly DEFAULT_FAN_MODES;
19
+ private supportedFanModes;
20
+ private hasDeviceFanModes;
21
+ private triedDeviceFanModes;
22
+ private static readonly FAN_MODE_RANK;
23
+ private static readonly LEGACY_FAN_MODE_LEVEL;
24
+ private static readonly FALLBACK_FAN_MODE_LEVEL;
18
25
  constructor(platform: IKHomeBridgeHomebridgePlatform, accessory: PlatformAccessory, componentId: string, capabilities: string[], multiServiceAccessory: MultiServiceAccessory, name: string, deviceStatus: any);
19
26
  private isCapabilitySupported;
20
27
  private setupThermostat;
@@ -23,6 +30,11 @@ export declare class AirConditionerService extends BaseService {
23
30
  private setupHumiditySensor;
24
31
  private setupLightSwitch;
25
32
  private getHumidityLevel;
33
+ private updateFanModeCache;
34
+ private resolveFanModes;
35
+ private getAutoFanMode;
36
+ private isAutoFanMode;
37
+ private manualFanModes;
26
38
  private levelToFanMode;
27
39
  private fanModeToLevel;
28
40
  private fanOscillationModeToSwingMode;
@@ -1 +1 @@
1
- {"version":3,"file":"airConditionerService.d.ts","sourceRoot":"","sources":["../../src/services/airConditionerService.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,iBAAiB,EAAgC,MAAM,YAAY,CAAC;AAC7E,OAAO,EAAE,8BAA8B,EAAE,MAAM,aAAa,CAAC;AAC7D,OAAO,EAAE,qBAAqB,EAAE,MAAM,0BAA0B,CAAC;AAEjE,OAAO,EAAE,UAAU,EAAE,MAAM,gCAAgC,CAAC;AAC5D,OAAO,EAAE,WAAW,EAAE,MAAM,eAAe,CAAC;AA0C5C,qBAAa,qBAAsB,SAAQ,WAAW;IAEpD,OAAO,CAAC,eAAe,CAA4C;IAEnE,OAAO,CAAC,iBAAiB,CAAU;IACnC,OAAO,CAAC,UAAU,CAAU;IAC5B,OAAO,CAAC,eAAe,CAAsB;IAC7C,OAAO,CAAC,yBAAyB,CAAsB;IACvD,OAAO,CAAC,YAAY,CAA2B;IAC/C,OAAO,CAAC,YAAY,CAAsB;IAG1C,OAAO,CAAC,sBAAsB,CAAsB;IACpD,OAAO,CAAC,yBAAyB,CAAsB;IAEvD,OAAO,CAAC,4BAA4B,CAAS;IAG7C,OAAO,CAAC,gBAAgB,CAAS;gBAErB,QAAQ,EAAE,8BAA8B,EAAE,SAAS,EAAE,iBAAiB,EAAE,WAAW,EAAE,MAAM,EAAE,YAAY,EAAE,MAAM,EAAE,EAC7H,qBAAqB,EAAE,qBAAqB,EAC5C,IAAI,EAAE,MAAM,EAAE,YAAY,KAAA;IAwD5B,OAAO,CAAC,qBAAqB;IAI7B,OAAO,CAAC,eAAe;IAwCvB,OAAO,CAAC,QAAQ;IA4BhB,OAAO,CAAC,+BAA+B;IAkCvC,OAAO,CAAC,mBAAmB;IAY3B,OAAO,CAAC,gBAAgB;YAmBV,gBAAgB;IAK9B,OAAO,CAAC,cAAc;IAoBtB,OAAO,CAAC,cAAc;IAetB,OAAO,CAAC,6BAA6B;YAUvB,mBAAmB;YAKnB,mBAAmB;YAKnB,kBAAkB;YAKlB,kBAAkB;YAKlB,kCAAkC;YAMlC,kCAAkC;YAUlC,cAAc;YAkDd,cAAc;IAK5B,OAAO,CAAC,WAAW;YAkBL,WAAW;IAYzB,OAAO,CAAC,YAAY;YAQN,YAAY;IAQ1B,OAAO,CAAC,6CAA6C;IAgBrD,OAAO,CAAC,6CAA6C;YAcvC,4BAA4B;YAe5B,4BAA4B;YAqB5B,6BAA6B;YAyB7B,qBAAqB;YAkBrB,oBAAoB;IAYlC,OAAO,CAAC,oBAAoB;IAQ5B,OAAO,CAAC,0BAA0B;IAQlC,OAAO,CAAC,SAAS;IAKjB,OAAO,CAAC,WAAW;YAIL,kBAAkB;YAYlB,eAAe;IAetB,YAAY,CAAC,KAAK,EAAE,UAAU,GAAG,IAAI;CAuD7C"}
1
+ {"version":3,"file":"airConditionerService.d.ts","sourceRoot":"","sources":["../../src/services/airConditionerService.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,iBAAiB,EAAgC,MAAM,YAAY,CAAC;AAC7E,OAAO,EAAE,8BAA8B,EAAE,MAAM,aAAa,CAAC;AAC7D,OAAO,EAAE,qBAAqB,EAAE,MAAM,0BAA0B,CAAC;AAEjE,OAAO,EAAE,UAAU,EAAE,MAAM,gCAAgC,CAAC;AAC5D,OAAO,EAAE,WAAW,EAAE,MAAM,eAAe,CAAC;AA0C5C,qBAAa,qBAAsB,SAAQ,WAAW;IAEpD,OAAO,CAAC,eAAe,CAA4C;IAEnE,OAAO,CAAC,iBAAiB,CAAU;IACnC,OAAO,CAAC,UAAU,CAAU;IAC5B,OAAO,CAAC,eAAe,CAAsB;IAC7C,OAAO,CAAC,yBAAyB,CAAsB;IACvD,OAAO,CAAC,YAAY,CAA2B;IAC/C,OAAO,CAAC,YAAY,CAAsB;IAG1C,OAAO,CAAC,sBAAsB,CAAsB;IACpD,OAAO,CAAC,yBAAyB,CAAsB;IAEvD,OAAO,CAAC,4BAA4B,CAAS;IAG7C,OAAO,CAAC,gBAAgB,CAAS;IAEjC,OAAO,CAAC,MAAM,CAAC,QAAQ,CAAC,iBAAiB,CAA4E;IAIrH,OAAO,CAAC,iBAAiB,CAAqD;IAC9E,OAAO,CAAC,iBAAiB,CAAS;IAGlC,OAAO,CAAC,mBAAmB,CAAS;IAKpC,OAAO,CAAC,MAAM,CAAC,QAAQ,CAAC,aAAa,CAanC;IAEF,OAAO,CAAC,MAAM,CAAC,QAAQ,CAAC,qBAAqB,CAM3C;IAEF,OAAO,CAAC,MAAM,CAAC,QAAQ,CAAC,uBAAuB,CAO7C;gBAEU,QAAQ,EAAE,8BAA8B,EAAE,SAAS,EAAE,iBAAiB,EAAE,WAAW,EAAE,MAAM,EAAE,YAAY,EAAE,MAAM,EAAE,EAC7H,qBAAqB,EAAE,qBAAqB,EAC5C,IAAI,EAAE,MAAM,EAAE,YAAY,KAAA;IAyD5B,OAAO,CAAC,qBAAqB;IAI7B,OAAO,CAAC,eAAe;IAwCvB,OAAO,CAAC,QAAQ;IA4BhB,OAAO,CAAC,+BAA+B;IAkCvC,OAAO,CAAC,mBAAmB;IAY3B,OAAO,CAAC,gBAAgB;YAmBV,gBAAgB;IAK9B,OAAO,CAAC,kBAAkB;IAW1B,OAAO,CAAC,eAAe;IAYvB,OAAO,CAAC,cAAc;IAItB,OAAO,CAAC,aAAa;IAIrB,OAAO,CAAC,cAAc;IAatB,OAAO,CAAC,cAAc;IAatB,OAAO,CAAC,cAAc;IAqBtB,OAAO,CAAC,6BAA6B;YAUvB,mBAAmB;YAKnB,mBAAmB;YAKnB,kBAAkB;YAKlB,kBAAkB;YAKlB,kCAAkC;YAMlC,kCAAkC;YAUlC,cAAc;YAmDd,cAAc;YAKd,WAAW;YAgCX,WAAW;IAazB,OAAO,CAAC,YAAY;YAQN,YAAY;IAQ1B,OAAO,CAAC,6CAA6C;IAgBrD,OAAO,CAAC,6CAA6C;YAcvC,4BAA4B;YAe5B,4BAA4B;YAqB5B,6BAA6B;YAyB7B,qBAAqB;YAkBrB,oBAAoB;IAYlC,OAAO,CAAC,oBAAoB;IAQ5B,OAAO,CAAC,0BAA0B;IAQlC,OAAO,CAAC,SAAS;IAKjB,OAAO,CAAC,WAAW;YAIL,kBAAkB;YAYlB,eAAe;IAetB,YAAY,CAAC,KAAK,EAAE,UAAU,GAAG,IAAI;CA6D7C"}
@@ -45,17 +45,26 @@ var OptionalMode;
45
45
  })(OptionalMode || (OptionalMode = {}));
46
46
  class AirConditionerService extends baseService_1.BaseService {
47
47
  constructor(platform, accessory, componentId, capabilities, multiServiceAccessory, name, deviceStatus) {
48
+ var _a;
48
49
  super(platform, accessory, componentId, capabilities, multiServiceAccessory, name, deviceStatus);
49
50
  this.temperatureUnit = TemperatureUnit.Celsius;
50
51
  // A flag or state to know which setup we are using
51
52
  this.multipleOptionalModesEnabled = false;
52
53
  // Flag to handle HomeKit setting speed to 0 -> Auto
53
54
  this.justSetFanToAuto = false;
55
+ // Fan modes the device accepts (from airConditionerFanMode.supportedAcFanModes/availableAcFanModes), or
56
+ // the legacy default list when a driver omits/empties those attributes.
57
+ this.supportedFanModes = AirConditionerService.DEFAULT_FAN_MODES;
58
+ this.hasDeviceFanModes = false;
59
+ // Guards the one-time on-demand fetch in setFanLevel so legacy devices (which never advertise
60
+ // fan modes) don't trigger an extra status refresh on every speed change.
61
+ this.triedDeviceFanModes = false;
54
62
  this.log.debug(`Adding AirConditionerService to ${this.name}`);
55
63
  // Since Homekit does not natively support air conditioners, we need to expose
56
64
  // a thermostat and a fan to cover temperature settings, fan speed, and swing.
57
65
  this.thermostatService = this.setupThermostat(platform, multiServiceAccessory);
58
66
  this.fanService = this.setupFan(platform, multiServiceAccessory);
67
+ this.updateFanModeCache((_a = this.deviceStatus) === null || _a === void 0 ? void 0 : _a.status);
59
68
  // Exposing this sensor is optional since some Samsung air conditioner always report 0 as relative humidity level
60
69
  // or the device might not support it
61
70
  if (this.isCapabilitySupported('relativeHumidityMeasurement') && this.platform.config.ExposeHumiditySensorForAirConditioners) {
@@ -188,34 +197,76 @@ class AirConditionerService extends baseService_1.BaseService {
188
197
  const deviceStatus = await this.getDeviceStatus();
189
198
  return deviceStatus.relativeHumidityMeasurement.humidity.value;
190
199
  }
191
- levelToFanMode(level) {
192
- if (level > 0 && level < 25) {
193
- return FanMode.Low;
194
- }
195
- if (level > 25 && level <= 50) {
196
- return FanMode.Medium;
200
+ updateFanModeCache(deviceStatus) {
201
+ var _a, _b, _c, _d;
202
+ const supportedModes = (_b = (_a = deviceStatus === null || deviceStatus === void 0 ? void 0 : deviceStatus.airConditionerFanMode) === null || _a === void 0 ? void 0 : _a.supportedAcFanModes) === null || _b === void 0 ? void 0 : _b.value;
203
+ const availableModes = (_d = (_c = deviceStatus === null || deviceStatus === void 0 ? void 0 : deviceStatus.airConditionerFanMode) === null || _c === void 0 ? void 0 : _c.availableAcFanModes) === null || _d === void 0 ? void 0 : _d.value;
204
+ // Prefer availableAcFanModes (the currently selectable set) over supportedAcFanModes (the full
205
+ // hardware superset) so we only ever command a mode the device will actually accept; fall back
206
+ // to the superset, then to the legacy defaults.
207
+ const resolved = this.resolveFanModes(availableModes, supportedModes);
208
+ this.supportedFanModes = resolved.modes;
209
+ this.hasDeviceFanModes = resolved.fromDevice;
210
+ }
211
+ resolveFanModes(...modeLists) {
212
+ for (const modes of modeLists) {
213
+ if (Array.isArray(modes)) {
214
+ const resolved = modes.filter(mode => typeof mode === 'string' && mode.length > 0);
215
+ if (resolved.length > 0) {
216
+ return { modes: resolved, fromDevice: true };
217
+ }
218
+ }
197
219
  }
198
- if (level > 50 && level <= 75) {
199
- return FanMode.High;
220
+ return { modes: [...AirConditionerService.DEFAULT_FAN_MODES], fromDevice: false };
221
+ }
222
+ getAutoFanMode() {
223
+ return this.supportedFanModes.includes(FanMode.Auto) ? FanMode.Auto : undefined;
224
+ }
225
+ isAutoFanMode(fanMode) {
226
+ return fanMode !== undefined && fanMode === this.getAutoFanMode();
227
+ }
228
+ manualFanModes() {
229
+ const auto = this.getAutoFanMode();
230
+ return this.supportedFanModes
231
+ .filter(mode => mode !== auto)
232
+ .map((mode, index) => ({ mode, index }))
233
+ .sort((a, b) => {
234
+ var _a, _b;
235
+ const aRank = (_a = AirConditionerService.FAN_MODE_RANK[a.mode.toLowerCase()]) !== null && _a !== void 0 ? _a : 99;
236
+ const bRank = (_b = AirConditionerService.FAN_MODE_RANK[b.mode.toLowerCase()]) !== null && _b !== void 0 ? _b : 99;
237
+ return aRank !== bRank ? aRank - bRank : a.index - b.index;
238
+ })
239
+ .map(item => item.mode);
240
+ }
241
+ levelToFanMode(level) {
242
+ var _a;
243
+ if (level <= 0) {
244
+ return (_a = this.getAutoFanMode()) !== null && _a !== void 0 ? _a : this.manualFanModes()[0];
200
245
  }
201
- if (level > 75) {
202
- return FanMode.Turbo;
246
+ const modes = this.manualFanModes();
247
+ if (modes.length === 0) {
248
+ return undefined;
203
249
  }
204
- return FanMode.Auto;
250
+ const index = Math.min(modes.length - 1, Math.max(0, Math.ceil((level / 100) * modes.length) - 1));
251
+ return modes[index];
205
252
  }
206
253
  fanModeToLevel(fanMode) {
207
- switch (fanMode) {
208
- case FanMode.Low:
209
- return 25;
210
- case FanMode.Medium:
211
- return 50;
212
- case FanMode.High:
213
- return 75;
214
- case FanMode.Turbo:
215
- return 100;
216
- default:
217
- return 0; // auto level
254
+ var _a;
255
+ if (this.isAutoFanMode(fanMode)) {
256
+ return 0;
257
+ }
258
+ // Preserve the legacy display percentages for the modes this service already understood.
259
+ // Device-specific/dynamic handling is only for extra labels like '1'/'2'/'3'/'4'/'max'.
260
+ const legacyLevel = AirConditionerService.LEGACY_FAN_MODE_LEVEL[fanMode];
261
+ if (legacyLevel !== undefined) {
262
+ return legacyLevel;
218
263
  }
264
+ const modes = this.manualFanModes();
265
+ const index = modes.indexOf(fanMode);
266
+ if (index >= 0) {
267
+ return Math.round(((index + 1) / modes.length) * 100);
268
+ }
269
+ return (_a = AirConditionerService.FALLBACK_FAN_MODE_LEVEL[fanMode]) !== null && _a !== void 0 ? _a : 0;
219
270
  }
220
271
  fanOscillationModeToSwingMode(fanOscillationMode) {
221
272
  switch (fanOscillationMode) {
@@ -279,6 +330,7 @@ class AirConditionerService extends baseService_1.BaseService {
279
330
  let fanMode;
280
331
  try {
281
332
  const deviceStatus = await this.getDeviceStatus(); // Get current status
333
+ this.updateFanModeCache(deviceStatus);
282
334
  fanMode = (_b = (_a = deviceStatus === null || deviceStatus === void 0 ? void 0 : deviceStatus.airConditionerFanMode) === null || _a === void 0 ? void 0 : _a.fanMode) === null || _b === void 0 ? void 0 : _b.value;
283
335
  }
284
336
  catch (error) {
@@ -293,7 +345,7 @@ class AirConditionerService extends baseService_1.BaseService {
293
345
  this.justSetFanToAuto = false; // Reset the flag
294
346
  return; // Do not send the 'off' command
295
347
  }
296
- if (fanMode === FanMode.Auto) {
348
+ if (this.isAutoFanMode(fanMode)) {
297
349
  this.log.info(`[${this.name}] Received request to turn off (Active=false), but fanMode is ${fanMode}. Assuming this came from setting speed to 0. Ignoring turn-off command.`);
298
350
  // Do nothing - don't send the Off command
299
351
  }
@@ -307,12 +359,27 @@ class AirConditionerService extends baseService_1.BaseService {
307
359
  const deviceStatus = await this.getDeviceStatus();
308
360
  return deviceStatus.switch.switch.value === SwitchState.On;
309
361
  }
310
- setFanLevel(value) {
362
+ async setFanLevel(value) {
363
+ // Resolve the device's real fan modes once, on demand. If the fetch fails we keep the legacy
364
+ // fallback list and still send the command, rather than aborting the user's speed change.
365
+ if (!this.hasDeviceFanModes && !this.triedDeviceFanModes) {
366
+ this.triedDeviceFanModes = true;
367
+ try {
368
+ this.updateFanModeCache(await this.getDeviceStatus());
369
+ }
370
+ catch (error) {
371
+ this.log.debug(`[${this.name}] Could not refresh fan modes before setting speed; using fallback list: ${error}`);
372
+ }
373
+ }
311
374
  const fanMode = this.levelToFanMode(value);
375
+ if (fanMode === undefined) {
376
+ this.log.warn(`[${this.name}] no supported fan mode for level ${value}; ignoring`);
377
+ return;
378
+ }
312
379
  const command = new smartThingsCommand_1.Command(this.componentId, 'airConditionerFanMode', 'setFanMode', [fanMode]);
313
380
  this.log.info(`[${this.name}] set fan level to ${fanMode}`);
314
381
  // If setting to Auto (level 0), set the flag and a timeout to reset it.
315
- if (fanMode === FanMode.Auto) {
382
+ if (this.isAutoFanMode(fanMode)) {
316
383
  this.log.debug(`[${this.name}] Setting justSetFanToAuto flag.`);
317
384
  this.justSetFanToAuto = true;
318
385
  setTimeout(() => {
@@ -320,15 +387,16 @@ class AirConditionerService extends baseService_1.BaseService {
320
387
  this.justSetFanToAuto = false;
321
388
  }, 1500); // Reset after 1.5 seconds
322
389
  }
323
- return this.sendCommandsOrFail([command]);
390
+ await this.sendCommandsOrFail([command]);
324
391
  }
325
392
  async getFanLevel() {
326
393
  this.log.debug(`[${this.name}] get fan level`);
327
394
  const deviceStatus = await this.getDeviceStatus();
395
+ this.updateFanModeCache(deviceStatus);
328
396
  if (!deviceStatus.airConditionerFanMode.fanMode.value) {
329
397
  throw new this.platform.api.hap.HapStatusError(-70409 /* this.platform.api.hap.HAPStatus.RESOURCE_DOES_NOT_EXIST */);
330
398
  }
331
- const fanMode = this.deviceStatus.status.airConditionerFanMode.fanMode.value;
399
+ const fanMode = deviceStatus.airConditionerFanMode.fanMode.value;
332
400
  return this.fanModeToLevel(fanMode);
333
401
  }
334
402
  setSwingMode(value) {
@@ -502,6 +570,12 @@ class AirConditionerService extends baseService_1.BaseService {
502
570
  this.thermostatService.updateCharacteristic(TargetHeatingCoolingState, targetHeatingCoolingState);
503
571
  break;
504
572
  case 'airConditionerFanMode':
573
+ if (event.attribute === 'supportedAcFanModes' || event.attribute === 'availableAcFanModes') {
574
+ const resolved = this.resolveFanModes(event.value);
575
+ this.supportedFanModes = resolved.modes;
576
+ this.hasDeviceFanModes = resolved.fromDevice;
577
+ break;
578
+ }
505
579
  this.fanService.updateCharacteristic(this.platform.Characteristic.RotationSpeed, this.fanModeToLevel(event.value));
506
580
  break;
507
581
  case 'fanOscillationMode':
@@ -540,4 +614,37 @@ class AirConditionerService extends baseService_1.BaseService {
540
614
  }
541
615
  }
542
616
  exports.AirConditionerService = AirConditionerService;
617
+ AirConditionerService.DEFAULT_FAN_MODES = [FanMode.Auto, FanMode.Low, FanMode.Medium, FanMode.High, FanMode.Turbo];
618
+ // Lower rank = slower. Numeric Samsung OCF modes are common: ['auto','1','2','3','4','max'].
619
+ // Keep distinct speed labels on distinct ranks so ordering does not depend on the
620
+ // device-reported array order. Unknown modes sort last in device-reported order.
621
+ AirConditionerService.FAN_MODE_RANK = {
622
+ sleep: 1,
623
+ quiet: 2,
624
+ low: 3,
625
+ '1': 4,
626
+ medium: 5,
627
+ mid: 6,
628
+ '2': 7,
629
+ high: 8,
630
+ '3': 9,
631
+ turbo: 10,
632
+ '4': 11,
633
+ max: 12,
634
+ };
635
+ AirConditionerService.LEGACY_FAN_MODE_LEVEL = {
636
+ [FanMode.Auto]: 0,
637
+ [FanMode.Low]: 25,
638
+ [FanMode.Medium]: 50,
639
+ [FanMode.High]: 75,
640
+ [FanMode.Turbo]: 100,
641
+ };
642
+ AirConditionerService.FALLBACK_FAN_MODE_LEVEL = {
643
+ ...AirConditionerService.LEGACY_FAN_MODE_LEVEL,
644
+ '1': 25,
645
+ '2': 50,
646
+ '3': 75,
647
+ '4': 100,
648
+ max: 100,
649
+ };
543
650
  //# sourceMappingURL=airConditionerService.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"airConditionerService.js","sourceRoot":"","sources":["../../src/services/airConditionerService.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"airConditionerService.js","sourceRoot":"","sources":["../../src/services/airConditionerService.ts"],"names":[],"mappings":"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"}
@@ -6,16 +6,18 @@ import { BaseService } from './baseService';
6
6
  export declare class AirPurifierService extends BaseService {
7
7
  private airPurifierService;
8
8
  private airQualitySensorService?;
9
- private humiditySensorService?;
9
+ private static readonly DEFAULT_FAN_MODES;
10
+ private supportedFanModes;
11
+ private hasDeviceFanModes;
12
+ private static readonly FAN_MODE_RANK;
10
13
  private pendingTargetState?;
11
- private pendingRotationFanMode?;
14
+ private pendingRotationMode?;
12
15
  private fanModeTimer?;
13
16
  private static readonly FAN_MODE_DEBOUNCE_MS;
14
17
  constructor(platform: IKHomeBridgeHomebridgePlatform, accessory: PlatformAccessory, componentId: string, capabilities: string[], multiServiceAccessory: MultiServiceAccessory, name: string, deviceStatus: any);
15
18
  private isCapabilitySupported;
16
19
  private setupAirPurifier;
17
20
  private setupAirQualitySensor;
18
- private setupHumiditySensor;
19
21
  private getActive;
20
22
  private setActive;
21
23
  private getCurrentAirPurifierState;
@@ -25,9 +27,10 @@ export declare class AirPurifierService extends BaseService {
25
27
  private setRotationSpeed;
26
28
  /**
27
29
  * Reset the debounce timer. When it fires, resolve priority:
28
- * Auto (target=1) > RotationSpeed > Manual default (low)
30
+ * Auto (target=1) > RotationSpeed > Manual default (slowest supported mode)
29
31
  * This ensures only one setFanMode command is sent regardless of
30
32
  * how many characteristics HomeKit updates or in what order.
33
+ * Falls back to the legacy default list if the driver does not report supported modes.
31
34
  */
32
35
  private resetFanModeTimer;
33
36
  private getFilterLifeLevel;
@@ -36,9 +39,19 @@ export declare class AirPurifierService extends BaseService {
36
39
  private getPM25Density;
37
40
  private getPM10Density;
38
41
  private getVOCDensity;
39
- private getHumidityLevel;
42
+ private updateFanModeCache;
43
+ private resolveFanModes;
44
+ private getAutoMode;
45
+ private isAutoMode;
46
+ private manualModes;
40
47
  private fanModeToLevel;
41
48
  private levelToFanMode;
49
+ private filterLifeLevelFromStatus;
50
+ private filterChangeIndicationFromStatus;
51
+ private updateFilterCharacteristics;
52
+ private statusWithEventApplied;
53
+ private finiteNumber;
54
+ private clampPercent;
42
55
  private pm25ToAirQuality;
43
56
  private stAirQualityToHomeKit;
44
57
  private sendCommandsOrFail;
@@ -1 +1 @@
1
- {"version":3,"file":"airPurifierService.d.ts","sourceRoot":"","sources":["../../src/services/airPurifierService.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,iBAAiB,EAAgC,MAAM,YAAY,CAAC;AAC7E,OAAO,EAAE,8BAA8B,EAAE,MAAM,aAAa,CAAC;AAC7D,OAAO,EAAE,qBAAqB,EAAE,MAAM,0BAA0B,CAAC;AAEjE,OAAO,EAAE,UAAU,EAAE,MAAM,gCAAgC,CAAC;AAC5D,OAAO,EAAE,WAAW,EAAE,MAAM,eAAe,CAAC;AAe5C,qBAAa,kBAAmB,SAAQ,WAAW;IAEjD,OAAO,CAAC,kBAAkB,CAAU;IACpC,OAAO,CAAC,uBAAuB,CAAC,CAAU;IAC1C,OAAO,CAAC,qBAAqB,CAAC,CAAU;IAKxC,OAAO,CAAC,kBAAkB,CAAC,CAAS;IACpC,OAAO,CAAC,sBAAsB,CAAC,CAAqB;IACpD,OAAO,CAAC,YAAY,CAAC,CAAgC;IACrD,OAAO,CAAC,MAAM,CAAC,QAAQ,CAAC,oBAAoB,CAAO;gBAEvC,QAAQ,EAAE,8BAA8B,EAAE,SAAS,EAAE,iBAAiB,EAAE,WAAW,EAAE,MAAM,EAAE,YAAY,EAAE,MAAM,EAAE,EAC7H,qBAAqB,EAAE,qBAAqB,EAC5C,IAAI,EAAE,MAAM,EAAE,YAAY,KAAA;IAoB5B,OAAO,CAAC,qBAAqB;IAI7B,OAAO,CAAC,gBAAgB;IAqCxB,OAAO,CAAC,qBAAqB;IAgC7B,OAAO,CAAC,mBAAmB;YAmBb,SAAS;YAKT,SAAS;YAkBT,0BAA0B;YAS1B,yBAAyB;YAOzB,yBAAyB;YAQzB,gBAAgB;YAMhB,gBAAgB;IAO9B;;;;;OAKG;IACH,OAAO,CAAC,iBAAiB;YA0BX,kBAAkB;YAKlB,yBAAyB;YASzB,aAAa;YAiBb,cAAc;YAKd,cAAc;YAKd,aAAa;YAOb,gBAAgB;IAO9B,OAAO,CAAC,cAAc;IAgBtB,OAAO,CAAC,cAAc;IAiBtB,OAAO,CAAC,gBAAgB;IAkBxB,OAAO,CAAC,qBAAqB;YAgBf,kBAAkB;YAWlB,eAAe;IAYtB,YAAY,CAAC,KAAK,EAAE,UAAU,GAAG,IAAI;CA4D7C"}
1
+ {"version":3,"file":"airPurifierService.d.ts","sourceRoot":"","sources":["../../src/services/airPurifierService.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,iBAAiB,EAAgC,MAAM,YAAY,CAAC;AAC7E,OAAO,EAAE,8BAA8B,EAAE,MAAM,aAAa,CAAC;AAC7D,OAAO,EAAE,qBAAqB,EAAE,MAAM,0BAA0B,CAAC;AAEjE,OAAO,EAAE,UAAU,EAAE,MAAM,gCAAgC,CAAC;AAC5D,OAAO,EAAE,WAAW,EAAE,MAAM,eAAe,CAAC;AAO5C,qBAAa,kBAAmB,SAAQ,WAAW;IAEjD,OAAO,CAAC,kBAAkB,CAAU;IACpC,OAAO,CAAC,uBAAuB,CAAC,CAAU;IAE1C,OAAO,CAAC,MAAM,CAAC,QAAQ,CAAC,iBAAiB,CAAqC;IAM9E,OAAO,CAAC,iBAAiB,CAAkD;IAC3E,OAAO,CAAC,iBAAiB,CAAS;IAIlC,OAAO,CAAC,MAAM,CAAC,QAAQ,CAAC,aAAa,CAWnC;IAKF,OAAO,CAAC,kBAAkB,CAAC,CAAS;IACpC,OAAO,CAAC,mBAAmB,CAAC,CAAS;IACrC,OAAO,CAAC,YAAY,CAAC,CAAgC;IACrD,OAAO,CAAC,MAAM,CAAC,QAAQ,CAAC,oBAAoB,CAAO;gBAEvC,QAAQ,EAAE,8BAA8B,EAAE,SAAS,EAAE,iBAAiB,EAAE,WAAW,EAAE,MAAM,EAAE,YAAY,EAAE,MAAM,EAAE,EAC7H,qBAAqB,EAAE,qBAAqB,EAC5C,IAAI,EAAE,MAAM,EAAE,YAAY,KAAA;IAyB5B,OAAO,CAAC,qBAAqB;IAI7B,OAAO,CAAC,gBAAgB;IAqCxB,OAAO,CAAC,qBAAqB;YAkCf,SAAS;YAKT,SAAS;YAkBT,0BAA0B;YAS1B,yBAAyB;YAQzB,yBAAyB;YAQzB,gBAAgB;YAOhB,gBAAgB;IAgB9B;;;;;;OAMG;IACH,OAAO,CAAC,iBAAiB;YA4CX,kBAAkB;YAKlB,yBAAyB;YAOzB,aAAa;YAiBb,cAAc;YAKd,cAAc;YAKd,aAAa;IAU3B,OAAO,CAAC,kBAAkB;IAO1B,OAAO,CAAC,eAAe;IAWvB,OAAO,CAAC,WAAW;IAYnB,OAAO,CAAC,UAAU;IAKlB,OAAO,CAAC,WAAW;IAcnB,OAAO,CAAC,cAAc;IAatB,OAAO,CAAC,cAAc;IAYtB,OAAO,CAAC,yBAAyB;IASjC,OAAO,CAAC,gCAAgC;IAaxC,OAAO,CAAC,2BAA2B;IAWnC,OAAO,CAAC,sBAAsB;IAiB9B,OAAO,CAAC,YAAY;IAIpB,OAAO,CAAC,YAAY;IASpB,OAAO,CAAC,gBAAgB;IAkBxB,OAAO,CAAC,qBAAqB;YAgBf,kBAAkB;YAWlB,eAAe;IAYtB,YAAY,CAAC,KAAK,EAAE,UAAU,GAAG,IAAI;CA4E7C"}
@@ -3,14 +3,6 @@ Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.AirPurifierService = void 0;
4
4
  const smartThingsCommand_1 = require("./smartThingsCommand");
5
5
  const baseService_1 = require("./baseService");
6
- var AirPurifierFanMode;
7
- (function (AirPurifierFanMode) {
8
- AirPurifierFanMode["Auto"] = "auto";
9
- AirPurifierFanMode["Low"] = "low";
10
- AirPurifierFanMode["Medium"] = "medium";
11
- AirPurifierFanMode["High"] = "high";
12
- AirPurifierFanMode["Sleep"] = "sleep";
13
- })(AirPurifierFanMode || (AirPurifierFanMode = {}));
14
6
  var SwitchState;
15
7
  (function (SwitchState) {
16
8
  SwitchState["On"] = "on";
@@ -18,7 +10,14 @@ var SwitchState;
18
10
  })(SwitchState || (SwitchState = {}));
19
11
  class AirPurifierService extends baseService_1.BaseService {
20
12
  constructor(platform, accessory, componentId, capabilities, multiServiceAccessory, name, deviceStatus) {
13
+ var _a;
21
14
  super(platform, accessory, componentId, capabilities, multiServiceAccessory, name, deviceStatus);
15
+ // Fan modes the device accepts (from airConditionerFanMode.supportedAcFanModes), or
16
+ // the legacy default list when a driver omits/empties that attribute.
17
+ // Cached because fanMode webhook events arrive without the supported-modes list.
18
+ // Samsung purifiers vary: e.g. ['auto','low','medium','high'] or ['smart','max','medium','windfree','sleep','pet'].
19
+ this.supportedFanModes = AirPurifierService.DEFAULT_FAN_MODES;
20
+ this.hasDeviceFanModes = false;
22
21
  this.log.debug(`Adding AirPurifierService to ${this.name}`);
23
22
  this.airPurifierService = this.setupAirPurifier(platform, multiServiceAccessory);
24
23
  if (this.isCapabilitySupported('airQualitySensor') ||
@@ -26,9 +25,13 @@ class AirPurifierService extends baseService_1.BaseService {
26
25
  this.isCapabilitySupported('odorSensor')) {
27
26
  this.airQualitySensorService = this.setupAirQualitySensor(platform, multiServiceAccessory);
28
27
  }
29
- if (this.isCapabilitySupported('relativeHumidityMeasurement')) {
30
- this.humiditySensorService = this.setupHumiditySensor(platform, multiServiceAccessory);
31
- }
28
+ // relativeHumidityMeasurement and temperatureMeasurement are intentionally left to the
29
+ // base-map HumidityService / TemperatureService. Many purifiers declare them but never
30
+ // report a value; the generic SensorService removes such a dead tile on its own
31
+ // (per-device, value-based) and keeps it for models that do report — no config flag needed.
32
+ // Warm the supported-fan-mode cache from the initial status if we already have it, so the
33
+ // first fan read/command after startup can prefer device-reported modes over fallback.
34
+ this.updateFanModeCache((_a = this.deviceStatus) === null || _a === void 0 ? void 0 : _a.status);
32
35
  }
33
36
  isCapabilitySupported(capability) {
34
37
  return this.capabilities.find(c => c === capability) !== undefined;
@@ -47,7 +50,7 @@ class AirPurifierService extends baseService_1.BaseService {
47
50
  this.service.getCharacteristic(platform.Characteristic.RotationSpeed)
48
51
  .onGet(this.getRotationSpeed.bind(this))
49
52
  .onSet(this.setRotationSpeed.bind(this));
50
- if (this.isCapabilitySupported('custom.filterState')) {
53
+ if (this.isCapabilitySupported('custom.filterState') || this.isCapabilitySupported('custom.hepaFilter')) {
51
54
  this.service.getCharacteristic(platform.Characteristic.FilterLifeLevel)
52
55
  .onGet(this.getFilterLifeLevel.bind(this));
53
56
  this.service.getCharacteristic(platform.Characteristic.FilterChangeIndication)
@@ -79,16 +82,6 @@ class AirPurifierService extends baseService_1.BaseService {
79
82
  this.airPurifierService.addLinkedService(this.service);
80
83
  return this.service;
81
84
  }
82
- setupHumiditySensor(platform, multiServiceAccessory) {
83
- this.log.debug(`Expose Humidity Sensor for ${this.name}`);
84
- this.setServiceType(platform.Service.HumiditySensor);
85
- this.service.getCharacteristic(platform.Characteristic.CurrentRelativeHumidity)
86
- .onGet(this.getHumidityLevel.bind(this));
87
- multiServiceAccessory.startPollingState(this.platform.config.PollSensorsSeconds, this.getHumidityLevel.bind(this), this.service, platform.Characteristic.CurrentRelativeHumidity);
88
- // Link the humidity sensor to the main air purifier service
89
- this.airPurifierService.addLinkedService(this.service);
90
- return this.service;
91
- }
92
85
  // --- Active (switch) ---
93
86
  async getActive() {
94
87
  const deviceStatus = await this.getDeviceStatus();
@@ -118,9 +111,10 @@ class AirPurifierService extends baseService_1.BaseService {
118
111
  // --- TargetAirPurifierState ---
119
112
  async getTargetAirPurifierState() {
120
113
  const deviceStatus = await this.getDeviceStatus();
114
+ this.updateFanModeCache(deviceStatus);
121
115
  const fanMode = deviceStatus.airConditionerFanMode.fanMode.value;
122
116
  // MANUAL = 0, AUTO = 1
123
- return fanMode === AirPurifierFanMode.Auto ? 1 : 0;
117
+ return this.isAutoMode(fanMode) ? 1 : 0;
124
118
  }
125
119
  async setTargetAirPurifierState(value) {
126
120
  this.log.info(`[${this.name}] set target air purifier state to ${value === 1 ? 'auto' : 'manual'}`);
@@ -130,20 +124,31 @@ class AirPurifierService extends baseService_1.BaseService {
130
124
  // --- RotationSpeed ---
131
125
  async getRotationSpeed() {
132
126
  const deviceStatus = await this.getDeviceStatus();
127
+ this.updateFanModeCache(deviceStatus);
133
128
  const fanMode = deviceStatus.airConditionerFanMode.fanMode.value;
134
129
  return this.fanModeToLevel(fanMode);
135
130
  }
136
131
  async setRotationSpeed(value) {
132
+ // Ensure we know the device's real fan modes before translating the slider,
133
+ // otherwise the first set after startup falls back to the legacy default list.
134
+ if (!this.hasDeviceFanModes) {
135
+ this.updateFanModeCache(await this.getDeviceStatus());
136
+ }
137
137
  const fanMode = this.levelToFanMode(value);
138
+ if (fanMode === undefined) {
139
+ this.log.warn(`[${this.name}] no supported fan mode for level ${value}; ignoring`);
140
+ return;
141
+ }
138
142
  this.log.info(`[${this.name}] set rotation speed to ${fanMode} (from level ${value})`);
139
- this.pendingRotationFanMode = fanMode;
143
+ this.pendingRotationMode = fanMode;
140
144
  this.resetFanModeTimer();
141
145
  }
142
146
  /**
143
147
  * Reset the debounce timer. When it fires, resolve priority:
144
- * Auto (target=1) > RotationSpeed > Manual default (low)
148
+ * Auto (target=1) > RotationSpeed > Manual default (slowest supported mode)
145
149
  * This ensures only one setFanMode command is sent regardless of
146
150
  * how many characteristics HomeKit updates or in what order.
151
+ * Falls back to the legacy default list if the driver does not report supported modes.
147
152
  */
148
153
  resetFanModeTimer() {
149
154
  if (this.fanModeTimer) {
@@ -151,37 +156,53 @@ class AirPurifierService extends baseService_1.BaseService {
151
156
  }
152
157
  this.fanModeTimer = setTimeout(async () => {
153
158
  this.fanModeTimer = undefined;
159
+ // Bare Auto/Manual sets don't warm the cache, so make sure we know the real modes first.
160
+ if (!this.hasDeviceFanModes) {
161
+ try {
162
+ this.updateFanModeCache(await this.getDeviceStatus());
163
+ }
164
+ catch (error) {
165
+ this.log.debug(`[${this.name}] could not load supported fan modes: ${error}`);
166
+ }
167
+ }
154
168
  let mode;
155
169
  if (this.pendingTargetState === 1) {
156
170
  // Auto always wins — ignore any slider value sent alongside
157
- mode = AirPurifierFanMode.Auto;
171
+ mode = this.getAutoMode();
158
172
  }
159
- else if (this.pendingRotationFanMode !== undefined) {
173
+ else if (this.pendingRotationMode !== undefined) {
160
174
  // Rotation speed was set — use it (whether or not Manual was also requested)
161
- mode = this.pendingRotationFanMode;
175
+ mode = this.pendingRotationMode;
162
176
  }
163
177
  else {
164
- // Manual was requested but no rotation speed followed — default to low
165
- mode = AirPurifierFanMode.Low;
178
+ // Manual was requested but no rotation speed followed — default to slowest manual mode
179
+ mode = this.manualModes()[0];
166
180
  }
167
181
  this.pendingTargetState = undefined;
168
- this.pendingRotationFanMode = undefined;
182
+ this.pendingRotationMode = undefined;
183
+ if (mode === undefined) {
184
+ this.log.warn(`[${this.name}] no supported fan mode to send; ignoring`);
185
+ return;
186
+ }
169
187
  this.log.info(`[${this.name}] sending debounced fan mode: ${mode}`);
170
- await this.sendCommandsOrFail([new smartThingsCommand_1.Command(this.componentId, 'airConditionerFanMode', 'setFanMode', [mode])]);
188
+ try {
189
+ await this.sendCommandsOrFail([new smartThingsCommand_1.Command(this.componentId, 'airConditionerFanMode', 'setFanMode', [mode])]);
190
+ }
191
+ catch (error) {
192
+ // This runs detached from HomeKit's set handler (fire-and-forget timer), so a rejected
193
+ // command would surface as an unhandledRejection. Log and swallow, like other command paths.
194
+ this.log.warn(`[${this.name}] failed to send fan mode ${mode}: ${error}`);
195
+ }
171
196
  }, AirPurifierService.FAN_MODE_DEBOUNCE_MS);
172
197
  }
173
198
  // --- Filter ---
174
199
  async getFilterLifeLevel() {
175
- var _a;
176
200
  const deviceStatus = await this.getDeviceStatus();
177
- return (_a = deviceStatus['custom.filterState'].filterLifeRemaining.value) !== null && _a !== void 0 ? _a : 100;
201
+ return this.filterLifeLevelFromStatus(deviceStatus);
178
202
  }
179
203
  async getFilterChangeIndication() {
180
- var _a;
181
204
  const deviceStatus = await this.getDeviceStatus();
182
- const remaining = (_a = deviceStatus['custom.filterState'].filterLifeRemaining.value) !== null && _a !== void 0 ? _a : 100;
183
- // FILTER_OK = 0, CHANGE_FILTER = 1
184
- return remaining < 10 ? 1 : 0;
205
+ return this.filterChangeIndicationFromStatus(deviceStatus);
185
206
  }
186
207
  // --- Air Quality Sensor ---
187
208
  async getAirQuality() {
@@ -214,41 +235,135 @@ class AirPurifierService extends baseService_1.BaseService {
214
235
  const deviceStatus = await this.getDeviceStatus();
215
236
  return (_a = deviceStatus.odorSensor.odorLevel.value) !== null && _a !== void 0 ? _a : 0;
216
237
  }
217
- // --- Humidity Sensor ---
218
- async getHumidityLevel() {
219
- const deviceStatus = await this.getDeviceStatus();
220
- return deviceStatus.relativeHumidityMeasurement.humidity.value;
238
+ // --- Fan mode helpers (driven by the device's own supportedAcFanModes) ---
239
+ // Refresh the cached list of supported fan modes from a status payload.
240
+ // If a driver omits or empties supportedAcFanModes, preserve fan control by falling back
241
+ // to the legacy mode set rather than turning the HomeKit controls into no-ops.
242
+ updateFanModeCache(deviceStatus) {
243
+ var _a, _b;
244
+ const modes = (_b = (_a = deviceStatus === null || deviceStatus === void 0 ? void 0 : deviceStatus.airConditionerFanMode) === null || _a === void 0 ? void 0 : _a.supportedAcFanModes) === null || _b === void 0 ? void 0 : _b.value;
245
+ const resolved = this.resolveFanModes(modes);
246
+ this.supportedFanModes = resolved.modes;
247
+ this.hasDeviceFanModes = resolved.fromDevice;
248
+ }
249
+ resolveFanModes(modes) {
250
+ if (Array.isArray(modes)) {
251
+ const resolved = modes.filter(mode => typeof mode === 'string' && mode.length > 0);
252
+ if (resolved.length > 0) {
253
+ return { modes: resolved, fromDevice: true };
254
+ }
255
+ }
256
+ return { modes: [...AirPurifierService.DEFAULT_FAN_MODES], fromDevice: false };
221
257
  }
222
- // --- Helpers ---
258
+ // The mode that maps to HomeKit's TargetAirPurifierState AUTO. Prefer 'auto', then 'smart'.
259
+ getAutoMode() {
260
+ if (this.supportedFanModes.includes('auto')) {
261
+ return 'auto';
262
+ }
263
+ if (this.supportedFanModes.includes('smart')) {
264
+ return 'smart';
265
+ }
266
+ return undefined;
267
+ }
268
+ // A mode is "auto" only if it is the resolved auto mode, so a device exposing BOTH
269
+ // 'auto' and 'smart' treats 'smart' as a normal (manual) speed rather than as auto.
270
+ isAutoMode(mode) {
271
+ return mode !== undefined && mode === this.getAutoMode();
272
+ }
273
+ // Manual (speed) modes only, slowest -> fastest, excluding the resolved auto mode.
274
+ manualModes() {
275
+ const auto = this.getAutoMode();
276
+ return this.supportedFanModes
277
+ .filter(m => m !== auto)
278
+ .map((m, i) => ({ m, i }))
279
+ .sort((a, b) => {
280
+ var _a, _b;
281
+ const ra = (_a = AirPurifierService.FAN_MODE_RANK[a.m.toLowerCase()]) !== null && _a !== void 0 ? _a : 99;
282
+ const rb = (_b = AirPurifierService.FAN_MODE_RANK[b.m.toLowerCase()]) !== null && _b !== void 0 ? _b : 99;
283
+ return ra !== rb ? ra - rb : a.i - b.i; // ties keep device-reported order
284
+ })
285
+ .map(x => x.m);
286
+ }
287
+ // Current fan mode -> HomeKit RotationSpeed (0-100). Auto reports 0 (slider neutral).
223
288
  fanModeToLevel(fanMode) {
224
- switch (fanMode) {
225
- case AirPurifierFanMode.Sleep:
226
- return 15;
227
- case AirPurifierFanMode.Low:
228
- return 33;
229
- case AirPurifierFanMode.Medium:
230
- return 66;
231
- case AirPurifierFanMode.High:
232
- return 100;
233
- case AirPurifierFanMode.Auto:
234
- default:
235
- return 50;
289
+ if (this.isAutoMode(fanMode)) {
290
+ return 0;
291
+ }
292
+ const modes = this.manualModes();
293
+ const idx = modes.indexOf(fanMode);
294
+ if (idx < 0 || modes.length === 0) {
295
+ return 0;
236
296
  }
297
+ return Math.round(((idx + 1) / modes.length) * 100);
237
298
  }
299
+ // HomeKit RotationSpeed (0-100) -> a manual mode the device supports. undefined if none.
238
300
  levelToFanMode(level) {
301
+ const modes = this.manualModes();
302
+ if (modes.length === 0) {
303
+ return undefined;
304
+ }
239
305
  if (level <= 0) {
240
- return AirPurifierFanMode.Auto;
306
+ return modes[0];
241
307
  }
242
- if (level <= 20) {
243
- return AirPurifierFanMode.Sleep;
308
+ const idx = Math.min(modes.length - 1, Math.max(0, Math.ceil((level / 100) * modes.length) - 1));
309
+ return modes[idx];
310
+ }
311
+ filterLifeLevelFromStatus(deviceStatus) {
312
+ var _a, _b, _c, _d;
313
+ if (this.isCapabilitySupported('custom.filterState')) {
314
+ return this.clampPercent((_b = (_a = deviceStatus['custom.filterState']) === null || _a === void 0 ? void 0 : _a.filterLifeRemaining) === null || _b === void 0 ? void 0 : _b.value, 100);
244
315
  }
245
- if (level <= 45) {
246
- return AirPurifierFanMode.Low;
316
+ // custom.hepaFilter reports usage as a percentage consumed; life remaining = 100 - usage.
317
+ const usage = this.finiteNumber((_d = (_c = deviceStatus['custom.hepaFilter']) === null || _c === void 0 ? void 0 : _c.hepaFilterUsage) === null || _d === void 0 ? void 0 : _d.value);
318
+ return usage === undefined ? 100 : this.clampPercent(100 - usage, 100);
319
+ }
320
+ filterChangeIndicationFromStatus(deviceStatus) {
321
+ var _a, _b, _c, _d, _e, _f;
322
+ // FILTER_OK = 0, CHANGE_FILTER = 1
323
+ if (this.isCapabilitySupported('custom.filterState')) {
324
+ const remaining = this.clampPercent((_b = (_a = deviceStatus['custom.filterState']) === null || _a === void 0 ? void 0 : _a.filterLifeRemaining) === null || _b === void 0 ? void 0 : _b.value, 100);
325
+ return remaining < 10 ? 1 : 0;
247
326
  }
248
- if (level <= 80) {
249
- return AirPurifierFanMode.Medium;
327
+ const status = (_d = (_c = deviceStatus['custom.hepaFilter']) === null || _c === void 0 ? void 0 : _c.hepaFilterStatus) === null || _d === void 0 ? void 0 : _d.value;
328
+ const usage = this.finiteNumber((_f = (_e = deviceStatus['custom.hepaFilter']) === null || _e === void 0 ? void 0 : _e.hepaFilterUsage) === null || _f === void 0 ? void 0 : _f.value);
329
+ const needsChange = (status !== null && status !== undefined && status !== 'normal')
330
+ || (usage !== undefined && usage >= 90);
331
+ return needsChange ? 1 : 0;
332
+ }
333
+ updateFilterCharacteristics(deviceStatus) {
334
+ this.airPurifierService.updateCharacteristic(this.platform.Characteristic.FilterLifeLevel, this.filterLifeLevelFromStatus(deviceStatus));
335
+ this.airPurifierService.updateCharacteristic(this.platform.Characteristic.FilterChangeIndication, this.filterChangeIndicationFromStatus(deviceStatus));
336
+ }
337
+ // Build an ephemeral status object with this single event's attribute overlaid on the last
338
+ // known status, WITHOUT mutating the shared cache (this.deviceStatus.status is the live object
339
+ // shared with the accessory and replaced wholesale on each poll). Returns a shallow copy so the
340
+ // filter characteristics can be computed from one consistent view.
341
+ statusWithEventApplied(event) {
342
+ var _a, _b;
343
+ const status = (_a = this.deviceStatus) === null || _a === void 0 ? void 0 : _a.status;
344
+ if (status === undefined) {
345
+ return undefined;
250
346
  }
251
- return AirPurifierFanMode.High;
347
+ const capabilityStatus = (typeof status[event.capability] === 'object' && status[event.capability] !== null)
348
+ ? status[event.capability]
349
+ : {};
350
+ return {
351
+ ...status,
352
+ [event.capability]: {
353
+ ...capabilityStatus,
354
+ [event.attribute]: { ...((_b = capabilityStatus[event.attribute]) !== null && _b !== void 0 ? _b : {}), value: event.value },
355
+ },
356
+ };
357
+ }
358
+ finiteNumber(value) {
359
+ return typeof value === 'number' && Number.isFinite(value) ? value : undefined;
360
+ }
361
+ clampPercent(value, fallback) {
362
+ const numberValue = this.finiteNumber(value);
363
+ if (numberValue === undefined) {
364
+ return fallback;
365
+ }
366
+ return Math.max(0, Math.min(100, numberValue));
252
367
  }
253
368
  // PM2.5 (µg/m³) to HomeKit AirQuality using WHO/EPA-based thresholds
254
369
  pm25ToAirQuality(pm25) {
@@ -305,7 +420,7 @@ class AirPurifierService extends baseService_1.BaseService {
305
420
  return this.deviceStatus.status;
306
421
  }
307
422
  processEvent(event) {
308
- var _a, _b, _c, _d, _e, _f, _g;
423
+ var _a, _b, _c, _d, _e;
309
424
  this.log.info(`[${this.name}] Event updating ${event.capability} capability to ${event.value}`);
310
425
  switch (event.capability) {
311
426
  case 'switch':
@@ -313,38 +428,54 @@ class AirPurifierService extends baseService_1.BaseService {
313
428
  this.airPurifierService.updateCharacteristic(this.platform.Characteristic.CurrentAirPurifierState, event.value === SwitchState.On ? 2 : 0);
314
429
  break;
315
430
  case 'airConditionerFanMode':
316
- this.airPurifierService.updateCharacteristic(this.platform.Characteristic.TargetAirPurifierState, event.value === AirPurifierFanMode.Auto ? 1 : 0);
431
+ // The same capability emits both 'fanMode' and 'supportedAcFanModes' events.
432
+ if (event.attribute === 'supportedAcFanModes') {
433
+ const resolved = this.resolveFanModes(event.value);
434
+ this.supportedFanModes = resolved.modes;
435
+ this.hasDeviceFanModes = resolved.fromDevice;
436
+ break;
437
+ }
438
+ // attribute 'fanMode' (or unspecified, for back-compat).
439
+ this.airPurifierService.updateCharacteristic(this.platform.Characteristic.TargetAirPurifierState, this.isAutoMode(event.value) ? 1 : 0);
317
440
  this.airPurifierService.updateCharacteristic(this.platform.Characteristic.RotationSpeed, this.fanModeToLevel(event.value));
318
441
  break;
319
442
  case 'custom.filterState':
320
443
  if (this.isCapabilitySupported('custom.filterState')) {
321
- const remaining = (_a = event.value) !== null && _a !== void 0 ? _a : 100;
444
+ const remaining = this.clampPercent(event.value, 100);
322
445
  this.airPurifierService.updateCharacteristic(this.platform.Characteristic.FilterLifeLevel, remaining);
323
446
  this.airPurifierService.updateCharacteristic(this.platform.Characteristic.FilterChangeIndication, remaining < 10 ? 1 : 0);
324
447
  }
325
448
  break;
449
+ case 'custom.hepaFilter':
450
+ if (this.isCapabilitySupported('custom.hepaFilter')) {
451
+ // Compute both characteristics from one status view with this event overlaid, so a usage
452
+ // event can't clobber a non-normal status (and vice versa) and a malformed event value
453
+ // can't push NaN. statusWithEventApplied does not mutate the shared cache.
454
+ const status = this.statusWithEventApplied(event);
455
+ if (status !== undefined) {
456
+ this.updateFilterCharacteristics(status);
457
+ }
458
+ }
459
+ break;
326
460
  case 'airQualitySensor':
327
461
  // Skip unreliable airQualitySensor events when dustSensor is available,
328
462
  // as PM2.5-based air quality (updated via dustSensor events) is more accurate
329
463
  if (!this.isCapabilitySupported('dustSensor')) {
330
- (_b = this.airQualitySensorService) === null || _b === void 0 ? void 0 : _b.updateCharacteristic(this.platform.Characteristic.AirQuality, this.stAirQualityToHomeKit(event.value));
464
+ (_a = this.airQualitySensorService) === null || _a === void 0 ? void 0 : _a.updateCharacteristic(this.platform.Characteristic.AirQuality, this.stAirQualityToHomeKit(event.value));
331
465
  }
332
466
  break;
333
467
  case 'dustSensor':
334
468
  if (event.attribute === 'fineDustLevel') {
335
- (_c = this.airQualitySensorService) === null || _c === void 0 ? void 0 : _c.updateCharacteristic(this.platform.Characteristic.PM2_5Density, event.value);
469
+ (_b = this.airQualitySensorService) === null || _b === void 0 ? void 0 : _b.updateCharacteristic(this.platform.Characteristic.PM2_5Density, event.value);
336
470
  // Also update AirQuality based on PM2.5 since it's more reliable
337
- (_d = this.airQualitySensorService) === null || _d === void 0 ? void 0 : _d.updateCharacteristic(this.platform.Characteristic.AirQuality, this.pm25ToAirQuality(event.value));
471
+ (_c = this.airQualitySensorService) === null || _c === void 0 ? void 0 : _c.updateCharacteristic(this.platform.Characteristic.AirQuality, this.pm25ToAirQuality(event.value));
338
472
  }
339
473
  else if (event.attribute === 'dustLevel') {
340
- (_e = this.airQualitySensorService) === null || _e === void 0 ? void 0 : _e.updateCharacteristic(this.platform.Characteristic.PM10Density, event.value);
474
+ (_d = this.airQualitySensorService) === null || _d === void 0 ? void 0 : _d.updateCharacteristic(this.platform.Characteristic.PM10Density, event.value);
341
475
  }
342
476
  break;
343
477
  case 'odorSensor':
344
- (_f = this.airQualitySensorService) === null || _f === void 0 ? void 0 : _f.updateCharacteristic(this.platform.Characteristic.VOCDensity, event.value);
345
- break;
346
- case 'relativeHumidityMeasurement':
347
- (_g = this.humiditySensorService) === null || _g === void 0 ? void 0 : _g.updateCharacteristic(this.platform.Characteristic.CurrentRelativeHumidity, event.value);
478
+ (_e = this.airQualitySensorService) === null || _e === void 0 ? void 0 : _e.updateCharacteristic(this.platform.Characteristic.VOCDensity, event.value);
348
479
  break;
349
480
  default:
350
481
  this.log.info(`[${this.name}] Ignore event updating ${event.capability} capability to ${event.value}`);
@@ -353,5 +484,20 @@ class AirPurifierService extends baseService_1.BaseService {
353
484
  }
354
485
  }
355
486
  exports.AirPurifierService = AirPurifierService;
487
+ AirPurifierService.DEFAULT_FAN_MODES = ['auto', 'low', 'medium', 'high'];
488
+ // Lower rank = slower. Unknown modes sort last (rank 99) in device-reported order.
489
+ // Aliases may share a rank, but distinct labels with different speeds do not.
490
+ AirPurifierService.FAN_MODE_RANK = {
491
+ sleep: 1,
492
+ silent: 2,
493
+ quiet: 3,
494
+ windfree: 4,
495
+ low: 5,
496
+ medium: 6, mid: 6,
497
+ pet: 7,
498
+ high: 8,
499
+ max: 9,
500
+ turbo: 10,
501
+ };
356
502
  AirPurifierService.FAN_MODE_DEBOUNCE_MS = 500;
357
503
  //# sourceMappingURL=airPurifierService.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"airPurifierService.js","sourceRoot":"","sources":["../../src/services/airPurifierService.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"airPurifierService.js","sourceRoot":"","sources":["../../src/services/airPurifierService.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -2,7 +2,7 @@
2
2
  "private": false,
3
3
  "displayName": "Homebridge Smartthings oAuth Plugin",
4
4
  "name": "homebridge-smartthings-oauth",
5
- "version": "1.0.67",
5
+ "version": "1.0.68-beta.0",
6
6
  "description": "Connects SmartThings devices to Homebridge. Automatically discovers devices.",
7
7
  "license": "Apache-2.0",
8
8
  "repository": {