@matter/nodejs-shell 0.17.0-alpha.0-20260518-7f13c7285 → 0.17.0
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.
- package/dist/esm/app.js +1 -1
- package/dist/esm/app.js.map +1 -1
- package/dist/esm/shell/cmd_commission.js +3 -3
- package/dist/esm/shell/cmd_commission.js.map +1 -1
- package/dist/esm/shell/cmd_identify.js +2 -2
- package/dist/esm/shell/cmd_identify.js.map +1 -1
- package/dist/esm/web_plumbing.js +11 -16
- package/dist/esm/web_plumbing.js.map +2 -2
- package/package.json +9 -9
- package/src/app.ts +1 -1
- package/src/shell/cmd_commission.ts +3 -3
- package/src/shell/cmd_identify.ts +2 -2
- package/src/web_plumbing.ts +11 -18
package/dist/esm/app.js
CHANGED
|
@@ -34,7 +34,7 @@ function setLogLevel(identifier, level) {
|
|
|
34
34
|
logLevel = LogLevel.DEBUG;
|
|
35
35
|
break;
|
|
36
36
|
}
|
|
37
|
-
Logger.
|
|
37
|
+
Logger.destinations[identifier].level = logLevel;
|
|
38
38
|
}
|
|
39
39
|
async function main() {
|
|
40
40
|
const yargsInstance = yargs().command(
|
package/dist/esm/app.js.map
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"version": 3,
|
|
3
3
|
"sources": ["../../src/app.ts"],
|
|
4
|
-
"mappings": ";AACA;AAAA;AAAA;AAAA;AAAA;AAMA,SAAS,aAAa,gBAAgB,WAAW,QAAQ,gBAAgB;AACzE,SAAS,wBAAwB;AACjC,OAAO;AACP,OAAO,WAAW;AAClB,SAAS,eAAe;AACxB,SAAS,kBAAkB;AAC3B,SAAS,aAAa;AACtB,SAAS,6BAA6B;AAEtC,MAAM,SAAS;AACf,MAAM,yBAAyB;AAC/B,MAAM,SAAS,OAAO,IAAI,OAAO;AACjC,IAAI;AAEJ,IAAI,QAAQ,OAAO,MAAO,QAAO,SAAS,UAAU;AAEpD,IAAI;AAEG,SAAS,YAAY,YAAoB,OAAqB;AACjE,MAAI,WAAW,SAAS;AACxB,UAAQ,OAAO;AAAA,IACX,KAAK;AACD,iBAAW,SAAS;AACpB;AAAA,IACJ,KAAK;AACD,iBAAW,SAAS;AACpB;AAAA,IACJ,KAAK;AACD,iBAAW,SAAS;AACpB;AAAA,IACJ,KAAK;AACD,iBAAW,SAAS;AACpB;AAAA,EACR;AACA,SAAO,
|
|
4
|
+
"mappings": "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",
|
|
5
5
|
"names": ["yargs"]
|
|
6
6
|
}
|
|
@@ -5,7 +5,7 @@
|
|
|
5
5
|
*/
|
|
6
6
|
import { Diagnostic, Logger, MatterError } from "@matter/general";
|
|
7
7
|
import { DiscoveryCapabilitiesSchema, ManualPairingCodeCodec, NodeId, QrCode, QrPairingCodeCodec } from "@matter/types";
|
|
8
|
-
import {
|
|
8
|
+
import { BasicInformation, Descriptor, GeneralCommissioning } from "@matter/types/clusters";
|
|
9
9
|
import { createDiagnosticCallbacks } from "./cmd_nodes.js";
|
|
10
10
|
const logger = Logger.get("Commission");
|
|
11
11
|
function commands(theNode) {
|
|
@@ -143,14 +143,14 @@ function commands(theNode) {
|
|
|
143
143
|
if (node === void 0) {
|
|
144
144
|
throw new MatterError("Node not found after commissioning.");
|
|
145
145
|
}
|
|
146
|
-
const descriptor = node.getRootClusterClient(
|
|
146
|
+
const descriptor = node.getRootClusterClient(Descriptor);
|
|
147
147
|
if (descriptor !== void 0) {
|
|
148
148
|
console.log(await descriptor.attributes.deviceTypeList.get());
|
|
149
149
|
console.log(await descriptor.getServerListAttribute());
|
|
150
150
|
} else {
|
|
151
151
|
console.log("No Descriptor Cluster found. This should never happen!");
|
|
152
152
|
}
|
|
153
|
-
const info = node.getRootClusterClient(
|
|
153
|
+
const info = node.getRootClusterClient(BasicInformation);
|
|
154
154
|
if (info !== void 0) {
|
|
155
155
|
console.log(await info.getProductNameAttribute());
|
|
156
156
|
} else {
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"version": 3,
|
|
3
3
|
"sources": ["../../../src/shell/cmd_commission.ts"],
|
|
4
|
-
"mappings": "AAAA;AAAA;AAAA;AAAA;AAAA;AAMA,SAAS,YAAY,QAAQ,mBAAmB;AAChD,SAAS,6BAA6B,wBAAwB,QAAQ,QAAQ,0BAA0B;AACxG,SAAS,
|
|
4
|
+
"mappings": "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",
|
|
5
5
|
"names": ["yargs"]
|
|
6
6
|
}
|
|
@@ -3,7 +3,7 @@
|
|
|
3
3
|
* Copyright 2022-2026 Matter.js Authors
|
|
4
4
|
* SPDX-License-Identifier: Apache-2.0
|
|
5
5
|
*/
|
|
6
|
-
import {
|
|
6
|
+
import { Identify } from "@matter/types/clusters";
|
|
7
7
|
function commands(theNode) {
|
|
8
8
|
return {
|
|
9
9
|
command: "identify [time] [node-id] [endpoint-id]",
|
|
@@ -28,7 +28,7 @@ function commands(theNode) {
|
|
|
28
28
|
await theNode.iterateNodeDevices(
|
|
29
29
|
await theNode.connectAndGetNodes(nodeId),
|
|
30
30
|
async (device, node) => {
|
|
31
|
-
const identifyCluster = device.getClusterClient(
|
|
31
|
+
const identifyCluster = device.getClusterClient(Identify);
|
|
32
32
|
if (identifyCluster === void 0) {
|
|
33
33
|
return;
|
|
34
34
|
}
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"version": 3,
|
|
3
3
|
"sources": ["../../../src/shell/cmd_identify.ts"],
|
|
4
|
-
"mappings": "AAAA;AAAA;AAAA;AAAA;AAAA;AAMA,SAAS,
|
|
4
|
+
"mappings": "AAAA;AAAA;AAAA;AAAA;AAAA;AAMA,SAAS,gBAAgB;AAIV,SAAR,SAA0B,SAAqB;AAClD,SAAO;AAAA,IACH,SAAS;AAAA,IACT,UACI;AAAA,IACJ,SAAS,CAAC,UAAgB;AACtB,aAAO,MACF,WAAW,QAAQ;AAAA,QAChB,UAAU;AAAA,QACV,SAAS;AAAA,QACT,MAAM;AAAA,MACV,CAAC,EACA,WAAW,WAAW;AAAA,QACnB,UAAU;AAAA,QACV,SAAS;AAAA,QACT,MAAM;AAAA,MACV,CAAC,EACA,WAAW,eAAe;AAAA,QACvB,UAAU;AAAA,QACV,SAAS;AAAA,QACT,MAAM;AAAA,MACV,CAAC;AAAA,IACT;AAAA,IAEA,SAAS,OAAO,SAAc;AAC1B,YAAM,EAAE,QAAQ,OAAO,IAAI,WAAW,IAAI;AAC1C,YAAM,QAAQ;AAAA,QACV,MAAM,QAAQ,mBAAmB,MAAM;AAAA,QACvC,OAAO,QAAQ,SAAS;AACpB,gBAAM,kBAAkB,OAAO,iBAAiB,QAAQ;AACxD,cAAI,oBAAoB,QAAW;AAC/B;AAAA,UACJ;AACA,kBAAQ,IAAI,uBAAuB,KAAK,OAAO,SAAS,CAAC;AACzD,gBAAM,gBAAgB,SAAS,EAAE,cAAc,KAAK,CAAC;AAAA,QACzD;AAAA,QACA;AAAA,MACJ;AAAA,IACJ;AAAA,EACJ;AACJ;",
|
|
5
5
|
"names": []
|
|
6
6
|
}
|
package/dist/esm/web_plumbing.js
CHANGED
|
@@ -3,7 +3,7 @@
|
|
|
3
3
|
* Copyright 2022-2026 Matter.js Authors
|
|
4
4
|
* SPDX-License-Identifier: Apache-2.0
|
|
5
5
|
*/
|
|
6
|
-
import {
|
|
6
|
+
import { LogDestination, Logger } from "@matter/general";
|
|
7
7
|
import { Readable, Writable } from "node:stream";
|
|
8
8
|
import WebSocket, { WebSocketServer } from "ws";
|
|
9
9
|
import { Shell } from "./shell/Shell.js";
|
|
@@ -51,33 +51,28 @@ function initializeWebPlumbing(theNode, nodeNum, webSocketPort, webServer) {
|
|
|
51
51
|
}
|
|
52
52
|
client = ws;
|
|
53
53
|
createWebSocketLogger(ws).then((logger) => {
|
|
54
|
-
Logger.
|
|
55
|
-
Logger.
|
|
54
|
+
delete Logger.destinations["Shell"];
|
|
55
|
+
Logger.destinations[socketLogger] = LogDestination({
|
|
56
|
+
name: socketLogger,
|
|
57
|
+
write: (text, message) => logger(message.level, text)
|
|
58
|
+
});
|
|
56
59
|
}).catch((err) => {
|
|
57
|
-
|
|
58
|
-
console.error("Failed to add WebSocket logger: " + err);
|
|
59
|
-
}
|
|
60
|
+
console.error("Failed to add WebSocket logger: " + err);
|
|
60
61
|
});
|
|
61
62
|
const shell = new Shell(theNode, nodeNum, "", createReadableStream(ws), createWritableStream(ws));
|
|
62
63
|
shell.start(theNode.storageLocation);
|
|
63
64
|
ws.on("close", () => {
|
|
64
65
|
process.stdout.write("Client disconnected\n");
|
|
65
|
-
|
|
66
|
-
|
|
67
|
-
Logger.removeLogger(socketLogger);
|
|
68
|
-
}
|
|
69
|
-
} catch (err) {
|
|
66
|
+
if (socketLogger in Logger.destinations) {
|
|
67
|
+
delete Logger.destinations[socketLogger];
|
|
70
68
|
}
|
|
71
69
|
client = ws;
|
|
72
70
|
});
|
|
73
71
|
ws.on("error", (err) => {
|
|
74
72
|
process.stderr.write(`WebSocket error: ${err.message}
|
|
75
73
|
`);
|
|
76
|
-
|
|
77
|
-
|
|
78
|
-
Logger.removeLogger(socketLogger);
|
|
79
|
-
}
|
|
80
|
-
} catch (err2) {
|
|
74
|
+
if (socketLogger in Logger.destinations) {
|
|
75
|
+
delete Logger.destinations[socketLogger];
|
|
81
76
|
}
|
|
82
77
|
});
|
|
83
78
|
});
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"version": 3,
|
|
3
3
|
"sources": ["../../src/web_plumbing.ts"],
|
|
4
|
-
"mappings": "AAAA;AAAA;AAAA;AAAA;AAAA;AAMA,SAAS,
|
|
5
|
-
"names": [
|
|
4
|
+
"mappings": "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",
|
|
5
|
+
"names": []
|
|
6
6
|
}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@matter/nodejs-shell",
|
|
3
|
-
"version": "0.17.0
|
|
3
|
+
"version": "0.17.0",
|
|
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.0
|
|
38
|
-
"@matter/model": "0.17.0
|
|
39
|
-
"@matter/node": "0.17.0
|
|
40
|
-
"@matter/nodejs": "0.17.0
|
|
41
|
-
"@matter/nodejs-ble": "0.17.0
|
|
42
|
-
"@matter/protocol": "0.17.0
|
|
43
|
-
"@matter/types": "0.17.0
|
|
44
|
-
"@project-chip/matter.js": "0.17.0
|
|
37
|
+
"@matter/general": "0.17.0",
|
|
38
|
+
"@matter/model": "0.17.0",
|
|
39
|
+
"@matter/node": "0.17.0",
|
|
40
|
+
"@matter/nodejs": "0.17.0",
|
|
41
|
+
"@matter/nodejs-ble": "0.17.0",
|
|
42
|
+
"@matter/protocol": "0.17.0",
|
|
43
|
+
"@matter/types": "0.17.0",
|
|
44
|
+
"@project-chip/matter.js": "0.17.0",
|
|
45
45
|
"ws": "^8.20.1",
|
|
46
46
|
"yargs": "^18.0.0"
|
|
47
47
|
},
|
package/src/app.ts
CHANGED
|
@@ -6,7 +6,7 @@
|
|
|
6
6
|
|
|
7
7
|
import { Diagnostic, Logger, MatterError } from "@matter/general";
|
|
8
8
|
import { DiscoveryCapabilitiesSchema, ManualPairingCodeCodec, NodeId, QrCode, QrPairingCodeCodec } from "@matter/types";
|
|
9
|
-
import {
|
|
9
|
+
import { BasicInformation, Descriptor, GeneralCommissioning } from "@matter/types/clusters";
|
|
10
10
|
import { NodeCommissioningOptions } from "@project-chip/matter.js";
|
|
11
11
|
import type { Argv } from "yargs";
|
|
12
12
|
import { MatterNode } from "../MatterNode.js";
|
|
@@ -195,7 +195,7 @@ export default function commands(theNode: MatterNode) {
|
|
|
195
195
|
// It is provided to proof the concept
|
|
196
196
|
|
|
197
197
|
// Example to initialize a ClusterClient and access concrete fields as API methods
|
|
198
|
-
const descriptor = node.getRootClusterClient(
|
|
198
|
+
const descriptor = node.getRootClusterClient(Descriptor);
|
|
199
199
|
if (descriptor !== undefined) {
|
|
200
200
|
console.log(await descriptor.attributes.deviceTypeList.get()); // you can call that way
|
|
201
201
|
console.log(await descriptor.getServerListAttribute()); // or more convenient that way
|
|
@@ -204,7 +204,7 @@ export default function commands(theNode: MatterNode) {
|
|
|
204
204
|
}
|
|
205
205
|
|
|
206
206
|
// Example to subscribe to a field and get the value
|
|
207
|
-
const info = node.getRootClusterClient(
|
|
207
|
+
const info = node.getRootClusterClient(BasicInformation);
|
|
208
208
|
if (info !== undefined) {
|
|
209
209
|
console.log(await info.getProductNameAttribute()); // This call is executed remotely
|
|
210
210
|
//console.log(await info.subscribeProductNameAttribute(value => console.log("productName", value), 5, 30));
|
|
@@ -4,7 +4,7 @@
|
|
|
4
4
|
* SPDX-License-Identifier: Apache-2.0
|
|
5
5
|
*/
|
|
6
6
|
|
|
7
|
-
import {
|
|
7
|
+
import { Identify } from "@matter/types/clusters";
|
|
8
8
|
import type { Argv } from "yargs";
|
|
9
9
|
import { MatterNode } from "../MatterNode.js";
|
|
10
10
|
|
|
@@ -37,7 +37,7 @@ export default function commands(theNode: MatterNode) {
|
|
|
37
37
|
await theNode.iterateNodeDevices(
|
|
38
38
|
await theNode.connectAndGetNodes(nodeId),
|
|
39
39
|
async (device, node) => {
|
|
40
|
-
const identifyCluster = device.getClusterClient(
|
|
40
|
+
const identifyCluster = device.getClusterClient(Identify);
|
|
41
41
|
if (identifyCluster === undefined) {
|
|
42
42
|
return;
|
|
43
43
|
}
|
package/src/web_plumbing.ts
CHANGED
|
@@ -4,7 +4,7 @@
|
|
|
4
4
|
* SPDX-License-Identifier: Apache-2.0
|
|
5
5
|
*/
|
|
6
6
|
|
|
7
|
-
import { Logger, LogLevel
|
|
7
|
+
import { LogDestination, Logger, LogLevel } from "@matter/general";
|
|
8
8
|
import { Readable, Writable } from "node:stream";
|
|
9
9
|
import WebSocket, { Data, WebSocketServer } from "ws";
|
|
10
10
|
import { MatterNode } from "./MatterNode.js";
|
|
@@ -78,13 +78,14 @@ export function initializeWebPlumbing(
|
|
|
78
78
|
|
|
79
79
|
createWebSocketLogger(ws)
|
|
80
80
|
.then(logger => {
|
|
81
|
-
Logger.
|
|
82
|
-
Logger.
|
|
81
|
+
delete Logger.destinations["Shell"];
|
|
82
|
+
Logger.destinations[socketLogger] = LogDestination({
|
|
83
|
+
name: socketLogger,
|
|
84
|
+
write: (text, message) => logger(message.level, text),
|
|
85
|
+
});
|
|
83
86
|
})
|
|
84
87
|
.catch(err => {
|
|
85
|
-
|
|
86
|
-
console.error("Failed to add WebSocket logger: " + err);
|
|
87
|
-
}
|
|
88
|
+
console.error("Failed to add WebSocket logger: " + err);
|
|
88
89
|
});
|
|
89
90
|
|
|
90
91
|
const shell = new Shell(theNode, nodeNum, "", createReadableStream(ws), createWritableStream(ws));
|
|
@@ -92,24 +93,16 @@ export function initializeWebPlumbing(
|
|
|
92
93
|
|
|
93
94
|
ws.on("close", () => {
|
|
94
95
|
process.stdout.write("Client disconnected\n");
|
|
95
|
-
|
|
96
|
-
|
|
97
|
-
Logger.removeLogger(socketLogger);
|
|
98
|
-
}
|
|
99
|
-
} catch (err) {
|
|
100
|
-
// Intentionally left empty
|
|
96
|
+
if (socketLogger in Logger.destinations) {
|
|
97
|
+
delete Logger.destinations[socketLogger];
|
|
101
98
|
}
|
|
102
99
|
|
|
103
100
|
client = ws;
|
|
104
101
|
});
|
|
105
102
|
ws.on("error", err => {
|
|
106
103
|
process.stderr.write(`WebSocket error: ${err.message}\n`);
|
|
107
|
-
|
|
108
|
-
|
|
109
|
-
Logger.removeLogger(socketLogger);
|
|
110
|
-
}
|
|
111
|
-
} catch (err) {
|
|
112
|
-
// Intentionally left empty
|
|
104
|
+
if (socketLogger in Logger.destinations) {
|
|
105
|
+
delete Logger.destinations[socketLogger];
|
|
113
106
|
}
|
|
114
107
|
});
|
|
115
108
|
});
|