@project-chip/matter.js 0.11.0-alpha.0-20241026-35e309e35 → 0.11.0-alpha.0-20241027-e40e1664f

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 +1 @@
1
- {"version":3,"file":"DeviceInformation.d.ts","sourceRoot":"","sources":["../../../src/device/DeviceInformation.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAUH,OAAO,EAAU,qBAAqB,EAAE,MAAM,iBAAiB,CAAC;AAChE,OAAO,EAAE,iBAAiB,EAA4B,MAAM,kBAAkB,CAAC;AAC/E,OAAO,EAAoC,MAAM,EAA4C,MAAM,eAAe,CAAC;AACnH,OAAO,EAAE,QAAQ,EAAE,MAAM,eAAe,CAAC;AAIzC,MAAM,MAAM,qBAAqB,GAAG;IAChC,eAAe,EAAE,OAAO,CAAC;IACzB,aAAa,EAAE,OAAO,CAAC;IACvB,iBAAiB,EAAE,OAAO,CAAC;IAC3B,sBAAsB,EAAE,MAAM,EAAE,CAAC;IACjC,gBAAgB,EAAE,OAAO,CAAC;IAC1B,yBAAyB,EAAE,OAAO,CAAC;IACnC,uBAAuB,EAAE,OAAO,CAAC;IACjC,YAAY,EAAE,MAAM,CAAC;CACxB,CAAC;AAEF,MAAM,MAAM,sBAAsB,GAAG,MAAM,CAAC,MAAM,EAAE,qBAAqB,CAAC,CAAC;AAE3E,MAAM,MAAM,qBAAqB,GAAG;IAChC,gBAAgB,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,qBAAqB,CAAC,CAAC;IACzD,UAAU,CAAC,EAAE,qBAAqB,CAAC;CACtC,CAAC;AAEF,eAAO,MAAM,oBAAoB,IAAI,CAAC;AAWtC,qBAAa,iBAAiB;;IAKtB,QAAQ,CAAC,MAAM,EAAE,MAAM;gBAAd,MAAM,EAAE,MAAM,EACvB,IAAI,EAAE,qBAAqB;IAM/B,IAAI,IAAI,sCAEP;IAED,IAAI,gBAAgB,uCAEnB;IAED,IAAI,KAAK,YAMR;IAEK,6BAA6B,CAAC,YAAY,EAAE,QAAQ;IA6FpD,8BAA8B,CAAC,iBAAiB,EAAE,iBAAiB;IAyIzE,+BAA+B,CAAC,OAAO,EAAE;QACrC,gCAAgC,CAAC,EAAE,MAAM,CAAC;QAC1C,kCAAkC,CAAC,EAAE,MAAM,CAAC;KAC/C;;;;IAwCD,aAAa,IAAI,qBAAqB;CAMzC"}
1
+ {"version":3,"file":"DeviceInformation.d.ts","sourceRoot":"","sources":["../../../src/device/DeviceInformation.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAUH,OAAO,EAAU,qBAAqB,EAAE,MAAM,iBAAiB,CAAC;AAChE,OAAO,EAAE,iBAAiB,EAA4B,MAAM,kBAAkB,CAAC;AAC/E,OAAO,EAAoC,MAAM,EAA4C,MAAM,eAAe,CAAC;AACnH,OAAO,EAAE,QAAQ,EAAE,MAAM,eAAe,CAAC;AAIzC,MAAM,MAAM,qBAAqB,GAAG;IAChC,eAAe,EAAE,OAAO,CAAC;IACzB,aAAa,EAAE,OAAO,CAAC;IACvB,iBAAiB,EAAE,OAAO,CAAC;IAC3B,sBAAsB,EAAE,MAAM,EAAE,CAAC;IACjC,gBAAgB,EAAE,OAAO,CAAC;IAC1B,yBAAyB,EAAE,OAAO,CAAC;IACnC,uBAAuB,EAAE,OAAO,CAAC;IACjC,YAAY,EAAE,MAAM,CAAC;CACxB,CAAC;AAEF,MAAM,MAAM,sBAAsB,GAAG,MAAM,CAAC,MAAM,EAAE,qBAAqB,CAAC,CAAC;AAE3E,MAAM,MAAM,qBAAqB,GAAG;IAChC,gBAAgB,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,qBAAqB,CAAC,CAAC;IACzD,UAAU,CAAC,EAAE,qBAAqB,CAAC;CACtC,CAAC;AAEF,eAAO,MAAM,oBAAoB,IAAI,CAAC;AAWtC,qBAAa,iBAAiB;;IAKtB,QAAQ,CAAC,MAAM,EAAE,MAAM;gBAAd,MAAM,EAAE,MAAM,EACvB,IAAI,EAAE,qBAAqB;IAM/B,IAAI,IAAI,sCAEP;IAED,IAAI,gBAAgB,uCAEnB;IAED,IAAI,KAAK,YAMR;IAEK,6BAA6B,CAAC,YAAY,EAAE,QAAQ;IA6FpD,8BAA8B,CAAC,iBAAiB,EAAE,iBAAiB;IAqIzE,+BAA+B,CAAC,OAAO,EAAE;QACrC,gCAAgC,CAAC,EAAE,MAAM,CAAC;QAC1C,kCAAkC,CAAC,EAAE,MAAM,CAAC;KAC/C;;;;IAwCD,aAAa,IAAI,qBAAqB;CAMzC"}
@@ -143,126 +143,122 @@ class DeviceInformation {
143
143
  }
144
144
  }
145
145
  async enhanceDeviceDetailsFromRemote(interactionClient) {
146
- try {
147
- const readData = await interactionClient.getMultipleAttributes({
148
- attributes: [
149
- { endpointId: (0, import_types.EndpointNumber)(0), clusterId: import_clusters.BasicInformation.Cluster.id },
150
- {
151
- endpointId: (0, import_types.EndpointNumber)(0),
152
- clusterId: import_clusters.Descriptor.Cluster.id,
153
- attributeId: import_clusters.Descriptor.Cluster.attributes.serverList.id
154
- },
155
- {
156
- clusterId: import_clusters.NetworkCommissioning.Cluster.id,
157
- attributeId: import_clusters.NetworkCommissioning.Complete.attributes.featureMap.id
158
- },
159
- {
160
- clusterId: import_clusters.NetworkCommissioning.Cluster.id,
161
- attributeId: import_clusters.NetworkCommissioning.Complete.attributes.networks.id
162
- },
163
- {
164
- clusterId: import_clusters.NetworkCommissioning.Cluster.id,
165
- attributeId: import_clusters.NetworkCommissioning.Complete.attributes.interfaceEnabled.id
166
- },
167
- {
168
- clusterId: import_clusters.PowerSource.Cluster.id,
169
- attributeId: import_clusters.PowerSource.Cluster.attributes.featureMap.id
170
- },
171
- {
172
- clusterId: import_clusters.PowerSource.Cluster.id,
173
- attributeId: import_clusters.PowerSource.Cluster.attributes.status.id
174
- },
175
- {
176
- endpointId: (0, import_types.EndpointNumber)(0),
177
- clusterId: import_clusters.ThreadNetworkDiagnostics.Cluster.id,
178
- attributeId: import_clusters.ThreadNetworkDiagnostics.Cluster.attributes.routingRole.id
146
+ const readData = await interactionClient.getMultipleAttributes({
147
+ attributes: [
148
+ { endpointId: (0, import_types.EndpointNumber)(0), clusterId: import_clusters.BasicInformation.Cluster.id },
149
+ {
150
+ endpointId: (0, import_types.EndpointNumber)(0),
151
+ clusterId: import_clusters.Descriptor.Cluster.id,
152
+ attributeId: import_clusters.Descriptor.Cluster.attributes.serverList.id
153
+ },
154
+ {
155
+ clusterId: import_clusters.NetworkCommissioning.Cluster.id,
156
+ attributeId: import_clusters.NetworkCommissioning.Complete.attributes.featureMap.id
157
+ },
158
+ {
159
+ clusterId: import_clusters.NetworkCommissioning.Cluster.id,
160
+ attributeId: import_clusters.NetworkCommissioning.Complete.attributes.networks.id
161
+ },
162
+ {
163
+ clusterId: import_clusters.NetworkCommissioning.Cluster.id,
164
+ attributeId: import_clusters.NetworkCommissioning.Complete.attributes.interfaceEnabled.id
165
+ },
166
+ {
167
+ clusterId: import_clusters.PowerSource.Cluster.id,
168
+ attributeId: import_clusters.PowerSource.Cluster.attributes.featureMap.id
169
+ },
170
+ {
171
+ clusterId: import_clusters.PowerSource.Cluster.id,
172
+ attributeId: import_clusters.PowerSource.Cluster.attributes.status.id
173
+ },
174
+ {
175
+ endpointId: (0, import_types.EndpointNumber)(0),
176
+ clusterId: import_clusters.ThreadNetworkDiagnostics.Cluster.id,
177
+ attributeId: import_clusters.ThreadNetworkDiagnostics.Cluster.attributes.routingRole.id
178
+ }
179
+ ]
180
+ });
181
+ const basicInformationData = {};
182
+ const deviceData = {
183
+ ethernetConnected: false,
184
+ wifiConnected: false,
185
+ threadConnected: false,
186
+ rootEndpointServerList: [],
187
+ isBatteryPowered: false,
188
+ isIntermittentlyConnected: false,
189
+ isThreadSleepyEndDevice: false,
190
+ dataRevision: DEVICE_DATA_REVISION
191
+ };
192
+ const networkData = /* @__PURE__ */ new Map();
193
+ const powerSourceData = /* @__PURE__ */ new Map();
194
+ for (const {
195
+ path: { endpointId, clusterId, attributeId, attributeName },
196
+ value
197
+ } of readData) {
198
+ switch (clusterId) {
199
+ case import_clusters.BasicInformation.Cluster.id:
200
+ if (!GlobalAttributeKeys.includes(attributeName)) {
201
+ basicInformationData[attributeName] = value;
179
202
  }
180
- ]
181
- });
182
- const basicInformationData = {};
183
- const deviceData = {
184
- ethernetConnected: false,
185
- wifiConnected: false,
186
- threadConnected: false,
187
- rootEndpointServerList: [],
188
- isBatteryPowered: false,
189
- isIntermittentlyConnected: false,
190
- isThreadSleepyEndDevice: false,
191
- dataRevision: DEVICE_DATA_REVISION
192
- };
193
- const networkData = /* @__PURE__ */ new Map();
194
- const powerSourceData = /* @__PURE__ */ new Map();
195
- for (const {
196
- path: { endpointId, clusterId, attributeId, attributeName },
197
- value
198
- } of readData) {
199
- switch (clusterId) {
200
- case import_clusters.BasicInformation.Cluster.id:
201
- if (!GlobalAttributeKeys.includes(attributeName)) {
202
- basicInformationData[attributeName] = value;
203
- }
204
- break;
205
- case import_clusters.Descriptor.Cluster.id:
206
- if (attributeId === import_clusters.Descriptor.Cluster.attributes.serverList.id) {
207
- deviceData.rootEndpointServerList = value;
208
- if (value.includes(import_clusters.IcdManagement.Cluster.id)) {
209
- deviceData.isIntermittentlyConnected = true;
210
- }
211
- }
212
- break;
213
- case import_clusters.NetworkCommissioning.Cluster.id:
214
- const networkEntry = networkData.get(endpointId) ?? {};
215
- if (attributeId === import_clusters.NetworkCommissioning.Complete.attributes.featureMap.id) {
216
- networkEntry.type = value;
217
- } else if (attributeId === import_clusters.NetworkCommissioning.Complete.attributes.interfaceEnabled.id) {
218
- networkEntry.enabled = value;
219
- } else if (attributeId === import_clusters.NetworkCommissioning.Complete.attributes.networks.id) {
220
- networkEntry.connected = value.some((network) => network.connected);
203
+ break;
204
+ case import_clusters.Descriptor.Cluster.id:
205
+ if (attributeId === import_clusters.Descriptor.Cluster.attributes.serverList.id) {
206
+ deviceData.rootEndpointServerList = value;
207
+ if (value.includes(import_clusters.IcdManagement.Cluster.id)) {
208
+ deviceData.isIntermittentlyConnected = true;
221
209
  }
222
- networkData.set(endpointId, networkEntry);
223
- break;
224
- case import_clusters.PowerSource.Cluster.id:
225
- const powerSourceEntry = powerSourceData.get(endpointId) ?? {};
226
- if (attributeId === import_clusters.PowerSource.Cluster.attributes.featureMap.id) {
227
- powerSourceEntry.features = value;
228
- } else if (attributeId === import_clusters.PowerSource.Cluster.attributes.status.id) {
229
- powerSourceEntry.status = value;
230
- }
231
- powerSourceData.set(endpointId, powerSourceEntry);
232
- break;
233
- case import_clusters.ThreadNetworkDiagnostics.Cluster.id:
234
- if (attributeId === import_clusters.ThreadNetworkDiagnostics.Cluster.attributes.routingRole.id) {
235
- if (value === import_clusters.ThreadNetworkDiagnostics.RoutingRole.SleepyEndDevice) {
236
- deviceData.isThreadSleepyEndDevice = true;
237
- }
210
+ }
211
+ break;
212
+ case import_clusters.NetworkCommissioning.Cluster.id:
213
+ const networkEntry = networkData.get(endpointId) ?? {};
214
+ if (attributeId === import_clusters.NetworkCommissioning.Complete.attributes.featureMap.id) {
215
+ networkEntry.type = value;
216
+ } else if (attributeId === import_clusters.NetworkCommissioning.Complete.attributes.interfaceEnabled.id) {
217
+ networkEntry.enabled = value;
218
+ } else if (attributeId === import_clusters.NetworkCommissioning.Complete.attributes.networks.id) {
219
+ networkEntry.connected = value.some((network) => network.connected);
220
+ }
221
+ networkData.set(endpointId, networkEntry);
222
+ break;
223
+ case import_clusters.PowerSource.Cluster.id:
224
+ const powerSourceEntry = powerSourceData.get(endpointId) ?? {};
225
+ if (attributeId === import_clusters.PowerSource.Cluster.attributes.featureMap.id) {
226
+ powerSourceEntry.features = value;
227
+ } else if (attributeId === import_clusters.PowerSource.Cluster.attributes.status.id) {
228
+ powerSourceEntry.status = value;
229
+ }
230
+ powerSourceData.set(endpointId, powerSourceEntry);
231
+ break;
232
+ case import_clusters.ThreadNetworkDiagnostics.Cluster.id:
233
+ if (attributeId === import_clusters.ThreadNetworkDiagnostics.Cluster.attributes.routingRole.id) {
234
+ if (value === import_clusters.ThreadNetworkDiagnostics.RoutingRole.SleepyEndDevice) {
235
+ deviceData.isThreadSleepyEndDevice = true;
238
236
  }
239
- break;
240
- }
241
- }
242
- if (networkData.size === 0) {
243
- deviceData.ethernetConnected = true;
244
- } else {
245
- for (const { type, enabled, connected } of networkData.values()) {
246
- if (!type || !enabled || !connected) continue;
247
- if (type.ethernetNetworkInterface) {
248
- deviceData.ethernetConnected = true;
249
- } else if (type.wiFiNetworkInterface) {
250
- deviceData.wifiConnected = true;
251
- } else if (type.threadNetworkInterface) {
252
- deviceData.threadConnected = true;
253
237
  }
254
- }
238
+ break;
255
239
  }
256
- for (const { features, status } of powerSourceData.values()) {
257
- if (features?.battery && status === import_clusters.PowerSource.PowerSourceStatus.Active) {
258
- deviceData.isBatteryPowered = true;
240
+ }
241
+ if (networkData.size === 0) {
242
+ deviceData.ethernetConnected = true;
243
+ } else {
244
+ for (const { type, enabled, connected } of networkData.values()) {
245
+ if (!type || !enabled || !connected) continue;
246
+ if (type.ethernetNetworkInterface) {
247
+ deviceData.ethernetConnected = true;
248
+ } else if (type.wiFiNetworkInterface) {
249
+ deviceData.wifiConnected = true;
250
+ } else if (type.threadNetworkInterface) {
251
+ deviceData.threadConnected = true;
259
252
  }
260
253
  }
261
- this.#basicInformation = basicInformationData;
262
- this.#deviceMeta = deviceData;
263
- } catch (error) {
264
- logger.info(`Error while enhancing basic information for node ${this.nodeId}: ${error}`);
265
254
  }
255
+ for (const { features, status } of powerSourceData.values()) {
256
+ if (features?.battery && status === import_clusters.PowerSource.PowerSourceStatus.Active) {
257
+ deviceData.isBatteryPowered = true;
258
+ }
259
+ }
260
+ this.#basicInformation = basicInformationData;
261
+ this.#deviceMeta = deviceData;
266
262
  }
267
263
  determineSubscriptionParameters(options) {
268
264
  let {
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "version": 3,
3
3
  "sources": ["../../../src/device/DeviceInformation.ts"],
4
- "mappings": "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",
4
+ "mappings": "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",
5
5
  "names": []
6
6
  }
@@ -1 +1 @@
1
- {"version":3,"file":"DeviceInformation.d.ts","sourceRoot":"","sources":["../../../src/device/DeviceInformation.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAUH,OAAO,EAAU,qBAAqB,EAAE,MAAM,iBAAiB,CAAC;AAChE,OAAO,EAAE,iBAAiB,EAA4B,MAAM,kBAAkB,CAAC;AAC/E,OAAO,EAAoC,MAAM,EAA4C,MAAM,eAAe,CAAC;AACnH,OAAO,EAAE,QAAQ,EAAE,MAAM,eAAe,CAAC;AAIzC,MAAM,MAAM,qBAAqB,GAAG;IAChC,eAAe,EAAE,OAAO,CAAC;IACzB,aAAa,EAAE,OAAO,CAAC;IACvB,iBAAiB,EAAE,OAAO,CAAC;IAC3B,sBAAsB,EAAE,MAAM,EAAE,CAAC;IACjC,gBAAgB,EAAE,OAAO,CAAC;IAC1B,yBAAyB,EAAE,OAAO,CAAC;IACnC,uBAAuB,EAAE,OAAO,CAAC;IACjC,YAAY,EAAE,MAAM,CAAC;CACxB,CAAC;AAEF,MAAM,MAAM,sBAAsB,GAAG,MAAM,CAAC,MAAM,EAAE,qBAAqB,CAAC,CAAC;AAE3E,MAAM,MAAM,qBAAqB,GAAG;IAChC,gBAAgB,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,qBAAqB,CAAC,CAAC;IACzD,UAAU,CAAC,EAAE,qBAAqB,CAAC;CACtC,CAAC;AAEF,eAAO,MAAM,oBAAoB,IAAI,CAAC;AAWtC,qBAAa,iBAAiB;;IAKtB,QAAQ,CAAC,MAAM,EAAE,MAAM;gBAAd,MAAM,EAAE,MAAM,EACvB,IAAI,EAAE,qBAAqB;IAM/B,IAAI,IAAI,sCAEP;IAED,IAAI,gBAAgB,uCAEnB;IAED,IAAI,KAAK,YAMR;IAEK,6BAA6B,CAAC,YAAY,EAAE,QAAQ;IA6FpD,8BAA8B,CAAC,iBAAiB,EAAE,iBAAiB;IAyIzE,+BAA+B,CAAC,OAAO,EAAE;QACrC,gCAAgC,CAAC,EAAE,MAAM,CAAC;QAC1C,kCAAkC,CAAC,EAAE,MAAM,CAAC;KAC/C;;;;IAwCD,aAAa,IAAI,qBAAqB;CAMzC"}
1
+ {"version":3,"file":"DeviceInformation.d.ts","sourceRoot":"","sources":["../../../src/device/DeviceInformation.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAUH,OAAO,EAAU,qBAAqB,EAAE,MAAM,iBAAiB,CAAC;AAChE,OAAO,EAAE,iBAAiB,EAA4B,MAAM,kBAAkB,CAAC;AAC/E,OAAO,EAAoC,MAAM,EAA4C,MAAM,eAAe,CAAC;AACnH,OAAO,EAAE,QAAQ,EAAE,MAAM,eAAe,CAAC;AAIzC,MAAM,MAAM,qBAAqB,GAAG;IAChC,eAAe,EAAE,OAAO,CAAC;IACzB,aAAa,EAAE,OAAO,CAAC;IACvB,iBAAiB,EAAE,OAAO,CAAC;IAC3B,sBAAsB,EAAE,MAAM,EAAE,CAAC;IACjC,gBAAgB,EAAE,OAAO,CAAC;IAC1B,yBAAyB,EAAE,OAAO,CAAC;IACnC,uBAAuB,EAAE,OAAO,CAAC;IACjC,YAAY,EAAE,MAAM,CAAC;CACxB,CAAC;AAEF,MAAM,MAAM,sBAAsB,GAAG,MAAM,CAAC,MAAM,EAAE,qBAAqB,CAAC,CAAC;AAE3E,MAAM,MAAM,qBAAqB,GAAG;IAChC,gBAAgB,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,qBAAqB,CAAC,CAAC;IACzD,UAAU,CAAC,EAAE,qBAAqB,CAAC;CACtC,CAAC;AAEF,eAAO,MAAM,oBAAoB,IAAI,CAAC;AAWtC,qBAAa,iBAAiB;;IAKtB,QAAQ,CAAC,MAAM,EAAE,MAAM;gBAAd,MAAM,EAAE,MAAM,EACvB,IAAI,EAAE,qBAAqB;IAM/B,IAAI,IAAI,sCAEP;IAED,IAAI,gBAAgB,uCAEnB;IAED,IAAI,KAAK,YAMR;IAEK,6BAA6B,CAAC,YAAY,EAAE,QAAQ;IA6FpD,8BAA8B,CAAC,iBAAiB,EAAE,iBAAiB;IAqIzE,+BAA+B,CAAC,OAAO,EAAE;QACrC,gCAAgC,CAAC,EAAE,MAAM,CAAC;QAC1C,kCAAkC,CAAC,EAAE,MAAM,CAAC;KAC/C;;;;IAwCD,aAAa,IAAI,qBAAqB;CAMzC"}
@@ -126,126 +126,122 @@ class DeviceInformation {
126
126
  }
127
127
  }
128
128
  async enhanceDeviceDetailsFromRemote(interactionClient) {
129
- try {
130
- const readData = await interactionClient.getMultipleAttributes({
131
- attributes: [
132
- { endpointId: EndpointNumber(0), clusterId: BasicInformation.Cluster.id },
133
- {
134
- endpointId: EndpointNumber(0),
135
- clusterId: Descriptor.Cluster.id,
136
- attributeId: Descriptor.Cluster.attributes.serverList.id
137
- },
138
- {
139
- clusterId: NetworkCommissioning.Cluster.id,
140
- attributeId: NetworkCommissioning.Complete.attributes.featureMap.id
141
- },
142
- {
143
- clusterId: NetworkCommissioning.Cluster.id,
144
- attributeId: NetworkCommissioning.Complete.attributes.networks.id
145
- },
146
- {
147
- clusterId: NetworkCommissioning.Cluster.id,
148
- attributeId: NetworkCommissioning.Complete.attributes.interfaceEnabled.id
149
- },
150
- {
151
- clusterId: PowerSource.Cluster.id,
152
- attributeId: PowerSource.Cluster.attributes.featureMap.id
153
- },
154
- {
155
- clusterId: PowerSource.Cluster.id,
156
- attributeId: PowerSource.Cluster.attributes.status.id
157
- },
158
- {
159
- endpointId: EndpointNumber(0),
160
- clusterId: ThreadNetworkDiagnostics.Cluster.id,
161
- attributeId: ThreadNetworkDiagnostics.Cluster.attributes.routingRole.id
129
+ const readData = await interactionClient.getMultipleAttributes({
130
+ attributes: [
131
+ { endpointId: EndpointNumber(0), clusterId: BasicInformation.Cluster.id },
132
+ {
133
+ endpointId: EndpointNumber(0),
134
+ clusterId: Descriptor.Cluster.id,
135
+ attributeId: Descriptor.Cluster.attributes.serverList.id
136
+ },
137
+ {
138
+ clusterId: NetworkCommissioning.Cluster.id,
139
+ attributeId: NetworkCommissioning.Complete.attributes.featureMap.id
140
+ },
141
+ {
142
+ clusterId: NetworkCommissioning.Cluster.id,
143
+ attributeId: NetworkCommissioning.Complete.attributes.networks.id
144
+ },
145
+ {
146
+ clusterId: NetworkCommissioning.Cluster.id,
147
+ attributeId: NetworkCommissioning.Complete.attributes.interfaceEnabled.id
148
+ },
149
+ {
150
+ clusterId: PowerSource.Cluster.id,
151
+ attributeId: PowerSource.Cluster.attributes.featureMap.id
152
+ },
153
+ {
154
+ clusterId: PowerSource.Cluster.id,
155
+ attributeId: PowerSource.Cluster.attributes.status.id
156
+ },
157
+ {
158
+ endpointId: EndpointNumber(0),
159
+ clusterId: ThreadNetworkDiagnostics.Cluster.id,
160
+ attributeId: ThreadNetworkDiagnostics.Cluster.attributes.routingRole.id
161
+ }
162
+ ]
163
+ });
164
+ const basicInformationData = {};
165
+ const deviceData = {
166
+ ethernetConnected: false,
167
+ wifiConnected: false,
168
+ threadConnected: false,
169
+ rootEndpointServerList: [],
170
+ isBatteryPowered: false,
171
+ isIntermittentlyConnected: false,
172
+ isThreadSleepyEndDevice: false,
173
+ dataRevision: DEVICE_DATA_REVISION
174
+ };
175
+ const networkData = /* @__PURE__ */ new Map();
176
+ const powerSourceData = /* @__PURE__ */ new Map();
177
+ for (const {
178
+ path: { endpointId, clusterId, attributeId, attributeName },
179
+ value
180
+ } of readData) {
181
+ switch (clusterId) {
182
+ case BasicInformation.Cluster.id:
183
+ if (!GlobalAttributeKeys.includes(attributeName)) {
184
+ basicInformationData[attributeName] = value;
162
185
  }
163
- ]
164
- });
165
- const basicInformationData = {};
166
- const deviceData = {
167
- ethernetConnected: false,
168
- wifiConnected: false,
169
- threadConnected: false,
170
- rootEndpointServerList: [],
171
- isBatteryPowered: false,
172
- isIntermittentlyConnected: false,
173
- isThreadSleepyEndDevice: false,
174
- dataRevision: DEVICE_DATA_REVISION
175
- };
176
- const networkData = /* @__PURE__ */ new Map();
177
- const powerSourceData = /* @__PURE__ */ new Map();
178
- for (const {
179
- path: { endpointId, clusterId, attributeId, attributeName },
180
- value
181
- } of readData) {
182
- switch (clusterId) {
183
- case BasicInformation.Cluster.id:
184
- if (!GlobalAttributeKeys.includes(attributeName)) {
185
- basicInformationData[attributeName] = value;
186
- }
187
- break;
188
- case Descriptor.Cluster.id:
189
- if (attributeId === Descriptor.Cluster.attributes.serverList.id) {
190
- deviceData.rootEndpointServerList = value;
191
- if (value.includes(IcdManagement.Cluster.id)) {
192
- deviceData.isIntermittentlyConnected = true;
193
- }
194
- }
195
- break;
196
- case NetworkCommissioning.Cluster.id:
197
- const networkEntry = networkData.get(endpointId) ?? {};
198
- if (attributeId === NetworkCommissioning.Complete.attributes.featureMap.id) {
199
- networkEntry.type = value;
200
- } else if (attributeId === NetworkCommissioning.Complete.attributes.interfaceEnabled.id) {
201
- networkEntry.enabled = value;
202
- } else if (attributeId === NetworkCommissioning.Complete.attributes.networks.id) {
203
- networkEntry.connected = value.some((network) => network.connected);
186
+ break;
187
+ case Descriptor.Cluster.id:
188
+ if (attributeId === Descriptor.Cluster.attributes.serverList.id) {
189
+ deviceData.rootEndpointServerList = value;
190
+ if (value.includes(IcdManagement.Cluster.id)) {
191
+ deviceData.isIntermittentlyConnected = true;
204
192
  }
205
- networkData.set(endpointId, networkEntry);
206
- break;
207
- case PowerSource.Cluster.id:
208
- const powerSourceEntry = powerSourceData.get(endpointId) ?? {};
209
- if (attributeId === PowerSource.Cluster.attributes.featureMap.id) {
210
- powerSourceEntry.features = value;
211
- } else if (attributeId === PowerSource.Cluster.attributes.status.id) {
212
- powerSourceEntry.status = value;
213
- }
214
- powerSourceData.set(endpointId, powerSourceEntry);
215
- break;
216
- case ThreadNetworkDiagnostics.Cluster.id:
217
- if (attributeId === ThreadNetworkDiagnostics.Cluster.attributes.routingRole.id) {
218
- if (value === ThreadNetworkDiagnostics.RoutingRole.SleepyEndDevice) {
219
- deviceData.isThreadSleepyEndDevice = true;
220
- }
193
+ }
194
+ break;
195
+ case NetworkCommissioning.Cluster.id:
196
+ const networkEntry = networkData.get(endpointId) ?? {};
197
+ if (attributeId === NetworkCommissioning.Complete.attributes.featureMap.id) {
198
+ networkEntry.type = value;
199
+ } else if (attributeId === NetworkCommissioning.Complete.attributes.interfaceEnabled.id) {
200
+ networkEntry.enabled = value;
201
+ } else if (attributeId === NetworkCommissioning.Complete.attributes.networks.id) {
202
+ networkEntry.connected = value.some((network) => network.connected);
203
+ }
204
+ networkData.set(endpointId, networkEntry);
205
+ break;
206
+ case PowerSource.Cluster.id:
207
+ const powerSourceEntry = powerSourceData.get(endpointId) ?? {};
208
+ if (attributeId === PowerSource.Cluster.attributes.featureMap.id) {
209
+ powerSourceEntry.features = value;
210
+ } else if (attributeId === PowerSource.Cluster.attributes.status.id) {
211
+ powerSourceEntry.status = value;
212
+ }
213
+ powerSourceData.set(endpointId, powerSourceEntry);
214
+ break;
215
+ case ThreadNetworkDiagnostics.Cluster.id:
216
+ if (attributeId === ThreadNetworkDiagnostics.Cluster.attributes.routingRole.id) {
217
+ if (value === ThreadNetworkDiagnostics.RoutingRole.SleepyEndDevice) {
218
+ deviceData.isThreadSleepyEndDevice = true;
221
219
  }
222
- break;
223
- }
224
- }
225
- if (networkData.size === 0) {
226
- deviceData.ethernetConnected = true;
227
- } else {
228
- for (const { type, enabled, connected } of networkData.values()) {
229
- if (!type || !enabled || !connected) continue;
230
- if (type.ethernetNetworkInterface) {
231
- deviceData.ethernetConnected = true;
232
- } else if (type.wiFiNetworkInterface) {
233
- deviceData.wifiConnected = true;
234
- } else if (type.threadNetworkInterface) {
235
- deviceData.threadConnected = true;
236
220
  }
237
- }
221
+ break;
238
222
  }
239
- for (const { features, status } of powerSourceData.values()) {
240
- if (features?.battery && status === PowerSource.PowerSourceStatus.Active) {
241
- deviceData.isBatteryPowered = true;
223
+ }
224
+ if (networkData.size === 0) {
225
+ deviceData.ethernetConnected = true;
226
+ } else {
227
+ for (const { type, enabled, connected } of networkData.values()) {
228
+ if (!type || !enabled || !connected) continue;
229
+ if (type.ethernetNetworkInterface) {
230
+ deviceData.ethernetConnected = true;
231
+ } else if (type.wiFiNetworkInterface) {
232
+ deviceData.wifiConnected = true;
233
+ } else if (type.threadNetworkInterface) {
234
+ deviceData.threadConnected = true;
242
235
  }
243
236
  }
244
- this.#basicInformation = basicInformationData;
245
- this.#deviceMeta = deviceData;
246
- } catch (error) {
247
- logger.info(`Error while enhancing basic information for node ${this.nodeId}: ${error}`);
248
237
  }
238
+ for (const { features, status } of powerSourceData.values()) {
239
+ if (features?.battery && status === PowerSource.PowerSourceStatus.Active) {
240
+ deviceData.isBatteryPowered = true;
241
+ }
242
+ }
243
+ this.#basicInformation = basicInformationData;
244
+ this.#deviceMeta = deviceData;
249
245
  }
250
246
  determineSubscriptionParameters(options) {
251
247
  let {
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "version": 3,
3
3
  "sources": ["../../../src/device/DeviceInformation.ts"],
4
- "mappings": "AAAA;AAAA;AAAA;AAAA;AAAA;AAMA;AAAA,EACI;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,OACG;AACP,SAAS,cAAqC;AAC9C,SAA4B,gCAAgC;AAC5D,SAAS,gBAAgB,wBAA0E;AAGnG,MAAM,SAAS,OAAO,IAAI,mBAAmB;AAoBtC,MAAM,uBAAuB;AAEpC,MAAM,uCAAuC;AAC7C,MAAM,mCAAmC;AACzC,MAAM,sCAAsC;AAC5C,MAAM,wCAAwC;AAC9C,MAAM,+CAA+C;AACrD,MAAM,iDAAiD;AAEvD,MAAM,sBAAsB,OAAO,KAAK,iBAAiB,CAAC,CAAC,CAAC;AAErD,MAAM,kBAAkB;AAAA,EAI3B,YACa,QACT,MACF;AAFW;AAGT,SAAK,oBAAoB,KAAK;AAC9B,SAAK,cAAc,KAAK;AAAA,EAC5B;AAAA,EATA;AAAA,EACA;AAAA,EAUA,IAAI,OAAO;AACP,WAAO,KAAK;AAAA,EAChB;AAAA,EAEA,IAAI,mBAAmB;AACnB,WAAO,KAAK;AAAA,EAChB;AAAA,EAEA,IAAI,QAAQ;AACR,WACI,KAAK,sBAAsB,UAC3B,KAAK,gBAAgB,UACrB,KAAK,aAAa,iBAAiB;AAAA,EAE3C;AAAA,EAEA,MAAM,8BAA8B,cAAwB;AACxD,UAAM,uBAAuB,CAAC;AAC9B,UAAM,aAAoC;AAAA,MACtC,mBAAmB;AAAA,MACnB,eAAe;AAAA,MACf,iBAAiB;AAAA,MACjB,wBAAwB,CAAC;AAAA,MACzB,kBAAkB;AAAA,MAClB,2BAA2B;AAAA,MAC3B,yBAAyB;AAAA,MACzB,cAAc;AAAA,IAClB;AAEA,UAAM,yBAAyB,aAAa,iBAAiB,iBAAiB,OAAO;AACrF,QAAI,2BAA2B,QAAW;AACtC,iBAAW,iBAAiB,OAAO,KAAK,uBAAuB,UAAU,GAAG;AACxE,YAAI,oBAAoB,SAAS,aAAa,GAAG;AAC7C;AAAA,QACJ;AACA,cAAM,YAAa,uBAAuB,WAAmB,aAAa;AAC1E,YAAI,qBAAqB,0BAA0B;AAC/C,cAAI;AACA,iCAAqB,aAAa,IAAI,MAAM,UAAU,IAAI;AAAA,UAC9D,SAAS,OAAO;AACZ,mBAAO,KAAK,iCAAiC,aAAa,aAAa,KAAK,MAAM,KAAK,KAAK,EAAE;AAAA,UAClG;AAAA,QACJ;AAAA,MACJ;AAAA,IACJ,OAAO;AACH,aAAO,KAAK,+CAA+C,KAAK,MAAM,EAAE;AAAA,IAC5E;AAEA,UAAM,mBAAmB,aAAa,iBAAiB,WAAW,OAAO;AACzE,QAAI,qBAAqB,QAAW;AAChC,YAAM,aAAa,MAAM,iBAAiB,uBAAuB;AACjE,iBAAW,yBAAyB;AACpC,UAAI,WAAW,SAAS,cAAc,QAAQ,EAAE,GAAG;AAC/C,mBAAW,4BAA4B;AAAA,MAC3C;AAAA,IACJ,OAAO;AACH,aAAO,KAAK,wCAAwC,KAAK,MAAM,EAAE;AAAA,IACrE;AAEA,UAAM,gCAAgC,aAAa,iBAAiB,yBAAyB,OAAO;AACpG,QAAI,kCAAkC,QAAW;AAC7C,YAAM,cAAc,MAAM,8BAA8B,wBAAwB;AAChF,UAAI,gBAAgB,yBAAyB,YAAY,iBAAiB;AACtE,mBAAW,0BAA0B;AAAA,MACzC;AAAA,IACJ;AAEA,UAAM,KAAK,uBAAuB,cAAc,UAAU;AAE1D,SAAK,oBAAoB;AACzB,SAAK,cAAc;AAAA,EACvB;AAAA,EAEA,MAAM,uBAAuB,UAAoB,YAAmC;AAChF,UAAM,iBAAiB,SAAS,iBAAiB,qBAAqB,QAAQ;AAC9E,QAAI,mBAAmB,QAAW;AAC9B,UAAI,MAAM,eAAe,6BAA6B,GAAG;AACrD,cAAM,WAAW,MAAM,eAAe,qBAAqB;AAC3D,YAAI,UAAU;AACV,cAAI,SAAS,KAAK,aAAW,QAAQ,SAAS,GAAG;AAC7C,kBAAM,WAAW,MAAM,eAAe,uBAAuB;AAC7D,gBAAI,UAAU;AACV,kBAAI,SAAS,0BAA0B;AACnC,2BAAW,oBAAoB;AAAA,cACnC,WAAW,SAAS,sBAAsB;AACtC,2BAAW,gBAAgB;AAAA,cAC/B,WAAW,SAAS,wBAAwB;AACxC,2BAAW,kBAAkB;AAAA,cACjC;AAAA,YACJ;AAAA,UACJ;AAAA,QACJ;AAAA,MACJ;AAAA,IACJ;AAEA,UAAM,qBAAqB,SAAS,iBAAiB,YAAY,OAAO;AACxE,QAAI,uBAAuB,QAAW;AAClC,UAAK,MAAM,mBAAmB,mBAAmB,MAAO,YAAY,kBAAkB,QAAQ;AAC1F,cAAM,WAAW,MAAM,mBAAmB,uBAAuB;AACjE,YAAI,UAAU,SAAS;AACnB,qBAAW,mBAAmB;AAAA,QAClC;AAAA,MACJ;AAAA,IACJ;AACA,eAAW,iBAAiB,SAAS,kBAAkB,GAAG;AACtD,YAAM,KAAK,uBAAuB,eAAe,UAAU;AAAA,IAC/D;AAAA,EACJ;AAAA,EAEA,MAAM,+BAA+B,mBAAsC;AACvE,QAAI;AACA,YAAM,WAAW,MAAM,kBAAkB,sBAAsB;AAAA,QAC3D,YAAY;AAAA,UACR,EAAE,YAAY,eAAe,CAAC,GAAG,WAAW,iBAAiB,QAAQ,GAAG;AAAA,UACxE;AAAA,YACI,YAAY,eAAe,CAAC;AAAA,YAC5B,WAAW,WAAW,QAAQ;AAAA,YAC9B,aAAa,WAAW,QAAQ,WAAW,WAAW;AAAA,UAC1D;AAAA,UACA;AAAA,YACI,WAAW,qBAAqB,QAAQ;AAAA,YACxC,aAAa,qBAAqB,SAAS,WAAW,WAAW;AAAA,UACrE;AAAA,UACA;AAAA,YACI,WAAW,qBAAqB,QAAQ;AAAA,YACxC,aAAa,qBAAqB,SAAS,WAAW,SAAS;AAAA,UACnE;AAAA,UACA;AAAA,YACI,WAAW,qBAAqB,QAAQ;AAAA,YACxC,aAAa,qBAAqB,SAAS,WAAW,iBAAiB;AAAA,UAC3E;AAAA,UACA;AAAA,YACI,WAAW,YAAY,QAAQ;AAAA,YAC/B,aAAa,YAAY,QAAQ,WAAW,WAAW;AAAA,UAC3D;AAAA,UACA;AAAA,YACI,WAAW,YAAY,QAAQ;AAAA,YAC/B,aAAa,YAAY,QAAQ,WAAW,OAAO;AAAA,UACvD;AAAA,UACA;AAAA,YACI,YAAY,eAAe,CAAC;AAAA,YAC5B,WAAW,yBAAyB,QAAQ;AAAA,YAC5C,aAAa,yBAAyB,QAAQ,WAAW,YAAY;AAAA,UACzE;AAAA,QACJ;AAAA,MACJ,CAAC;AACD,YAAM,uBAAuB,CAAC;AAC9B,YAAM,aAAoC;AAAA,QACtC,mBAAmB;AAAA,QACnB,eAAe;AAAA,QACf,iBAAiB;AAAA,QACjB,wBAAwB,CAAC;AAAA,QACzB,kBAAkB;AAAA,QAClB,2BAA2B;AAAA,QAC3B,yBAAyB;AAAA,QACzB,cAAc;AAAA,MAClB;AACA,YAAM,cAAc,oBAAI,IAOtB;AACF,YAAM,kBAAkB,oBAAI,IAG1B;AACF,iBAAW;AAAA,QACP,MAAM,EAAE,YAAY,WAAW,aAAa,cAAc;AAAA,QAC1D;AAAA,MACJ,KAAK,UAAU;AACX,gBAAQ,WAAW;AAAA,UACf,KAAK,iBAAiB,QAAQ;AAC1B,gBAAI,CAAC,oBAAoB,SAAS,aAAa,GAAG;AAC9C,mCAAqB,aAAa,IAAI;AAAA,YAC1C;AACA;AAAA,UACJ,KAAK,WAAW,QAAQ;AACpB,gBAAI,gBAAgB,WAAW,QAAQ,WAAW,WAAW,IAAI;AAC7D,yBAAW,yBAAyB;AACpC,kBAAI,MAAM,SAAS,cAAc,QAAQ,EAAE,GAAG;AAC1C,2BAAW,4BAA4B;AAAA,cAC3C;AAAA,YACJ;AACA;AAAA,UACJ,KAAK,qBAAqB,QAAQ;AAC9B,kBAAM,eAAe,YAAY,IAAI,UAAU,KAAK,CAAC;AACrD,gBAAI,gBAAgB,qBAAqB,SAAS,WAAW,WAAW,IAAI;AACxE,2BAAa,OAAO;AAAA,YACxB,WAAW,gBAAgB,qBAAqB,SAAS,WAAW,iBAAiB,IAAI;AACrF,2BAAa,UAAU;AAAA,YAC3B,WAAW,gBAAgB,qBAAqB,SAAS,WAAW,SAAS,IAAI;AAC7E,2BAAa,YACT,MACF,KAAK,aAAW,QAAQ,SAAS;AAAA,YACvC;AACA,wBAAY,IAAI,YAAY,YAAY;AACxC;AAAA,UACJ,KAAK,YAAY,QAAQ;AACrB,kBAAM,mBAAmB,gBAAgB,IAAI,UAAU,KAAK,CAAC;AAC7D,gBAAI,gBAAgB,YAAY,QAAQ,WAAW,WAAW,IAAI;AAC9D,+BAAiB,WAAW;AAAA,YAChC,WAAW,gBAAgB,YAAY,QAAQ,WAAW,OAAO,IAAI;AACjE,+BAAiB,SAAS;AAAA,YAC9B;AACA,4BAAgB,IAAI,YAAY,gBAAgB;AAChD;AAAA,UACJ,KAAK,yBAAyB,QAAQ;AAClC,gBAAI,gBAAgB,yBAAyB,QAAQ,WAAW,YAAY,IAAI;AAC5E,kBAAI,UAAU,yBAAyB,YAAY,iBAAiB;AAChE,2BAAW,0BAA0B;AAAA,cACzC;AAAA,YACJ;AACA;AAAA,QACR;AAAA,MACJ;AAEA,UAAI,YAAY,SAAS,GAAG;AAExB,mBAAW,oBAAoB;AAAA,MACnC,OAAO;AACH,mBAAW,EAAE,MAAM,SAAS,UAAU,KAAK,YAAY,OAAO,GAAG;AAC7D,cAAI,CAAC,QAAQ,CAAC,WAAW,CAAC,UAAW;AACrC,cAAI,KAAK,0BAA0B;AAC/B,uBAAW,oBAAoB;AAAA,UACnC,WAAW,KAAK,sBAAsB;AAClC,uBAAW,gBAAgB;AAAA,UAC/B,WAAW,KAAK,wBAAwB;AACpC,uBAAW,kBAAkB;AAAA,UACjC;AAAA,QACJ;AAAA,MACJ;AACA,iBAAW,EAAE,UAAU,OAAO,KAAK,gBAAgB,OAAO,GAAG;AACzD,YAAI,UAAU,WAAW,WAAW,YAAY,kBAAkB,QAAQ;AACtE,qBAAW,mBAAmB;AAAA,QAClC;AAAA,MACJ;AACA,WAAK,oBAAoB;AACzB,WAAK,cAAc;AAAA,IACvB,SAAS,OAAO;AACZ,aAAO,KAAK,oDAAoD,KAAK,MAAM,KAAK,KAAK,EAAE;AAAA,IAC3F;AAAA,EACJ;AAAA,EAEA,gCAAgC,SAG7B;AACC,QAAI;AAAA,MACA,kCAAkC;AAAA,MAClC,oCAAoC;AAAA,IACxC,IAAI;AAEJ,UAAM,EAAE,kBAAkB,2BAA2B,iBAAiB,wBAAwB,IAC1F,KAAK,eAAe,CAAC;AAEzB,QAAI,2BAA2B;AAC3B,UAAI,4BAA4B,UAAa,4BAA4B,kCAAkC;AACvG,eAAO;AAAA,UACH,QAAQ,KAAK,MAAM;AAAA,QACvB;AACA,kCAA0B;AAAA,MAC9B;AAAA,IACJ;AAEA,UAAM,iBAAiB,mBACjB,iDACA,0BACE,+CACA,kBACE,wCACA;AACV,QAAI,8BAA8B,QAAW;AACzC,kCAA4B;AAAA,IAChC;AACA,QAAI,4BAA4B,gBAAgB;AAC5C,aAAO;AAAA,QACH,QAAQ,KAAK,MAAM,uDAAuD,cAAc,gBAAgB,yBAAyB;AAAA,MACrI;AAAA,IACJ;AAEA,WAAO;AAAA,MACH,yBAAyB,2BAA2B;AAAA,MACpD;AAAA,IACJ;AAAA,EACJ;AAAA,EAEA,gBAAuC;AACnC,WAAO;AAAA,MACH,kBAAkB,KAAK;AAAA,MACvB,YAAY,KAAK;AAAA,IACrB;AAAA,EACJ;AACJ;",
4
+ "mappings": "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",
5
5
  "names": []
6
6
  }
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@project-chip/matter.js",
3
- "version": "0.11.0-alpha.0-20241026-35e309e35",
3
+ "version": "0.11.0-alpha.0-20241027-e40e1664f",
4
4
  "description": "Matter protocol in pure js",
5
5
  "keywords": [
6
6
  "iot",
@@ -45,15 +45,15 @@
45
45
  "#*": "./src/*"
46
46
  },
47
47
  "dependencies": {
48
- "@matter/general": "0.11.0-alpha.0-20241026-35e309e35",
49
- "@matter/model": "0.11.0-alpha.0-20241026-35e309e35",
50
- "@matter/node": "0.11.0-alpha.0-20241026-35e309e35",
51
- "@matter/protocol": "0.11.0-alpha.0-20241026-35e309e35",
52
- "@matter/types": "0.11.0-alpha.0-20241026-35e309e35",
48
+ "@matter/general": "0.11.0-alpha.0-20241027-e40e1664f",
49
+ "@matter/model": "0.11.0-alpha.0-20241027-e40e1664f",
50
+ "@matter/node": "0.11.0-alpha.0-20241027-e40e1664f",
51
+ "@matter/protocol": "0.11.0-alpha.0-20241027-e40e1664f",
52
+ "@matter/types": "0.11.0-alpha.0-20241027-e40e1664f",
53
53
  "@noble/curves": "^1.5.0"
54
54
  },
55
55
  "devDependencies": {
56
- "@matter/tools": "0.11.0-alpha.0-20241026-35e309e35"
56
+ "@matter/tools": "0.11.0-alpha.0-20241027-e40e1664f"
57
57
  },
58
58
  "files": [
59
59
  "dist/**/*",
@@ -170,140 +170,136 @@ export class DeviceInformation {
170
170
  }
171
171
 
172
172
  async enhanceDeviceDetailsFromRemote(interactionClient: InteractionClient) {
173
- try {
174
- const readData = await interactionClient.getMultipleAttributes({
175
- attributes: [
176
- { endpointId: EndpointNumber(0), clusterId: BasicInformation.Cluster.id },
177
- {
178
- endpointId: EndpointNumber(0),
179
- clusterId: Descriptor.Cluster.id,
180
- attributeId: Descriptor.Cluster.attributes.serverList.id,
181
- },
182
- {
183
- clusterId: NetworkCommissioning.Cluster.id,
184
- attributeId: NetworkCommissioning.Complete.attributes.featureMap.id,
185
- },
186
- {
187
- clusterId: NetworkCommissioning.Cluster.id,
188
- attributeId: NetworkCommissioning.Complete.attributes.networks.id,
189
- },
190
- {
191
- clusterId: NetworkCommissioning.Cluster.id,
192
- attributeId: NetworkCommissioning.Complete.attributes.interfaceEnabled.id,
193
- },
194
- {
195
- clusterId: PowerSource.Cluster.id,
196
- attributeId: PowerSource.Cluster.attributes.featureMap.id,
197
- },
198
- {
199
- clusterId: PowerSource.Cluster.id,
200
- attributeId: PowerSource.Cluster.attributes.status.id,
201
- },
202
- {
203
- endpointId: EndpointNumber(0),
204
- clusterId: ThreadNetworkDiagnostics.Cluster.id,
205
- attributeId: ThreadNetworkDiagnostics.Cluster.attributes.routingRole.id,
206
- },
207
- ],
208
- });
209
- const basicInformationData = {} as Record<string, SupportedStorageTypes>;
210
- const deviceData: DeviceMetaInformation = {
211
- ethernetConnected: false,
212
- wifiConnected: false,
213
- threadConnected: false,
214
- rootEndpointServerList: [] as number[],
215
- isBatteryPowered: false,
216
- isIntermittentlyConnected: false,
217
- isThreadSleepyEndDevice: false,
218
- dataRevision: DEVICE_DATA_REVISION,
219
- };
220
- const networkData = new Map<
221
- EndpointNumber,
173
+ const readData = await interactionClient.getMultipleAttributes({
174
+ attributes: [
175
+ { endpointId: EndpointNumber(0), clusterId: BasicInformation.Cluster.id },
222
176
  {
223
- type?: TypeFromPartialBitSchema<typeof NetworkCommissioning.Complete.features>;
224
- enabled?: boolean;
225
- connected?: boolean;
226
- }
227
- >();
228
- const powerSourceData = new Map<
229
- EndpointNumber,
230
- { features?: TypeFromPartialBitSchema<typeof PowerSource.Complete.features>; status?: number }
231
- >();
232
- for (const {
233
- path: { endpointId, clusterId, attributeId, attributeName },
234
- value,
235
- } of readData) {
236
- switch (clusterId) {
237
- case BasicInformation.Cluster.id:
238
- if (!GlobalAttributeKeys.includes(attributeName)) {
239
- basicInformationData[attributeName] = value;
240
- }
241
- break;
242
- case Descriptor.Cluster.id:
243
- if (attributeId === Descriptor.Cluster.attributes.serverList.id) {
244
- deviceData.rootEndpointServerList = value;
245
- if (value.includes(IcdManagement.Cluster.id)) {
246
- deviceData.isIntermittentlyConnected = true;
247
- }
248
- }
249
- break;
250
- case NetworkCommissioning.Cluster.id:
251
- const networkEntry = networkData.get(endpointId) ?? {};
252
- if (attributeId === NetworkCommissioning.Complete.attributes.featureMap.id) {
253
- networkEntry.type = value;
254
- } else if (attributeId === NetworkCommissioning.Complete.attributes.interfaceEnabled.id) {
255
- networkEntry.enabled = value;
256
- } else if (attributeId === NetworkCommissioning.Complete.attributes.networks.id) {
257
- networkEntry.connected = (
258
- value as TypeFromSchema<typeof NetworkCommissioning.TlvNetworkInfo>[]
259
- ).some(network => network.connected);
260
- }
261
- networkData.set(endpointId, networkEntry);
262
- break;
263
- case PowerSource.Cluster.id:
264
- const powerSourceEntry = powerSourceData.get(endpointId) ?? {};
265
- if (attributeId === PowerSource.Cluster.attributes.featureMap.id) {
266
- powerSourceEntry.features = value;
267
- } else if (attributeId === PowerSource.Cluster.attributes.status.id) {
268
- powerSourceEntry.status = value;
177
+ endpointId: EndpointNumber(0),
178
+ clusterId: Descriptor.Cluster.id,
179
+ attributeId: Descriptor.Cluster.attributes.serverList.id,
180
+ },
181
+ {
182
+ clusterId: NetworkCommissioning.Cluster.id,
183
+ attributeId: NetworkCommissioning.Complete.attributes.featureMap.id,
184
+ },
185
+ {
186
+ clusterId: NetworkCommissioning.Cluster.id,
187
+ attributeId: NetworkCommissioning.Complete.attributes.networks.id,
188
+ },
189
+ {
190
+ clusterId: NetworkCommissioning.Cluster.id,
191
+ attributeId: NetworkCommissioning.Complete.attributes.interfaceEnabled.id,
192
+ },
193
+ {
194
+ clusterId: PowerSource.Cluster.id,
195
+ attributeId: PowerSource.Cluster.attributes.featureMap.id,
196
+ },
197
+ {
198
+ clusterId: PowerSource.Cluster.id,
199
+ attributeId: PowerSource.Cluster.attributes.status.id,
200
+ },
201
+ {
202
+ endpointId: EndpointNumber(0),
203
+ clusterId: ThreadNetworkDiagnostics.Cluster.id,
204
+ attributeId: ThreadNetworkDiagnostics.Cluster.attributes.routingRole.id,
205
+ },
206
+ ],
207
+ });
208
+ const basicInformationData = {} as Record<string, SupportedStorageTypes>;
209
+ const deviceData: DeviceMetaInformation = {
210
+ ethernetConnected: false,
211
+ wifiConnected: false,
212
+ threadConnected: false,
213
+ rootEndpointServerList: [] as number[],
214
+ isBatteryPowered: false,
215
+ isIntermittentlyConnected: false,
216
+ isThreadSleepyEndDevice: false,
217
+ dataRevision: DEVICE_DATA_REVISION,
218
+ };
219
+ const networkData = new Map<
220
+ EndpointNumber,
221
+ {
222
+ type?: TypeFromPartialBitSchema<typeof NetworkCommissioning.Complete.features>;
223
+ enabled?: boolean;
224
+ connected?: boolean;
225
+ }
226
+ >();
227
+ const powerSourceData = new Map<
228
+ EndpointNumber,
229
+ { features?: TypeFromPartialBitSchema<typeof PowerSource.Complete.features>; status?: number }
230
+ >();
231
+ for (const {
232
+ path: { endpointId, clusterId, attributeId, attributeName },
233
+ value,
234
+ } of readData) {
235
+ switch (clusterId) {
236
+ case BasicInformation.Cluster.id:
237
+ if (!GlobalAttributeKeys.includes(attributeName)) {
238
+ basicInformationData[attributeName] = value;
239
+ }
240
+ break;
241
+ case Descriptor.Cluster.id:
242
+ if (attributeId === Descriptor.Cluster.attributes.serverList.id) {
243
+ deviceData.rootEndpointServerList = value;
244
+ if (value.includes(IcdManagement.Cluster.id)) {
245
+ deviceData.isIntermittentlyConnected = true;
269
246
  }
270
- powerSourceData.set(endpointId, powerSourceEntry);
271
- break;
272
- case ThreadNetworkDiagnostics.Cluster.id:
273
- if (attributeId === ThreadNetworkDiagnostics.Cluster.attributes.routingRole.id) {
274
- if (value === ThreadNetworkDiagnostics.RoutingRole.SleepyEndDevice) {
275
- deviceData.isThreadSleepyEndDevice = true;
276
- }
247
+ }
248
+ break;
249
+ case NetworkCommissioning.Cluster.id:
250
+ const networkEntry = networkData.get(endpointId) ?? {};
251
+ if (attributeId === NetworkCommissioning.Complete.attributes.featureMap.id) {
252
+ networkEntry.type = value;
253
+ } else if (attributeId === NetworkCommissioning.Complete.attributes.interfaceEnabled.id) {
254
+ networkEntry.enabled = value;
255
+ } else if (attributeId === NetworkCommissioning.Complete.attributes.networks.id) {
256
+ networkEntry.connected = (
257
+ value as TypeFromSchema<typeof NetworkCommissioning.TlvNetworkInfo>[]
258
+ ).some(network => network.connected);
259
+ }
260
+ networkData.set(endpointId, networkEntry);
261
+ break;
262
+ case PowerSource.Cluster.id:
263
+ const powerSourceEntry = powerSourceData.get(endpointId) ?? {};
264
+ if (attributeId === PowerSource.Cluster.attributes.featureMap.id) {
265
+ powerSourceEntry.features = value;
266
+ } else if (attributeId === PowerSource.Cluster.attributes.status.id) {
267
+ powerSourceEntry.status = value;
268
+ }
269
+ powerSourceData.set(endpointId, powerSourceEntry);
270
+ break;
271
+ case ThreadNetworkDiagnostics.Cluster.id:
272
+ if (attributeId === ThreadNetworkDiagnostics.Cluster.attributes.routingRole.id) {
273
+ if (value === ThreadNetworkDiagnostics.RoutingRole.SleepyEndDevice) {
274
+ deviceData.isThreadSleepyEndDevice = true;
277
275
  }
278
- break;
279
- }
276
+ }
277
+ break;
280
278
  }
279
+ }
281
280
 
282
- if (networkData.size === 0) {
283
- // No Network cluster, so Custom Network, assume ethernet for now
284
- deviceData.ethernetConnected = true;
285
- } else {
286
- for (const { type, enabled, connected } of networkData.values()) {
287
- if (!type || !enabled || !connected) continue;
288
- if (type.ethernetNetworkInterface) {
289
- deviceData.ethernetConnected = true;
290
- } else if (type.wiFiNetworkInterface) {
291
- deviceData.wifiConnected = true;
292
- } else if (type.threadNetworkInterface) {
293
- deviceData.threadConnected = true;
294
- }
281
+ if (networkData.size === 0) {
282
+ // No Network cluster, so Custom Network, assume ethernet for now
283
+ deviceData.ethernetConnected = true;
284
+ } else {
285
+ for (const { type, enabled, connected } of networkData.values()) {
286
+ if (!type || !enabled || !connected) continue;
287
+ if (type.ethernetNetworkInterface) {
288
+ deviceData.ethernetConnected = true;
289
+ } else if (type.wiFiNetworkInterface) {
290
+ deviceData.wifiConnected = true;
291
+ } else if (type.threadNetworkInterface) {
292
+ deviceData.threadConnected = true;
295
293
  }
296
294
  }
297
- for (const { features, status } of powerSourceData.values()) {
298
- if (features?.battery && status === PowerSource.PowerSourceStatus.Active) {
299
- deviceData.isBatteryPowered = true;
300
- }
295
+ }
296
+ for (const { features, status } of powerSourceData.values()) {
297
+ if (features?.battery && status === PowerSource.PowerSourceStatus.Active) {
298
+ deviceData.isBatteryPowered = true;
301
299
  }
302
- this.#basicInformation = basicInformationData;
303
- this.#deviceMeta = deviceData;
304
- } catch (error) {
305
- logger.info(`Error while enhancing basic information for node ${this.nodeId}: ${error}`);
306
300
  }
301
+ this.#basicInformation = basicInformationData;
302
+ this.#deviceMeta = deviceData;
307
303
  }
308
304
 
309
305
  determineSubscriptionParameters(options: {