@matter/nodejs-shell 0.17.1-alpha.0-20260602-24f28a953 → 0.17.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.
@@ -31,9 +31,15 @@ function generateAllAttributeHandlersForCluster(yargs, theNode) {
31
31
  describe: "endpoint id to read",
32
32
  type: "number",
33
33
  demandOption: true
34
+ }).options({
35
+ "fabric-filtered": {
36
+ describe: "request fabric-filtered data (only data visible to the accessing fabric)",
37
+ default: true,
38
+ type: "boolean"
39
+ }
34
40
  }),
35
41
  async (argv) => {
36
- const { nodeId, endpointId, clusterId, attributeId: rawAttributeId } = argv;
42
+ const { nodeId, endpointId, clusterId, attributeId: rawAttributeId, fabricFiltered } = argv;
37
43
  const attributeId = rawAttributeId === "*" ? void 0 : parseInt(rawAttributeId);
38
44
  const node = (await theNode.connectAndGetNodes(nodeId))[0];
39
45
  try {
@@ -45,7 +51,8 @@ function generateAllAttributeHandlersForCluster(yargs, theNode) {
45
51
  clusterId: ClusterId(clusterId),
46
52
  attributeId: attributeId !== void 0 ? AttributeId(attributeId) : void 0
47
53
  }
48
- ]
54
+ ],
55
+ isFabricFiltered: fabricFiltered
49
56
  });
50
57
  console.log(
51
58
  `Attribute values for cluster ${node.nodeId.toString()}/${endpointId}/${clusterId}/${attributeId}:`
@@ -97,12 +104,17 @@ function generateClusterAttributeHandlers(yargs, cluster, theNode) {
97
104
  describe: "request value always remote. Also ignores information about attribute existence on device",
98
105
  default: false,
99
106
  type: "boolean"
107
+ },
108
+ "fabric-filtered": {
109
+ describe: "request fabric-filtered data (only data visible to the accessing fabric)",
110
+ default: true,
111
+ type: "boolean"
100
112
  }
101
113
  });
102
114
  },
103
115
  async (argv) => {
104
116
  const clusterId2 = cluster.id;
105
- const { nodeId, endpointId, remote } = argv;
117
+ const { nodeId, endpointId, remote, fabricFiltered } = argv;
106
118
  const requestRemote = remote ? true : void 0;
107
119
  const node = (await theNode.connectAndGetNodes(nodeId))[0];
108
120
  const clusterClient = node.getDeviceById(endpointId)?.getClusterClientById(ClusterId(clusterId2));
@@ -118,11 +130,11 @@ function generateClusterAttributeHandlers(yargs, cluster, theNode) {
118
130
  for (const attribute of cluster.attributes) {
119
131
  const attributeName = attribute.propertyName;
120
132
  const attributeClient = clusterClient.attributes[attributeName];
121
- if (!remote && !(attributeClient instanceof SupportedAttributeClient)) {
133
+ if (attributeClient === void 0 || !remote && !(attributeClient instanceof SupportedAttributeClient)) {
122
134
  continue;
123
135
  }
124
136
  console.log(
125
- ` ${attributeName} (${attribute.id}): ${Diagnostic.json(await attributeClient.get(requestRemote))}`
137
+ ` ${attributeName} (${attribute.id}): ${Diagnostic.json(await attributeClient.get(requestRemote, fabricFiltered))}`
126
138
  );
127
139
  }
128
140
  }
@@ -180,10 +192,15 @@ function generateAttributeReadHandler(yargs, clusterId, clusterName, attribute,
180
192
  describe: "request value always remote. Also ignores information about attribute existence on device",
181
193
  default: false,
182
194
  type: "boolean"
195
+ },
196
+ "fabric-filtered": {
197
+ describe: "request fabric-filtered data (only data visible to the accessing fabric)",
198
+ default: true,
199
+ type: "boolean"
183
200
  }
184
201
  }),
185
202
  async (argv) => {
186
- const { nodeId, endpointId, remote } = argv;
203
+ const { nodeId, endpointId, remote, fabricFiltered } = argv;
187
204
  const requestRemote = remote ? true : void 0;
188
205
  const node = (await theNode.connectAndGetNodes(nodeId))[0];
189
206
  const clusterClient = node.getDeviceById(endpointId)?.getClusterClientById(ClusterId(clusterId));
@@ -192,7 +209,7 @@ function generateAttributeReadHandler(yargs, clusterId, clusterName, attribute,
192
209
  return;
193
210
  }
194
211
  const attributeClient = clusterClient.attributes[attributeName];
195
- if (!remote && !(attributeClient instanceof SupportedAttributeClient)) {
212
+ if (attributeClient === void 0 || !remote && !(attributeClient instanceof SupportedAttributeClient)) {
196
213
  console.log(
197
214
  `ERROR: Attribute ${node.nodeId.toString()}/${endpointId}/${clusterId}/${attribute.id} not supported by the device.`
198
215
  );
@@ -200,7 +217,7 @@ function generateAttributeReadHandler(yargs, clusterId, clusterName, attribute,
200
217
  }
201
218
  try {
202
219
  console.log(
203
- `Attribute value for ${attributeName} ${node.nodeId.toString()}/${endpointId}/${clusterId}/${attribute.id}: ${Diagnostic.json(await attributeClient.get(requestRemote))}`
220
+ `Attribute value for ${attributeName} ${node.nodeId.toString()}/${endpointId}/${clusterId}/${attribute.id}: ${Diagnostic.json(await attributeClient.get(requestRemote, fabricFiltered))}`
204
221
  );
205
222
  } catch (error) {
206
223
  console.log(`ERROR: Could not get attribute ${attribute.name}: ${error}`);
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "version": 3,
3
3
  "sources": ["../../../src/shell/cmd_cluster-attributes.ts"],
4
- "mappings": "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",
4
+ "mappings": "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",
5
5
  "names": ["yargs", "attributeId", "clusterId"]
6
6
  }
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@matter/nodejs-shell",
3
- "version": "0.17.1-alpha.0-20260602-24f28a953",
3
+ "version": "0.17.1",
4
4
  "description": "Shell app for Matter controller",
5
5
  "keywords": [
6
6
  "iot",
@@ -34,14 +34,14 @@
34
34
  "matter-shell": "dist/cjs/app.js"
35
35
  },
36
36
  "dependencies": {
37
- "@matter/general": "0.17.1-alpha.0-20260602-24f28a953",
38
- "@matter/model": "0.17.1-alpha.0-20260602-24f28a953",
39
- "@matter/node": "0.17.1-alpha.0-20260602-24f28a953",
40
- "@matter/nodejs": "0.17.1-alpha.0-20260602-24f28a953",
41
- "@matter/nodejs-ble": "0.17.1-alpha.0-20260602-24f28a953",
42
- "@matter/protocol": "0.17.1-alpha.0-20260602-24f28a953",
43
- "@matter/types": "0.17.1-alpha.0-20260602-24f28a953",
44
- "@project-chip/matter.js": "0.17.1-alpha.0-20260602-24f28a953",
37
+ "@matter/general": "0.17.1",
38
+ "@matter/model": "0.17.1",
39
+ "@matter/node": "0.17.1",
40
+ "@matter/nodejs": "0.17.1",
41
+ "@matter/nodejs-ble": "0.17.1",
42
+ "@matter/protocol": "0.17.1",
43
+ "@matter/types": "0.17.1",
44
+ "@project-chip/matter.js": "0.17.1",
45
45
  "ws": "^8.21.0",
46
46
  "yargs": "^18.0.0"
47
47
  },
@@ -41,9 +41,16 @@ function generateAllAttributeHandlersForCluster(yargs: Argv, theNode: MatterNode
41
41
  describe: "endpoint id to read",
42
42
  type: "number",
43
43
  demandOption: true,
44
+ })
45
+ .options({
46
+ "fabric-filtered": {
47
+ describe: "request fabric-filtered data (only data visible to the accessing fabric)",
48
+ default: true,
49
+ type: "boolean",
50
+ },
44
51
  }),
45
52
  async argv => {
46
- const { nodeId, endpointId, clusterId, attributeId: rawAttributeId } = argv;
53
+ const { nodeId, endpointId, clusterId, attributeId: rawAttributeId, fabricFiltered } = argv;
47
54
  const attributeId = rawAttributeId === "*" ? undefined : parseInt(rawAttributeId);
48
55
  const node = (await theNode.connectAndGetNodes(nodeId))[0];
49
56
 
@@ -57,6 +64,7 @@ function generateAllAttributeHandlersForCluster(yargs: Argv, theNode: MatterNode
57
64
  attributeId: attributeId !== undefined ? AttributeId(attributeId) : undefined,
58
65
  },
59
66
  ],
67
+ isFabricFiltered: fabricFiltered,
60
68
  });
61
69
  console.log(
62
70
  `Attribute values for cluster ${node.nodeId.toString()}/${endpointId}/${clusterId}/${attributeId}:`,
@@ -115,11 +123,17 @@ function generateClusterAttributeHandlers(yargs: Argv, cluster: ClusterModel, th
115
123
  default: false,
116
124
  type: "boolean",
117
125
  },
126
+ "fabric-filtered": {
127
+ describe:
128
+ "request fabric-filtered data (only data visible to the accessing fabric)",
129
+ default: true,
130
+ type: "boolean",
131
+ },
118
132
  });
119
133
  },
120
134
  async argv => {
121
135
  const clusterId = cluster.id;
122
- const { nodeId, endpointId, remote } = argv;
136
+ const { nodeId, endpointId, remote, fabricFiltered } = argv;
123
137
  const requestRemote = remote ? true : undefined;
124
138
  const node = (await theNode.connectAndGetNodes(nodeId))[0];
125
139
 
@@ -138,11 +152,14 @@ function generateClusterAttributeHandlers(yargs: Argv, cluster: ClusterModel, th
138
152
  for (const attribute of cluster.attributes) {
139
153
  const attributeName = attribute.propertyName;
140
154
  const attributeClient = clusterClient.attributes[attributeName];
141
- if (!remote && !(attributeClient instanceof SupportedAttributeClient)) {
155
+ if (
156
+ attributeClient === undefined ||
157
+ (!remote && !(attributeClient instanceof SupportedAttributeClient))
158
+ ) {
142
159
  continue;
143
160
  }
144
161
  console.log(
145
- ` ${attributeName} (${attribute.id}): ${Diagnostic.json(await attributeClient.get(requestRemote))}`,
162
+ ` ${attributeName} (${attribute.id}): ${Diagnostic.json(await attributeClient.get(requestRemote, fabricFiltered))}`,
146
163
  );
147
164
  }
148
165
  },
@@ -217,9 +234,14 @@ function generateAttributeReadHandler(
217
234
  default: false,
218
235
  type: "boolean",
219
236
  },
237
+ "fabric-filtered": {
238
+ describe: "request fabric-filtered data (only data visible to the accessing fabric)",
239
+ default: true,
240
+ type: "boolean",
241
+ },
220
242
  }),
221
243
  async argv => {
222
- const { nodeId, endpointId, remote } = argv;
244
+ const { nodeId, endpointId, remote, fabricFiltered } = argv;
223
245
  const requestRemote = remote ? true : undefined;
224
246
  const node = (await theNode.connectAndGetNodes(nodeId))[0];
225
247
 
@@ -229,7 +251,7 @@ function generateAttributeReadHandler(
229
251
  return;
230
252
  }
231
253
  const attributeClient = clusterClient.attributes[attributeName];
232
- if (!remote && !(attributeClient instanceof SupportedAttributeClient)) {
254
+ if (attributeClient === undefined || (!remote && !(attributeClient instanceof SupportedAttributeClient))) {
233
255
  console.log(
234
256
  `ERROR: Attribute ${node.nodeId.toString()}/${endpointId}/${clusterId}/${attribute.id} not supported by the device.`,
235
257
  );
@@ -237,7 +259,7 @@ function generateAttributeReadHandler(
237
259
  }
238
260
  try {
239
261
  console.log(
240
- `Attribute value for ${attributeName} ${node.nodeId.toString()}/${endpointId}/${clusterId}/${attribute.id}: ${Diagnostic.json(await attributeClient.get(requestRemote))}`,
262
+ `Attribute value for ${attributeName} ${node.nodeId.toString()}/${endpointId}/${clusterId}/${attribute.id}: ${Diagnostic.json(await attributeClient.get(requestRemote, fabricFiltered))}`,
241
263
  );
242
264
  } catch (error) {
243
265
  console.log(`ERROR: Could not get attribute ${attribute.name}: ${error}`);