@project-chip/matter.js 0.11.0-alpha.0-20240926-407400ecb → 0.11.0-alpha.0-20241002-e7b377c34
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/cjs/CommissioningController.d.ts +17 -35
- package/dist/cjs/CommissioningController.d.ts.map +1 -1
- package/dist/cjs/CommissioningController.js +37 -5
- package/dist/cjs/CommissioningController.js.map +1 -1
- package/dist/cjs/CommissioningServer.d.ts.map +1 -1
- package/dist/cjs/CommissioningServer.js +28 -13
- package/dist/cjs/CommissioningServer.js.map +1 -1
- package/dist/cjs/MatterController.d.ts +32 -70
- package/dist/cjs/MatterController.d.ts.map +1 -1
- package/dist/cjs/MatterController.js +138 -579
- package/dist/cjs/MatterController.js.map +2 -2
- package/dist/cjs/PaseCommissioner.d.ts.map +1 -1
- package/dist/cjs/PaseCommissioner.js +9 -10
- package/dist/cjs/PaseCommissioner.js.map +2 -2
- package/dist/cjs/cluster/server/AccessControlServer.d.ts.map +1 -1
- package/dist/cjs/cluster/server/AccessControlServer.js +4 -2
- package/dist/cjs/cluster/server/AccessControlServer.js.map +1 -1
- package/dist/cjs/cluster/server/AdministratorCommissioningServer.d.ts.map +1 -1
- package/dist/cjs/cluster/server/AdministratorCommissioningServer.js +1 -1
- package/dist/cjs/cluster/server/AdministratorCommissioningServer.js.map +1 -1
- package/dist/cjs/cluster/server/ClusterServer.d.ts.map +1 -1
- package/dist/cjs/cluster/server/ClusterServer.js +3 -0
- package/dist/cjs/cluster/server/ClusterServer.js.map +1 -1
- package/dist/cjs/cluster/server/ClusterServerTypes.d.ts +5 -5
- package/dist/cjs/cluster/server/ClusterServerTypes.d.ts.map +1 -1
- package/dist/cjs/cluster/server/OperationalCredentialsServer.d.ts.map +1 -1
- package/dist/cjs/cluster/server/OperationalCredentialsServer.js +9 -10
- package/dist/cjs/cluster/server/OperationalCredentialsServer.js.map +1 -1
- package/dist/cjs/compat/interaction.d.ts +3 -2
- package/dist/cjs/compat/interaction.d.ts.map +1 -1
- package/dist/cjs/compat/interaction.js +8 -6
- package/dist/cjs/compat/interaction.js.map +1 -1
- package/dist/cjs/compat/protocol.d.ts +1 -1
- package/dist/cjs/compat/protocol.d.ts.map +1 -1
- package/dist/cjs/compat/protocol.js +1 -2
- package/dist/cjs/compat/protocol.js.map +1 -1
- package/dist/cjs/compat/securechannel.d.ts +2 -1
- package/dist/cjs/compat/securechannel.d.ts.map +1 -1
- package/dist/cjs/compat/securechannel.js +4 -3
- package/dist/cjs/compat/securechannel.js.map +1 -1
- package/dist/cjs/compat/util.d.ts +1 -1
- package/dist/cjs/compat/util.d.ts.map +1 -1
- package/dist/cjs/compat/util.js +1 -1
- package/dist/cjs/device/LegacyInteractionServer.d.ts +2 -2
- package/dist/cjs/device/LegacyInteractionServer.d.ts.map +1 -1
- package/dist/cjs/device/LegacyInteractionServer.js +3 -4
- package/dist/cjs/device/LegacyInteractionServer.js.map +1 -1
- package/dist/cjs/device/PairedNode.d.ts +1 -2
- package/dist/cjs/device/PairedNode.d.ts.map +1 -1
- package/dist/cjs/device/PairedNode.js +2 -3
- package/dist/cjs/device/PairedNode.js.map +1 -1
- package/dist/esm/CommissioningController.d.ts +17 -35
- package/dist/esm/CommissioningController.d.ts.map +1 -1
- package/dist/esm/CommissioningController.js +41 -5
- package/dist/esm/CommissioningController.js.map +1 -1
- package/dist/esm/CommissioningServer.d.ts.map +1 -1
- package/dist/esm/CommissioningServer.js +28 -13
- package/dist/esm/CommissioningServer.js.map +1 -1
- package/dist/esm/MatterController.d.ts +32 -70
- package/dist/esm/MatterController.d.ts.map +1 -1
- package/dist/esm/MatterController.js +144 -601
- package/dist/esm/MatterController.js.map +2 -2
- package/dist/esm/PaseCommissioner.d.ts.map +1 -1
- package/dist/esm/PaseCommissioner.js +12 -11
- package/dist/esm/PaseCommissioner.js.map +1 -1
- package/dist/esm/cluster/server/AccessControlServer.d.ts.map +1 -1
- package/dist/esm/cluster/server/AccessControlServer.js +4 -2
- package/dist/esm/cluster/server/AccessControlServer.js.map +1 -1
- package/dist/esm/cluster/server/AdministratorCommissioningServer.d.ts.map +1 -1
- package/dist/esm/cluster/server/AdministratorCommissioningServer.js +1 -1
- package/dist/esm/cluster/server/AdministratorCommissioningServer.js.map +1 -1
- package/dist/esm/cluster/server/ClusterServer.d.ts.map +1 -1
- package/dist/esm/cluster/server/ClusterServer.js +3 -0
- package/dist/esm/cluster/server/ClusterServer.js.map +1 -1
- package/dist/esm/cluster/server/ClusterServerTypes.d.ts +5 -5
- package/dist/esm/cluster/server/ClusterServerTypes.d.ts.map +1 -1
- package/dist/esm/cluster/server/OperationalCredentialsServer.d.ts.map +1 -1
- package/dist/esm/cluster/server/OperationalCredentialsServer.js +9 -11
- package/dist/esm/cluster/server/OperationalCredentialsServer.js.map +1 -1
- package/dist/esm/compat/interaction.d.ts +3 -2
- package/dist/esm/compat/interaction.d.ts.map +1 -1
- package/dist/esm/compat/interaction.js +14 -15
- package/dist/esm/compat/interaction.js.map +1 -1
- package/dist/esm/compat/protocol.d.ts +1 -1
- package/dist/esm/compat/protocol.d.ts.map +1 -1
- package/dist/esm/compat/protocol.js +2 -4
- package/dist/esm/compat/protocol.js.map +1 -1
- package/dist/esm/compat/securechannel.d.ts +2 -1
- package/dist/esm/compat/securechannel.d.ts.map +1 -1
- package/dist/esm/compat/securechannel.js +1 -3
- package/dist/esm/compat/securechannel.js.map +1 -1
- package/dist/esm/compat/util.d.ts +1 -1
- package/dist/esm/compat/util.d.ts.map +1 -1
- package/dist/esm/compat/util.js +2 -2
- package/dist/esm/compat/util.js.map +1 -1
- package/dist/esm/device/LegacyInteractionServer.d.ts +2 -2
- package/dist/esm/device/LegacyInteractionServer.d.ts.map +1 -1
- package/dist/esm/device/LegacyInteractionServer.js +3 -4
- package/dist/esm/device/LegacyInteractionServer.js.map +1 -1
- package/dist/esm/device/PairedNode.d.ts +1 -2
- package/dist/esm/device/PairedNode.d.ts.map +1 -1
- package/dist/esm/device/PairedNode.js +1 -1
- package/dist/esm/device/PairedNode.js.map +1 -1
- package/package.json +8 -8
- package/src/CommissioningController.ts +56 -47
- package/src/CommissioningServer.ts +27 -12
- package/src/MatterController.ts +177 -816
- package/src/PaseCommissioner.ts +11 -11
- package/src/cluster/server/AccessControlServer.ts +2 -0
- package/src/cluster/server/AdministratorCommissioningServer.ts +1 -1
- package/src/cluster/server/ClusterServer.ts +4 -0
- package/src/cluster/server/ClusterServerTypes.ts +5 -5
- package/src/cluster/server/OperationalCredentialsServer.ts +13 -13
- package/src/compat/interaction.ts +14 -13
- package/src/compat/protocol.ts +2 -3
- package/src/compat/securechannel.ts +2 -3
- package/src/compat/util.ts +1 -1
- package/src/device/LegacyInteractionServer.ts +4 -4
- package/src/device/PairedNode.ts +1 -1
package/src/PaseCommissioner.ts
CHANGED
|
@@ -3,7 +3,7 @@
|
|
|
3
3
|
* Copyright 2022-2024 Matter.js Authors
|
|
4
4
|
* SPDX-License-Identifier: Apache-2.0
|
|
5
5
|
*/
|
|
6
|
-
import { Environment, ImplementationError, Logger
|
|
6
|
+
import { Environment, ImplementationError, Logger } from "#general";
|
|
7
7
|
import {
|
|
8
8
|
CommissionableDevice,
|
|
9
9
|
CommissionableDeviceIdentifiers,
|
|
@@ -18,6 +18,7 @@ import {
|
|
|
18
18
|
import { DiscoveryCapabilitiesBitmap, NodeId, TypeFromPartialBitSchema } from "#types";
|
|
19
19
|
import {
|
|
20
20
|
CommissioningControllerOptions,
|
|
21
|
+
configureNetwork as configureControllerNetwork,
|
|
21
22
|
ControllerEnvironmentOptions,
|
|
22
23
|
NodeCommissioningOptions,
|
|
23
24
|
} from "./CommissioningController.js";
|
|
@@ -77,31 +78,30 @@ export class PaseCommissioner {
|
|
|
77
78
|
return this.controllerInstance;
|
|
78
79
|
}
|
|
79
80
|
|
|
80
|
-
const {
|
|
81
|
+
const { rootCertificateData, fabricData } = this.options;
|
|
81
82
|
|
|
82
83
|
let mdnsScanner: MdnsScanner | undefined;
|
|
83
84
|
let ipv4Disabled = false;
|
|
84
|
-
let netInterfaceIpv4: UdpInterface | undefined;
|
|
85
|
-
let netInterfaceIpv6: UdpInterface | undefined;
|
|
86
85
|
|
|
87
86
|
try {
|
|
88
87
|
const mdnsService = await this.environment.load(MdnsService);
|
|
89
88
|
ipv4Disabled = !mdnsService.enableIpv4;
|
|
90
89
|
mdnsScanner = mdnsService.scanner;
|
|
91
|
-
if (!ipv4Disabled) {
|
|
92
|
-
netInterfaceIpv4 = await UdpInterface.create(Network.get(), "udp4", localPort, listeningAddressIpv4);
|
|
93
|
-
}
|
|
94
|
-
netInterfaceIpv6 = await UdpInterface.create(Network.get(), "udp6", localPort, listeningAddressIpv6);
|
|
95
90
|
} catch {
|
|
96
91
|
logger.debug("No networking available, using only BLE");
|
|
97
92
|
}
|
|
98
93
|
|
|
94
|
+
const { scanners, netInterfaces } = await configureControllerNetwork({
|
|
95
|
+
mdnsScanner,
|
|
96
|
+
ipv4Disabled,
|
|
97
|
+
...this.options,
|
|
98
|
+
});
|
|
99
|
+
|
|
99
100
|
return await MatterController.createAsPaseCommissioner({
|
|
100
101
|
rootCertificateData,
|
|
101
102
|
fabricData,
|
|
102
|
-
|
|
103
|
-
|
|
104
|
-
mdnsScanner,
|
|
103
|
+
scanners,
|
|
104
|
+
netInterfaces,
|
|
105
105
|
});
|
|
106
106
|
}
|
|
107
107
|
|
|
@@ -58,6 +58,7 @@ export const AccessControlClusterHandler: () => ClusterServerHandlers<typeof Acc
|
|
|
58
58
|
AccessControlCluster,
|
|
59
59
|
"acl",
|
|
60
60
|
new Array<TypeFromBitmapSchema<typeof AccessControl.TlvAccessControlEntry>>(),
|
|
61
|
+
MatterDevice.of(session).getFabrics(),
|
|
61
62
|
);
|
|
62
63
|
},
|
|
63
64
|
|
|
@@ -248,6 +249,7 @@ export const AccessControlClusterHandler: () => ClusterServerHandlers<typeof Acc
|
|
|
248
249
|
AccessControlCluster,
|
|
249
250
|
"extension",
|
|
250
251
|
new Array<AclExtensionEntry>(),
|
|
252
|
+
MatterDevice.of(session).getFabrics(),
|
|
251
253
|
);
|
|
252
254
|
},
|
|
253
255
|
|
|
@@ -168,7 +168,7 @@ class AdministratorCommissioningManager {
|
|
|
168
168
|
|
|
169
169
|
await device.allowEnhancedCommissioning(
|
|
170
170
|
discriminator,
|
|
171
|
-
PaseServer.fromVerificationValue(pakeVerifier, { iterations, salt }),
|
|
171
|
+
PaseServer.fromVerificationValue(device.sessionManager, pakeVerifier, { iterations, salt }),
|
|
172
172
|
() => {
|
|
173
173
|
session.associatedFabric.deleteRemoveCallback(this.fabricRemoveHandler);
|
|
174
174
|
this.endCommissioning();
|
|
@@ -121,6 +121,10 @@ export function ClusterServer<const T extends ClusterType, const H extends Clust
|
|
|
121
121
|
return datasource?.eventHandler;
|
|
122
122
|
},
|
|
123
123
|
|
|
124
|
+
get fabrics() {
|
|
125
|
+
return datasource?.fabrics ?? [];
|
|
126
|
+
},
|
|
127
|
+
|
|
124
128
|
increaseVersion() {
|
|
125
129
|
return datasource?.increaseVersion() ?? 0;
|
|
126
130
|
},
|
|
@@ -13,8 +13,8 @@ import {
|
|
|
13
13
|
Fabric,
|
|
14
14
|
FabricScopedAttributeServer,
|
|
15
15
|
FixedAttributeServer,
|
|
16
|
-
MatterDeviceSession,
|
|
17
16
|
Message,
|
|
17
|
+
Session,
|
|
18
18
|
} from "#protocol";
|
|
19
19
|
import {
|
|
20
20
|
Attribute,
|
|
@@ -91,20 +91,20 @@ type AttributeGetters<A extends Attributes> = {
|
|
|
91
91
|
[P in keyof A as `${string & P}AttributeGetter`]?: (args: {
|
|
92
92
|
attributes: AttributeServers<A>;
|
|
93
93
|
endpoint?: Endpoint;
|
|
94
|
-
session?:
|
|
94
|
+
session?: Session;
|
|
95
95
|
isFabricFiltered?: boolean;
|
|
96
96
|
}) => AttributeJsType<A[P]>;
|
|
97
97
|
};
|
|
98
98
|
type AttributeSetters<A extends Attributes> = {
|
|
99
99
|
[P in keyof A as `${string & P}AttributeSetter`]?: (
|
|
100
100
|
value: AttributeJsType<A[P]>,
|
|
101
|
-
args: { attributes: AttributeServers<A>; endpoint?: Endpoint; session?:
|
|
101
|
+
args: { attributes: AttributeServers<A>; endpoint?: Endpoint; session?: Session },
|
|
102
102
|
) => boolean;
|
|
103
103
|
};
|
|
104
104
|
type AttributeValidators<A extends Attributes> = {
|
|
105
105
|
[P in keyof A as `${string & P}AttributeValidator`]?: (
|
|
106
106
|
value: AttributeJsType<A[P]>,
|
|
107
|
-
args: { attributes: AttributeServers<A>; endpoint?: Endpoint; session?:
|
|
107
|
+
args: { attributes: AttributeServers<A>; endpoint?: Endpoint; session?: Session },
|
|
108
108
|
) => void;
|
|
109
109
|
};
|
|
110
110
|
export type CommandHandler<
|
|
@@ -117,7 +117,7 @@ export type CommandHandler<
|
|
|
117
117
|
request: RequestT;
|
|
118
118
|
attributes: AS;
|
|
119
119
|
events: ES;
|
|
120
|
-
session:
|
|
120
|
+
session: Session;
|
|
121
121
|
message: Message;
|
|
122
122
|
endpoint: Endpoint;
|
|
123
123
|
}) => Promise<ResponseT> | ResponseT
|
|
@@ -14,7 +14,6 @@ import {
|
|
|
14
14
|
CertificateError,
|
|
15
15
|
DeviceCertification,
|
|
16
16
|
FabricTableFullError,
|
|
17
|
-
FailsafeContext,
|
|
18
17
|
MatterDevice,
|
|
19
18
|
MatterFabricConflictError,
|
|
20
19
|
MatterFabricInvalidAdminSubjectError,
|
|
@@ -65,10 +64,10 @@ OperationalCredentials.Cluster.commands = {
|
|
|
65
64
|
),
|
|
66
65
|
};
|
|
67
66
|
|
|
68
|
-
export const OperationalCredentialsClusterHandler
|
|
67
|
+
export const OperationalCredentialsClusterHandler = (
|
|
69
68
|
certificates: DeviceCertification.Definition,
|
|
70
69
|
productDescription?: ProductDescription,
|
|
71
|
-
)
|
|
70
|
+
): ClusterServerHandlers<typeof OperationalCredentials.Cluster> => {
|
|
72
71
|
let certification: DeviceCertification | undefined = undefined;
|
|
73
72
|
const cert = () => {
|
|
74
73
|
if (certification !== undefined) {
|
|
@@ -150,7 +149,7 @@ export const OperationalCredentialsClusterHandler: (
|
|
|
150
149
|
if (!session.isSecure)
|
|
151
150
|
throw new MatterFlowError("addOperationalCert should be called on a secure session.");
|
|
152
151
|
|
|
153
|
-
const failsafeContext =
|
|
152
|
+
const failsafeContext = MatterDevice.of(session).failsafeContext;
|
|
154
153
|
|
|
155
154
|
if (failsafeContext.fabricIndex !== undefined) {
|
|
156
155
|
throw new StatusResponseError(
|
|
@@ -180,7 +179,7 @@ export const OperationalCredentialsClusterHandler: (
|
|
|
180
179
|
);
|
|
181
180
|
}
|
|
182
181
|
|
|
183
|
-
if (session.
|
|
182
|
+
if (MatterDevice.of(session).getFabrics().length === supportedFabrics.getLocal()) {
|
|
184
183
|
return {
|
|
185
184
|
statusCode: OperationalCredentials.NodeOperationalCertStatus.TableFull,
|
|
186
185
|
debugText: `No more fabrics can be added because limit ${supportedFabrics.getLocal()} reached.`,
|
|
@@ -281,7 +280,7 @@ export const OperationalCredentialsClusterHandler: (
|
|
|
281
280
|
|
|
282
281
|
fabricsAttributeGetter: ({ session, isFabricFiltered }) => {
|
|
283
282
|
if (session === undefined || !session.isSecure) return []; // ???
|
|
284
|
-
const fabrics = isFabricFiltered ? [session.associatedFabric] : session.
|
|
283
|
+
const fabrics = isFabricFiltered ? [session.associatedFabric] : MatterDevice.of(session).getFabrics();
|
|
285
284
|
|
|
286
285
|
return fabrics.map(fabric => ({
|
|
287
286
|
fabricId: fabric.fabricId,
|
|
@@ -300,7 +299,7 @@ export const OperationalCredentialsClusterHandler: (
|
|
|
300
299
|
|
|
301
300
|
nocsAttributeGetter: ({ session, isFabricFiltered }) => {
|
|
302
301
|
if (session === undefined || !session.isSecure) return []; // ???
|
|
303
|
-
const fabrics = isFabricFiltered ? [session.associatedFabric] : session.
|
|
302
|
+
const fabrics = isFabricFiltered ? [session.associatedFabric] : MatterDevice.of(session).getFabrics();
|
|
304
303
|
return fabrics.map(fabric => ({
|
|
305
304
|
noc: fabric.operationalCert,
|
|
306
305
|
icac: fabric.intermediateCACert ?? null,
|
|
@@ -315,7 +314,7 @@ export const OperationalCredentialsClusterHandler: (
|
|
|
315
314
|
|
|
316
315
|
commissionedFabricsAttributeGetter: ({ session }) => {
|
|
317
316
|
if (session === undefined || !session.isSecure) return 0; // ???
|
|
318
|
-
return session.
|
|
317
|
+
return MatterDevice.of(session).getFabrics().length;
|
|
319
318
|
},
|
|
320
319
|
|
|
321
320
|
trustedRootCertificatesAttributeGetter: ({ session }) => {
|
|
@@ -326,7 +325,9 @@ export const OperationalCredentialsClusterHandler: (
|
|
|
326
325
|
if (!session.isSecure)
|
|
327
326
|
throw new MatterFlowError("addOperationalCert should be called on a secure session.");
|
|
328
327
|
|
|
329
|
-
const rootCerts =
|
|
328
|
+
const rootCerts = MatterDevice.of(session)
|
|
329
|
+
.getFabrics()
|
|
330
|
+
.map(fabric => fabric.rootCert);
|
|
330
331
|
|
|
331
332
|
const device = MatterDevice.of(session);
|
|
332
333
|
if (device.isFailsafeArmed()) {
|
|
@@ -354,7 +355,7 @@ export const OperationalCredentialsClusterHandler: (
|
|
|
354
355
|
// Assert associated fabric is present
|
|
355
356
|
session.associatedFabric;
|
|
356
357
|
|
|
357
|
-
const failsafeContext =
|
|
358
|
+
const failsafeContext = MatterDevice.of(session).failsafeContext;
|
|
358
359
|
|
|
359
360
|
if (failsafeContext.fabricIndex !== undefined) {
|
|
360
361
|
throw new StatusResponseError(
|
|
@@ -430,8 +431,7 @@ export const OperationalCredentialsClusterHandler: (
|
|
|
430
431
|
|
|
431
432
|
const fabric = session.associatedFabric;
|
|
432
433
|
const currentFabricIndex = fabric.fabricIndex;
|
|
433
|
-
const
|
|
434
|
-
const conflictingLabelFabric = device
|
|
434
|
+
const conflictingLabelFabric = MatterDevice.of(session)
|
|
435
435
|
.getFabrics()
|
|
436
436
|
.find(f => f.label === label && f.fabricIndex !== currentFabricIndex);
|
|
437
437
|
if (conflictingLabelFabric !== undefined) {
|
|
@@ -487,7 +487,7 @@ export const OperationalCredentialsClusterHandler: (
|
|
|
487
487
|
}) => {
|
|
488
488
|
assertSecureSession(session);
|
|
489
489
|
|
|
490
|
-
const failsafeContext =
|
|
490
|
+
const failsafeContext = MatterDevice.of(session).failsafeContext;
|
|
491
491
|
|
|
492
492
|
if (failsafeContext.hasRootCert) {
|
|
493
493
|
throw new StatusResponseError(
|
|
@@ -4,19 +4,9 @@
|
|
|
4
4
|
* SPDX-License-Identifier: Apache-2.0
|
|
5
5
|
*/
|
|
6
6
|
|
|
7
|
+
import { Specification } from "#model";
|
|
8
|
+
|
|
7
9
|
export {
|
|
8
|
-
DEFAULT_MAX_PATHS_PER_INVOKE,
|
|
9
|
-
EventHandler,
|
|
10
|
-
INTERACTION_MODEL_REVISION,
|
|
11
|
-
INTERACTION_PROTOCOL_ID,
|
|
12
|
-
IncomingInteractionClientMessenger,
|
|
13
|
-
InteractionClient,
|
|
14
|
-
InteractionClientMessenger,
|
|
15
|
-
InteractionEndpointStructure,
|
|
16
|
-
InteractionServer,
|
|
17
|
-
MessageType,
|
|
18
|
-
SubscriptionHandler,
|
|
19
|
-
SubscriptionOptions,
|
|
20
10
|
attributePathToId,
|
|
21
11
|
canAttributePayloadBeChunked,
|
|
22
12
|
chunkAttributePayload,
|
|
@@ -29,9 +19,16 @@ export {
|
|
|
29
19
|
decodeUnknownEventValue,
|
|
30
20
|
encodeAttributePayload,
|
|
31
21
|
encodeEventPayload,
|
|
22
|
+
EventHandler,
|
|
32
23
|
eventPathToId,
|
|
33
24
|
expandPathsInAttributeData,
|
|
34
25
|
genericElementPathToId,
|
|
26
|
+
IncomingInteractionClientMessenger,
|
|
27
|
+
InteractionClient,
|
|
28
|
+
InteractionClientMessenger,
|
|
29
|
+
InteractionEndpointStructure,
|
|
30
|
+
InteractionServer,
|
|
31
|
+
MessageType,
|
|
35
32
|
normalizeAndDecodeAttributeData,
|
|
36
33
|
normalizeAndDecodeEventData,
|
|
37
34
|
normalizeAndDecodeReadAttributeReport,
|
|
@@ -40,6 +37,8 @@ export {
|
|
|
40
37
|
normalizeEventData,
|
|
41
38
|
sortAttributeDataByPath,
|
|
42
39
|
structureReadAttributeDataToClusterObject,
|
|
40
|
+
ServerSubscription as SubscriptionHandler,
|
|
41
|
+
ServerSubscriptionConfig as SubscriptionOptions,
|
|
43
42
|
validateReadAttributesPath,
|
|
44
43
|
validateReadEventPath,
|
|
45
44
|
type AttributePath,
|
|
@@ -67,5 +66,7 @@ export {
|
|
|
67
66
|
type WriteRequest,
|
|
68
67
|
type WriteResponse,
|
|
69
68
|
} from "#protocol";
|
|
70
|
-
export { StatusResponseError } from "
|
|
69
|
+
export { DEFAULT_MAX_PATHS_PER_INVOKE, INTERACTION_PROTOCOL_ID, StatusResponseError } from "#types";
|
|
71
70
|
export * from "@matter.js/types/protocol";
|
|
71
|
+
|
|
72
|
+
export const INTERACTION_MODEL_REVISION = Specification.INTERACTION_MODEL_REVISION;
|
package/src/compat/protocol.ts
CHANGED
|
@@ -8,8 +8,7 @@ export {
|
|
|
8
8
|
ChannelManager,
|
|
9
9
|
ChannelNotConnectedError,
|
|
10
10
|
CommissioningError,
|
|
11
|
-
|
|
12
|
-
ControllerCommissioner,
|
|
11
|
+
ControllerCommissioningFlow as ControllerCommissioner,
|
|
13
12
|
ControllerDiscovery,
|
|
14
13
|
DiscoveryError,
|
|
15
14
|
DuplicateMessageError,
|
|
@@ -28,7 +27,7 @@ export {
|
|
|
28
27
|
NoChannelError,
|
|
29
28
|
PairRetransmissionLimitReachedError,
|
|
30
29
|
UnexpectedMessageError,
|
|
31
|
-
type
|
|
30
|
+
type ControllingCommissioningFlowOptions as CommissioningOptions,
|
|
32
31
|
type ExchangeSendOptions,
|
|
33
32
|
type ProtocolHandler,
|
|
34
33
|
} from "#protocol";
|
|
@@ -8,12 +8,11 @@ export {
|
|
|
8
8
|
ChannelStatusResponseError,
|
|
9
9
|
DEFAULT_NORMAL_PROCESSING_TIME_MS,
|
|
10
10
|
EXPECTED_CRYPTO_PROCESSING_TIME_MS,
|
|
11
|
-
GeneralStatusCode,
|
|
12
|
-
ProtocolStatusCode,
|
|
13
11
|
SecureChannelMessenger,
|
|
14
12
|
SecureChannelProtocol,
|
|
15
13
|
SecureChannelStatusMessageSchema,
|
|
16
|
-
SecureMessageType,
|
|
17
14
|
StatusReportOnlySecureChannelProtocol,
|
|
18
15
|
type StatusMessage,
|
|
19
16
|
} from "#protocol";
|
|
17
|
+
|
|
18
|
+
export { GeneralStatusCode, ProtocolStatusCode, SecureMessageType } from "#types";
|
package/src/compat/util.ts
CHANGED
|
@@ -20,6 +20,7 @@ import {
|
|
|
20
20
|
EventPath,
|
|
21
21
|
EventStorageData,
|
|
22
22
|
FabricScopedAttributeServer,
|
|
23
|
+
InteractionContext,
|
|
23
24
|
InteractionEndpointStructure,
|
|
24
25
|
InteractionServer,
|
|
25
26
|
Message,
|
|
@@ -40,10 +41,9 @@ export class LegacyInteractionServer extends InteractionServer {
|
|
|
40
41
|
#endpointStructure: InteractionEndpointStructure;
|
|
41
42
|
#aclManager?: AccessControlManager;
|
|
42
43
|
|
|
43
|
-
constructor(
|
|
44
|
-
|
|
45
|
-
|
|
46
|
-
this.#endpointStructure = endpointStructure;
|
|
44
|
+
constructor(context: InteractionContext) {
|
|
45
|
+
super(context);
|
|
46
|
+
this.#endpointStructure = context.structure;
|
|
47
47
|
}
|
|
48
48
|
|
|
49
49
|
#getAclManager(session: Session) {
|
package/src/device/PairedNode.ts
CHANGED
|
@@ -14,7 +14,6 @@ import {
|
|
|
14
14
|
MatterError,
|
|
15
15
|
Time,
|
|
16
16
|
} from "#general";
|
|
17
|
-
import { NodeDiscoveryType } from "#MatterController.js";
|
|
18
17
|
import {
|
|
19
18
|
AttributeClientValues,
|
|
20
19
|
ChannelStatusResponseError,
|
|
@@ -25,6 +24,7 @@ import {
|
|
|
25
24
|
EndpointInterface,
|
|
26
25
|
EndpointLoggingOptions,
|
|
27
26
|
InteractionClient,
|
|
27
|
+
NodeDiscoveryType,
|
|
28
28
|
PaseClient,
|
|
29
29
|
logEndpoint,
|
|
30
30
|
structureReadAttributeDataToClusterObject,
|