zigbee-herdsman 5.0.0 → 5.0.1

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.
@@ -1,3 +1,3 @@
1
1
  {
2
- ".": "5.0.0"
2
+ ".": "5.0.1"
3
3
  }
package/CHANGELOG.md CHANGED
@@ -1,5 +1,12 @@
1
1
  # Changelog
2
2
 
3
+ ## [5.0.1](https://github.com/Koenkk/zigbee-herdsman/compare/v5.0.0...v5.0.1) (2025-07-26)
4
+
5
+
6
+ ### Bug Fixes
7
+
8
+ * Improve perf with ZCL getters, align manuf code behavior ([#1456](https://github.com/Koenkk/zigbee-herdsman/issues/1456)) ([a909f87](https://github.com/Koenkk/zigbee-herdsman/commit/a909f876c26081fa858976827fa08efcac116f3d))
9
+
3
10
  ## [5.0.0](https://github.com/Koenkk/zigbee-herdsman/compare/v4.5.0...v5.0.0) (2025-07-25)
4
11
 
5
12
 
@@ -130,7 +130,7 @@ export declare class Endpoint extends Entity {
130
130
  removeFromGroup(group: Group | number): Promise<void>;
131
131
  removeFromAllGroups(): Promise<void>;
132
132
  removeFromAllGroupsDatabase(): void;
133
- zclCommand(clusterKey: number | string, commandKey: number | string, payload: KeyValue, options?: Options, logPayload?: KeyValue, checkStatus?: boolean, frameType?: Zcl.FrameType): Promise<undefined | Zcl.Frame>;
133
+ zclCommand(clusterKey: number | string | ZclTypes.Cluster, commandKey: number | string | ZclTypes.Command, payload: KeyValue, options?: Options, logPayload?: KeyValue, checkStatus?: boolean, frameType?: Zcl.FrameType): Promise<undefined | Zcl.Frame>;
134
134
  zclCommandBroadcast(endpoint: number, destination: BroadcastAddress, clusterKey: number | string, commandKey: number | string, payload: unknown, options?: Options): Promise<void>;
135
135
  }
136
136
  export default Endpoint;
@@ -1 +1 @@
1
- {"version":3,"file":"endpoint.d.ts","sourceRoot":"","sources":["../../../src/controller/model/endpoint.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"endpoint.d.ts","sourceRoot":"","sources":["../../../src/controller/model/endpoint.ts"],"names":[],"mappings":"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"}
@@ -257,7 +257,7 @@ class Endpoint extends entity_1.default {
257
257
  throw new Zcl.StatusError(invalid);
258
258
  }
259
259
  async report(clusterKey, attributes, options) {
260
- const cluster = this.getCluster(clusterKey);
260
+ const cluster = this.getCluster(clusterKey, undefined, options?.manufacturerCode);
261
261
  const payload = [];
262
262
  for (const [nameOrID, value] of Object.entries(attributes)) {
263
263
  const attribute = cluster.getAttribute(nameOrID);
@@ -271,10 +271,10 @@ class Endpoint extends entity_1.default {
271
271
  throw new Error(`Unknown attribute '${nameOrID}', specify either an existing attribute or a number`);
272
272
  }
273
273
  }
274
- await this.zclCommand(clusterKey, "report", payload, options, attributes);
274
+ await this.zclCommand(cluster, "report", payload, options, attributes);
275
275
  }
276
276
  async write(clusterKey, attributes, options) {
277
- const cluster = this.getCluster(clusterKey);
277
+ const cluster = this.getCluster(clusterKey, undefined, options?.manufacturerCode);
278
278
  const optionsWithDefaults = this.getOptionsWithDefaults(options, true, Zcl.Direction.CLIENT_TO_SERVER, cluster.manufacturerCode);
279
279
  optionsWithDefaults.manufacturerCode = this.ensureManufacturerCodeIsUniqueAndGet(cluster, Object.keys(attributes), optionsWithDefaults.manufacturerCode, "write");
280
280
  const payload = [];
@@ -290,11 +290,11 @@ class Endpoint extends entity_1.default {
290
290
  throw new Error(`Unknown attribute '${nameOrID}', specify either an existing attribute or a number`);
291
291
  }
292
292
  }
293
- await this.zclCommand(clusterKey, optionsWithDefaults.writeUndiv ? "writeUndiv" : "write", payload, optionsWithDefaults, attributes, true);
293
+ await this.zclCommand(cluster, optionsWithDefaults.writeUndiv ? "writeUndiv" : "write", payload, optionsWithDefaults, attributes, true);
294
294
  }
295
295
  async writeResponse(clusterKey, transactionSequenceNumber, attributes, options) {
296
296
  (0, node_assert_1.default)(options?.transactionSequenceNumber === undefined, "Use parameter");
297
- const cluster = this.getCluster(clusterKey);
297
+ const cluster = this.getCluster(clusterKey, undefined, options?.manufacturerCode);
298
298
  const payload = [];
299
299
  for (const [nameOrID, value] of Object.entries(attributes)) {
300
300
  if (value.status !== undefined) {
@@ -313,11 +313,11 @@ class Endpoint extends entity_1.default {
313
313
  throw new Error(`Missing attribute 'status'`);
314
314
  }
315
315
  }
316
- await this.zclCommand(clusterKey, "writeRsp", payload, { direction: Zcl.Direction.SERVER_TO_CLIENT, ...options, transactionSequenceNumber }, attributes);
316
+ await this.zclCommand(cluster, "writeRsp", payload, { direction: Zcl.Direction.SERVER_TO_CLIENT, ...options, transactionSequenceNumber }, attributes);
317
317
  }
318
318
  async read(clusterKey, attributes, options) {
319
319
  const device = this.getDevice();
320
- const cluster = this.getCluster(clusterKey, device);
320
+ const cluster = this.getCluster(clusterKey, device, options?.manufacturerCode);
321
321
  const optionsWithDefaults = this.getOptionsWithDefaults(options, true, Zcl.Direction.CLIENT_TO_SERVER, cluster.manufacturerCode);
322
322
  optionsWithDefaults.manufacturerCode = this.ensureManufacturerCodeIsUniqueAndGet(cluster, attributes, optionsWithDefaults.manufacturerCode, "read");
323
323
  const payload = [];
@@ -335,7 +335,7 @@ class Endpoint extends entity_1.default {
335
335
  }
336
336
  }
337
337
  }
338
- const resultFrame = await this.zclCommand(clusterKey, "read", payload, optionsWithDefaults, attributes, true);
338
+ const resultFrame = await this.zclCommand(cluster, "read", payload, optionsWithDefaults, attributes, true);
339
339
  if (resultFrame) {
340
340
  return ZclFrameConverter.attributeKeyValue(resultFrame, device.manufacturerID, device.customClusters);
341
341
  }
@@ -343,7 +343,7 @@ class Endpoint extends entity_1.default {
343
343
  }
344
344
  async readResponse(clusterKey, transactionSequenceNumber, attributes, options) {
345
345
  (0, node_assert_1.default)(options?.transactionSequenceNumber === undefined, "Use parameter");
346
- const cluster = this.getCluster(clusterKey);
346
+ const cluster = this.getCluster(clusterKey, undefined, options?.manufacturerCode);
347
347
  const payload = [];
348
348
  for (const [nameOrID, value] of Object.entries(attributes)) {
349
349
  const attribute = cluster.getAttribute(nameOrID);
@@ -357,7 +357,7 @@ class Endpoint extends entity_1.default {
357
357
  throw new Error(`Unknown attribute '${nameOrID}', specify either an existing attribute or a number`);
358
358
  }
359
359
  }
360
- await this.zclCommand(clusterKey, "readRsp", payload, { direction: Zcl.Direction.SERVER_TO_CLIENT, ...options, transactionSequenceNumber }, attributes);
360
+ await this.zclCommand(cluster, "readRsp", payload, { direction: Zcl.Direction.SERVER_TO_CLIENT, ...options, transactionSequenceNumber }, attributes);
361
361
  }
362
362
  async updateSimpleDescriptor() {
363
363
  const clusterId = Zdo.ClusterId.SIMPLE_DESCRIPTOR_REQUEST;
@@ -484,7 +484,7 @@ class Endpoint extends entity_1.default {
484
484
  await this.zclCommand(clusterID, "defaultRsp", payload, { direction: Zcl.Direction.SERVER_TO_CLIENT, ...options, transactionSequenceNumber });
485
485
  }
486
486
  async configureReporting(clusterKey, items, options) {
487
- const cluster = this.getCluster(clusterKey);
487
+ const cluster = this.getCluster(clusterKey, undefined, options?.manufacturerCode);
488
488
  const optionsWithDefaults = this.getOptionsWithDefaults(options, true, Zcl.Direction.CLIENT_TO_SERVER, cluster.manufacturerCode);
489
489
  optionsWithDefaults.manufacturerCode = this.ensureManufacturerCodeIsUniqueAndGet(cluster, items, optionsWithDefaults.manufacturerCode, "configureReporting");
490
490
  const payload = items.map((item) => {
@@ -510,7 +510,7 @@ class Endpoint extends entity_1.default {
510
510
  repChange: item.reportableChange,
511
511
  };
512
512
  });
513
- await this.zclCommand(clusterKey, "configReport", payload, optionsWithDefaults, items, true);
513
+ await this.zclCommand(cluster, "configReport", payload, optionsWithDefaults, items, true);
514
514
  for (const e of payload) {
515
515
  this._configuredReportings = this._configuredReportings.filter((c) => !(c.attrId === e.attrId &&
516
516
  c.cluster === cluster.ID &&
@@ -543,11 +543,11 @@ class Endpoint extends entity_1.default {
543
543
  async commandResponse(clusterKey, commandKey, payload, options, transactionSequenceNumber) {
544
544
  (0, node_assert_1.default)(options?.transactionSequenceNumber === undefined, "Use parameter");
545
545
  const device = this.getDevice();
546
- const cluster = this.getCluster(clusterKey, device);
546
+ const cluster = this.getCluster(clusterKey, device, options?.manufacturerCode);
547
547
  const command = cluster.getCommandResponse(commandKey);
548
548
  transactionSequenceNumber = transactionSequenceNumber || zclTransactionSequenceNumber_1.default.next();
549
549
  const optionsWithDefaults = this.getOptionsWithDefaults(options, true, Zcl.Direction.SERVER_TO_CLIENT, cluster.manufacturerCode);
550
- const frame = Zcl.Frame.create(Zcl.FrameType.SPECIFIC, optionsWithDefaults.direction, optionsWithDefaults.disableDefaultResponse, optionsWithDefaults.manufacturerCode, transactionSequenceNumber, command.name, cluster.name, payload, device.customClusters, optionsWithDefaults.reservedBits);
550
+ const frame = Zcl.Frame.create(Zcl.FrameType.SPECIFIC, optionsWithDefaults.direction, optionsWithDefaults.disableDefaultResponse, optionsWithDefaults.manufacturerCode, transactionSequenceNumber, command, cluster, payload, device.customClusters, optionsWithDefaults.reservedBits);
551
551
  const createLogMessage = () => `CommandResponse ${this.deviceIeeeAddress}/${this.ID} ` +
552
552
  `${cluster.name}.${command.name}(${JSON.stringify(payload)}, ${JSON.stringify(optionsWithDefaults)})`;
553
553
  logger_1.logger.debug(createLogMessage, NS);
@@ -635,11 +635,11 @@ class Endpoint extends entity_1.default {
635
635
  await this.command("genGroups", "add", { groupid: group.groupID, groupname: "" });
636
636
  group.addMember(this);
637
637
  }
638
- getCluster(clusterKey, device = undefined) {
638
+ getCluster(clusterKey, device = undefined, manufacturerCode = undefined) {
639
639
  if (!device) {
640
640
  device = this.getDevice();
641
641
  }
642
- return Zcl.Utils.getCluster(clusterKey, device.manufacturerID, device.customClusters);
642
+ return Zcl.Utils.getCluster(clusterKey, manufacturerCode ?? device.manufacturerID, device.customClusters);
643
643
  }
644
644
  /**
645
645
  * Remove endpoint from a group, accepts both a Group and number as parameter.
@@ -665,11 +665,15 @@ class Endpoint extends entity_1.default {
665
665
  }
666
666
  async zclCommand(clusterKey, commandKey, payload, options, logPayload, checkStatus = false, frameType = Zcl.FrameType.GLOBAL) {
667
667
  const device = this.getDevice();
668
- const cluster = this.getCluster(clusterKey, device);
669
- const command = frameType === Zcl.FrameType.GLOBAL ? Zcl.Utils.getGlobalCommand(commandKey) : cluster.getCommand(commandKey);
668
+ const cluster = typeof clusterKey === "object" ? clusterKey : this.getCluster(clusterKey, device, options?.manufacturerCode);
669
+ const command = typeof commandKey === "object"
670
+ ? commandKey
671
+ : frameType === Zcl.FrameType.GLOBAL
672
+ ? Zcl.Utils.getGlobalCommand(commandKey)
673
+ : cluster.getCommand(commandKey);
670
674
  const hasResponse = frameType === Zcl.FrameType.GLOBAL ? true : command.response !== undefined;
671
675
  const optionsWithDefaults = this.getOptionsWithDefaults(options, hasResponse, Zcl.Direction.CLIENT_TO_SERVER, cluster.manufacturerCode);
672
- const frame = Zcl.Frame.create(frameType, optionsWithDefaults.direction, optionsWithDefaults.disableDefaultResponse, optionsWithDefaults.manufacturerCode, optionsWithDefaults.transactionSequenceNumber ?? zclTransactionSequenceNumber_1.default.next(), command.name, cluster.name, payload, device.customClusters, optionsWithDefaults.reservedBits);
676
+ const frame = Zcl.Frame.create(frameType, optionsWithDefaults.direction, optionsWithDefaults.disableDefaultResponse, optionsWithDefaults.manufacturerCode, optionsWithDefaults.transactionSequenceNumber ?? zclTransactionSequenceNumber_1.default.next(), command, cluster, payload, device.customClusters, optionsWithDefaults.reservedBits);
673
677
  const createLogMessage = () => `ZCL command ${this.deviceIeeeAddress}/${this.ID} ` +
674
678
  `${cluster.name}.${command.name}(${JSON.stringify(logPayload ? logPayload : payload)}, ${JSON.stringify(optionsWithDefaults)})`;
675
679
  logger_1.logger.debug(createLogMessage, NS);
@@ -693,11 +697,11 @@ class Endpoint extends entity_1.default {
693
697
  }
694
698
  async zclCommandBroadcast(endpoint, destination, clusterKey, commandKey, payload, options) {
695
699
  const device = this.getDevice();
696
- const cluster = this.getCluster(clusterKey, device);
700
+ const cluster = this.getCluster(clusterKey, device, options?.manufacturerCode);
697
701
  const command = cluster.getCommand(commandKey);
698
702
  const optionsWithDefaults = this.getOptionsWithDefaults(options, true, Zcl.Direction.CLIENT_TO_SERVER, cluster.manufacturerCode);
699
703
  const sourceEndpoint = optionsWithDefaults.srcEndpoint ?? this.ID;
700
- const frame = Zcl.Frame.create(Zcl.FrameType.SPECIFIC, optionsWithDefaults.direction, true, optionsWithDefaults.manufacturerCode, optionsWithDefaults.transactionSequenceNumber ?? zclTransactionSequenceNumber_1.default.next(), command.name, cluster.name, payload, device.customClusters, optionsWithDefaults.reservedBits);
704
+ const frame = Zcl.Frame.create(Zcl.FrameType.SPECIFIC, optionsWithDefaults.direction, true, optionsWithDefaults.manufacturerCode, optionsWithDefaults.transactionSequenceNumber ?? zclTransactionSequenceNumber_1.default.next(), command, cluster, payload, device.customClusters, optionsWithDefaults.reservedBits);
701
705
  logger_1.logger.debug(() => `ZCL command broadcast ${this.deviceIeeeAddress}/${sourceEndpoint} to ${destination}/${endpoint} ` +
702
706
  `${cluster.name}.${command.name}(${JSON.stringify({ payload, optionsWithDefaults })})`, NS);
703
707
  // if endpoint===0xFF ("broadcast endpoint"), deliver to all endpoints supporting cluster, should be avoided whenever possible
@@ -1 +1 @@
1
- {"version":3,"file":"endpoint.js","sourceRoot":"","sources":["../../../src/controller/model/endpoint.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"endpoint.js","sourceRoot":"","sources":["../../../src/controller/model/endpoint.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"group.d.ts","sourceRoot":"","sources":["../../../src/controller/model/group.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,GAAG,MAAM,iBAAiB,CAAC;AACvC,OAAO,KAAK,EAAC,cAAc,EAAC,MAAM,mCAAmC,CAAC;AAEtE,OAAO,KAAK,EAAgB,QAAQ,EAAC,MAAM,WAAW,CAAC;AAEvD,OAAO,KAAK,QAAQ,MAAM,YAAY,CAAC;AACvC,OAAO,MAAM,MAAM,UAAU,CAAC;AAI9B,UAAU,OAAO;IACb,gBAAgB,CAAC,EAAE,MAAM,CAAC;IAC1B,SAAS,CAAC,EAAE,GAAG,CAAC,SAAS,CAAC;IAC1B,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,yBAAyB,CAAC,EAAE,MAAM,CAAC;CACtC;AAOD,qBAAa,KAAM,SAAQ,MAAM;;IAC7B,OAAO,CAAC,UAAU,CAAS;IAC3B,SAAgB,OAAO,EAAE,MAAM,CAAC;IAChC,OAAO,CAAC,QAAQ,CAAC,QAAQ,CAAa;IAGtC,SAAgB,IAAI,EAAE,QAAQ,CAAC;IAI/B,OAAO,CAAC,MAAM,CAAC,QAAQ,CAAC,MAAM,CAA+C;IAC7E,OAAO,CAAC,MAAM,CAAC,kBAAkB,CAAS;IAE1C,gEAAgE;IAChE,IAAI,OAAO,IAAI,QAAQ,EAAE,CAExB;IAED,iFAAiF;IACjF,IAAI,cAAc,IAAI,CAAC,KAAK,EAAE,cAAc,EAAE,MAAM,EAAE,cAAc,CAAC,CAEpE;IAED,OAAO;IAaP;;OAEG;WACW,UAAU,IAAI,IAAI;IAKhC,OAAO,CAAC,MAAM,CAAC,iBAAiB;IAmBhC,OAAO,CAAC,gBAAgB;IAcxB,OAAO,CAAC,MAAM,CAAC,2BAA2B;WAY5B,SAAS,CAAC,OAAO,EAAE,MAAM,GAAG,KAAK,GAAG,SAAS;IAK3D;;OAEG;WACW,GAAG,IAAI,KAAK,EAAE;WAKb,WAAW,CAAC,SAAS,CAAC,EAAE,CAAC,KAAK,EAAE,KAAK,KAAK,OAAO,GAAG,SAAS,CAAC,KAAK,CAAC;WAUrE,MAAM,CAAC,OAAO,EAAE,MAAM,GAAG,KAAK;IAsB/B,iBAAiB,IAAI,OAAO,CAAC,IAAI,CAAC;IAQxC,kBAAkB,IAAI,IAAI;IAY1B,IAAI,CAAC,aAAa,UAAO,GAAG,IAAI;IAKhC,SAAS,CAAC,QAAQ,EAAE,QAAQ,GAAG,IAAI;IASnC,YAAY,CAAC,QAAQ,EAAE,QAAQ,GAAG,IAAI;IAWtC,SAAS,CAAC,QAAQ,EAAE,QAAQ,GAAG,OAAO;IAoDhC,KAAK,CAAC,UAAU,EAAE,MAAM,GAAG,MAAM,EAAE,UAAU,EAAE,QAAQ,EAAE,OAAO,CAAC,EAAE,OAAO,GAAG,OAAO,CAAC,IAAI,CAAC;IAgD1F,IAAI,CAAC,UAAU,EAAE,MAAM,GAAG,MAAM,EAAE,UAAU,EAAE,CAAC,MAAM,GAAG,MAAM,CAAC,EAAE,EAAE,OAAO,CAAC,EAAE,OAAO,GAAG,OAAO,CAAC,IAAI,CAAC;IAkDpG,OAAO,CAAC,UAAU,EAAE,MAAM,GAAG,MAAM,EAAE,UAAU,EAAE,MAAM,GAAG,MAAM,EAAE,OAAO,EAAE,QAAQ,EAAE,OAAO,CAAC,EAAE,OAAO,GAAG,OAAO,CAAC,IAAI,CAAC;IAsCnI,OAAO,CAAC,sBAAsB;CAUjC;AAED,eAAe,KAAK,CAAC"}
1
+ {"version":3,"file":"group.d.ts","sourceRoot":"","sources":["../../../src/controller/model/group.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,GAAG,MAAM,iBAAiB,CAAC;AACvC,OAAO,KAAK,EAAC,cAAc,EAAC,MAAM,mCAAmC,CAAC;AAEtE,OAAO,KAAK,EAAgB,QAAQ,EAAC,MAAM,WAAW,CAAC;AAEvD,OAAO,KAAK,QAAQ,MAAM,YAAY,CAAC;AACvC,OAAO,MAAM,MAAM,UAAU,CAAC;AAI9B,UAAU,OAAO;IACb,gBAAgB,CAAC,EAAE,MAAM,CAAC;IAC1B,SAAS,CAAC,EAAE,GAAG,CAAC,SAAS,CAAC;IAC1B,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,yBAAyB,CAAC,EAAE,MAAM,CAAC;CACtC;AAOD,qBAAa,KAAM,SAAQ,MAAM;;IAC7B,OAAO,CAAC,UAAU,CAAS;IAC3B,SAAgB,OAAO,EAAE,MAAM,CAAC;IAChC,OAAO,CAAC,QAAQ,CAAC,QAAQ,CAAa;IAGtC,SAAgB,IAAI,EAAE,QAAQ,CAAC;IAI/B,OAAO,CAAC,MAAM,CAAC,QAAQ,CAAC,MAAM,CAA+C;IAC7E,OAAO,CAAC,MAAM,CAAC,kBAAkB,CAAS;IAE1C,gEAAgE;IAChE,IAAI,OAAO,IAAI,QAAQ,EAAE,CAExB;IAED,iFAAiF;IACjF,IAAI,cAAc,IAAI,CAAC,KAAK,EAAE,cAAc,EAAE,MAAM,EAAE,cAAc,CAAC,CAEpE;IAED,OAAO;IAaP;;OAEG;WACW,UAAU,IAAI,IAAI;IAKhC,OAAO,CAAC,MAAM,CAAC,iBAAiB;IAmBhC,OAAO,CAAC,gBAAgB;IAcxB,OAAO,CAAC,MAAM,CAAC,2BAA2B;WAY5B,SAAS,CAAC,OAAO,EAAE,MAAM,GAAG,KAAK,GAAG,SAAS;IAK3D;;OAEG;WACW,GAAG,IAAI,KAAK,EAAE;WAKb,WAAW,CAAC,SAAS,CAAC,EAAE,CAAC,KAAK,EAAE,KAAK,KAAK,OAAO,GAAG,SAAS,CAAC,KAAK,CAAC;WAUrE,MAAM,CAAC,OAAO,EAAE,MAAM,GAAG,KAAK;IAsB/B,iBAAiB,IAAI,OAAO,CAAC,IAAI,CAAC;IAQxC,kBAAkB,IAAI,IAAI;IAY1B,IAAI,CAAC,aAAa,UAAO,GAAG,IAAI;IAKhC,SAAS,CAAC,QAAQ,EAAE,QAAQ,GAAG,IAAI;IASnC,YAAY,CAAC,QAAQ,EAAE,QAAQ,GAAG,IAAI;IAWtC,SAAS,CAAC,QAAQ,EAAE,QAAQ,GAAG,OAAO;IAoDhC,KAAK,CAAC,UAAU,EAAE,MAAM,GAAG,MAAM,EAAE,UAAU,EAAE,QAAQ,EAAE,OAAO,CAAC,EAAE,OAAO,GAAG,OAAO,CAAC,IAAI,CAAC;IAgD1F,IAAI,CAAC,UAAU,EAAE,MAAM,GAAG,MAAM,EAAE,UAAU,EAAE,CAAC,MAAM,GAAG,MAAM,CAAC,EAAE,EAAE,OAAO,CAAC,EAAE,OAAO,GAAG,OAAO,CAAC,IAAI,CAAC;IAkDpG,OAAO,CAAC,UAAU,EAAE,MAAM,GAAG,MAAM,EAAE,UAAU,EAAE,MAAM,GAAG,MAAM,EAAE,OAAO,EAAE,QAAQ,EAAE,OAAO,CAAC,EAAE,OAAO,GAAG,OAAO,CAAC,IAAI,CAAC;IAsCnI,OAAO,CAAC,sBAAsB;CAcjC;AAED,eAAe,KAAK,CAAC"}
@@ -227,9 +227,9 @@ class Group extends entity_1.default {
227
227
  * Zigbee functions
228
228
  */
229
229
  async write(clusterKey, attributes, options) {
230
- const optionsWithDefaults = this.getOptionsWithDefaults(options, Zcl.Direction.CLIENT_TO_SERVER);
231
- const customClusters = this.#customClusters[optionsWithDefaults.direction === Zcl.Direction.CLIENT_TO_SERVER ? 0 : 1];
232
- const cluster = Zcl.Utils.getCluster(clusterKey, undefined, customClusters);
230
+ const customClusters = this.#customClusters[options?.direction === Zcl.Direction.SERVER_TO_CLIENT ? 1 : 0 /* default to CLIENT_TO_SERVER */];
231
+ const cluster = Zcl.Utils.getCluster(clusterKey, options?.manufacturerCode, customClusters);
232
+ const optionsWithDefaults = this.getOptionsWithDefaults(options, Zcl.Direction.CLIENT_TO_SERVER, cluster.manufacturerCode);
233
233
  const payload = [];
234
234
  for (const [nameOrID, value] of Object.entries(attributes)) {
235
235
  const attribute = cluster.getAttribute(nameOrID);
@@ -246,7 +246,7 @@ class Group extends entity_1.default {
246
246
  const createLogMessage = () => `Write ${this.groupID} ${cluster.name}(${JSON.stringify(attributes)}, ${JSON.stringify(optionsWithDefaults)})`;
247
247
  logger_1.logger.debug(createLogMessage, NS);
248
248
  try {
249
- const frame = Zcl.Frame.create(Zcl.FrameType.GLOBAL, optionsWithDefaults.direction, true, optionsWithDefaults.manufacturerCode, optionsWithDefaults.transactionSequenceNumber ?? zclTransactionSequenceNumber_1.default.next(), "write", cluster.ID, payload, customClusters, optionsWithDefaults.reservedBits);
249
+ const frame = Zcl.Frame.create(Zcl.FrameType.GLOBAL, optionsWithDefaults.direction, true, optionsWithDefaults.manufacturerCode, optionsWithDefaults.transactionSequenceNumber ?? zclTransactionSequenceNumber_1.default.next(), "write", cluster, payload, customClusters, optionsWithDefaults.reservedBits);
250
250
  // biome-ignore lint/style/noNonNullAssertion: ignored using `--suppress`
251
251
  await entity_1.default.adapter.sendZclFrameToGroup(this.groupID, frame, optionsWithDefaults.srcEndpoint);
252
252
  }
@@ -259,9 +259,9 @@ class Group extends entity_1.default {
259
259
  }
260
260
  }
261
261
  async read(clusterKey, attributes, options) {
262
- const optionsWithDefaults = this.getOptionsWithDefaults(options, Zcl.Direction.CLIENT_TO_SERVER);
263
- const customClusters = this.#customClusters[optionsWithDefaults.direction === Zcl.Direction.CLIENT_TO_SERVER ? 0 : 1];
264
- const cluster = Zcl.Utils.getCluster(clusterKey, undefined, customClusters);
262
+ const customClusters = this.#customClusters[options?.direction === Zcl.Direction.SERVER_TO_CLIENT ? 1 : 0 /* default to CLIENT_TO_SERVER */];
263
+ const cluster = Zcl.Utils.getCluster(clusterKey, options?.manufacturerCode, customClusters);
264
+ const optionsWithDefaults = this.getOptionsWithDefaults(options, Zcl.Direction.CLIENT_TO_SERVER, cluster.manufacturerCode);
265
265
  const payload = [];
266
266
  for (const attribute of attributes) {
267
267
  if (typeof attribute === "number") {
@@ -277,7 +277,7 @@ class Group extends entity_1.default {
277
277
  }
278
278
  }
279
279
  }
280
- const frame = Zcl.Frame.create(Zcl.FrameType.GLOBAL, optionsWithDefaults.direction, true, optionsWithDefaults.manufacturerCode, optionsWithDefaults.transactionSequenceNumber ?? zclTransactionSequenceNumber_1.default.next(), "read", cluster.ID, payload, customClusters, optionsWithDefaults.reservedBits);
280
+ const frame = Zcl.Frame.create(Zcl.FrameType.GLOBAL, optionsWithDefaults.direction, true, optionsWithDefaults.manufacturerCode, optionsWithDefaults.transactionSequenceNumber ?? zclTransactionSequenceNumber_1.default.next(), "read", cluster, payload, customClusters, optionsWithDefaults.reservedBits);
281
281
  const createLogMessage = () => `Read ${this.groupID} ${cluster.name}(${JSON.stringify(attributes)}, ${JSON.stringify(optionsWithDefaults)})`;
282
282
  logger_1.logger.debug(createLogMessage, NS);
283
283
  try {
@@ -293,16 +293,16 @@ class Group extends entity_1.default {
293
293
  }
294
294
  }
295
295
  async command(clusterKey, commandKey, payload, options) {
296
- const optionsWithDefaults = this.getOptionsWithDefaults(options, Zcl.Direction.CLIENT_TO_SERVER);
297
- const customClusters = this.#customClusters[optionsWithDefaults.direction === Zcl.Direction.CLIENT_TO_SERVER ? 0 : 1];
298
- const cluster = Zcl.Utils.getCluster(clusterKey, undefined, customClusters);
296
+ const customClusters = this.#customClusters[options?.direction === Zcl.Direction.SERVER_TO_CLIENT ? 1 : 0 /* default to CLIENT_TO_SERVER */];
297
+ const cluster = Zcl.Utils.getCluster(clusterKey, options?.manufacturerCode, customClusters);
298
+ const optionsWithDefaults = this.getOptionsWithDefaults(options, Zcl.Direction.CLIENT_TO_SERVER, cluster.manufacturerCode);
299
299
  const command = optionsWithDefaults.direction === Zcl.Direction.CLIENT_TO_SERVER
300
300
  ? cluster.getCommand(commandKey)
301
301
  : cluster.getCommandResponse(commandKey);
302
302
  const createLogMessage = () => `Command ${this.groupID} ${cluster.name}.${command.name}(${JSON.stringify(payload)})`;
303
303
  logger_1.logger.debug(createLogMessage, NS);
304
304
  try {
305
- const frame = Zcl.Frame.create(Zcl.FrameType.SPECIFIC, optionsWithDefaults.direction, true, optionsWithDefaults.manufacturerCode, optionsWithDefaults.transactionSequenceNumber || zclTransactionSequenceNumber_1.default.next(), command.ID, cluster.ID, payload, customClusters, optionsWithDefaults.reservedBits);
305
+ const frame = Zcl.Frame.create(Zcl.FrameType.SPECIFIC, optionsWithDefaults.direction, true, optionsWithDefaults.manufacturerCode, optionsWithDefaults.transactionSequenceNumber || zclTransactionSequenceNumber_1.default.next(), command, cluster, payload, customClusters, optionsWithDefaults.reservedBits);
306
306
  // biome-ignore lint/style/noNonNullAssertion: ignored using `--suppress`
307
307
  await entity_1.default.adapter.sendZclFrameToGroup(this.groupID, frame, optionsWithDefaults.srcEndpoint);
308
308
  }
@@ -314,12 +314,12 @@ class Group extends entity_1.default {
314
314
  throw error;
315
315
  }
316
316
  }
317
- getOptionsWithDefaults(options, direction) {
317
+ getOptionsWithDefaults(options, direction, manufacturerCode) {
318
318
  return {
319
319
  direction,
320
320
  srcEndpoint: undefined,
321
321
  reservedBits: 0,
322
- manufacturerCode: undefined,
322
+ manufacturerCode,
323
323
  transactionSequenceNumber: undefined,
324
324
  ...(options || {}),
325
325
  };
@@ -1 +1 @@
1
- {"version":3,"file":"group.js","sourceRoot":"","sources":["../../../src/controller/model/group.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"group.js","sourceRoot":"","sources":["../../../src/controller/model/group.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA,8DAAiC;AACjC,+CAA0C;AAC1C,qDAAuC;AAEvC,2GAAmF;AAEnF,sDAA8B;AAE9B,sDAA8B;AAE9B,MAAM,EAAE,GAAG,qBAAqB,CAAC;AAejC,MAAa,KAAM,SAAQ,gBAAM;IACrB,UAAU,CAAS;IACX,OAAO,CAAS;IACf,QAAQ,CAAa;IACtC,eAAe,CAAkD;IACjE,6CAA6C;IAC7B,IAAI,CAAW;IAE/B,oGAAoG;IACpG,iCAAiC;IACzB,MAAM,CAAU,MAAM,GAAqC,IAAI,GAAG,EAAE,CAAC;IACrE,MAAM,CAAC,kBAAkB,GAAG,KAAK,CAAC;IAE1C,gEAAgE;IAChE,IAAI,OAAO;QACP,OAAO,IAAI,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,SAAS,EAAE,KAAK,SAAS,CAAC,CAAC;IACpE,CAAC;IAED,iFAAiF;IACjF,IAAI,cAAc;QACd,OAAO,IAAI,CAAC,eAAe,CAAC;IAChC,CAAC;IAED,YAAoB,UAAkB,EAAE,OAAe,EAAE,OAAmB,EAAE,IAAc;QACxF,KAAK,EAAE,CAAC;QACR,IAAI,CAAC,UAAU,GAAG,UAAU,CAAC;QAC7B,IAAI,CAAC,OAAO,GAAG,OAAO,CAAC;QACvB,IAAI,CAAC,QAAQ,GAAG,OAAO,CAAC;QACxB,IAAI,CAAC,IAAI,GAAG,IAAI,CAAC;QACjB,IAAI,CAAC,eAAe,GAAG,IAAI,CAAC,uBAAuB,EAAE,CAAC;IAC1D,CAAC;IAED;;OAEG;IAEH;;OAEG;IACI,MAAM,CAAC,UAAU;QACpB,KAAK,CAAC,MAAM,CAAC,KAAK,EAAE,CAAC;QACrB,KAAK,CAAC,kBAAkB,GAAG,KAAK,CAAC;IACrC,CAAC;IAEO,MAAM,CAAC,iBAAiB,CAAC,KAAoB;QACjD,2EAA2E;QAC3E,MAAM,OAAO,GAAe,EAAE,CAAC;QAE/B,KAAK,MAAM,MAAM,IAAI,KAAK,CAAC,OAAO,EAAE,CAAC;YACjC,MAAM,MAAM,GAAG,gBAAM,CAAC,UAAU,CAAC,MAAM,CAAC,cAAc,CAAC,CAAC;YAExD,IAAI,MAAM,EAAE,CAAC;gBACT,MAAM,QAAQ,GAAG,MAAM,CAAC,WAAW,CAAC,MAAM,CAAC,UAAU,CAAC,CAAC;gBAEvD,IAAI,QAAQ,EAAE,CAAC;oBACX,OAAO,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;gBAC3B,CAAC;YACL,CAAC;QACL,CAAC;QAED,OAAO,IAAI,KAAK,CAAC,KAAK,CAAC,EAAE,EAAE,KAAK,CAAC,OAAO,EAAE,OAAO,EAAE,KAAK,CAAC,IAAI,CAAC,CAAC;IACnE,CAAC;IAEO,gBAAgB;QACpB,MAAM,OAAO,GAA6B,EAAE,CAAC;QAE7C,KAAK,MAAM,MAAM,IAAI,IAAI,CAAC,QAAQ,EAAE,CAAC;YACjC,MAAM,MAAM,GAAG,MAAM,CAAC,SAAS,EAAE,CAAC;YAElC,IAAI,MAAM,EAAE,CAAC;gBACT,OAAO,CAAC,IAAI,CAAC,EAAC,cAAc,EAAE,MAAM,CAAC,QAAQ,EAAE,UAAU,EAAE,MAAM,CAAC,EAAE,EAAC,CAAC,CAAC;YAC3E,CAAC;QACL,CAAC;QAED,OAAO,EAAC,EAAE,EAAE,IAAI,CAAC,UAAU,EAAE,IAAI,EAAE,OAAO,EAAE,OAAO,EAAE,IAAI,CAAC,OAAO,EAAE,OAAO,EAAE,IAAI,EAAE,IAAI,CAAC,IAAI,EAAC,CAAC;IACjG,CAAC;IAEO,MAAM,CAAC,2BAA2B;QACtC,IAAI,CAAC,KAAK,CAAC,kBAAkB,EAAE,CAAC;YAC5B,yEAAyE;YACzE,KAAK,MAAM,KAAK,IAAI,gBAAM,CAAC,QAAS,CAAC,kBAAkB,CAAC,CAAC,OAAO,CAAC,CAAC,EAAE,CAAC;gBACjE,MAAM,KAAK,GAAG,KAAK,CAAC,iBAAiB,CAAC,KAAK,CAAC,CAAC;gBAC7C,KAAK,CAAC,MAAM,CAAC,GAAG,CAAC,KAAK,CAAC,OAAO,EAAE,KAAK,CAAC,CAAC;YAC3C,CAAC;YAED,KAAK,CAAC,kBAAkB,GAAG,IAAI,CAAC;QACpC,CAAC;IACL,CAAC;IAEM,MAAM,CAAC,SAAS,CAAC,OAAe;QACnC,KAAK,CAAC,2BAA2B,EAAE,CAAC;QACpC,OAAO,KAAK,CAAC,MAAM,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC;IACrC,CAAC;IAED;;OAEG;IACI,MAAM,CAAC,GAAG;QACb,KAAK,CAAC,2BAA2B,EAAE,CAAC;QACpC,OAAO,KAAK,CAAC,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC,MAAM,EAAE,CAAC,CAAC;IAC7C,CAAC;IAEM,MAAM,CAAC,CAAC,WAAW,CAAC,SAAqC;QAC5D,KAAK,CAAC,2BAA2B,EAAE,CAAC;QAEpC,KAAK,MAAM,KAAK,IAAI,KAAK,CAAC,MAAM,CAAC,MAAM,EAAE,EAAE,CAAC;YACxC,IAAI,CAAC,SAAS,IAAI,SAAS,CAAC,KAAK,CAAC,EAAE,CAAC;gBACjC,MAAM,KAAK,CAAC;YAChB,CAAC;QACL,CAAC;IACL,CAAC;IAEM,MAAM,CAAC,MAAM,CAAC,OAAe;QAChC,IAAA,qBAAM,EAAC,OAAO,OAAO,KAAK,QAAQ,EAAE,0BAA0B,CAAC,CAAC;QAChE,wCAAwC;QACxC,0HAA0H;QAC1H,IAAA,qBAAM,EAAC,OAAO,IAAI,CAAC,EAAE,4BAA4B,CAAC,CAAC;QAEnD,KAAK,CAAC,2BAA2B,EAAE,CAAC;QAEpC,IAAI,KAAK,CAAC,MAAM,CAAC,GAAG,CAAC,OAAO,CAAC,EAAE,CAAC;YAC5B,MAAM,IAAI,KAAK,CAAC,uBAAuB,OAAO,kBAAkB,CAAC,CAAC;QACtE,CAAC;QAED,yEAAyE;QACzE,MAAM,UAAU,GAAG,gBAAM,CAAC,QAAS,CAAC,KAAK,EAAE,CAAC;QAC5C,MAAM,KAAK,GAAG,IAAI,KAAK,CAAC,UAAU,EAAE,OAAO,EAAE,EAAE,EAAE,EAAE,CAAC,CAAC;QACrD,yEAAyE;QACzE,gBAAM,CAAC,QAAS,CAAC,MAAM,CAAC,KAAK,CAAC,gBAAgB,EAAE,CAAC,CAAC;QAElD,KAAK,CAAC,MAAM,CAAC,GAAG,CAAC,KAAK,CAAC,OAAO,EAAE,KAAK,CAAC,CAAC;QACvC,OAAO,KAAK,CAAC;IACjB,CAAC;IAEM,KAAK,CAAC,iBAAiB;QAC1B,KAAK,MAAM,QAAQ,IAAI,IAAI,CAAC,QAAQ,EAAE,CAAC;YACnC,MAAM,QAAQ,CAAC,eAAe,CAAC,IAAI,CAAC,CAAC;QACzC,CAAC;QAED,IAAI,CAAC,kBAAkB,EAAE,CAAC;IAC9B,CAAC;IAEM,kBAAkB;QACrB,KAAK,CAAC,2BAA2B,EAAE,CAAC;QAEpC,yEAAyE;QACzE,IAAI,gBAAM,CAAC,QAAS,CAAC,GAAG,CAAC,IAAI,CAAC,UAAU,CAAC,EAAE,CAAC;YACxC,yEAAyE;YACzE,gBAAM,CAAC,QAAS,CAAC,MAAM,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC;QAC7C,CAAC;QAED,KAAK,CAAC,MAAM,CAAC,MAAM,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;IACtC,CAAC;IAEM,IAAI,CAAC,aAAa,GAAG,IAAI;QAC5B,yEAAyE;QACzE,gBAAM,CAAC,QAAS,CAAC,MAAM,CAAC,IAAI,CAAC,gBAAgB,EAAE,EAAE,aAAa,CAAC,CAAC;IACpE,CAAC;IAEM,SAAS,CAAC,QAAkB;QAC/B,IAAI,CAAC,IAAI,CAAC,QAAQ,CAAC,QAAQ,CAAC,QAAQ,CAAC,EAAE,CAAC;YACpC,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;YAC7B,IAAI,CAAC,IAAI,EAAE,CAAC;YAEZ,IAAI,CAAC,eAAe,GAAG,IAAI,CAAC,uBAAuB,EAAE,CAAC;QAC1D,CAAC;IACL,CAAC;IAEM,YAAY,CAAC,QAAkB;QAClC,MAAM,CAAC,GAAG,IAAI,CAAC,QAAQ,CAAC,OAAO,CAAC,QAAQ,CAAC,CAAC;QAE1C,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,CAAC;YACT,IAAI,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC;YAC3B,IAAI,CAAC,IAAI,EAAE,CAAC;YAEZ,IAAI,CAAC,eAAe,GAAG,IAAI,CAAC,uBAAuB,EAAE,CAAC;QAC1D,CAAC;IACL,CAAC;IAEM,SAAS,CAAC,QAAkB;QAC/B,OAAO,IAAI,CAAC,QAAQ,CAAC,QAAQ,CAAC,QAAQ,CAAC,CAAC;IAC5C,CAAC;IAED,uBAAuB;QACnB,MAAM,OAAO,GAAG,IAAI,CAAC,OAAO,CAAC;QAE7B,IAAI,OAAO,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;YACrB,MAAM,cAAc,GAAG,OAAO,CAAC,CAAC,CAAC,CAAC,SAAS,EAAE,CAAC,cAAc,CAAC;YAC7D,MAAM,aAAa,GAAmB,EAAE,CAAC;YACzC,MAAM,cAAc,GAAmB,EAAE,CAAC;YAE1C,KAAK,MAAM,WAAW,IAAI,cAAc,EAAE,CAAC;gBACvC,MAAM,aAAa,GAAG,cAAc,CAAC,WAAW,CAAC,CAAC;gBAClD,IAAI,QAAQ,GAAG,IAAI,CAAC;gBACpB,IAAI,SAAS,GAAG,IAAI,CAAC;gBAErB,KAAK,MAAM,MAAM,IAAI,OAAO,EAAE,CAAC;oBAC3B,IAAI,WAAW,IAAI,MAAM,CAAC,SAAS,EAAE,CAAC,cAAc,EAAE,CAAC;wBACnD,QAAQ,GAAG,MAAM,CAAC,aAAa,CAAC,QAAQ,CAAC,aAAa,CAAC,EAAE,CAAC,CAAC;wBAC3D,SAAS,GAAG,MAAM,CAAC,cAAc,CAAC,QAAQ,CAAC,aAAa,CAAC,EAAE,CAAC,CAAC;wBAE7D,IAAI,CAAC,QAAQ,IAAI,CAAC,SAAS,EAAE,CAAC;4BAC1B,MAAM;wBACV,CAAC;oBACL,CAAC;yBAAM,CAAC;wBACJ,QAAQ,GAAG,KAAK,CAAC;wBACjB,SAAS,GAAG,KAAK,CAAC;wBAElB,MAAM;oBACV,CAAC;gBACL,CAAC;gBAED,IAAI,QAAQ,EAAE,CAAC;oBACX,aAAa,CAAC,WAAW,CAAC,GAAG,aAAa,CAAC;gBAC/C,CAAC;gBAED,IAAI,SAAS,EAAE,CAAC;oBACZ,cAAc,CAAC,WAAW,CAAC,GAAG,aAAa,CAAC;gBAChD,CAAC;YACL,CAAC;YAED,OAAO,CAAC,aAAa,EAAE,cAAc,CAAC,CAAC;QAC3C,CAAC;QAED,OAAO,CAAC,EAAE,EAAE,EAAE,CAAC,CAAC;IACpB,CAAC;IAED;;OAEG;IAEI,KAAK,CAAC,KAAK,CAAC,UAA2B,EAAE,UAAoB,EAAE,OAAiB;QACnF,MAAM,cAAc,GAAG,IAAI,CAAC,eAAe,CAAC,OAAO,EAAE,SAAS,KAAK,GAAG,CAAC,SAAS,CAAC,gBAAgB,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,iCAAiC,CAAC,CAAC;QAC7I,MAAM,OAAO,GAAG,GAAG,CAAC,KAAK,CAAC,UAAU,CAAC,UAAU,EAAE,OAAO,EAAE,gBAAgB,EAAE,cAAc,CAAC,CAAC;QAC5F,MAAM,mBAAmB,GAAG,IAAI,CAAC,sBAAsB,CAAC,OAAO,EAAE,GAAG,CAAC,SAAS,CAAC,gBAAgB,EAAE,OAAO,CAAC,gBAAgB,CAAC,CAAC;QAC3H,MAAM,OAAO,GAA8E,EAAE,CAAC;QAE9F,KAAK,MAAM,CAAC,QAAQ,EAAE,KAAK,CAAC,IAAI,MAAM,CAAC,OAAO,CAAC,UAAU,CAAC,EAAE,CAAC;YACzD,MAAM,SAAS,GAAG,OAAO,CAAC,YAAY,CAAC,QAAQ,CAAC,CAAC;YAEjD,IAAI,SAAS,EAAE,CAAC;gBACZ,OAAO,CAAC,IAAI,CAAC,EAAC,MAAM,EAAE,SAAS,CAAC,EAAE,EAAE,QAAQ,EAAE,KAAK,EAAE,QAAQ,EAAE,SAAS,CAAC,IAAI,EAAC,CAAC,CAAC;YACpF,CAAC;iBAAM,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAC,EAAE,CAAC;gBACzC,OAAO,CAAC,IAAI,CAAC,EAAC,MAAM,EAAE,MAAM,CAAC,QAAQ,CAAC,EAAE,QAAQ,EAAE,KAAK,CAAC,KAAK,EAAE,QAAQ,EAAE,KAAK,CAAC,IAAI,EAAC,CAAC,CAAC;YAC1F,CAAC;iBAAM,CAAC;gBACJ,MAAM,IAAI,KAAK,CAAC,sBAAsB,QAAQ,qDAAqD,CAAC,CAAC;YACzG,CAAC;QACL,CAAC;QAED,MAAM,gBAAgB,GAAG,GAAW,EAAE,CAClC,SAAS,IAAI,CAAC,OAAO,IAAI,OAAO,CAAC,IAAI,IAAI,IAAI,CAAC,SAAS,CAAC,UAAU,CAAC,KAAK,IAAI,CAAC,SAAS,CAAC,mBAAmB,CAAC,GAAG,CAAC;QACnH,eAAM,CAAC,KAAK,CAAC,gBAAgB,EAAE,EAAE,CAAC,CAAC;QAEnC,IAAI,CAAC;YACD,MAAM,KAAK,GAAG,GAAG,CAAC,KAAK,CAAC,MAAM,CAC1B,GAAG,CAAC,SAAS,CAAC,MAAM,EACpB,mBAAmB,CAAC,SAAS,EAC7B,IAAI,EACJ,mBAAmB,CAAC,gBAAgB,EACpC,mBAAmB,CAAC,yBAAyB,IAAI,sCAA4B,CAAC,IAAI,EAAE,EACpF,OAAO,EACP,OAAO,EACP,OAAO,EACP,cAAc,EACd,mBAAmB,CAAC,YAAY,CACnC,CAAC;YAEF,yEAAyE;YACzE,MAAM,gBAAM,CAAC,OAAQ,CAAC,mBAAmB,CAAC,IAAI,CAAC,OAAO,EAAE,KAAK,EAAE,mBAAmB,CAAC,WAAW,CAAC,CAAC;QACpG,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACb,MAAM,GAAG,GAAG,KAAc,CAAC;YAC3B,GAAG,CAAC,OAAO,GAAG,GAAG,gBAAgB,EAAE,YAAY,GAAG,CAAC,OAAO,GAAG,CAAC;YAC9D,yEAAyE;YACzE,eAAM,CAAC,KAAK,CAAC,GAAG,CAAC,KAAM,EAAE,EAAE,CAAC,CAAC;YAE7B,MAAM,KAAK,CAAC;QAChB,CAAC;IACL,CAAC;IAEM,KAAK,CAAC,IAAI,CAAC,UAA2B,EAAE,UAA+B,EAAE,OAAiB;QAC7F,MAAM,cAAc,GAAG,IAAI,CAAC,eAAe,CAAC,OAAO,EAAE,SAAS,KAAK,GAAG,CAAC,SAAS,CAAC,gBAAgB,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,iCAAiC,CAAC,CAAC;QAC7I,MAAM,OAAO,GAAG,GAAG,CAAC,KAAK,CAAC,UAAU,CAAC,UAAU,EAAE,OAAO,EAAE,gBAAgB,EAAE,cAAc,CAAC,CAAC;QAC5F,MAAM,mBAAmB,GAAG,IAAI,CAAC,sBAAsB,CAAC,OAAO,EAAE,GAAG,CAAC,SAAS,CAAC,gBAAgB,EAAE,OAAO,CAAC,gBAAgB,CAAC,CAAC;QAC3H,MAAM,OAAO,GAAuB,EAAE,CAAC;QAEvC,KAAK,MAAM,SAAS,IAAI,UAAU,EAAE,CAAC;YACjC,IAAI,OAAO,SAAS,KAAK,QAAQ,EAAE,CAAC;gBAChC,OAAO,CAAC,IAAI,CAAC,EAAC,MAAM,EAAE,SAAS,EAAC,CAAC,CAAC;YACtC,CAAC;iBAAM,CAAC;gBACJ,MAAM,IAAI,GAAG,OAAO,CAAC,YAAY,CAAC,SAAS,CAAC,CAAC;gBAE7C,IAAI,IAAI,EAAE,CAAC;oBACP,OAAO,CAAC,IAAI,CAAC,EAAC,MAAM,EAAE,IAAI,CAAC,EAAE,EAAC,CAAC,CAAC;gBACpC,CAAC;qBAAM,CAAC;oBACJ,eAAM,CAAC,OAAO,CAAC,8BAA8B,SAAS,eAAe,OAAO,CAAC,IAAI,EAAE,EAAE,EAAE,CAAC,CAAC;gBAC7F,CAAC;YACL,CAAC;QACL,CAAC;QAED,MAAM,KAAK,GAAG,GAAG,CAAC,KAAK,CAAC,MAAM,CAC1B,GAAG,CAAC,SAAS,CAAC,MAAM,EACpB,mBAAmB,CAAC,SAAS,EAC7B,IAAI,EACJ,mBAAmB,CAAC,gBAAgB,EACpC,mBAAmB,CAAC,yBAAyB,IAAI,sCAA4B,CAAC,IAAI,EAAE,EACpF,MAAM,EACN,OAAO,EACP,OAAO,EACP,cAAc,EACd,mBAAmB,CAAC,YAAY,CACnC,CAAC;QAEF,MAAM,gBAAgB,GAAG,GAAW,EAAE,CAClC,QAAQ,IAAI,CAAC,OAAO,IAAI,OAAO,CAAC,IAAI,IAAI,IAAI,CAAC,SAAS,CAAC,UAAU,CAAC,KAAK,IAAI,CAAC,SAAS,CAAC,mBAAmB,CAAC,GAAG,CAAC;QAClH,eAAM,CAAC,KAAK,CAAC,gBAAgB,EAAE,EAAE,CAAC,CAAC;QAEnC,IAAI,CAAC;YACD,yEAAyE;YACzE,MAAM,gBAAM,CAAC,OAAQ,CAAC,mBAAmB,CAAC,IAAI,CAAC,OAAO,EAAE,KAAK,EAAE,mBAAmB,CAAC,WAAW,CAAC,CAAC;QACpG,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACb,MAAM,GAAG,GAAG,KAAc,CAAC;YAC3B,GAAG,CAAC,OAAO,GAAG,GAAG,gBAAgB,EAAE,YAAY,GAAG,CAAC,OAAO,GAAG,CAAC;YAC9D,yEAAyE;YACzE,eAAM,CAAC,KAAK,CAAC,GAAG,CAAC,KAAM,EAAE,EAAE,CAAC,CAAC;YAE7B,MAAM,KAAK,CAAC;QAChB,CAAC;IACL,CAAC;IAEM,KAAK,CAAC,OAAO,CAAC,UAA2B,EAAE,UAA2B,EAAE,OAAiB,EAAE,OAAiB;QAC/G,MAAM,cAAc,GAAG,IAAI,CAAC,eAAe,CAAC,OAAO,EAAE,SAAS,KAAK,GAAG,CAAC,SAAS,CAAC,gBAAgB,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,iCAAiC,CAAC,CAAC;QAC7I,MAAM,OAAO,GAAG,GAAG,CAAC,KAAK,CAAC,UAAU,CAAC,UAAU,EAAE,OAAO,EAAE,gBAAgB,EAAE,cAAc,CAAC,CAAC;QAC5F,MAAM,mBAAmB,GAAG,IAAI,CAAC,sBAAsB,CAAC,OAAO,EAAE,GAAG,CAAC,SAAS,CAAC,gBAAgB,EAAE,OAAO,CAAC,gBAAgB,CAAC,CAAC;QAC3H,MAAM,OAAO,GACT,mBAAmB,CAAC,SAAS,KAAK,GAAG,CAAC,SAAS,CAAC,gBAAgB;YAC5D,CAAC,CAAC,OAAO,CAAC,UAAU,CAAC,UAAU,CAAC;YAChC,CAAC,CAAC,OAAO,CAAC,kBAAkB,CAAC,UAAU,CAAC,CAAC;QAEjD,MAAM,gBAAgB,GAAG,GAAW,EAAE,CAAC,WAAW,IAAI,CAAC,OAAO,IAAI,OAAO,CAAC,IAAI,IAAI,OAAO,CAAC,IAAI,IAAI,IAAI,CAAC,SAAS,CAAC,OAAO,CAAC,GAAG,CAAC;QAC7H,eAAM,CAAC,KAAK,CAAC,gBAAgB,EAAE,EAAE,CAAC,CAAC;QAEnC,IAAI,CAAC;YACD,MAAM,KAAK,GAAG,GAAG,CAAC,KAAK,CAAC,MAAM,CAC1B,GAAG,CAAC,SAAS,CAAC,QAAQ,EACtB,mBAAmB,CAAC,SAAS,EAC7B,IAAI,EACJ,mBAAmB,CAAC,gBAAgB,EACpC,mBAAmB,CAAC,yBAAyB,IAAI,sCAA4B,CAAC,IAAI,EAAE,EACpF,OAAO,EACP,OAAO,EACP,OAAO,EACP,cAAc,EACd,mBAAmB,CAAC,YAAY,CACnC,CAAC;YAEF,yEAAyE;YACzE,MAAM,gBAAM,CAAC,OAAQ,CAAC,mBAAmB,CAAC,IAAI,CAAC,OAAO,EAAE,KAAK,EAAE,mBAAmB,CAAC,WAAW,CAAC,CAAC;QACpG,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACb,MAAM,GAAG,GAAG,KAAc,CAAC;YAC3B,GAAG,CAAC,OAAO,GAAG,GAAG,gBAAgB,EAAE,YAAY,GAAG,CAAC,OAAO,GAAG,CAAC;YAC9D,yEAAyE;YACzE,eAAM,CAAC,KAAK,CAAC,GAAG,CAAC,KAAM,EAAE,EAAE,CAAC,CAAC;YAE7B,MAAM,KAAK,CAAC;QAChB,CAAC;IACL,CAAC;IAEO,sBAAsB,CAC1B,OAA4B,EAC5B,SAAwB,EACxB,gBAAoC;QAEpC,OAAO;YACH,SAAS;YACT,WAAW,EAAE,SAAS;YACtB,YAAY,EAAE,CAAC;YACf,gBAAgB;YAChB,yBAAyB,EAAE,SAAS;YACpC,GAAG,CAAC,OAAO,IAAI,EAAE,CAAC;SACrB,CAAC;IACN,CAAC;;AA5XL,sBA6XC;AAED,kBAAe,KAAK,CAAC"}
@@ -14,7 +14,7 @@ export declare class ZclFrame {
14
14
  /**
15
15
  * Creating
16
16
  */
17
- static create(frameType: FrameType, direction: Direction, disableDefaultResponse: boolean, manufacturerCode: number | undefined, transactionSequenceNumber: number, commandKey: number | string, clusterKey: number | string, payload: ZclPayload, customClusters: CustomClusters, reservedBits?: number): ZclFrame;
17
+ static create(frameType: FrameType, direction: Direction, disableDefaultResponse: boolean, manufacturerCode: number | undefined, transactionSequenceNumber: number, commandKey: number | string | Command, clusterKey: number | string | Cluster, payload: ZclPayload, customClusters: CustomClusters, reservedBits?: number): ZclFrame;
18
18
  toBuffer(): Buffer;
19
19
  private writePayloadGlobal;
20
20
  private writePayloadCluster;
@@ -1 +1 @@
1
- {"version":3,"file":"zclFrame.d.ts","sourceRoot":"","sources":["../../../src/zspec/zcl/zclFrame.ts"],"names":[],"mappings":"AAAA,OAAO,sCAAsC,CAAC;AAG9C,OAAO,EAA+B,SAAS,EAAE,SAAS,EAAqB,MAAM,oBAAoB,CAAC;AAC1G,OAAO,KAAK,EAAC,qBAAqB,EAAC,MAAM,yBAAyB,CAAC;AAEnE,OAAO,KAAK,EAAoB,OAAO,EAAE,WAAW,EAAE,OAAO,EAAE,cAAc,EAAE,mBAAmB,EAAC,MAAM,qBAAqB,CAAC;AAE/H,OAAO,EAAC,SAAS,EAAC,MAAM,aAAa,CAAC;AAGtC,KAAK,UAAU,GAAG,GAAG,CAAC;AAUtB,qBAAa,QAAQ;IACjB,SAAgB,MAAM,EAAE,SAAS,CAAC;IAClC,SAAgB,OAAO,EAAE,UAAU,CAAC;IACpC,SAAgB,OAAO,EAAE,OAAO,CAAC;IACjC,SAAgB,OAAO,EAAE,OAAO,CAAC;IAEjC,OAAO;IAOA,QAAQ,IAAI,MAAM;IAIzB;;OAEG;WACW,MAAM,CAChB,SAAS,EAAE,SAAS,EACpB,SAAS,EAAE,SAAS,EACpB,sBAAsB,EAAE,OAAO,EAC/B,gBAAgB,EAAE,MAAM,GAAG,SAAS,EACpC,yBAAyB,EAAE,MAAM,EACjC,UAAU,EAAE,MAAM,GAAG,MAAM,EAC3B,UAAU,EAAE,MAAM,GAAG,MAAM,EAC3B,OAAO,EAAE,UAAU,EACnB,cAAc,EAAE,cAAc,EAC9B,YAAY,SAAI,GACjB,QAAQ;IAmBJ,QAAQ,IAAI,MAAM;IAezB,OAAO,CAAC,kBAAkB;IAuC1B,OAAO,CAAC,mBAAmB;IAe3B;;OAEG;WACW,UAAU,CAAC,SAAS,EAAE,MAAM,EAAE,MAAM,EAAE,SAAS,GAAG,SAAS,EAAE,MAAM,EAAE,MAAM,EAAE,cAAc,EAAE,cAAc,GAAG,QAAQ;IAiBpI,OAAO,CAAC,MAAM,CAAC,YAAY;IAY3B,OAAO,CAAC,MAAM,CAAC,mBAAmB;IA6BlC,OAAO,CAAC,MAAM,CAAC,kBAAkB;IA6EjC;;OAEG;WAEW,eAAe,CAAC,SAAS,EAAE,mBAAmB,EAAE,KAAK,EAAE,UAAU,EAAE,oBAAoB,EAAE,MAAM,GAAG,SAAS,GAAG,OAAO;IA6C5H,SAAS,CAAC,WAAW,EAAE,qBAAqB,GAAG,WAAW,GAAG,OAAO;IAKpE,SAAS,CAAC,WAAW,EAAE,qBAAqB,GAAG,QAAQ,GAAG,KAAK,GAAG,OAAO,GAAG,WAAW,GAAG,SAAS,GAAG,UAAU,GAAG,KAAK,GAAG,OAAO;CAG5I"}
1
+ {"version":3,"file":"zclFrame.d.ts","sourceRoot":"","sources":["../../../src/zspec/zcl/zclFrame.ts"],"names":[],"mappings":"AAAA,OAAO,sCAAsC,CAAC;AAG9C,OAAO,EAA+B,SAAS,EAAE,SAAS,EAAqB,MAAM,oBAAoB,CAAC;AAC1G,OAAO,KAAK,EAAC,qBAAqB,EAAC,MAAM,yBAAyB,CAAC;AAEnE,OAAO,KAAK,EAAoB,OAAO,EAAE,WAAW,EAAE,OAAO,EAAE,cAAc,EAAE,mBAAmB,EAAC,MAAM,qBAAqB,CAAC;AAE/H,OAAO,EAAC,SAAS,EAAC,MAAM,aAAa,CAAC;AAGtC,KAAK,UAAU,GAAG,GAAG,CAAC;AAUtB,qBAAa,QAAQ;IACjB,SAAgB,MAAM,EAAE,SAAS,CAAC;IAClC,SAAgB,OAAO,EAAE,UAAU,CAAC;IACpC,SAAgB,OAAO,EAAE,OAAO,CAAC;IACjC,SAAgB,OAAO,EAAE,OAAO,CAAC;IAEjC,OAAO;IAOA,QAAQ,IAAI,MAAM;IAIzB;;OAEG;WACW,MAAM,CAChB,SAAS,EAAE,SAAS,EACpB,SAAS,EAAE,SAAS,EACpB,sBAAsB,EAAE,OAAO,EAC/B,gBAAgB,EAAE,MAAM,GAAG,SAAS,EACpC,yBAAyB,EAAE,MAAM,EACjC,UAAU,EAAE,MAAM,GAAG,MAAM,GAAG,OAAO,EACrC,UAAU,EAAE,MAAM,GAAG,MAAM,GAAG,OAAO,EACrC,OAAO,EAAE,UAAU,EACnB,cAAc,EAAE,cAAc,EAC9B,YAAY,SAAI,GACjB,QAAQ;IAqBJ,QAAQ,IAAI,MAAM;IAezB,OAAO,CAAC,kBAAkB;IAuC1B,OAAO,CAAC,mBAAmB;IAe3B;;OAEG;WACW,UAAU,CAAC,SAAS,EAAE,MAAM,EAAE,MAAM,EAAE,SAAS,GAAG,SAAS,EAAE,MAAM,EAAE,MAAM,EAAE,cAAc,EAAE,cAAc,GAAG,QAAQ;IAiBpI,OAAO,CAAC,MAAM,CAAC,YAAY;IAY3B,OAAO,CAAC,MAAM,CAAC,mBAAmB;IA6BlC,OAAO,CAAC,MAAM,CAAC,kBAAkB;IA6EjC;;OAEG;WAEW,eAAe,CAAC,SAAS,EAAE,mBAAmB,EAAE,KAAK,EAAE,UAAU,EAAE,oBAAoB,EAAE,MAAM,GAAG,SAAS,GAAG,OAAO;IA6C5H,SAAS,CAAC,WAAW,EAAE,qBAAqB,GAAG,WAAW,GAAG,OAAO;IAKpE,SAAS,CAAC,WAAW,EAAE,qBAAqB,GAAG,QAAQ,GAAG,KAAK,GAAG,OAAO,GAAG,WAAW,GAAG,SAAS,GAAG,UAAU,GAAG,KAAK,GAAG,OAAO;CAG5I"}
@@ -64,12 +64,14 @@ class ZclFrame {
64
64
  * Creating
65
65
  */
66
66
  static create(frameType, direction, disableDefaultResponse, manufacturerCode, transactionSequenceNumber, commandKey, clusterKey, payload, customClusters, reservedBits = 0) {
67
- const cluster = Utils.getCluster(clusterKey, manufacturerCode, customClusters);
68
- const command = frameType === enums_1.FrameType.GLOBAL
69
- ? Utils.getGlobalCommand(commandKey)
70
- : direction === enums_1.Direction.CLIENT_TO_SERVER
71
- ? cluster.getCommand(commandKey)
72
- : cluster.getCommandResponse(commandKey);
67
+ const cluster = typeof clusterKey === "object" ? clusterKey : Utils.getCluster(clusterKey, manufacturerCode, customClusters);
68
+ const command = typeof commandKey === "object"
69
+ ? commandKey
70
+ : frameType === enums_1.FrameType.GLOBAL
71
+ ? Utils.getGlobalCommand(commandKey)
72
+ : direction === enums_1.Direction.CLIENT_TO_SERVER
73
+ ? cluster.getCommand(commandKey)
74
+ : cluster.getCommandResponse(commandKey);
73
75
  const header = new zclHeader_1.ZclHeader({ reservedBits, frameType, direction, disableDefaultResponse, manufacturerSpecific: manufacturerCode != null }, manufacturerCode, transactionSequenceNumber, command.ID);
74
76
  return new ZclFrame(header, payload, cluster, command);
75
77
  }
@@ -1 +1 @@
1
- {"version":3,"file":"zclFrame.js","sourceRoot":"","sources":["../../../src/zspec/zcl/zclFrame.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"zclFrame.js","sourceRoot":"","sources":["../../../src/zspec/zcl/zclFrame.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -64,7 +64,7 @@
64
64
  "type": "git",
65
65
  "url": "git+https://github.com/Koenkk/zigbee-herdsman.git"
66
66
  },
67
- "version": "5.0.0",
67
+ "version": "5.0.1",
68
68
  "scripts": {
69
69
  "build": "tsc",
70
70
  "build:watch": "tsc -w",
@@ -374,7 +374,7 @@ export class Endpoint extends Entity {
374
374
  }
375
375
 
376
376
  public async report(clusterKey: number | string, attributes: KeyValue, options?: Options): Promise<void> {
377
- const cluster = this.getCluster(clusterKey);
377
+ const cluster = this.getCluster(clusterKey, undefined, options?.manufacturerCode);
378
378
  const payload: {attrId: number; dataType: number; attrData: number | string | boolean}[] = [];
379
379
 
380
380
  for (const [nameOrID, value] of Object.entries(attributes)) {
@@ -389,11 +389,11 @@ export class Endpoint extends Entity {
389
389
  }
390
390
  }
391
391
 
392
- await this.zclCommand(clusterKey, "report", payload, options, attributes);
392
+ await this.zclCommand(cluster, "report", payload, options, attributes);
393
393
  }
394
394
 
395
395
  public async write(clusterKey: number | string, attributes: KeyValue, options?: Options): Promise<void> {
396
- const cluster = this.getCluster(clusterKey);
396
+ const cluster = this.getCluster(clusterKey, undefined, options?.manufacturerCode);
397
397
  const optionsWithDefaults = this.getOptionsWithDefaults(options, true, Zcl.Direction.CLIENT_TO_SERVER, cluster.manufacturerCode);
398
398
  optionsWithDefaults.manufacturerCode = this.ensureManufacturerCodeIsUniqueAndGet(
399
399
  cluster,
@@ -415,7 +415,7 @@ export class Endpoint extends Entity {
415
415
  }
416
416
  }
417
417
 
418
- await this.zclCommand(clusterKey, optionsWithDefaults.writeUndiv ? "writeUndiv" : "write", payload, optionsWithDefaults, attributes, true);
418
+ await this.zclCommand(cluster, optionsWithDefaults.writeUndiv ? "writeUndiv" : "write", payload, optionsWithDefaults, attributes, true);
419
419
  }
420
420
 
421
421
  public async writeResponse(
@@ -425,7 +425,7 @@ export class Endpoint extends Entity {
425
425
  options?: Options,
426
426
  ): Promise<void> {
427
427
  assert(options?.transactionSequenceNumber === undefined, "Use parameter");
428
- const cluster = this.getCluster(clusterKey);
428
+ const cluster = this.getCluster(clusterKey, undefined, options?.manufacturerCode);
429
429
  const payload: {status: number; attrId: number}[] = [];
430
430
 
431
431
  for (const [nameOrID, value] of Object.entries(attributes)) {
@@ -445,7 +445,7 @@ export class Endpoint extends Entity {
445
445
  }
446
446
 
447
447
  await this.zclCommand(
448
- clusterKey,
448
+ cluster,
449
449
  "writeRsp",
450
450
  payload,
451
451
  {direction: Zcl.Direction.SERVER_TO_CLIENT, ...options, transactionSequenceNumber},
@@ -455,7 +455,7 @@ export class Endpoint extends Entity {
455
455
 
456
456
  public async read(clusterKey: number | string, attributes: (string | number)[], options?: Options): Promise<KeyValue> {
457
457
  const device = this.getDevice();
458
- const cluster = this.getCluster(clusterKey, device);
458
+ const cluster = this.getCluster(clusterKey, device, options?.manufacturerCode);
459
459
  const optionsWithDefaults = this.getOptionsWithDefaults(options, true, Zcl.Direction.CLIENT_TO_SERVER, cluster.manufacturerCode);
460
460
  optionsWithDefaults.manufacturerCode = this.ensureManufacturerCodeIsUniqueAndGet(
461
461
  cluster,
@@ -479,7 +479,7 @@ export class Endpoint extends Entity {
479
479
  }
480
480
  }
481
481
 
482
- const resultFrame = await this.zclCommand(clusterKey, "read", payload, optionsWithDefaults, attributes, true);
482
+ const resultFrame = await this.zclCommand(cluster, "read", payload, optionsWithDefaults, attributes, true);
483
483
 
484
484
  if (resultFrame) {
485
485
  return ZclFrameConverter.attributeKeyValue(resultFrame, device.manufacturerID, device.customClusters);
@@ -496,7 +496,7 @@ export class Endpoint extends Entity {
496
496
  ): Promise<void> {
497
497
  assert(options?.transactionSequenceNumber === undefined, "Use parameter");
498
498
 
499
- const cluster = this.getCluster(clusterKey);
499
+ const cluster = this.getCluster(clusterKey, undefined, options?.manufacturerCode);
500
500
  const payload: {attrId: number; status: number; dataType: number; attrData: number | string}[] = [];
501
501
  for (const [nameOrID, value] of Object.entries(attributes)) {
502
502
  const attribute = cluster.getAttribute(nameOrID);
@@ -511,7 +511,7 @@ export class Endpoint extends Entity {
511
511
  }
512
512
 
513
513
  await this.zclCommand(
514
- clusterKey,
514
+ cluster,
515
515
  "readRsp",
516
516
  payload,
517
517
  {direction: Zcl.Direction.SERVER_TO_CLIENT, ...options, transactionSequenceNumber},
@@ -696,7 +696,7 @@ export class Endpoint extends Entity {
696
696
  }
697
697
 
698
698
  public async configureReporting(clusterKey: number | string, items: ConfigureReportingItem[], options?: Options): Promise<void> {
699
- const cluster = this.getCluster(clusterKey);
699
+ const cluster = this.getCluster(clusterKey, undefined, options?.manufacturerCode);
700
700
  const optionsWithDefaults = this.getOptionsWithDefaults(options, true, Zcl.Direction.CLIENT_TO_SERVER, cluster.manufacturerCode);
701
701
  optionsWithDefaults.manufacturerCode = this.ensureManufacturerCodeIsUniqueAndGet(
702
702
  cluster,
@@ -731,7 +731,7 @@ export class Endpoint extends Entity {
731
731
  };
732
732
  });
733
733
 
734
- await this.zclCommand(clusterKey, "configReport", payload, optionsWithDefaults, items, true);
734
+ await this.zclCommand(cluster, "configReport", payload, optionsWithDefaults, items, true);
735
735
 
736
736
  for (const e of payload) {
737
737
  this._configuredReportings = this._configuredReportings.filter(
@@ -787,7 +787,7 @@ export class Endpoint extends Entity {
787
787
  assert(options?.transactionSequenceNumber === undefined, "Use parameter");
788
788
 
789
789
  const device = this.getDevice();
790
- const cluster = this.getCluster(clusterKey, device);
790
+ const cluster = this.getCluster(clusterKey, device, options?.manufacturerCode);
791
791
  const command = cluster.getCommandResponse(commandKey);
792
792
  transactionSequenceNumber = transactionSequenceNumber || zclTransactionSequenceNumber.next();
793
793
  const optionsWithDefaults = this.getOptionsWithDefaults(options, true, Zcl.Direction.SERVER_TO_CLIENT, cluster.manufacturerCode);
@@ -798,8 +798,8 @@ export class Endpoint extends Entity {
798
798
  optionsWithDefaults.disableDefaultResponse,
799
799
  optionsWithDefaults.manufacturerCode,
800
800
  transactionSequenceNumber,
801
- command.name,
802
- cluster.name,
801
+ command,
802
+ cluster,
803
803
  payload,
804
804
  device.customClusters,
805
805
  optionsWithDefaults.reservedBits,
@@ -940,12 +940,16 @@ export class Endpoint extends Entity {
940
940
  group.addMember(this);
941
941
  }
942
942
 
943
- private getCluster(clusterKey: number | string, device: Device | undefined = undefined): ZclTypes.Cluster {
943
+ private getCluster(
944
+ clusterKey: number | string,
945
+ device: Device | undefined = undefined,
946
+ manufacturerCode: number | undefined = undefined,
947
+ ): ZclTypes.Cluster {
944
948
  if (!device) {
945
949
  device = this.getDevice();
946
950
  }
947
951
 
948
- return Zcl.Utils.getCluster(clusterKey, device.manufacturerID, device.customClusters);
952
+ return Zcl.Utils.getCluster(clusterKey, manufacturerCode ?? device.manufacturerID, device.customClusters);
949
953
  }
950
954
 
951
955
  /**
@@ -974,8 +978,8 @@ export class Endpoint extends Entity {
974
978
  }
975
979
 
976
980
  public async zclCommand(
977
- clusterKey: number | string,
978
- commandKey: number | string,
981
+ clusterKey: number | string | ZclTypes.Cluster,
982
+ commandKey: number | string | ZclTypes.Command,
979
983
  payload: KeyValue,
980
984
  options?: Options,
981
985
  logPayload?: KeyValue,
@@ -983,8 +987,13 @@ export class Endpoint extends Entity {
983
987
  frameType: Zcl.FrameType = Zcl.FrameType.GLOBAL,
984
988
  ): Promise<undefined | Zcl.Frame> {
985
989
  const device = this.getDevice();
986
- const cluster = this.getCluster(clusterKey, device);
987
- const command = frameType === Zcl.FrameType.GLOBAL ? Zcl.Utils.getGlobalCommand(commandKey) : cluster.getCommand(commandKey);
990
+ const cluster = typeof clusterKey === "object" ? clusterKey : this.getCluster(clusterKey, device, options?.manufacturerCode);
991
+ const command =
992
+ typeof commandKey === "object"
993
+ ? commandKey
994
+ : frameType === Zcl.FrameType.GLOBAL
995
+ ? Zcl.Utils.getGlobalCommand(commandKey)
996
+ : cluster.getCommand(commandKey);
988
997
  const hasResponse = frameType === Zcl.FrameType.GLOBAL ? true : command.response !== undefined;
989
998
  const optionsWithDefaults = this.getOptionsWithDefaults(options, hasResponse, Zcl.Direction.CLIENT_TO_SERVER, cluster.manufacturerCode);
990
999
 
@@ -994,8 +1003,8 @@ export class Endpoint extends Entity {
994
1003
  optionsWithDefaults.disableDefaultResponse,
995
1004
  optionsWithDefaults.manufacturerCode,
996
1005
  optionsWithDefaults.transactionSequenceNumber ?? zclTransactionSequenceNumber.next(),
997
- command.name,
998
- cluster.name,
1006
+ command,
1007
+ cluster,
999
1008
  payload,
1000
1009
  device.customClusters,
1001
1010
  optionsWithDefaults.reservedBits,
@@ -1034,7 +1043,7 @@ export class Endpoint extends Entity {
1034
1043
  options?: Options,
1035
1044
  ): Promise<void> {
1036
1045
  const device = this.getDevice();
1037
- const cluster = this.getCluster(clusterKey, device);
1046
+ const cluster = this.getCluster(clusterKey, device, options?.manufacturerCode);
1038
1047
  const command = cluster.getCommand(commandKey);
1039
1048
  const optionsWithDefaults = this.getOptionsWithDefaults(options, true, Zcl.Direction.CLIENT_TO_SERVER, cluster.manufacturerCode);
1040
1049
  const sourceEndpoint = optionsWithDefaults.srcEndpoint ?? this.ID;
@@ -1045,8 +1054,8 @@ export class Endpoint extends Entity {
1045
1054
  true,
1046
1055
  optionsWithDefaults.manufacturerCode,
1047
1056
  optionsWithDefaults.transactionSequenceNumber ?? zclTransactionSequenceNumber.next(),
1048
- command.name,
1049
- cluster.name,
1057
+ command,
1058
+ cluster,
1050
1059
  payload,
1051
1060
  device.customClusters,
1052
1061
  optionsWithDefaults.reservedBits,
@@ -255,9 +255,9 @@ export class Group extends Entity {
255
255
  */
256
256
 
257
257
  public async write(clusterKey: number | string, attributes: KeyValue, options?: Options): Promise<void> {
258
- const optionsWithDefaults = this.getOptionsWithDefaults(options, Zcl.Direction.CLIENT_TO_SERVER);
259
- const customClusters = this.#customClusters[optionsWithDefaults.direction === Zcl.Direction.CLIENT_TO_SERVER ? 0 : 1];
260
- const cluster = Zcl.Utils.getCluster(clusterKey, undefined, customClusters);
258
+ const customClusters = this.#customClusters[options?.direction === Zcl.Direction.SERVER_TO_CLIENT ? 1 : 0 /* default to CLIENT_TO_SERVER */];
259
+ const cluster = Zcl.Utils.getCluster(clusterKey, options?.manufacturerCode, customClusters);
260
+ const optionsWithDefaults = this.getOptionsWithDefaults(options, Zcl.Direction.CLIENT_TO_SERVER, cluster.manufacturerCode);
261
261
  const payload: {attrId: number; dataType: number; attrData: number | string | boolean}[] = [];
262
262
 
263
263
  for (const [nameOrID, value] of Object.entries(attributes)) {
@@ -284,7 +284,7 @@ export class Group extends Entity {
284
284
  optionsWithDefaults.manufacturerCode,
285
285
  optionsWithDefaults.transactionSequenceNumber ?? zclTransactionSequenceNumber.next(),
286
286
  "write",
287
- cluster.ID,
287
+ cluster,
288
288
  payload,
289
289
  customClusters,
290
290
  optionsWithDefaults.reservedBits,
@@ -303,9 +303,9 @@ export class Group extends Entity {
303
303
  }
304
304
 
305
305
  public async read(clusterKey: number | string, attributes: (string | number)[], options?: Options): Promise<void> {
306
- const optionsWithDefaults = this.getOptionsWithDefaults(options, Zcl.Direction.CLIENT_TO_SERVER);
307
- const customClusters = this.#customClusters[optionsWithDefaults.direction === Zcl.Direction.CLIENT_TO_SERVER ? 0 : 1];
308
- const cluster = Zcl.Utils.getCluster(clusterKey, undefined, customClusters);
306
+ const customClusters = this.#customClusters[options?.direction === Zcl.Direction.SERVER_TO_CLIENT ? 1 : 0 /* default to CLIENT_TO_SERVER */];
307
+ const cluster = Zcl.Utils.getCluster(clusterKey, options?.manufacturerCode, customClusters);
308
+ const optionsWithDefaults = this.getOptionsWithDefaults(options, Zcl.Direction.CLIENT_TO_SERVER, cluster.manufacturerCode);
309
309
  const payload: {attrId: number}[] = [];
310
310
 
311
311
  for (const attribute of attributes) {
@@ -329,7 +329,7 @@ export class Group extends Entity {
329
329
  optionsWithDefaults.manufacturerCode,
330
330
  optionsWithDefaults.transactionSequenceNumber ?? zclTransactionSequenceNumber.next(),
331
331
  "read",
332
- cluster.ID,
332
+ cluster,
333
333
  payload,
334
334
  customClusters,
335
335
  optionsWithDefaults.reservedBits,
@@ -353,9 +353,9 @@ export class Group extends Entity {
353
353
  }
354
354
 
355
355
  public async command(clusterKey: number | string, commandKey: number | string, payload: KeyValue, options?: Options): Promise<void> {
356
- const optionsWithDefaults = this.getOptionsWithDefaults(options, Zcl.Direction.CLIENT_TO_SERVER);
357
- const customClusters = this.#customClusters[optionsWithDefaults.direction === Zcl.Direction.CLIENT_TO_SERVER ? 0 : 1];
358
- const cluster = Zcl.Utils.getCluster(clusterKey, undefined, customClusters);
356
+ const customClusters = this.#customClusters[options?.direction === Zcl.Direction.SERVER_TO_CLIENT ? 1 : 0 /* default to CLIENT_TO_SERVER */];
357
+ const cluster = Zcl.Utils.getCluster(clusterKey, options?.manufacturerCode, customClusters);
358
+ const optionsWithDefaults = this.getOptionsWithDefaults(options, Zcl.Direction.CLIENT_TO_SERVER, cluster.manufacturerCode);
359
359
  const command =
360
360
  optionsWithDefaults.direction === Zcl.Direction.CLIENT_TO_SERVER
361
361
  ? cluster.getCommand(commandKey)
@@ -371,8 +371,8 @@ export class Group extends Entity {
371
371
  true,
372
372
  optionsWithDefaults.manufacturerCode,
373
373
  optionsWithDefaults.transactionSequenceNumber || zclTransactionSequenceNumber.next(),
374
- command.ID,
375
- cluster.ID,
374
+ command,
375
+ cluster,
376
376
  payload,
377
377
  customClusters,
378
378
  optionsWithDefaults.reservedBits,
@@ -390,12 +390,16 @@ export class Group extends Entity {
390
390
  }
391
391
  }
392
392
 
393
- private getOptionsWithDefaults(options: Options | undefined, direction: Zcl.Direction): OptionsWithDefaults {
393
+ private getOptionsWithDefaults(
394
+ options: Options | undefined,
395
+ direction: Zcl.Direction,
396
+ manufacturerCode: number | undefined,
397
+ ): OptionsWithDefaults {
394
398
  return {
395
399
  direction,
396
400
  srcEndpoint: undefined,
397
401
  reservedBits: 0,
398
- manufacturerCode: undefined,
402
+ manufacturerCode,
399
403
  transactionSequenceNumber: undefined,
400
404
  ...(options || {}),
401
405
  };
@@ -45,19 +45,21 @@ export class ZclFrame {
45
45
  disableDefaultResponse: boolean,
46
46
  manufacturerCode: number | undefined,
47
47
  transactionSequenceNumber: number,
48
- commandKey: number | string,
49
- clusterKey: number | string,
48
+ commandKey: number | string | Command,
49
+ clusterKey: number | string | Cluster,
50
50
  payload: ZclPayload,
51
51
  customClusters: CustomClusters,
52
52
  reservedBits = 0,
53
53
  ): ZclFrame {
54
- const cluster = Utils.getCluster(clusterKey, manufacturerCode, customClusters);
54
+ const cluster = typeof clusterKey === "object" ? clusterKey : Utils.getCluster(clusterKey, manufacturerCode, customClusters);
55
55
  const command: Command =
56
- frameType === FrameType.GLOBAL
57
- ? Utils.getGlobalCommand(commandKey)
58
- : direction === Direction.CLIENT_TO_SERVER
59
- ? cluster.getCommand(commandKey)
60
- : cluster.getCommandResponse(commandKey);
56
+ typeof commandKey === "object"
57
+ ? commandKey
58
+ : frameType === FrameType.GLOBAL
59
+ ? Utils.getGlobalCommand(commandKey)
60
+ : direction === Direction.CLIENT_TO_SERVER
61
+ ? cluster.getCommand(commandKey)
62
+ : cluster.getCommandResponse(commandKey);
61
63
 
62
64
  const header = new ZclHeader(
63
65
  {reservedBits, frameType, direction, disableDefaultResponse, manufacturerSpecific: manufacturerCode != null},
@@ -4380,7 +4380,7 @@ describe("Controller", () => {
4380
4380
  await mockAdapterEvents.deviceJoined({networkAddress: 129, ieeeAddr: "0x129"});
4381
4381
  const device = controller.getDeviceByIeeeAddr("0x129")!;
4382
4382
  // @ts-expect-error private
4383
- device._manufacturerID = 0x10f2;
4383
+ device._manufacturerID = Zcl.ManufacturerCode.VIESSMANN_ELEKTRONIK_GMBH;
4384
4384
  const endpoint = device.getEndpoint(1)!;
4385
4385
  mocksendZclFrameToEndpoint.mockClear();
4386
4386
  await endpoint.configureReporting("hvacThermostat", [
@@ -4427,7 +4427,7 @@ describe("Controller", () => {
4427
4427
  await mockAdapterEvents.deviceJoined({networkAddress: 129, ieeeAddr: "0x129"});
4428
4428
  const device = controller.getDeviceByIeeeAddr("0x129")!;
4429
4429
  // @ts-expect-error private
4430
- device._manufacturerID = 0x10f2;
4430
+ device._manufacturerID = Zcl.ManufacturerCode.VIESSMANN_ELEKTRONIK_GMBH;
4431
4431
  const endpoint = device.getEndpoint(1)!;
4432
4432
  mocksendZclFrameToEndpoint.mockClear();
4433
4433
  let error;
@@ -4582,24 +4582,19 @@ describe("Controller", () => {
4582
4582
  const device = controller.getDeviceByIeeeAddr("0x129")!;
4583
4583
  const endpoint = device.getEndpoint(1)!;
4584
4584
  mocksendZclFrameToEndpoint.mockReturnValueOnce(null);
4585
- let error;
4586
- try {
4587
- await endpoint.configureReporting(
4588
- "genPowerCfg",
4589
- [
4590
- {
4591
- attribute: "mainsFrequency",
4592
- minimumReportInterval: 1,
4593
- maximumReportInterval: 10,
4594
- reportableChange: 1,
4595
- },
4596
- ],
4597
- {disableResponse: true},
4598
- );
4599
- } catch (e) {
4600
- error = e;
4601
- }
4602
- expect(error).toBeUndefined();
4585
+
4586
+ await endpoint.configureReporting(
4587
+ "genPowerCfg",
4588
+ [
4589
+ {
4590
+ attribute: "mainsFrequency",
4591
+ minimumReportInterval: 1,
4592
+ maximumReportInterval: 10,
4593
+ reportableChange: 1,
4594
+ },
4595
+ ],
4596
+ {disableResponse: true},
4597
+ );
4603
4598
  });
4604
4599
 
4605
4600
  it("Return group from databse when not in lookup", async () => {
@@ -5080,7 +5075,7 @@ describe("Controller", () => {
5080
5075
  mocksendZclFrameToEndpoint.mockClear();
5081
5076
  const device = controller.getDeviceByIeeeAddr("0x129")!;
5082
5077
  // @ts-expect-error private
5083
- device._manufacturerID = 0x10f2;
5078
+ device._manufacturerID = Zcl.ManufacturerCode.VIESSMANN_ELEKTRONIK_GMBH;
5084
5079
  const endpoint = device.getEndpoint(1)!;
5085
5080
  await endpoint.write("hvacThermostat", {viessmannWindowOpenInternal: 1});
5086
5081
  expect(mocksendZclFrameToEndpoint).toHaveBeenCalledTimes(1);
@@ -5166,7 +5161,7 @@ describe("Controller", () => {
5166
5161
  mocksendZclFrameToEndpoint.mockClear();
5167
5162
  const device = controller.getDeviceByIeeeAddr("0x129")!;
5168
5163
  // @ts-expect-error private
5169
- device._manufacturerID = 0x10f2;
5164
+ device._manufacturerID = Zcl.ManufacturerCode.VIESSMANN_ELEKTRONIK_GMBH;
5170
5165
  const endpoint = device.getEndpoint(1)!;
5171
5166
  let error;
5172
5167
  try {
@@ -5304,6 +5299,36 @@ describe("Controller", () => {
5304
5299
  );
5305
5300
  });
5306
5301
 
5302
+ it("Write response to endpoint with options", async () => {
5303
+ await controller.start();
5304
+ await mockAdapterEvents.deviceJoined({networkAddress: 129, ieeeAddr: "0x129"});
5305
+ mocksendZclFrameToEndpoint.mockClear();
5306
+ const device = controller.getDeviceByIeeeAddr("0x129")!;
5307
+ const endpoint = device.getEndpoint(1)!;
5308
+ await endpoint.writeResponse("genBasic", 99, {zclVersion: {status: 0x03}}, {manufacturerCode: Zcl.ManufacturerCode.INOVELLI});
5309
+ expect(mocksendZclFrameToEndpoint).toHaveBeenCalledTimes(1);
5310
+ const call = mocksendZclFrameToEndpoint.mock.calls[0];
5311
+ expect(call[0]).toBe("0x129");
5312
+ expect(call[1]).toBe(129);
5313
+ expect(call[2]).toBe(1);
5314
+ expect(deepClone(call[3])).toStrictEqual(
5315
+ deepClone(
5316
+ Zcl.Frame.create(
5317
+ Zcl.FrameType.GLOBAL,
5318
+ Zcl.Direction.SERVER_TO_CLIENT,
5319
+ true,
5320
+ Zcl.ManufacturerCode.INOVELLI,
5321
+ 99,
5322
+ "writeRsp",
5323
+ 0,
5324
+ [{attrId: 0, status: 0x03}],
5325
+ {},
5326
+ ),
5327
+ ),
5328
+ );
5329
+ expect(call[4]).toBe(10000);
5330
+ });
5331
+
5307
5332
  it("Read from endpoint with string", async () => {
5308
5333
  await controller.start();
5309
5334
  await mockAdapterEvents.deviceJoined({networkAddress: 129, ieeeAddr: "0x129"});
@@ -5347,7 +5372,7 @@ describe("Controller", () => {
5347
5372
  mocksendZclFrameToEndpoint.mockClear();
5348
5373
  const device = controller.getDeviceByIeeeAddr("0x129")!;
5349
5374
  // @ts-expect-error private
5350
- device._manufacturerID = 0x10f2;
5375
+ device._manufacturerID = Zcl.ManufacturerCode.VIESSMANN_ELEKTRONIK_GMBH;
5351
5376
  const endpoint = device.getEndpoint(1)!;
5352
5377
  await endpoint.read("hvacThermostat", ["viessmannWindowOpenInternal"]);
5353
5378
  expect(mocksendZclFrameToEndpoint).toHaveBeenCalledTimes(1);
@@ -5367,7 +5392,7 @@ describe("Controller", () => {
5367
5392
  mocksendZclFrameToEndpoint.mockClear();
5368
5393
  const device = controller.getDeviceByIeeeAddr("0x129")!;
5369
5394
  // @ts-expect-error private
5370
- device._manufacturerID = 0x10f2;
5395
+ device._manufacturerID = Zcl.ManufacturerCode.VIESSMANN_ELEKTRONIK_GMBH;
5371
5396
  const endpoint = device.getEndpoint(1)!;
5372
5397
  let error;
5373
5398
  try {
@@ -6411,13 +6436,8 @@ describe("Controller", () => {
6411
6436
  const device = controller.getDeviceByIeeeAddr("0x129")!;
6412
6437
  const endpoint = device.getEndpoint(1)!;
6413
6438
  mocksendZclFrameToEndpoint.mockReturnValueOnce(null);
6414
- let error;
6415
- try {
6416
- await endpoint.read("genOnOff", ["onOff"], {disableResponse: true});
6417
- } catch (e) {
6418
- error = e;
6419
- }
6420
- expect(error).toBeUndefined();
6439
+
6440
+ await endpoint.read("genOnOff", ["onOff"], {disableResponse: true});
6421
6441
  });
6422
6442
 
6423
6443
  it("Write error", async () => {
@@ -6445,13 +6465,8 @@ describe("Controller", () => {
6445
6465
  const device = controller.getDeviceByIeeeAddr("0x129")!;
6446
6466
  const endpoint = device.getEndpoint(1)!;
6447
6467
  mocksendZclFrameToEndpoint.mockReturnValueOnce(null);
6448
- let error;
6449
- try {
6450
- await endpoint.write("genOnOff", {onOff: 1}, {disableResponse: true});
6451
- } catch (e) {
6452
- error = e;
6453
- }
6454
- expect(error).toBeUndefined();
6468
+
6469
+ await endpoint.write("genOnOff", {onOff: 1}, {disableResponse: true});
6455
6470
  });
6456
6471
 
6457
6472
  it("Group command error", async () => {
@@ -6474,13 +6489,8 @@ describe("Controller", () => {
6474
6489
  const device = controller.getDeviceByIeeeAddr("0x129")!;
6475
6490
  const endpoint = device.getEndpoint(1)!;
6476
6491
  mocksendZclFrameToEndpoint.mockReturnValueOnce(null);
6477
- let error;
6478
- try {
6479
- await endpoint.writeStructured("genPowerCfg", {});
6480
- } catch (e) {
6481
- error = e;
6482
- }
6483
- expect(error).toBeUndefined();
6492
+
6493
+ await endpoint.writeStructured("genPowerCfg", {});
6484
6494
  });
6485
6495
 
6486
6496
  it("Write structured with disable response", async () => {
@@ -6490,13 +6500,8 @@ describe("Controller", () => {
6490
6500
  const device = controller.getDeviceByIeeeAddr("0x129")!;
6491
6501
  const endpoint = device.getEndpoint(1)!;
6492
6502
  mocksendZclFrameToEndpoint.mockReturnValueOnce(null);
6493
- let error;
6494
- try {
6495
- await endpoint.writeStructured("genPowerCfg", {}, {disableResponse: true});
6496
- } catch (e) {
6497
- error = e;
6498
- }
6499
- expect(error).toBeUndefined();
6503
+
6504
+ await endpoint.writeStructured("genPowerCfg", {}, {disableResponse: true});
6500
6505
  });
6501
6506
 
6502
6507
  it("Write structured error", async () => {
@@ -8376,13 +8381,20 @@ describe("Controller", () => {
8376
8381
  const device = controller.getDeviceByIeeeAddr("0x129")!;
8377
8382
  const endpoint = device.getEndpoint(1)!;
8378
8383
  mocksendZclFrameToEndpoint.mockReturnValueOnce(null);
8379
- let error;
8380
- try {
8381
- await endpoint.zclCommand("genOnOff", "discover", {startAttrId: 1, maxAttrIds: 255});
8382
- } catch (e) {
8383
- error = e;
8384
- }
8385
- expect(error).toBeUndefined();
8384
+
8385
+ await endpoint.zclCommand("genOnOff", "discover", {startAttrId: 1, maxAttrIds: 255});
8386
+ });
8387
+
8388
+ it("zclCommand with cluster/command objects", async () => {
8389
+ await controller.start();
8390
+ await mockAdapterEvents.deviceJoined({networkAddress: 129, ieeeAddr: "0x129"});
8391
+ const cluster = Zcl.Utils.getCluster("genOnOff", undefined, {});
8392
+ const command = Zcl.Utils.getGlobalCommand("discover");
8393
+ const device = controller.getDeviceByIeeeAddr("0x129")!;
8394
+ const endpoint = device.getEndpoint(1)!;
8395
+ mocksendZclFrameToEndpoint.mockReturnValueOnce(null);
8396
+
8397
+ await endpoint.zclCommand(cluster, command, {startAttrId: 1, maxAttrIds: 255});
8386
8398
  });
8387
8399
 
8388
8400
  it("zclCommand with error", async () => {
@@ -9103,7 +9115,7 @@ describe("Controller", () => {
9103
9115
 
9104
9116
  device.addCustomCluster("manuSpecificInovelli", {
9105
9117
  ID: 64561,
9106
- manufacturerCode: 0x122f,
9118
+ manufacturerCode: Zcl.ManufacturerCode.V_MARK_ENTERPRISES_INC,
9107
9119
  // omitted for brevity (unused here)
9108
9120
  attributes: {},
9109
9121
  commands: {
@@ -9149,7 +9161,7 @@ describe("Controller", () => {
9149
9161
  Zcl.FrameType.SPECIFIC,
9150
9162
  Zcl.Direction.CLIENT_TO_SERVER,
9151
9163
  true,
9152
- undefined,
9164
+ Zcl.ManufacturerCode.V_MARK_ENTERPRISES_INC,
9153
9165
  14,
9154
9166
  "individualLedEffect",
9155
9167
  64561,
@@ -9169,7 +9181,7 @@ describe("Controller", () => {
9169
9181
  Zcl.FrameType.SPECIFIC,
9170
9182
  Zcl.Direction.SERVER_TO_CLIENT,
9171
9183
  true,
9172
- undefined,
9184
+ Zcl.ManufacturerCode.V_MARK_ENTERPRISES_INC,
9173
9185
  15,
9174
9186
  "bogus",
9175
9187
  64561,