homebridge-kasa-python 3.1.0-beta.2 → 3.1.0-beta.4

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 (37) hide show
  1. package/dist/config.d.ts +1 -0
  2. package/dist/config.js +2 -2
  3. package/dist/config.js.map +1 -1
  4. package/dist/devices/accessoryInformation.js +4 -2
  5. package/dist/devices/accessoryInformation.js.map +1 -1
  6. package/dist/devices/baseDevice.d.ts +5 -2
  7. package/dist/devices/baseDevice.js +77 -16
  8. package/dist/devices/baseDevice.js.map +1 -1
  9. package/dist/devices/baseParent.js +18 -7
  10. package/dist/devices/baseParent.js.map +1 -1
  11. package/dist/devices/descriptorHelpers.js +1 -0
  12. package/dist/devices/descriptorHelpers.js.map +1 -1
  13. package/dist/devices/deviceManager.d.ts +0 -1
  14. package/dist/devices/deviceManager.js +7 -24
  15. package/dist/devices/deviceManager.js.map +1 -1
  16. package/dist/devices/deviceTypes.d.ts +1 -0
  17. package/dist/devices/homekitLightBulb.d.ts +0 -1
  18. package/dist/devices/homekitLightBulb.js +0 -3
  19. package/dist/devices/homekitLightBulb.js.map +1 -1
  20. package/dist/devices/homekitPlug.d.ts +0 -1
  21. package/dist/devices/homekitPlug.js +0 -3
  22. package/dist/devices/homekitPlug.js.map +1 -1
  23. package/dist/devices/homekitPowerStrip.js +0 -2
  24. package/dist/devices/homekitPowerStrip.js.map +1 -1
  25. package/dist/devices/homekitSwitch.d.ts +0 -1
  26. package/dist/devices/homekitSwitch.js +0 -3
  27. package/dist/devices/homekitSwitch.js.map +1 -1
  28. package/dist/platform.js +12 -15
  29. package/dist/platform.js.map +1 -1
  30. package/dist/python/kasaApi.py +8 -8
  31. package/dist/python/pythonChecker.d.ts +0 -3
  32. package/dist/python/pythonChecker.js +24 -36
  33. package/dist/python/pythonChecker.js.map +1 -1
  34. package/dist/utils.js +1 -2
  35. package/dist/utils.js.map +1 -1
  36. package/package.json +11 -10
  37. package/requirements.txt +1 -1
package/dist/config.d.ts CHANGED
@@ -50,4 +50,5 @@ export type KasaPythonConfig = {
50
50
  };
51
51
  };
52
52
  export declare const defaultConfig: KasaPythonConfig;
53
+ export declare function normalizeManualDevices(manualDevices: (string | ConfigDevice)[] | undefined | null): ConfigDevice[];
53
54
  export declare function parseConfig(config: Record<string, unknown>): KasaPythonConfig;
package/dist/config.js CHANGED
@@ -50,7 +50,7 @@ export const defaultConfig = {
50
50
  logEnergyMonitoring: false,
51
51
  },
52
52
  };
53
- function convertManualDevices(manualDevices) {
53
+ export function normalizeManualDevices(manualDevices) {
54
54
  if (!manualDevices || manualDevices.length === 0) {
55
55
  return [];
56
56
  }
@@ -125,7 +125,7 @@ export function parseConfig(config) {
125
125
  offlineInterval: (parsedConfig.offlineInterval ?? defaultConfig.discoveryOptions.offlineInterval) * 24 * 60 * 60 * 1000,
126
126
  additionalBroadcasts: parsedConfig.additionalBroadcasts ?? defaultConfig.discoveryOptions.additionalBroadcasts,
127
127
  manualDevices: parsedConfig.manualDevices
128
- ? convertManualDevices(parsedConfig.manualDevices)
128
+ ? normalizeManualDevices(parsedConfig.manualDevices)
129
129
  : defaultConfig.discoveryOptions.manualDevices,
130
130
  excludeMacAddresses: parsedConfig.excludeMacAddresses ?? defaultConfig.discoveryOptions.excludeMacAddresses,
131
131
  includeMacAddresses: parsedConfig.includeMacAddresses ?? defaultConfig.discoveryOptions.includeMacAddresses,
@@ -1 +1 @@
1
- {"version":3,"file":"config.js","sourceRoot":"","sources":["../src/config.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"config.js","sourceRoot":"","sources":["../src/config.ts"],"names":[],"mappings":"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"}
@@ -7,8 +7,10 @@ export default function accessoryInformation(hap) {
7
7
  const modelCharacteristic = infoService.getCharacteristic(Characteristic.Model);
8
8
  const serialCharacteristic = infoService.getCharacteristic(Characteristic.SerialNumber);
9
9
  const firmwareCharacteristic = infoService.getCharacteristic(Characteristic.FirmwareRevision);
10
- if ((nameCharacteristic.value ?? '') !== (homekitDevice.name ?? '')) {
11
- infoService.setCharacteristic(Characteristic.Name, homekitDevice.name);
10
+ const currentName = nameCharacteristic.value ?? '';
11
+ const deviceName = homekitDevice.name ?? '';
12
+ if (!currentName) {
13
+ infoService.setCharacteristic(Characteristic.Name, deviceName);
12
14
  }
13
15
  if ((manufacturerCharacteristic.value ?? '') !== (homekitDevice.manufacturer ?? '')) {
14
16
  infoService.setCharacteristic(Characteristic.Manufacturer, homekitDevice.manufacturer);
@@ -1 +1 @@
1
- {"version":3,"file":"accessoryInformation.js","sourceRoot":"","sources":["../../src/devices/accessoryInformation.ts"],"names":[],"mappings":"AAIA,MAAM,CAAC,OAAO,UAAU,oBAAoB,CAC1C,GAAQ;IAER,MAAM,EAAE,cAAc,EAAE,OAAO,EAAE,EAAE,oBAAoB,EAAE,EAAE,GAAG,GAAG,CAAC;IAElE,OAAO,CAAC,SAA4B,EAAE,aAA4B,EAAE,EAAE;QACpE,MAAM,WAAW,GAAG,SAAS,CAAC,UAAU,CAAC,oBAAoB,CAAC,IAAI,SAAS,CAAC,UAAU,CAAC,oBAAoB,CAAC,CAAC;QAE7G,MAAM,kBAAkB,GAAG,WAAW,CAAC,iBAAiB,CAAC,cAAc,CAAC,IAAI,CAAC,CAAC;QAC9E,MAAM,0BAA0B,GAAG,WAAW,CAAC,iBAAiB,CAAC,cAAc,CAAC,YAAY,CAAC,CAAC;QAC9F,MAAM,mBAAmB,GAAG,WAAW,CAAC,iBAAiB,CAAC,cAAc,CAAC,KAAK,CAAC,CAAC;QAChF,MAAM,oBAAoB,GAAG,WAAW,CAAC,iBAAiB,CAAC,cAAc,CAAC,YAAY,CAAC,CAAC;QACxF,MAAM,sBAAsB,GAAG,WAAW,CAAC,iBAAiB,CAAC,cAAc,CAAC,gBAAgB,CAAC,CAAC;QAE9F,IAAI,CAAC,kBAAkB,CAAC,KAAe,IAAI,EAAE,CAAC,KAAK,CAAC,aAAa,CAAC,IAAI,IAAI,EAAE,CAAC,EAAE,CAAC;YAC9E,WAAW,CAAC,iBAAiB,CAAC,cAAc,CAAC,IAAI,EAAE,aAAa,CAAC,IAA2B,CAAC,CAAC;QAChG,CAAC;QACD,IAAI,CAAC,0BAA0B,CAAC,KAAe,IAAI,EAAE,CAAC,KAAK,CAAC,aAAa,CAAC,YAAY,IAAI,EAAE,CAAC,EAAE,CAAC;YAC9F,WAAW,CAAC,iBAAiB,CAAC,cAAc,CAAC,YAAY,EAAE,aAAa,CAAC,YAAmC,CAAC,CAAC;QAChH,CAAC;QACD,IAAI,CAAC,mBAAmB,CAAC,KAAe,IAAI,EAAE,CAAC,KAAK,CAAC,aAAa,CAAC,KAAK,IAAI,EAAE,CAAC,EAAE,CAAC;YAChF,WAAW,CAAC,iBAAiB,CAAC,cAAc,CAAC,KAAK,EAAE,aAAa,CAAC,KAA4B,CAAC,CAAC;QAClG,CAAC;QACD,IAAI,CAAC,oBAAoB,CAAC,KAAe,IAAI,EAAE,CAAC,KAAK,CAAC,aAAa,CAAC,YAAY,IAAI,EAAE,CAAC,EAAE,CAAC;YACxF,WAAW,CAAC,iBAAiB,CAAC,cAAc,CAAC,YAAY,EAAE,aAAa,CAAC,YAAmC,CAAC,CAAC;QAChH,CAAC;QACD,IAAI,CAAC,sBAAsB,CAAC,KAAe,IAAI,EAAE,CAAC,KAAK,CAAC,aAAa,CAAC,gBAAgB,IAAI,EAAE,CAAC,EAAE,CAAC;YAC9F,WAAW,CAAC,iBAAiB,CAAC,cAAc,CAAC,gBAAgB,EAAE,aAAa,CAAC,gBAAuC,CAAC,CAAC;QACxH,CAAC;QAED,OAAO,WAAW,CAAC;IACrB,CAAC,CAAC;AACJ,CAAC"}
1
+ {"version":3,"file":"accessoryInformation.js","sourceRoot":"","sources":["../../src/devices/accessoryInformation.ts"],"names":[],"mappings":"AAIA,MAAM,CAAC,OAAO,UAAU,oBAAoB,CAC1C,GAAQ;IAER,MAAM,EAAE,cAAc,EAAE,OAAO,EAAE,EAAE,oBAAoB,EAAE,EAAE,GAAG,GAAG,CAAC;IAElE,OAAO,CAAC,SAA4B,EAAE,aAA4B,EAAE,EAAE;QACpE,MAAM,WAAW,GAAG,SAAS,CAAC,UAAU,CAAC,oBAAoB,CAAC,IAAI,SAAS,CAAC,UAAU,CAAC,oBAAoB,CAAC,CAAC;QAE7G,MAAM,kBAAkB,GAAG,WAAW,CAAC,iBAAiB,CAAC,cAAc,CAAC,IAAI,CAAC,CAAC;QAC9E,MAAM,0BAA0B,GAAG,WAAW,CAAC,iBAAiB,CAAC,cAAc,CAAC,YAAY,CAAC,CAAC;QAC9F,MAAM,mBAAmB,GAAG,WAAW,CAAC,iBAAiB,CAAC,cAAc,CAAC,KAAK,CAAC,CAAC;QAChF,MAAM,oBAAoB,GAAG,WAAW,CAAC,iBAAiB,CAAC,cAAc,CAAC,YAAY,CAAC,CAAC;QACxF,MAAM,sBAAsB,GAAG,WAAW,CAAC,iBAAiB,CAAC,cAAc,CAAC,gBAAgB,CAAC,CAAC;QAC9F,MAAM,WAAW,GAAG,kBAAkB,CAAC,KAAe,IAAI,EAAE,CAAC;QAC7D,MAAM,UAAU,GAAG,aAAa,CAAC,IAAI,IAAI,EAAE,CAAC;QAE5C,IAAI,CAAC,WAAW,EAAE,CAAC;YACjB,WAAW,CAAC,iBAAiB,CAAC,cAAc,CAAC,IAAI,EAAE,UAAiC,CAAC,CAAC;QACxF,CAAC;QACD,IAAI,CAAC,0BAA0B,CAAC,KAAe,IAAI,EAAE,CAAC,KAAK,CAAC,aAAa,CAAC,YAAY,IAAI,EAAE,CAAC,EAAE,CAAC;YAC9F,WAAW,CAAC,iBAAiB,CAAC,cAAc,CAAC,YAAY,EAAE,aAAa,CAAC,YAAmC,CAAC,CAAC;QAChH,CAAC;QACD,IAAI,CAAC,mBAAmB,CAAC,KAAe,IAAI,EAAE,CAAC,KAAK,CAAC,aAAa,CAAC,KAAK,IAAI,EAAE,CAAC,EAAE,CAAC;YAChF,WAAW,CAAC,iBAAiB,CAAC,cAAc,CAAC,KAAK,EAAE,aAAa,CAAC,KAA4B,CAAC,CAAC;QAClG,CAAC;QACD,IAAI,CAAC,oBAAoB,CAAC,KAAe,IAAI,EAAE,CAAC,KAAK,CAAC,aAAa,CAAC,YAAY,IAAI,EAAE,CAAC,EAAE,CAAC;YACxF,WAAW,CAAC,iBAAiB,CAAC,cAAc,CAAC,YAAY,EAAE,aAAa,CAAC,YAAmC,CAAC,CAAC;QAChH,CAAC;QACD,IAAI,CAAC,sBAAsB,CAAC,KAAe,IAAI,EAAE,CAAC,KAAK,CAAC,aAAa,CAAC,gBAAgB,IAAI,EAAE,CAAC,EAAE,CAAC;YAC9F,WAAW,CAAC,iBAAiB,CAAC,cAAc,CAAC,gBAAgB,EAAE,aAAa,CAAC,gBAAuC,CAAC,CAAC;QACxH,CAAC;QAED,OAAO,WAAW,CAAC;IACrB,CAAC,CAAC;AACJ,CAAC"}
@@ -17,6 +17,7 @@ export default abstract class HomeKitDevice {
17
17
  protected pollingInterval?: NodeJS.Timeout;
18
18
  protected updateEmitter: EventEmitter<any>;
19
19
  private static locks;
20
+ private pendingChanges;
20
21
  protected getSysInfoDeferred: () => Promise<void>;
21
22
  private primaryDescriptors;
22
23
  private primaryService?;
@@ -38,10 +39,10 @@ export default abstract class HomeKitDevice {
38
39
  protected waitForUpdateOrDiscovery(): Promise<void>;
39
40
  protected getSysInfo(): Promise<void>;
40
41
  private fetchSysInfoInternal;
41
- protected refreshAndUpdateCharacteristics(forceUpdate: boolean): Promise<void>;
42
+ protected refreshAndUpdateCharacteristics(forceUpdate: boolean, skipFetch?: boolean): Promise<void>;
42
43
  startPolling(): Promise<void>;
43
44
  stopPolling(): Promise<void>;
44
- updateAfterPeriodicDiscovery(): void;
45
+ updateAfterPeriodicDiscovery(force?: boolean): void;
45
46
  protected setupPrimaryService(): void;
46
47
  protected getPrimaryServiceType(): WithUUID<typeof this.platform.Service> | null;
47
48
  protected buildPrimaryDescriptors(): CharacteristicDescriptor[];
@@ -53,9 +54,11 @@ export default abstract class HomeKitDevice {
53
54
  private executeDescriptorSet;
54
55
  protected updateAllServicesAndCharacteristics(forceUpdate: boolean): Promise<void>;
55
56
  protected defaultValueForCharacteristic(type: WithUUID<new () => Characteristic>): CharacteristicValue;
57
+ protected resolveWithDebounce(key: string, currentHomeKitValue: CharacteristicValue, nextDeviceValue: CharacteristicValue, debouncePolls: number, force?: boolean): CharacteristicValue;
56
58
  protected updateIfChanged<T extends CharacteristicValue>(service: Service, characteristic: Characteristic, alias: string, previousValue: T, nextValue: T, label?: string, force?: boolean): void;
57
59
  protected addService(serviceCtor: WithUUID<typeof this.platform.Service>, name: string, subType?: string): Service;
58
60
  protected updateValue(service: Service, characteristic: Characteristic, deviceAlias: string, value: Nullable<CharacteristicValue> | Error | HapStatusError): void;
61
+ private isEnergyMonitoringCharacteristic;
59
62
  abstract initialize(): Promise<void>;
60
63
  abstract identify(): void;
61
64
  }
@@ -14,6 +14,7 @@ export default class HomeKitDevice {
14
14
  pollingInterval;
15
15
  updateEmitter = new EventEmitter();
16
16
  static locks = new Map();
17
+ pendingChanges = new Map();
17
18
  getSysInfoDeferred;
18
19
  primaryDescriptors = [];
19
20
  primaryService;
@@ -60,12 +61,20 @@ export default class HomeKitDevice {
60
61
  return accessory;
61
62
  }
62
63
  updateAccessory(accessory) {
63
- accessory.displayName = this.name;
64
+ const currentDisplayName = accessory.displayName;
65
+ const deviceName = this.name;
66
+ let displayNameChanged = false;
67
+ if (!currentDisplayName && deviceName) {
68
+ accessory.displayName = deviceName;
69
+ displayNameChanged = true;
70
+ }
64
71
  accessory.context.deviceId = this.id;
65
72
  accessory.context.lastSeen = this.kasaDevice.last_seen;
66
73
  accessory.context.offline = this.kasaDevice.offline;
67
74
  this.platform.configuredAccessories.set(accessory.UUID, accessory);
68
- this.platform.api.updatePlatformAccessories([accessory]);
75
+ if (displayNameChanged) {
76
+ this.platform.api.updatePlatformAccessories([accessory]);
77
+ }
69
78
  }
70
79
  get id() {
71
80
  return this.kasaDevice.sys_info.device_id;
@@ -142,7 +151,6 @@ export default class HomeKitDevice {
142
151
  return;
143
152
  }
144
153
  try {
145
- this.previousSnapshot = JSON.parse(JSON.stringify(this.kasaDevice));
146
154
  const updatedSysInfo = await this.deviceManager.getSysInfo(host);
147
155
  if (!updatedSysInfo) {
148
156
  this.log.warn('getSysInfo returned undefined');
@@ -155,7 +163,7 @@ export default class HomeKitDevice {
155
163
  this.log.error('Error updating sys_info', error);
156
164
  }
157
165
  }
158
- async refreshAndUpdateCharacteristics(forceUpdate) {
166
+ async refreshAndUpdateCharacteristics(forceUpdate, skipFetch = false) {
159
167
  const deviceKey = this.kasaDevice.sys_info.device_id;
160
168
  if (!forceUpdate && HomeKitDevice.locks.has(deviceKey)) {
161
169
  this.log.debug('Skipping poll; active update lock');
@@ -171,8 +179,11 @@ export default class HomeKitDevice {
171
179
  }
172
180
  this.isUpdating = true;
173
181
  try {
174
- await this.getSysInfo();
182
+ if (!skipFetch) {
183
+ await this.getSysInfo();
184
+ }
175
185
  await this.updateAllServicesAndCharacteristics(forceUpdate);
186
+ this.previousSnapshot = JSON.parse(JSON.stringify(this.kasaDevice));
176
187
  }
177
188
  catch (error) {
178
189
  this.log.error('Error during poll update:', error);
@@ -207,8 +218,10 @@ export default class HomeKitDevice {
207
218
  });
208
219
  }
209
220
  }
210
- updateAfterPeriodicDiscovery() {
211
- void this.refreshAndUpdateCharacteristics(true);
221
+ updateAfterPeriodicDiscovery(force = false) {
222
+ // Data was already provided by the caller (kasaDevice was just assigned),
223
+ // so skip the getSysInfo fetch to avoid a redundant device round-trip.
224
+ void this.refreshAndUpdateCharacteristics(force, true);
212
225
  }
213
226
  setupPrimaryService() {
214
227
  const serviceType = this.getPrimaryServiceType();
@@ -265,13 +278,12 @@ export default class HomeKitDevice {
265
278
  }
266
279
  }
267
280
  async genericOnSet(descriptor, value) {
268
- const context = this.buildDescriptorContext();
269
281
  if (!descriptor.applySet) {
270
282
  return;
271
283
  }
272
- await this.executeDescriptorSet(descriptor, value, context);
284
+ await this.executeDescriptorSet(descriptor, value);
273
285
  }
274
- async executeDescriptorSet(descriptor, value, context, isGrouped = false) {
286
+ async executeDescriptorSet(descriptor, value, isGrouped = false) {
275
287
  const lockKey = this.makeLockKey();
276
288
  await this.withLock(lockKey, async () => {
277
289
  if (this.shouldSkipUpdate()) {
@@ -282,6 +294,7 @@ export default class HomeKitDevice {
282
294
  }
283
295
  try {
284
296
  this.isUpdating = true;
297
+ const context = this.buildDescriptorContext();
285
298
  await descriptor.applySet(value, context);
286
299
  const postSetValue = descriptor.getCurrent(context);
287
300
  if (this.primaryService) {
@@ -315,10 +328,21 @@ export default class HomeKitDevice {
315
328
  device: previousSysInfo || {},
316
329
  alias: this.name,
317
330
  };
318
- previousContext.device.__snapshot = true;
319
- const previousValue = previousSysInfo ? descriptor.getCurrent(previousContext) : descriptor.getInitial(context);
320
- const nextValue = descriptor.getCurrent(context);
321
- this.updateIfChanged(this.primaryService, this.primaryService.getCharacteristic(descriptor.type), context.alias, previousValue, nextValue, descriptor.name, forceUpdate);
331
+ if (descriptor.debouncePolls && descriptor.debouncePolls > 1) {
332
+ const characteristic = this.primaryService.getCharacteristic(descriptor.type);
333
+ const hkValue = characteristic.value !== null && characteristic.value !== undefined
334
+ ? characteristic.value
335
+ : descriptor.getInitial(context);
336
+ const nextDeviceValue = descriptor.getCurrent(context);
337
+ const debounceKey = `primary:${descriptor.type.UUID}`;
338
+ const effectiveNext = this.resolveWithDebounce(debounceKey, hkValue, nextDeviceValue, descriptor.debouncePolls, forceUpdate);
339
+ this.updateIfChanged(this.primaryService, characteristic, context.alias, hkValue, effectiveNext, descriptor.name, forceUpdate);
340
+ }
341
+ else {
342
+ const previousValue = previousSysInfo ? descriptor.getCurrent(previousContext) : descriptor.getInitial(context);
343
+ const nextValue = descriptor.getCurrent(context);
344
+ this.updateIfChanged(this.primaryService, this.primaryService.getCharacteristic(descriptor.type), context.alias, previousValue, nextValue, descriptor.name, forceUpdate);
345
+ }
322
346
  }
323
347
  catch (error) {
324
348
  this.log.error(`Update diff error for ${descriptor.name ?? descriptor.type.UUID}`, error);
@@ -339,11 +363,35 @@ export default class HomeKitDevice {
339
363
  }
340
364
  return false;
341
365
  }
366
+ resolveWithDebounce(key, currentHomeKitValue, nextDeviceValue, debouncePolls, force = false) {
367
+ if (force) {
368
+ this.pendingChanges.delete(key);
369
+ return nextDeviceValue;
370
+ }
371
+ if (currentHomeKitValue === nextDeviceValue) {
372
+ this.pendingChanges.delete(key);
373
+ return nextDeviceValue;
374
+ }
375
+ const pending = this.pendingChanges.get(key);
376
+ if (pending && pending.pendingValue === nextDeviceValue) {
377
+ pending.count++;
378
+ if (pending.count >= debouncePolls) {
379
+ this.pendingChanges.delete(key);
380
+ return nextDeviceValue;
381
+ }
382
+ return currentHomeKitValue;
383
+ }
384
+ this.pendingChanges.set(key, { pendingValue: nextDeviceValue, count: 1 });
385
+ return currentHomeKitValue;
386
+ }
342
387
  updateIfChanged(service, characteristic, alias, previousValue, nextValue, label, force = false) {
343
388
  const needsInit = characteristic.value === undefined || characteristic.value === null;
389
+ const isEnergyCharacteristic = this.isEnergyMonitoringCharacteristic(characteristic);
344
390
  if (force || needsInit || previousValue !== nextValue) {
345
391
  if (label) {
346
- this.log.debug(`[${alias}] Updating ${label}: ${previousValue} ${nextValue}`);
392
+ if (!isEnergyCharacteristic || (isEnergyCharacteristic && this.platform.config.advancedOptions.logEnergyMonitoring)) {
393
+ this.log.debug(`[${alias}] Updating ${label}: ${previousValue} → ${nextValue}`);
394
+ }
347
395
  }
348
396
  this.updateValue(service, characteristic, alias, nextValue);
349
397
  }
@@ -354,8 +402,21 @@ export default class HomeKitDevice {
354
402
  return this.homebridgeAccessory.addService(serviceCtor, name, subType ?? '');
355
403
  }
356
404
  updateValue(service, characteristic, deviceAlias, value) {
357
- this.log.info(`Updating ${this.platform.lsc(service, characteristic)} on ${deviceAlias} to ${value}`);
405
+ const isEnergyCharacteristic = this.isEnergyMonitoringCharacteristic(characteristic);
406
+ if (!isEnergyCharacteristic || (isEnergyCharacteristic && this.platform.config.advancedOptions.logEnergyMonitoring)) {
407
+ this.log.info(`Updating ${this.platform.lsc(service, characteristic)} on ${deviceAlias} to ${value}`);
408
+ }
358
409
  characteristic.updateValue(value);
359
410
  }
411
+ isEnergyMonitoringCharacteristic(characteristic) {
412
+ if (!this.platform.energyCharacteristics) {
413
+ return false;
414
+ }
415
+ const uuid = characteristic.UUID;
416
+ return (uuid === this.platform.energyCharacteristics.Volts.UUID ||
417
+ uuid === this.platform.energyCharacteristics.Amperes.UUID ||
418
+ uuid === this.platform.energyCharacteristics.Watts.UUID ||
419
+ uuid === this.platform.energyCharacteristics.KiloWattHours.UUID);
420
+ }
360
421
  }
361
422
  //# sourceMappingURL=baseDevice.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"baseDevice.js","sourceRoot":"","sources":["../../src/devices/baseDevice.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"baseDevice.js","sourceRoot":"","sources":["../../src/devices/baseDevice.ts"],"names":[],"mappings":"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"}
@@ -70,18 +70,17 @@ export default class HomeKitParentDevice extends HomeKitDevice {
70
70
  }
71
71
  }
72
72
  async childOnSet(service, child, descriptor, value) {
73
- const context = this.buildChildDescriptorContext(child);
74
73
  if (!descriptor.applySet) {
75
74
  return;
76
75
  }
77
- await this.executeChildDescriptorSet(service, child, descriptor, value, context);
76
+ await this.executeChildDescriptorSet(service, child, descriptor, value);
78
77
  }
79
78
  getChildService(child) {
80
79
  const serviceType = this.getChildServiceType(child);
81
80
  const childIndex = this.extractChildIndex(child);
82
81
  return this.homebridgeAccessory.getServiceById(serviceType, `child-${childIndex + 1}`);
83
82
  }
84
- async executeChildDescriptorSet(service, child, descriptor, value, context, isGrouped = false) {
83
+ async executeChildDescriptorSet(service, child, descriptor, value, isGrouped = false) {
85
84
  const lockKey = this.makeLockKey();
86
85
  await this.withLock(lockKey, async () => {
87
86
  if (this.shouldSkipUpdate()) {
@@ -92,6 +91,7 @@ export default class HomeKitParentDevice extends HomeKitDevice {
92
91
  }
93
92
  try {
94
93
  this.isUpdating = true;
94
+ const context = this.buildChildDescriptorContext(child);
95
95
  await descriptor.applySet(value, context);
96
96
  const postSetValue = descriptor.getCurrent(context);
97
97
  this.updateValue(service, service.getCharacteristic(descriptor.type), context.alias, postSetValue);
@@ -135,10 +135,21 @@ export default class HomeKitParentDevice extends HomeKitDevice {
135
135
  child: previousChild,
136
136
  alias: child.alias,
137
137
  };
138
- previousContext.device.__snapshot = true;
139
- const previousValue = previousChild ? descriptor.getCurrent(previousContext) : descriptor.getInitial(context);
140
- const nextValue = descriptor.getCurrent(context);
141
- this.updateIfChanged(service, service.getCharacteristic(descriptor.type), context.alias, previousValue, nextValue, descriptor.name, forceUpdate);
138
+ if (descriptor.debouncePolls && descriptor.debouncePolls > 1) {
139
+ const characteristic = service.getCharacteristic(descriptor.type);
140
+ const hkValue = characteristic.value !== null && characteristic.value !== undefined
141
+ ? characteristic.value
142
+ : descriptor.getInitial(context);
143
+ const nextDeviceValue = descriptor.getCurrent(context);
144
+ const debounceKey = `${this.childKey(child)}:${descriptor.type.UUID}`;
145
+ const effectiveNext = this.resolveWithDebounce(debounceKey, hkValue, nextDeviceValue, descriptor.debouncePolls, forceUpdate);
146
+ this.updateIfChanged(service, characteristic, context.alias, hkValue, effectiveNext, descriptor.name, forceUpdate);
147
+ }
148
+ else {
149
+ const previousValue = previousChild ? descriptor.getCurrent(previousContext) : descriptor.getInitial(context);
150
+ const nextValue = descriptor.getCurrent(context);
151
+ this.updateIfChanged(service, service.getCharacteristic(descriptor.type), context.alias, previousValue, nextValue, descriptor.name, forceUpdate);
152
+ }
142
153
  }
143
154
  catch (error) {
144
155
  this.log.error(`Child update diff error (${child.alias}) ${descriptor.name}`, error);
@@ -1 +1 @@
1
- {"version":3,"file":"baseParent.js","sourceRoot":"","sources":["../../src/devices/baseParent.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"baseParent.js","sourceRoot":"","sources":["../../src/devices/baseParent.ts"],"names":[],"mappings":"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"}
@@ -84,6 +84,7 @@ export function buildOutletInUseDescriptor(C, hasEnergy) {
84
84
  type: C.OutletInUse,
85
85
  name: 'OutletInUse',
86
86
  writable: false,
87
+ debouncePolls: 2,
87
88
  getInitial: (context) => (hasEnergy ? energy(context) : state(context)),
88
89
  getCurrent: (context) => (hasEnergy ? energy(context) : state(context)),
89
90
  };
@@ -1 +1 @@
1
- {"version":3,"file":"descriptorHelpers.js","sourceRoot":"","sources":["../../src/devices/descriptorHelpers.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"descriptorHelpers.js","sourceRoot":"","sources":["../../src/devices/descriptorHelpers.ts"],"names":[],"mappings":"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"}
@@ -23,7 +23,6 @@ export default class DeviceManager {
23
23
  private performDeviceAction;
24
24
  private updateDeviceAlias;
25
25
  private needsManualDevicesNormalization;
26
- private normalizeManualDevices;
27
26
  private readConfigFile;
28
27
  private writeConfigFile;
29
28
  private handleAxiosError;
@@ -3,7 +3,7 @@ import fs from 'node:fs/promises';
3
3
  import path from 'node:path';
4
4
  import { EventSource } from 'eventsource';
5
5
  import { EventEmitter } from 'node:events';
6
- import { parseConfig } from '../config.js';
6
+ import { normalizeManualDevices, parseConfig } from '../config.js';
7
7
  export const deviceEventEmitter = new EventEmitter();
8
8
  export default class DeviceManager {
9
9
  platform;
@@ -27,18 +27,17 @@ export default class DeviceManager {
27
27
  this.includeMacs = platform.config.discoveryOptions.includeMacAddresses;
28
28
  }
29
29
  async discoverDevices() {
30
- this.log.info('Starting device discovery (SSE)...');
30
+ this.log.debug('Starting device discovery...');
31
31
  try {
32
32
  const authConfig = this.username && this.password
33
33
  ? { auth: { username: this.username, password: this.password } }
34
34
  : {};
35
- const response = await axios.post(`${this.apiUrl}/discover`, {
35
+ await axios.post(`${this.apiUrl}/discover`, {
36
36
  additionalBroadcasts: this.additionalBroadcasts,
37
37
  manualDevices: this.manualDeviceHosts,
38
38
  excludeMacAddresses: this.excludeMacs,
39
39
  includeMacAddresses: this.includeMacs,
40
40
  }, authConfig);
41
- this.log.info('Discovery initiated:', Object.keys(response.data).length, 'potential entries');
42
41
  const configPath = path.join(this.platform.storagePath, 'config.json');
43
42
  const fileConfig = await this.readConfigFile(configPath);
44
43
  const platformSection = fileConfig.platforms.find((p) => p.platform === 'KasaPython');
@@ -54,7 +53,7 @@ export default class DeviceManager {
54
53
  const data = JSON.parse(event.data);
55
54
  this.log.debug('SSE event data:', data);
56
55
  if (data.status === 'discovery_complete') {
57
- this.log.info('Device discovery complete.');
56
+ this.log.debug('Device discovery complete.');
58
57
  eventSource.close();
59
58
  return;
60
59
  }
@@ -68,7 +67,7 @@ export default class DeviceManager {
68
67
  last_seen: new Date(),
69
68
  offline: false,
70
69
  };
71
- this.log.info(`Discovered device: ${device.sys_info.alias} (${device.sys_info.host})`);
70
+ this.log.debug(`Discovered device: ${device.sys_info.alias} (${device.sys_info.host})`);
72
71
  this.updateDeviceAlias(device.sys_info);
73
72
  this.persistDiscoveredDevice(device, platformSection);
74
73
  deviceEventEmitter.emit('deviceDiscovered', device);
@@ -95,7 +94,7 @@ export default class DeviceManager {
95
94
  return true;
96
95
  });
97
96
  if (this.needsManualDevicesNormalization(platformSection.manualDevices)) {
98
- platformSection.manualDevices = this.normalizeManualDevices(platformSection.manualDevices);
97
+ platformSection.manualDevices = normalizeManualDevices(platformSection.manualDevices);
99
98
  }
100
99
  await this.writeConfigFile(configPath, fileConfig);
101
100
  this.platform.config = parseConfig(platformSection);
@@ -189,23 +188,7 @@ export default class DeviceManager {
189
188
  }
190
189
  }
191
190
  needsManualDevicesNormalization(manualDevices) {
192
- return manualDevices.length > 0 &&
193
- (typeof manualDevices[0] === 'string' ||
194
- manualDevices.some(entry => typeof entry !== 'string'));
195
- }
196
- normalizeManualDevices(manualDevices) {
197
- return manualDevices.map(entry => {
198
- if (typeof entry === 'string') {
199
- return { host: entry, alias: 'Will Be Filled By Plug-In Automatically' };
200
- }
201
- else if ('host' in entry && !('alias' in entry)) {
202
- entry.alias = 'Will Be Filled By Plug-In Automatically';
203
- }
204
- else if ('breakoutChildDevices' in entry) {
205
- delete entry.breakoutChildDevices;
206
- }
207
- return entry;
208
- });
191
+ return manualDevices.some(entry => typeof entry === 'string' || 'breakoutChildDevices' in entry);
209
192
  }
210
193
  async readConfigFile(configPath) {
211
194
  const data = await fs.readFile(configPath, 'utf8');