homebridge 2.0.0-alpha.46 → 2.0.0-alpha.47

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.
@@ -7,5 +7,5 @@
7
7
  export { MatterConfigValidator } from './matterConfigValidator.js';
8
8
  export { MatterServer } from './matterServer.js';
9
9
  export { HomebridgeMatterStorage, MatterStorageManager } from './matterStorage.js';
10
- export { clusters, devices, deviceTypes, MatterCommissioningError, MatterDeviceError, MatterError, MatterErrorType, MatterNetworkError, MatterStorageError, } from './matterTypes.js';
10
+ export { clusterNames, clusters, devices, deviceTypes, MatterCommissioningError, MatterDeviceError, MatterError, MatterErrorType, MatterNetworkError, MatterStorageError, } from './matterTypes.js';
11
11
  //# sourceMappingURL=index.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/matter/index.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH,OAAO,EAAqC,qBAAqB,EAAE,MAAM,4BAA4B,CAAA;AACrG,OAAO,EAAE,YAAY,EAAE,MAAM,mBAAmB,CAAA;AAChD,OAAO,EAAE,uBAAuB,EAAE,oBAAoB,EAAE,MAAM,oBAAoB,CAAA;AAClF,OAAO,EACL,QAAQ,EACR,OAAO,EACP,WAAW,EAKX,wBAAwB,EAExB,iBAAiB,EACjB,WAAW,EAEX,eAAe,EACf,kBAAkB,EAClB,kBAAkB,GACnB,MAAM,kBAAkB,CAAA"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/matter/index.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAWH,OAAO,EAAqC,qBAAqB,EAAE,MAAM,4BAA4B,CAAA;AACrG,OAAO,EAAE,YAAY,EAAE,MAAM,mBAAmB,CAAA;AAChD,OAAO,EAAE,uBAAuB,EAAE,oBAAoB,EAAE,MAAM,oBAAoB,CAAA;AAClF,OAAO,EACL,YAAY,EACZ,QAAQ,EACR,OAAO,EACP,WAAW,EAMX,wBAAwB,EAExB,iBAAiB,EACjB,WAAW,EAEX,eAAe,EACf,kBAAkB,EAClB,kBAAkB,GACnB,MAAM,kBAAkB,CAAA"}
@@ -1 +1 @@
1
- {"version":3,"file":"matterAccessoryCache.d.ts","sourceRoot":"","sources":["../../src/matter/matterAccessoryCache.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,kBAAkB,CAAA;AAUvD;;GAEG;AACH,MAAM,WAAW,yBAAyB;IACxC,IAAI,EAAE,MAAM,CAAA;IACZ,WAAW,EAAE,MAAM,CAAA;IACnB,UAAU,EAAE;QACV,IAAI,CAAC,EAAE,MAAM,CAAA;QACb,IAAI,CAAC,EAAE,MAAM,CAAA;KACd,CAAA;IACD,YAAY,EAAE,MAAM,CAAA;IACpB,YAAY,EAAE,MAAM,CAAA;IACpB,KAAK,EAAE,MAAM,CAAA;IACb,gBAAgB,CAAC,EAAE,MAAM,CAAA;IACzB,gBAAgB,CAAC,EAAE,MAAM,CAAA;IACzB,eAAe,CAAC,EAAE,MAAM,CAAA;IACxB,OAAO,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,CAAA;IAC7B,QAAQ,EAAE;QACR,CAAC,WAAW,EAAE,MAAM,GAAG;YACrB,CAAC,aAAa,EAAE,MAAM,GAAG,GAAG,CAAA;SAC7B,CAAA;KACF,CAAA;CACF;AAED;;GAEG;AACH,qBAAa,oBAAoB;IAC/B,OAAO,CAAC,QAAQ,CAAC,aAAa,CAAQ;IACtC,OAAO,CAAC,iBAAiB,CAAoD;IAC7E,OAAO,CAAC,WAAW,CAAQ;IAC3B,OAAO,CAAC,cAAc,CAA6B;gBAEvC,WAAW,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM;IAIjD;;OAEG;IACG,IAAI,IAAI,OAAO,CAAC,GAAG,CAAC,MAAM,EAAE,yBAAyB,CAAC,CAAC;IAgD7D;;OAEG;IACG,IAAI,CAAC,WAAW,EAAE,GAAG,CAAC,MAAM,EAAE,eAAe,CAAC,GAAG,OAAO,CAAC,IAAI,CAAC;IAgBpE;;OAEG;YACW,WAAW;IAqCzB;;OAEG;IACH,SAAS,CAAC,IAAI,EAAE,MAAM,GAAG,yBAAyB,GAAG,SAAS;IAI9D;;OAEG;IACH,SAAS,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO;IAIhC;;OAEG;IACH,YAAY,CAAC,IAAI,EAAE,MAAM,GAAG,IAAI;IAIhC;;OAEG;IACH,YAAY,IAAI,GAAG,CAAC,MAAM,EAAE,yBAAyB,CAAC;IAItD;;OAEG;IACH,OAAO,CAAC,kBAAkB;CAsB3B"}
1
+ {"version":3,"file":"matterAccessoryCache.d.ts","sourceRoot":"","sources":["../../src/matter/matterAccessoryCache.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,kBAAkB,CAAA;AAUvD;;GAEG;AACH,MAAM,WAAW,yBAAyB;IACxC,IAAI,EAAE,MAAM,CAAA;IACZ,WAAW,EAAE,MAAM,CAAA;IACnB,UAAU,EAAE;QACV,IAAI,CAAC,EAAE,MAAM,CAAA;QACb,IAAI,CAAC,EAAE,MAAM,CAAA;KACd,CAAA;IACD,YAAY,EAAE,MAAM,CAAA;IACpB,YAAY,EAAE,MAAM,CAAA;IACpB,KAAK,EAAE,MAAM,CAAA;IACb,gBAAgB,CAAC,EAAE,MAAM,CAAA;IACzB,gBAAgB,CAAC,EAAE,MAAM,CAAA;IACzB,eAAe,CAAC,EAAE,MAAM,CAAA;IACxB,OAAO,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,CAAA;IAC7B,QAAQ,EAAE;QACR,CAAC,WAAW,EAAE,MAAM,GAAG;YACrB,CAAC,aAAa,EAAE,MAAM,GAAG,GAAG,CAAA;SAC7B,CAAA;KACF,CAAA;CACF;AAED;;GAEG;AACH,qBAAa,oBAAoB;IAC/B,OAAO,CAAC,QAAQ,CAAC,aAAa,CAAQ;IACtC,OAAO,CAAC,iBAAiB,CAAoD;IAC7E,OAAO,CAAC,WAAW,CAAQ;IAC3B,OAAO,CAAC,cAAc,CAA6B;gBAEvC,WAAW,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM;IAIjD;;OAEG;IACG,IAAI,IAAI,OAAO,CAAC,GAAG,CAAC,MAAM,EAAE,yBAAyB,CAAC,CAAC;IAgD7D;;OAEG;IACG,IAAI,CAAC,WAAW,EAAE,GAAG,CAAC,MAAM,EAAE,eAAe,CAAC,GAAG,OAAO,CAAC,IAAI,CAAC;IAgBpE;;OAEG;YACW,WAAW;IA2CzB;;OAEG;IACH,SAAS,CAAC,IAAI,EAAE,MAAM,GAAG,yBAAyB,GAAG,SAAS;IAI9D;;OAEG;IACH,SAAS,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO;IAIhC;;OAEG;IACH,YAAY,CAAC,IAAI,EAAE,MAAM,GAAG,IAAI;IAIhC;;OAEG;IACH,YAAY,IAAI,GAAG,CAAC,MAAM,EAAE,yBAAyB,CAAC;IAItD;;OAEG;IACH,OAAO,CAAC,kBAAkB;CAsB3B"}
@@ -93,14 +93,19 @@ export class MatterAccessoryCache {
93
93
  for (const accessory of accessories.values()) {
94
94
  serialized.push(this.serializeAccessory(accessory));
95
95
  }
96
- // Ensure directory exists
96
+ // Ensure directory exists with proper error handling
97
97
  const directory = path.dirname(this.cacheFilePath);
98
98
  await fs.ensureDir(directory);
99
+ // Verify directory was created successfully
100
+ const dirExists = await fs.pathExists(directory);
101
+ if (!dirExists) {
102
+ throw new Error(`Failed to create cache directory: ${directory}`);
103
+ }
99
104
  // Write to temporary file first (atomic write pattern to prevent corruption)
100
105
  await fs.writeJson(tempFilePath, serialized, { spaces: 2 });
101
- // Atomically rename temp file to final location
102
- // Use rename for true atomic operation on the same filesystem
103
- await fs.rename(tempFilePath, this.cacheFilePath);
106
+ // Atomically move temp file to final location
107
+ // Use move instead of rename for better cross-device compatibility
108
+ await fs.move(tempFilePath, this.cacheFilePath, { overwrite: true });
104
109
  log.debug(`Saved ${serialized.length} Matter accessories to cache`);
105
110
  }
106
111
  catch (error) {
@@ -1 +1 @@
1
- {"version":3,"file":"matterAccessoryCache.js","sourceRoot":"","sources":["../../src/matter/matterAccessoryCache.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"matterAccessoryCache.js","sourceRoot":"","sources":["../../src/matter/matterAccessoryCache.ts"],"names":[],"mappings":"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"}
@@ -43,6 +43,7 @@ export declare class HomebridgeOnOffServer extends OnOffServer {
43
43
  */
44
44
  export declare class HomebridgeLevelControlServer extends LevelControlServer {
45
45
  moveToLevel(request: any): any;
46
+ moveToLevelWithOnOff(request: any): any;
46
47
  move(request: any): any;
47
48
  step(request: any): any;
48
49
  stop(request: any): any;
@@ -79,6 +80,9 @@ export declare class HomebridgeIdentifyServer extends IdentifyServer {
79
80
  *
80
81
  * ColorControl handles color changes for lights (hue, saturation, XY color, color temperature).
81
82
  * Plugin developers can override these *Logic methods to handle color changes in their hardware.
83
+ *
84
+ * Features (Xy, ColorTemperature, HueSaturation) are added by the device type, not this behavior.
85
+ * This ensures each device only gets the features it needs.
82
86
  */
83
87
  export declare class HomebridgeColorControlServer extends ColorControlServer {
84
88
  /**
@@ -1 +1 @@
1
- {"version":3,"file":"matterBehaviors.d.ts","sourceRoot":"","sources":["../../src/matter/matterBehaviors.ts"],"names":[],"mappings":"AAAA;;;;;;;;;GASG;AAEH,OAAO,KAAK,EAAE,oBAAoB,EAAE,MAAM,kBAAkB,CAAA;AAE5D,OAAO,EACL,kBAAkB,EAClB,cAAc,EACd,cAAc,EACd,kBAAkB,EAClB,WAAW,EACX,gBAAgB,EAChB,oBAAoB,EACrB,MAAM,wBAAwB,CAAA;AAkB/B;;GAEG;AACH,wBAAgB,iBAAiB,CAAC,GAAG,EAAE,GAAG,CAAC,MAAM,EAAE,GAAG,CAAC,QAEtD;AA4BD;;;;;;;;;;;;;;GAcG;AACH,wBAAgB,eAAe,CAC7B,UAAU,EAAE,MAAM,EAClB,WAAW,EAAE,MAAM,EACnB,WAAW,EAAE,MAAM,EACnB,OAAO,EAAE,oBAAoB,QAc9B;AASD;;GAEG;AACH,qBAAa,qBAAsB,SAAQ,WAAW;IAC3C,EAAE,IAAI,GAAG;IAyBT,GAAG,IAAI,GAAG;IAyBV,MAAM,IAAI,GAAG;CAuBvB;AAED;;GAEG;AACH,qBAAa,4BAA6B,SAAQ,kBAAkB;IACzD,WAAW,CAAC,OAAO,EAAE,GAAG,GAAG,GAAG;IAyB9B,IAAI,CAAC,OAAO,EAAE,GAAG,GAAG,GAAG;IAkBvB,IAAI,CAAC,OAAO,EAAE,GAAG,GAAG,GAAG;IAkBvB,IAAI,CAAC,OAAO,EAAE,GAAG,GAAG,GAAG;CAiBjC;AAED;;GAEG;AACH,qBAAa,8BAA+B,SAAQ,oBAAoB;IAC7D,QAAQ,IAAI,GAAG;IA+Bf,WAAW,IAAI,GAAG;IA+BlB,UAAU,IAAI,GAAG;CA8B3B;AAED;;GAEG;AACH,qBAAa,wBAAyB,SAAQ,cAAc;IACjD,QAAQ,IAAI,GAAG;IA0Bf,UAAU,IAAI,GAAG;CAyB3B;AAED;;GAEG;AACH,qBAAa,0BAA2B,SAAQ,gBAAgB;IACrD,kBAAkB,CAAC,OAAO,EAAE,GAAG,GAAG,GAAG;CA8B/C;AAED;;GAEG;AACH,qBAAa,wBAAyB,SAAQ,cAAc;IACjD,QAAQ,CAAC,OAAO,EAAE,GAAG,GAAG,GAAG;CAiBrC;AAED;;;;;GAKG;AACH,qBAAa,4BAA6B,SAAQ,kBAAkB;IAClE;;;;OAIG;IACM,2BAA2B,CAAC,YAAY,EAAE,MAAM,EAAE,cAAc,EAAE,MAAM,GAAG,GAAG;IA4BvF;;;;;OAKG;IACM,2BAA2B,CAAC,SAAS,EAAE,MAAM,EAAE,gBAAgB,EAAE,MAAM,EAAE,cAAc,EAAE,MAAM,GAAG,GAAG;IA+B9G;;;;;OAKG;IACM,gBAAgB,CAAC,OAAO,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,EAAE,cAAc,EAAE,MAAM,GAAG,GAAG;IA+BxF;;;;;;OAMG;IACM,cAAc,CAAC,SAAS,EAAE,MAAM,EAAE,SAAS,EAAE,GAAG,EAAE,cAAc,EAAE,MAAM,EAAE,aAAa,UAAQ,GAAG,GAAG;IA8B9G;;;;OAIG;IACM,qBAAqB,CAAC,gBAAgB,EAAE,MAAM,EAAE,cAAc,EAAE,MAAM,GAAG,GAAG;IA4BrF;;OAEG;IACM,oBAAoB,IAAI,GAAG;CAiBrC"}
1
+ {"version":3,"file":"matterBehaviors.d.ts","sourceRoot":"","sources":["../../src/matter/matterBehaviors.ts"],"names":[],"mappings":"AAAA;;;;;;;;;GASG;AAEH,OAAO,KAAK,EAAE,oBAAoB,EAAE,MAAM,kBAAkB,CAAA;AAE5D,OAAO,EACL,kBAAkB,EAClB,cAAc,EACd,cAAc,EACd,kBAAkB,EAClB,WAAW,EACX,gBAAgB,EAChB,oBAAoB,EACrB,MAAM,wBAAwB,CAAA;AAkB/B;;GAEG;AACH,wBAAgB,iBAAiB,CAAC,GAAG,EAAE,GAAG,CAAC,MAAM,EAAE,GAAG,CAAC,QAEtD;AA4BD;;;;;;;;;;;;;;GAcG;AACH,wBAAgB,eAAe,CAC7B,UAAU,EAAE,MAAM,EAClB,WAAW,EAAE,MAAM,EACnB,WAAW,EAAE,MAAM,EACnB,OAAO,EAAE,oBAAoB,QAc9B;AASD;;GAEG;AACH,qBAAa,qBAAsB,SAAQ,WAAW;IAC3C,EAAE,IAAI,GAAG;IAyBT,GAAG,IAAI,GAAG;IAyBV,MAAM,IAAI,GAAG;CAuBvB;AAED;;GAEG;AACH,qBAAa,4BAA6B,SAAQ,kBAAkB;IACzD,WAAW,CAAC,OAAO,EAAE,GAAG,GAAG,GAAG;IAyB9B,oBAAoB,CAAC,OAAO,EAAE,GAAG,GAAG,GAAG;IA+BvC,IAAI,CAAC,OAAO,EAAE,GAAG,GAAG,GAAG;IAkBvB,IAAI,CAAC,OAAO,EAAE,GAAG,GAAG,GAAG;IAkBvB,IAAI,CAAC,OAAO,EAAE,GAAG,GAAG,GAAG;CAiBjC;AAED;;GAEG;AACH,qBAAa,8BAA+B,SAAQ,oBAAoB;IAC7D,QAAQ,IAAI,GAAG;IA+Bf,WAAW,IAAI,GAAG;IA+BlB,UAAU,IAAI,GAAG;CA8B3B;AAED;;GAEG;AACH,qBAAa,wBAAyB,SAAQ,cAAc;IACjD,QAAQ,IAAI,GAAG;IA0Bf,UAAU,IAAI,GAAG;CAyB3B;AAED;;GAEG;AACH,qBAAa,0BAA2B,SAAQ,gBAAgB;IACrD,kBAAkB,CAAC,OAAO,EAAE,GAAG,GAAG,GAAG;CA8B/C;AAED;;GAEG;AACH,qBAAa,wBAAyB,SAAQ,cAAc;IACjD,QAAQ,CAAC,OAAO,EAAE,GAAG,GAAG,GAAG;CAiBrC;AAED;;;;;;;;GAQG;AACH,qBAAa,4BAA6B,SAAQ,kBAAkB;IAClE;;;;OAIG;IACM,2BAA2B,CAAC,YAAY,EAAE,MAAM,EAAE,cAAc,EAAE,MAAM,GAAG,GAAG;IA4BvF;;;;;OAKG;IACM,2BAA2B,CAAC,SAAS,EAAE,MAAM,EAAE,gBAAgB,EAAE,MAAM,EAAE,cAAc,EAAE,MAAM,GAAG,GAAG;IA+B9G;;;;;OAKG;IACM,gBAAgB,CAAC,OAAO,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,EAAE,cAAc,EAAE,MAAM,GAAG,GAAG;IA+BxF;;;;;;OAMG;IACM,cAAc,CAAC,SAAS,EAAE,MAAM,EAAE,SAAS,EAAE,GAAG,EAAE,cAAc,EAAE,MAAM,EAAE,aAAa,UAAQ,GAAG,GAAG;IA8B9G;;;;OAIG;IACM,qBAAqB,CAAC,gBAAgB,EAAE,MAAM,EAAE,cAAc,EAAE,MAAM,GAAG,GAAG;IA4BrF;;OAEG;IACM,oBAAoB,IAAI,GAAG;CAiBrC"}
@@ -173,6 +173,32 @@ export class HomebridgeLevelControlServer extends LevelControlServer {
173
173
  syncEndpointStateToCache(endpointId, 'levelControl', { currentLevel: request.level });
174
174
  return result;
175
175
  }
176
+ moveToLevelWithOnOff(request) {
177
+ const endpointId = this.endpoint.id;
178
+ // Try to get a specific handler for moveToLevelWithOnOff first
179
+ let handler = getHandler(endpointId, 'levelControl', 'moveToLevelWithOnOff');
180
+ // Fall back to moveToLevel handler if no specific handler is registered
181
+ if (!handler) {
182
+ handler = getHandler(endpointId, 'levelControl', 'moveToLevel');
183
+ }
184
+ log.info(`LevelControl.moveToLevelWithOnOff called for endpoint ${endpointId} with level ${request.level}`);
185
+ if (handler) {
186
+ try {
187
+ handler(request);
188
+ log.info(' ✓ Plugin handler executed successfully');
189
+ }
190
+ catch (error) {
191
+ log.error(' ✗ Error in plugin handler:', error);
192
+ }
193
+ }
194
+ else {
195
+ log.warn(` ⚠ No handler registered for ${endpointId}.levelControl.moveToLevelWithOnOff or moveToLevel`);
196
+ }
197
+ const result = super.moveToLevelWithOnOff(request);
198
+ // Sync the new level to cache for persistence
199
+ syncEndpointStateToCache(endpointId, 'levelControl', { currentLevel: request.level });
200
+ return result;
201
+ }
176
202
  move(request) {
177
203
  const endpointId = this.endpoint.id;
178
204
  const handler = getHandler(endpointId, 'levelControl', 'move');
@@ -405,6 +431,9 @@ export class HomebridgeIdentifyServer extends IdentifyServer {
405
431
  *
406
432
  * ColorControl handles color changes for lights (hue, saturation, XY color, color temperature).
407
433
  * Plugin developers can override these *Logic methods to handle color changes in their hardware.
434
+ *
435
+ * Features (Xy, ColorTemperature, HueSaturation) are added by the device type, not this behavior.
436
+ * This ensures each device only gets the features it needs.
408
437
  */
409
438
  export class HomebridgeColorControlServer extends ColorControlServer {
410
439
  /**
@@ -1 +1 @@
1
- {"version":3,"file":"matterBehaviors.js","sourceRoot":"","sources":["../../src/matter/matterBehaviors.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"matterBehaviors.js","sourceRoot":"","sources":["../../src/matter/matterBehaviors.ts"],"names":[],"mappings":"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"}
@@ -263,5 +263,11 @@ export declare class MatterServer extends EventEmitter {
263
263
  * Check if a specific fabric exists
264
264
  */
265
265
  hasFabric(fabricIndex: number): boolean;
266
+ /**
267
+ * Notify controllers that the parts list has changed
268
+ * This triggers controllers (like Home app) to re-read the device list
269
+ * and discover new or removed accessories without needing to re-pair
270
+ */
271
+ private notifyPartsListChanged;
266
272
  }
267
273
  //# sourceMappingURL=matterServer.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"matterServer.d.ts","sourceRoot":"","sources":["../../src/matter/matterServer.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"matterServer.d.ts","sourceRoot":"","sources":["../../src/matter/matterServer.ts"],"names":[],"mappings":"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"}
@@ -786,6 +786,105 @@ export class MatterServer extends EventEmitter {
786
786
  // Modify device type with custom behaviors if handlers are defined
787
787
  let deviceType = accessory.deviceType;
788
788
  if (accessory.handlers) {
789
+ // IMPORTANT: Detect ColorControl features BEFORE modifying device type
790
+ // Once we start applying custom behaviors, the original structure is lost
791
+ let colorControlFeatures = null;
792
+ if (accessory.handlers.colorControl) {
793
+ log.info(`Detecting ColorControl features for ${accessory.displayName}...`);
794
+ const deviceTypeDef = deviceType;
795
+ log.info(`Device type:`, deviceTypeDef.name || deviceTypeDef.id || 'unknown');
796
+ const existingBehaviors = deviceTypeDef.behaviors;
797
+ log.info(`Has behaviors?`, !!existingBehaviors);
798
+ log.info(`Behaviors type:`, typeof existingBehaviors);
799
+ if (existingBehaviors) {
800
+ // Behaviors can be an array, Set, or object - handle all cases
801
+ let behaviorsArray;
802
+ if (Array.isArray(existingBehaviors)) {
803
+ behaviorsArray = existingBehaviors;
804
+ }
805
+ else if (typeof existingBehaviors === 'object' && existingBehaviors !== null) {
806
+ // It's an object - get the values
807
+ behaviorsArray = Object.values(existingBehaviors);
808
+ }
809
+ else {
810
+ // Try Array.from as fallback for Sets, Maps, etc.
811
+ behaviorsArray = Array.from(existingBehaviors);
812
+ }
813
+ log.info(`Behaviors count:`, behaviorsArray.length);
814
+ log.info(`Behavior IDs:`, behaviorsArray.map(b => b.id || b.cluster?.id || 'unknown').join(', '));
815
+ for (const behavior of behaviorsArray) {
816
+ const behaviorId = behavior.id || behavior.cluster?.id;
817
+ log.info(`Checking behavior: ${behaviorId}`);
818
+ if (behavior.id === 'colorControl' || behavior.cluster?.id === 0x0300) {
819
+ log.info(`Found ColorControl!`);
820
+ log.info(`Has cluster?`, !!behavior.cluster);
821
+ log.info(`Has supportedFeatures?`, !!behavior.cluster?.supportedFeatures);
822
+ log.info(`supportedFeatures value:`, behavior.cluster?.supportedFeatures);
823
+ if (behavior.cluster?.supportedFeatures) {
824
+ const features = behavior.cluster.supportedFeatures;
825
+ colorControlFeatures = [];
826
+ // supportedFeatures is an object with boolean properties, not a bitmap
827
+ if (features.hueSaturation) {
828
+ colorControlFeatures.push('HueSaturation');
829
+ }
830
+ if (features.xy) {
831
+ colorControlFeatures.push('Xy');
832
+ }
833
+ if (features.colorTemperature) {
834
+ colorControlFeatures.push('ColorTemperature');
835
+ }
836
+ log.info(`Detected ColorControl features from device type: ${colorControlFeatures.join(', ')}`);
837
+ }
838
+ // IMPORTANT: Adjust features based on provided handlers
839
+ // Add missing features and remove features without handlers
840
+ if (accessory.handlers.colorControl) {
841
+ if (!colorControlFeatures) {
842
+ colorControlFeatures = [];
843
+ }
844
+ const handlers = accessory.handlers.colorControl;
845
+ const finalFeatures = [];
846
+ // Check each possible feature and only include it if the handler is provided
847
+ // HueSaturation feature
848
+ if ('moveToHueAndSaturationLogic' in handlers) {
849
+ finalFeatures.push('HueSaturation');
850
+ if (!colorControlFeatures.includes('HueSaturation')) {
851
+ log.info(`Added HueSaturation feature based on provided handler`);
852
+ }
853
+ }
854
+ else if (colorControlFeatures.includes('HueSaturation')) {
855
+ log.info(`Removed HueSaturation feature (no handler provided)`);
856
+ }
857
+ // Xy feature
858
+ if ('moveToColorLogic' in handlers) {
859
+ finalFeatures.push('Xy');
860
+ if (!colorControlFeatures.includes('Xy')) {
861
+ log.info(`Added Xy feature based on provided handler`);
862
+ }
863
+ }
864
+ else if (colorControlFeatures.includes('Xy')) {
865
+ log.info(`Removed Xy feature (no handler provided)`);
866
+ }
867
+ // ColorTemperature feature
868
+ if ('moveToColorTemperatureLogic' in handlers) {
869
+ finalFeatures.push('ColorTemperature');
870
+ if (!colorControlFeatures.includes('ColorTemperature')) {
871
+ log.info(`Added ColorTemperature feature based on provided handler`);
872
+ }
873
+ }
874
+ else if (colorControlFeatures.includes('ColorTemperature')) {
875
+ log.info(`Removed ColorTemperature feature (no handler provided)`);
876
+ }
877
+ colorControlFeatures = finalFeatures;
878
+ log.info(`Final ColorControl features for ${accessory.displayName}: ${colorControlFeatures.join(', ')}`);
879
+ }
880
+ break;
881
+ }
882
+ }
883
+ }
884
+ else {
885
+ log.warn(`No behaviors found on device type for ${accessory.displayName}`);
886
+ }
887
+ }
789
888
  // Map cluster names to custom behavior classes
790
889
  // Only clusters with user-triggered commands need custom behaviors
791
890
  const behaviorMap = {
@@ -804,7 +903,12 @@ export class MatterServer extends EventEmitter {
804
903
  // Build array of custom behaviors to apply based on what handlers are defined
805
904
  const customBehaviors = [];
806
905
  for (const clusterName of Object.keys(accessory.handlers)) {
807
- const behaviorClass = behaviorMap[clusterName];
906
+ let behaviorClass = behaviorMap[clusterName];
907
+ // Apply ColorControl features if we detected them earlier
908
+ if (clusterName === 'colorControl' && behaviorClass && colorControlFeatures && colorControlFeatures.length > 0) {
909
+ behaviorClass = behaviorClass.with(...colorControlFeatures);
910
+ log.info(`ColorControl custom behavior will preserve features: ${colorControlFeatures.join(', ')}`);
911
+ }
808
912
  if (behaviorClass) {
809
913
  customBehaviors.push(behaviorClass);
810
914
  log.info(`Will use ${behaviorClass.name} for ${accessory.displayName}`);
@@ -819,17 +923,33 @@ export class MatterServer extends EventEmitter {
819
923
  log.info(`Applied ${customBehaviors.length} custom behavior(s) to device type`);
820
924
  }
821
925
  }
822
- // Create endpoint with the modified device type
823
- const endpoint = new Endpoint(deviceType, {
926
+ // Create endpoint with the modified device type AND initial cluster states
927
+ // IMPORTANT: Cluster states must be provided at creation time, before adding to aggregator
928
+ // This ensures mandatory attributes are set before Matter.js validates the endpoint
929
+ const endpointOptions = {
824
930
  id: accessory.uuid,
825
- });
826
- // Add to aggregator FIRST (required before we can configure it)
931
+ ...accessory.clusters, // Spread cluster states as initial values
932
+ };
933
+ const endpoint = new Endpoint(deviceType, endpointOptions);
934
+ if (this.config.debugModeEnabled) {
935
+ log.debug(`Created endpoint for ${accessory.displayName} with initial cluster states`);
936
+ }
937
+ // Add to aggregator (validation happens here - cluster states must already be set)
827
938
  await this.aggregator.add(endpoint);
828
939
  if (this.config.debugModeEnabled) {
829
940
  log.debug(`Added endpoint for ${accessory.displayName} to aggregator`);
830
941
  }
831
- // NOW configure the endpoint
832
- await this.configureEndpoint(endpoint, accessory);
942
+ // Set up command handlers if provided
943
+ if (accessory.handlers) {
944
+ log.info(`Setting up handlers for accessory ${accessory.uuid}`);
945
+ // Register handlers with the custom behavior classes
946
+ for (const [clusterName, handlers] of Object.entries(accessory.handlers)) {
947
+ log.info(` Processing cluster: ${clusterName}`);
948
+ for (const [commandName, handler] of Object.entries(handlers)) {
949
+ registerHandler(accessory.uuid, clusterName, commandName, handler);
950
+ }
951
+ }
952
+ }
833
953
  // Store accessory
834
954
  const internalAccessory = {
835
955
  ...accessory,
@@ -843,6 +963,9 @@ export class MatterServer extends EventEmitter {
843
963
  }
844
964
  // Emit accessory-registered event
845
965
  this.emit('accessory-registered', accessory);
966
+ // Notify controllers about the new device (parts list changed)
967
+ // This allows the Home app to discover new devices without re-pairing
968
+ await this.notifyPartsListChanged();
846
969
  // Save to cache asynchronously (don't block registration)
847
970
  if (this.accessoryCache) {
848
971
  this.accessoryCache.save(this.accessories).catch((error) => {
@@ -873,6 +996,8 @@ export class MatterServer extends EventEmitter {
873
996
  log.info(`Unregistered Matter accessory: ${accessory.displayName} (${uuid})`);
874
997
  // Emit accessory-unregistered event
875
998
  this.emit('accessory-unregistered', uuid);
999
+ // Notify controllers about the removed device (parts list changed)
1000
+ await this.notifyPartsListChanged();
876
1001
  // Update cache (remove the accessory)
877
1002
  if (this.accessoryCache) {
878
1003
  this.accessoryCache.removeCached(uuid);
@@ -1262,5 +1387,41 @@ export class MatterServer extends EventEmitter {
1262
1387
  const fabrics = this.getFabricInfo();
1263
1388
  return fabrics.some(f => f.fabricIndex === fabricIndex);
1264
1389
  }
1390
+ /**
1391
+ * Notify controllers that the parts list has changed
1392
+ * This triggers controllers (like Home app) to re-read the device list
1393
+ * and discover new or removed accessories without needing to re-pair
1394
+ */
1395
+ async notifyPartsListChanged() {
1396
+ if (!this.aggregator || !this.isCommissioned()) {
1397
+ // No controllers connected, skip notification
1398
+ return;
1399
+ }
1400
+ try {
1401
+ // Access the aggregator's descriptor cluster state
1402
+ // The partsList is automatically updated by Matter.js when endpoints are added/removed
1403
+ // We just need to ensure controllers are notified of the change
1404
+ const aggregatorState = this.aggregator;
1405
+ if (aggregatorState.state?.descriptor) {
1406
+ // Get current parts list (endpoint numbers of all children)
1407
+ const partsList = aggregatorState.state.descriptor.partsList || [];
1408
+ if (this.config.debugModeEnabled) {
1409
+ log.debug(`Parts list changed: ${partsList.length} devices (endpoints: ${partsList.join(', ')})`);
1410
+ }
1411
+ // Trigger a state update event to notify subscribed controllers
1412
+ // By setting the partsList to itself, we trigger the change notification
1413
+ await this.aggregator.set({
1414
+ descriptor: {
1415
+ partsList,
1416
+ },
1417
+ });
1418
+ log.info(`Notified controllers of parts list change (${this.accessories.size} devices)`);
1419
+ }
1420
+ }
1421
+ catch (error) {
1422
+ // Non-fatal error - log but don't throw
1423
+ log.warn(`Failed to notify controllers of parts list change: ${error.message}`);
1424
+ }
1425
+ }
1265
1426
  }
1266
1427
  //# sourceMappingURL=matterServer.js.map