@matter/protocol 0.16.0-alpha.0-20251104-8c3166ea3 → 0.16.0-alpha.0-20251106-4e10fd77b
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/action/client/ClientInteraction.d.ts +1 -0
- package/dist/cjs/action/client/ClientInteraction.d.ts.map +1 -1
- package/dist/cjs/action/client/ClientInteraction.js +3 -0
- package/dist/cjs/action/client/ClientInteraction.js.map +1 -1
- package/dist/cjs/action/client/subscription/ClientSubscriptionHandler.js +2 -4
- package/dist/cjs/action/client/subscription/ClientSubscriptionHandler.js.map +1 -1
- package/dist/cjs/certificate/index.d.ts +1 -0
- package/dist/cjs/certificate/index.d.ts.map +1 -1
- package/dist/cjs/certificate/index.js +1 -0
- package/dist/cjs/certificate/index.js.map +1 -1
- package/dist/cjs/certificate/kinds/Icac.d.ts.map +1 -1
- package/dist/cjs/certificate/kinds/Icac.js +3 -0
- package/dist/cjs/certificate/kinds/Icac.js.map +1 -1
- package/dist/cjs/certificate/kinds/Noc.d.ts.map +1 -1
- package/dist/cjs/certificate/kinds/Noc.js +3 -0
- package/dist/cjs/certificate/kinds/Noc.js.map +1 -1
- package/dist/cjs/certificate/kinds/Rcac.d.ts.map +1 -1
- package/dist/cjs/certificate/kinds/Rcac.js +3 -0
- package/dist/cjs/certificate/kinds/Rcac.js.map +1 -1
- package/dist/cjs/certificate/kinds/Vvsc.d.ts +29 -0
- package/dist/cjs/certificate/kinds/Vvsc.d.ts.map +1 -0
- package/dist/cjs/certificate/kinds/Vvsc.js +79 -0
- package/dist/cjs/certificate/kinds/Vvsc.js.map +6 -0
- package/dist/cjs/certificate/kinds/X509Base.d.ts.map +1 -1
- package/dist/cjs/certificate/kinds/X509Base.js +3 -0
- package/dist/cjs/certificate/kinds/X509Base.js.map +1 -1
- package/dist/cjs/certificate/kinds/definitions/asn.d.ts +2 -0
- package/dist/cjs/certificate/kinds/definitions/asn.d.ts.map +1 -1
- package/dist/cjs/certificate/kinds/definitions/asn.js +2 -0
- package/dist/cjs/certificate/kinds/definitions/asn.js.map +1 -1
- package/dist/cjs/certificate/kinds/definitions/operational.d.ts +109 -0
- package/dist/cjs/certificate/kinds/definitions/operational.d.ts.map +1 -1
- package/dist/cjs/certificate/kinds/definitions/operational.js +6 -0
- package/dist/cjs/certificate/kinds/definitions/operational.js.map +1 -1
- package/dist/cjs/certificate/kinds/index.d.ts +1 -0
- package/dist/cjs/certificate/kinds/index.d.ts.map +1 -1
- package/dist/cjs/certificate/kinds/index.js +1 -0
- package/dist/cjs/certificate/kinds/index.js.map +1 -1
- package/dist/cjs/fabric/Fabric.d.ts +6 -1
- package/dist/cjs/fabric/Fabric.d.ts.map +1 -1
- package/dist/cjs/fabric/Fabric.js +53 -2
- package/dist/cjs/fabric/Fabric.js.map +1 -1
- package/dist/cjs/fabric/FabricManager.d.ts.map +1 -1
- package/dist/cjs/fabric/FabricManager.js +24 -9
- package/dist/cjs/fabric/FabricManager.js.map +1 -1
- package/dist/cjs/peer/PhysicalDeviceProperties.d.ts +11 -7
- package/dist/cjs/peer/PhysicalDeviceProperties.d.ts.map +1 -1
- package/dist/cjs/peer/PhysicalDeviceProperties.js +34 -25
- package/dist/cjs/peer/PhysicalDeviceProperties.js.map +1 -1
- package/dist/cjs/protocol/DeviceAdvertiser.d.ts.map +1 -1
- package/dist/cjs/protocol/DeviceAdvertiser.js +17 -0
- package/dist/cjs/protocol/DeviceAdvertiser.js.map +1 -1
- package/dist/esm/action/client/ClientInteraction.d.ts +1 -0
- package/dist/esm/action/client/ClientInteraction.d.ts.map +1 -1
- package/dist/esm/action/client/ClientInteraction.js +3 -0
- package/dist/esm/action/client/ClientInteraction.js.map +1 -1
- package/dist/esm/action/client/subscription/ClientSubscriptionHandler.js +2 -4
- package/dist/esm/action/client/subscription/ClientSubscriptionHandler.js.map +1 -1
- package/dist/esm/certificate/index.d.ts +1 -0
- package/dist/esm/certificate/index.d.ts.map +1 -1
- package/dist/esm/certificate/index.js +1 -0
- package/dist/esm/certificate/index.js.map +1 -1
- package/dist/esm/certificate/kinds/Icac.d.ts.map +1 -1
- package/dist/esm/certificate/kinds/Icac.js +3 -0
- package/dist/esm/certificate/kinds/Icac.js.map +1 -1
- package/dist/esm/certificate/kinds/Noc.d.ts.map +1 -1
- package/dist/esm/certificate/kinds/Noc.js +3 -0
- package/dist/esm/certificate/kinds/Noc.js.map +1 -1
- package/dist/esm/certificate/kinds/Rcac.d.ts.map +1 -1
- package/dist/esm/certificate/kinds/Rcac.js +3 -0
- package/dist/esm/certificate/kinds/Rcac.js.map +1 -1
- package/dist/esm/certificate/kinds/Vvsc.d.ts +29 -0
- package/dist/esm/certificate/kinds/Vvsc.d.ts.map +1 -0
- package/dist/esm/certificate/kinds/Vvsc.js +59 -0
- package/dist/esm/certificate/kinds/Vvsc.js.map +6 -0
- package/dist/esm/certificate/kinds/X509Base.d.ts.map +1 -1
- package/dist/esm/certificate/kinds/X509Base.js +5 -1
- package/dist/esm/certificate/kinds/X509Base.js.map +1 -1
- package/dist/esm/certificate/kinds/definitions/asn.d.ts +2 -0
- package/dist/esm/certificate/kinds/definitions/asn.d.ts.map +1 -1
- package/dist/esm/certificate/kinds/definitions/asn.js +2 -0
- package/dist/esm/certificate/kinds/definitions/asn.js.map +1 -1
- package/dist/esm/certificate/kinds/definitions/operational.d.ts +109 -0
- package/dist/esm/certificate/kinds/definitions/operational.d.ts.map +1 -1
- package/dist/esm/certificate/kinds/definitions/operational.js +6 -0
- package/dist/esm/certificate/kinds/definitions/operational.js.map +1 -1
- package/dist/esm/certificate/kinds/index.d.ts +1 -0
- package/dist/esm/certificate/kinds/index.d.ts.map +1 -1
- package/dist/esm/certificate/kinds/index.js +1 -0
- package/dist/esm/certificate/kinds/index.js.map +1 -1
- package/dist/esm/fabric/Fabric.d.ts +6 -1
- package/dist/esm/fabric/Fabric.d.ts.map +1 -1
- package/dist/esm/fabric/Fabric.js +54 -3
- package/dist/esm/fabric/Fabric.js.map +1 -1
- package/dist/esm/fabric/FabricManager.d.ts.map +1 -1
- package/dist/esm/fabric/FabricManager.js +25 -9
- package/dist/esm/fabric/FabricManager.js.map +1 -1
- package/dist/esm/peer/PhysicalDeviceProperties.d.ts +11 -7
- package/dist/esm/peer/PhysicalDeviceProperties.d.ts.map +1 -1
- package/dist/esm/peer/PhysicalDeviceProperties.js +35 -26
- package/dist/esm/peer/PhysicalDeviceProperties.js.map +1 -1
- package/dist/esm/protocol/DeviceAdvertiser.d.ts.map +1 -1
- package/dist/esm/protocol/DeviceAdvertiser.js +17 -0
- package/dist/esm/protocol/DeviceAdvertiser.js.map +1 -1
- package/package.json +6 -6
- package/src/action/client/ClientInteraction.ts +5 -1
- package/src/action/client/subscription/ClientSubscriptionHandler.ts +2 -4
- package/src/certificate/index.ts +1 -0
- package/src/certificate/kinds/Icac.ts +5 -0
- package/src/certificate/kinds/Noc.ts +5 -0
- package/src/certificate/kinds/Rcac.ts +5 -0
- package/src/certificate/kinds/Vvsc.ts +72 -0
- package/src/certificate/kinds/X509Base.ts +4 -0
- package/src/certificate/kinds/definitions/asn.ts +3 -0
- package/src/certificate/kinds/definitions/operational.ts +8 -0
- package/src/certificate/kinds/index.ts +1 -0
- package/src/fabric/Fabric.ts +66 -3
- package/src/fabric/FabricManager.ts +32 -9
- package/src/peer/PhysicalDeviceProperties.ts +52 -35
- package/src/protocol/DeviceAdvertiser.ts +30 -0
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"version": 3,
|
|
3
3
|
"sources": ["../../../../src/certificate/kinds/index.ts"],
|
|
4
|
-
"mappings": "AAAA;AAAA;AAAA;AAAA;AAAA;AAMA,cAAc;AACd,cAAc;AACd,cAAc;AACd,cAAc;AACd,cAAc;AACd,cAAc;",
|
|
4
|
+
"mappings": "AAAA;AAAA;AAAA;AAAA;AAAA;AAMA,cAAc;AACd,cAAc;AACd,cAAc;AACd,cAAc;AACd,cAAc;AACd,cAAc;AACd,cAAc;",
|
|
5
5
|
"names": []
|
|
6
6
|
}
|
|
@@ -27,7 +27,6 @@ export declare class Fabric {
|
|
|
27
27
|
readonly rootNodeId: NodeId;
|
|
28
28
|
readonly operationalId: Bytes;
|
|
29
29
|
readonly rootPublicKey: Bytes;
|
|
30
|
-
readonly rootVendorId: VendorId;
|
|
31
30
|
readonly rootCert: Bytes;
|
|
32
31
|
readonly identityProtectionKey: Bytes;
|
|
33
32
|
readonly operationalIdentityProtectionKey: Bytes;
|
|
@@ -38,6 +37,10 @@ export declare class Fabric {
|
|
|
38
37
|
get config(): Fabric.Config;
|
|
39
38
|
get label(): string;
|
|
40
39
|
setLabel(label: string): Promise<void>;
|
|
40
|
+
get vidVerificationStatement(): AllowSharedBufferSource | undefined;
|
|
41
|
+
updateVendorVerificationData(vendorId: VendorId | undefined, vidVerificationStatement: Bytes | undefined, vvsc: Bytes | undefined): Promise<void>;
|
|
42
|
+
get vvsc(): AllowSharedBufferSource | undefined;
|
|
43
|
+
get rootVendorId(): VendorId;
|
|
41
44
|
set storage(storage: StorageContext);
|
|
42
45
|
get storage(): StorageContext | undefined;
|
|
43
46
|
get groups(): FabricGroups;
|
|
@@ -105,6 +108,8 @@ export declare namespace Fabric {
|
|
|
105
108
|
rootVendorId: VendorId;
|
|
106
109
|
rootCert: Bytes;
|
|
107
110
|
identityProtectionKey: Bytes;
|
|
111
|
+
vidVerificationStatement?: Bytes;
|
|
112
|
+
vvsc?: Bytes;
|
|
108
113
|
operationalIdentityProtectionKey: Bytes;
|
|
109
114
|
intermediateCACert: Bytes | undefined;
|
|
110
115
|
operationalCert: Bytes;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Fabric.d.ts","sourceRoot":"","sources":["../../../src/fabric/Fabric.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAMH,OAAO,EACH,aAAa,EACb,KAAK,EACL,MAAM,EAMN,GAAG,EAEH,WAAW,EAEX,YAAY,EACZ,UAAU,EACV,cAAc,EACjB,MAAM,UAAU,CAAC;AAClB,OAAO,EAAE,YAAY,EAAuB,MAAM,yBAAyB,CAAC;AAC5E,OAAO,EAAE,mBAAmB,EAAE,MAAM,qCAAqC,CAAC;AAC1E,OAAO,EAAE,WAAW,EAAE,MAAM,sBAAsB,CAAC;AACnD,OAAO,EAAE,OAAO,EAAE,MAAM,qBAAqB,CAAC;AAC9C,OAAO,EAAwB,QAAQ,EAAE,WAAW,EAAE,OAAO,EAAE,MAAM,
|
|
1
|
+
{"version":3,"file":"Fabric.d.ts","sourceRoot":"","sources":["../../../src/fabric/Fabric.ts"],"names":[],"mappings":"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"}
|
|
@@ -22,7 +22,7 @@ import {
|
|
|
22
22
|
import { FabricGroups, GROUP_SECURITY_INFO } from "#groups/FabricGroups.js";
|
|
23
23
|
import { FabricAccessControl } from "#interaction/FabricAccessControl.js";
|
|
24
24
|
import { PeerAddress } from "#peer/PeerAddress.js";
|
|
25
|
-
import { CaseAuthenticatedTag, FabricId, GroupId, NodeId } from "#types";
|
|
25
|
+
import { CaseAuthenticatedTag, FabricId, GroupId, NodeId, StatusResponse } from "#types";
|
|
26
26
|
const logger = Logger.get("Fabric");
|
|
27
27
|
const COMPRESSED_FABRIC_ID_INFO = Bytes.fromString("CompressedFabric");
|
|
28
28
|
class PublicKeyError extends MatterError {
|
|
@@ -35,7 +35,7 @@ class Fabric {
|
|
|
35
35
|
rootNodeId;
|
|
36
36
|
operationalId;
|
|
37
37
|
rootPublicKey;
|
|
38
|
-
rootVendorId;
|
|
38
|
+
#rootVendorId;
|
|
39
39
|
rootCert;
|
|
40
40
|
identityProtectionKey;
|
|
41
41
|
operationalIdentityProtectionKey;
|
|
@@ -45,6 +45,8 @@ class Fabric {
|
|
|
45
45
|
#sessions = /* @__PURE__ */ new Set();
|
|
46
46
|
#groups;
|
|
47
47
|
#accessControl;
|
|
48
|
+
#vidVerificationStatement;
|
|
49
|
+
#vvsc;
|
|
48
50
|
#label;
|
|
49
51
|
#removeCallbacks = new Array();
|
|
50
52
|
#persistCallback;
|
|
@@ -57,12 +59,14 @@ class Fabric {
|
|
|
57
59
|
this.rootNodeId = config.rootNodeId;
|
|
58
60
|
this.operationalId = config.operationalId;
|
|
59
61
|
this.rootPublicKey = config.rootPublicKey;
|
|
60
|
-
this
|
|
62
|
+
this.#rootVendorId = config.rootVendorId;
|
|
61
63
|
this.rootCert = config.rootCert;
|
|
62
64
|
this.identityProtectionKey = config.identityProtectionKey;
|
|
63
65
|
this.operationalIdentityProtectionKey = config.operationalIdentityProtectionKey;
|
|
64
66
|
this.intermediateCACert = config.intermediateCACert;
|
|
65
67
|
this.operationalCert = config.operationalCert;
|
|
68
|
+
this.#vidVerificationStatement = config.vidVerificationStatement;
|
|
69
|
+
this.#vvsc = config.vvsc;
|
|
66
70
|
this.#label = config.label;
|
|
67
71
|
this.#keyPair = PrivateKey(config.keyPair);
|
|
68
72
|
this.#accessControl = new FabricAccessControl(this);
|
|
@@ -86,6 +90,7 @@ class Fabric {
|
|
|
86
90
|
operationalIdentityProtectionKey: this.operationalIdentityProtectionKey,
|
|
87
91
|
intermediateCACert: this.intermediateCACert,
|
|
88
92
|
operationalCert: this.operationalCert,
|
|
93
|
+
vidVerificationStatement: this.vidVerificationStatement,
|
|
89
94
|
label: this.#label
|
|
90
95
|
};
|
|
91
96
|
}
|
|
@@ -102,6 +107,46 @@ class Fabric {
|
|
|
102
107
|
this.#label = label;
|
|
103
108
|
await this.persist();
|
|
104
109
|
}
|
|
110
|
+
get vidVerificationStatement() {
|
|
111
|
+
return this.#vidVerificationStatement;
|
|
112
|
+
}
|
|
113
|
+
async updateVendorVerificationData(vendorId, vidVerificationStatement, vvsc) {
|
|
114
|
+
if (vvsc !== void 0 && this.intermediateCACert !== void 0) {
|
|
115
|
+
throw new StatusResponse.InvalidCommandError("A VVSC is only allowed without an ICAC.");
|
|
116
|
+
}
|
|
117
|
+
if (vidVerificationStatement !== void 0) {
|
|
118
|
+
if (vidVerificationStatement.byteLength === 0) {
|
|
119
|
+
this.#vidVerificationStatement = void 0;
|
|
120
|
+
} else if (vidVerificationStatement.byteLength === 85) {
|
|
121
|
+
this.#vidVerificationStatement = vidVerificationStatement;
|
|
122
|
+
} else {
|
|
123
|
+
throw new StatusResponse.ConstraintErrorError("VID Verification Statement must be 0 or 85 bytes long.");
|
|
124
|
+
}
|
|
125
|
+
}
|
|
126
|
+
if (vendorId !== void 0) {
|
|
127
|
+
this.#rootVendorId = vendorId;
|
|
128
|
+
}
|
|
129
|
+
if (vvsc !== void 0) {
|
|
130
|
+
if (vvsc.byteLength === 0) {
|
|
131
|
+
this.#vvsc = void 0;
|
|
132
|
+
} else {
|
|
133
|
+
this.#vvsc = vvsc;
|
|
134
|
+
}
|
|
135
|
+
}
|
|
136
|
+
logger.info(
|
|
137
|
+
"Updated Vendor Verification Data for Fabric",
|
|
138
|
+
this.#rootVendorId,
|
|
139
|
+
this.#vidVerificationStatement,
|
|
140
|
+
this.#vvsc
|
|
141
|
+
);
|
|
142
|
+
await this.persist();
|
|
143
|
+
}
|
|
144
|
+
get vvsc() {
|
|
145
|
+
return this.#vvsc;
|
|
146
|
+
}
|
|
147
|
+
get rootVendorId() {
|
|
148
|
+
return this.#rootVendorId;
|
|
149
|
+
}
|
|
105
150
|
set storage(storage) {
|
|
106
151
|
this.#storage = storage;
|
|
107
152
|
this.#groups.storage = storage;
|
|
@@ -226,6 +271,8 @@ class FabricBuilder {
|
|
|
226
271
|
#rootNodeId;
|
|
227
272
|
#rootPublicKey;
|
|
228
273
|
#identityProtectionKey;
|
|
274
|
+
#vidVerificationStatement;
|
|
275
|
+
#vvsc;
|
|
229
276
|
#fabricIndex;
|
|
230
277
|
#label = "";
|
|
231
278
|
constructor(crypto, key) {
|
|
@@ -313,6 +360,8 @@ class FabricBuilder {
|
|
|
313
360
|
this.#identityProtectionKey = fabric.identityProtectionKey;
|
|
314
361
|
this.#rootCert = fabric.rootCert;
|
|
315
362
|
this.#rootPublicKey = fabric.rootPublicKey;
|
|
363
|
+
this.#vidVerificationStatement = fabric.vidVerificationStatement;
|
|
364
|
+
this.#vvsc = fabric.vvsc;
|
|
316
365
|
this.#label = fabric.label;
|
|
317
366
|
}
|
|
318
367
|
matchesToFabric(fabric) {
|
|
@@ -367,6 +416,8 @@ class FabricBuilder {
|
|
|
367
416
|
),
|
|
368
417
|
intermediateCACert: this.#intermediateCACert,
|
|
369
418
|
operationalCert: this.#operationalCert,
|
|
419
|
+
vidVerificationStatement: this.#vidVerificationStatement,
|
|
420
|
+
vvsc: this.#vvsc,
|
|
370
421
|
label: this.#label
|
|
371
422
|
});
|
|
372
423
|
}
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"version": 3,
|
|
3
3
|
"sources": ["../../../src/fabric/Fabric.ts"],
|
|
4
|
-
"mappings": "AAAA;AAAA;AAAA;AAAA;AAAA;AAMA,SAAS,YAAY;AACrB,SAAS,WAAW;AACpB,SAAS,YAAY;AACrB,SAAS,gBAAgB;AACzB;AAAA,EAEI;AAAA,EAEA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EAEA;AAAA,EACA;AAAA,EACA;AAAA,EAEA;AAAA,OAEG;AACP,SAAS,cAAc,2BAA2B;AAClD,SAAS,2BAA2B;AACpC,SAAS,mBAAmB;AAE5B,SAAS,sBAAsB,UAAuB,SAAS,
|
|
4
|
+
"mappings": "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",
|
|
5
5
|
"names": []
|
|
6
6
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"FabricManager.d.ts","sourceRoot":"","sources":["../../../src/fabric/FabricManager.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO,EACH,KAAK,EACL,YAAY,EACZ,MAAM,EACN,WAAW,EACX,aAAa,EAEb,GAAG,
|
|
1
|
+
{"version":3,"file":"FabricManager.d.ts","sourceRoot":"","sources":["../../../src/fabric/FabricManager.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO,EACH,KAAK,EACL,YAAY,EACZ,MAAM,EACN,WAAW,EACX,aAAa,EAEb,GAAG,EAEH,WAAW,EAEX,YAAY,EACZ,UAAU,EACV,cAAc,EAEjB,MAAM,UAAU,CAAC;AAClB,OAAO,EAAE,WAAW,EAAE,MAAM,sBAAsB,CAAC;AACnD,OAAO,EAAE,WAAW,EAAE,MAAM,QAAQ,CAAC;AACrC,OAAO,EAAE,MAAM,EAAE,MAAM,aAAa,CAAC;AAIrC,qDAAqD;AACrD,qBAAa,mBAAoB,SAAQ,WAAW;CAAG;AACvD,qBAAa,oBAAqB,SAAQ,WAAW;CAAG;AAExD,oBAAY,YAAY;IACpB,KAAK,IAAA;IACL,OAAO,IAAA;IACP,OAAO,IAAA;CACV;AAED,qBAAa,aAAa;;gBAcV,MAAM,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE,cAAc;IA4BpD,IAAI,MAAM,WAET;IAED,IAAI,YAAY,gCAEf;IAEK,CAAC,YAAY,CAAC,SAAS,CAAC;IAI9B,MAAM,CAAC,CAAC,aAAa,CAAC,MAAM,CAAC,CAAC,GAAG,EAAE,WAAW;IAM9C,IAAI,MAAM;;;;;MAET;IAEK,KAAK;IAOX,GAAG,CAAC,OAAO,EAAE,WAAW,GAAG,WAAW;IAOtC,GAAG,CAAC,OAAO,EAAE,WAAW,GAAG,WAAW;IAWtC,mBAAmB;IAanB,cAAc,IAAI,YAAY,CAAC,IAAI,CAAC;IAmBpC,SAAS,CAAC,MAAM,EAAE,MAAM;IA4ClB,YAAY,CAAC,WAAW,EAAE,WAAW;IAgB3C,CAAC,MAAM,CAAC,QAAQ,CAAC;IAMjB,IAAI,OAAO,aAIV;IAED,IAAI,MAAM,WAET;IAED,IAAI,CAAC,SAAS,EAAE,CAAC,MAAM,EAAE,MAAM,KAAK,OAAO;IAI3C,GAAG,CAAC,CAAC,EAAE,UAAU,EAAE,CAAC,MAAM,EAAE,MAAM,KAAK,CAAC;IAIlC,2BAA2B,CAAC,aAAa,EAAE,KAAK,EAAE,eAAe,EAAE,KAAK;IAa9E,aAAa,CAAC,OAAO,EAAE,GAAG;IAW1B,WAAW,CAAC,KAAK,EAAE,WAAW;IAMxB,YAAY,CAAC,MAAM,EAAE,MAAM;IAuB3B,YAAY,CAAC,WAAW,EAAE,WAAW;CAS9C"}
|
|
@@ -9,6 +9,7 @@ import {
|
|
|
9
9
|
Crypto,
|
|
10
10
|
Environmental,
|
|
11
11
|
ImplementationError,
|
|
12
|
+
Logger,
|
|
12
13
|
MatterError,
|
|
13
14
|
MatterFlowError,
|
|
14
15
|
MaybePromise,
|
|
@@ -17,6 +18,7 @@ import {
|
|
|
17
18
|
} from "#general";
|
|
18
19
|
import { FabricIndex } from "#types";
|
|
19
20
|
import { Fabric } from "./Fabric.js";
|
|
21
|
+
const logger = Logger.get("FabricManager");
|
|
20
22
|
class FabricNotFoundError extends MatterError {
|
|
21
23
|
}
|
|
22
24
|
class FabricTableFullError extends MatterError {
|
|
@@ -54,7 +56,7 @@ class FabricManager {
|
|
|
54
56
|
}
|
|
55
57
|
const fabrics = await this.#storage.get("fabrics", []);
|
|
56
58
|
for (const fabricConfig of fabrics) {
|
|
57
|
-
this.#
|
|
59
|
+
this.#addNewFabric(new Fabric(crypto, fabricConfig));
|
|
58
60
|
}
|
|
59
61
|
this.#nextFabricIndex = await this.#storage.get("nextFabricIndex", this.#nextFabricIndex);
|
|
60
62
|
this.#initializationDone = true;
|
|
@@ -130,17 +132,30 @@ class FabricManager {
|
|
|
130
132
|
}
|
|
131
133
|
addFabric(fabric) {
|
|
132
134
|
this.#construction.assert();
|
|
133
|
-
this.#
|
|
135
|
+
this.#addNewFabric(fabric);
|
|
134
136
|
}
|
|
135
|
-
#
|
|
137
|
+
#addNewFabric(fabric) {
|
|
136
138
|
const { fabricIndex } = fabric;
|
|
137
139
|
if (this.#fabrics.has(fabricIndex)) {
|
|
138
140
|
throw new MatterFlowError(`Fabric with index ${fabricIndex} already exists.`);
|
|
139
141
|
}
|
|
142
|
+
this.#addOrUpdateFabricEntry(fabric);
|
|
143
|
+
if (this.#initializationDone) {
|
|
144
|
+
this.#events.added.emit(fabric);
|
|
145
|
+
}
|
|
146
|
+
}
|
|
147
|
+
/** Insert Fabric into the manager without emitting events */
|
|
148
|
+
#addOrUpdateFabricEntry(fabric) {
|
|
149
|
+
const { fabricIndex } = fabric;
|
|
140
150
|
this.#fabrics.set(fabricIndex, fabric);
|
|
141
151
|
fabric.addRemoveCallback(async () => this.removeFabric(fabricIndex));
|
|
142
152
|
fabric.persistCallback = (isUpdate = true) => {
|
|
143
153
|
if (!this.#storage) {
|
|
154
|
+
if (isUpdate) {
|
|
155
|
+
logger.warn(
|
|
156
|
+
"Fabric can not be persisted because FabricManager has no storage but it is a fabric update."
|
|
157
|
+
);
|
|
158
|
+
}
|
|
144
159
|
return;
|
|
145
160
|
}
|
|
146
161
|
const persistResult = this.persistFabrics();
|
|
@@ -150,12 +165,9 @@ class FabricManager {
|
|
|
150
165
|
}
|
|
151
166
|
});
|
|
152
167
|
};
|
|
153
|
-
if (this.#storage !== void 0) {
|
|
168
|
+
if (this.#storage !== void 0 && fabric.storage === void 0) {
|
|
154
169
|
fabric.storage = this.#storage.createContext(`fabric-${fabricIndex}`);
|
|
155
170
|
}
|
|
156
|
-
if (this.#initializationDone) {
|
|
157
|
-
this.#events.added.emit(fabric);
|
|
158
|
-
}
|
|
159
171
|
}
|
|
160
172
|
async removeFabric(fabricIndex) {
|
|
161
173
|
await this.#construction;
|
|
@@ -214,12 +226,16 @@ class FabricManager {
|
|
|
214
226
|
async updateFabric(fabric) {
|
|
215
227
|
await this.#construction;
|
|
216
228
|
const { fabricIndex } = fabric;
|
|
217
|
-
|
|
229
|
+
const existingFabric = this.#fabrics.get(fabricIndex);
|
|
230
|
+
if (existingFabric === void 0) {
|
|
218
231
|
throw new FabricNotFoundError(
|
|
219
232
|
`Fabric with index ${fabricIndex} cannot be updated because it does not exist.`
|
|
220
233
|
);
|
|
221
234
|
}
|
|
222
|
-
|
|
235
|
+
if (existingFabric === fabric) {
|
|
236
|
+
return;
|
|
237
|
+
}
|
|
238
|
+
this.#addOrUpdateFabricEntry(fabric);
|
|
223
239
|
if (this.#storage) {
|
|
224
240
|
await this.persistFabrics();
|
|
225
241
|
}
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"version": 3,
|
|
3
3
|
"sources": ["../../../src/fabric/FabricManager.ts"],
|
|
4
|
-
"mappings": "AAAA;AAAA;AAAA;AAAA;AAAA;AAMA;AAAA,EACI;AAAA,EACA;AAAA,EACA;AAAA,EAEA;AAAA,EACA;AAAA,EAEA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EAEA;AAAA,OACG;AAEP,SAAS,mBAAmB;AAC5B,SAAS,cAAc;
|
|
4
|
+
"mappings": "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",
|
|
5
5
|
"names": ["FabricAction"]
|
|
6
6
|
}
|
|
@@ -3,24 +3,28 @@
|
|
|
3
3
|
* Copyright 2022-2025 Matter.js Authors
|
|
4
4
|
* SPDX-License-Identifier: Apache-2.0
|
|
5
5
|
*/
|
|
6
|
+
import { Duration } from "#general";
|
|
6
7
|
export interface PhysicalDeviceProperties {
|
|
7
8
|
threadConnected: boolean;
|
|
8
9
|
wifiConnected: boolean;
|
|
9
10
|
ethernetConnected: boolean;
|
|
10
11
|
rootEndpointServerList: number[];
|
|
12
|
+
isMainsPowered: boolean;
|
|
11
13
|
isBatteryPowered: boolean;
|
|
12
14
|
isIntermittentlyConnected: boolean;
|
|
13
15
|
isThreadSleepyEndDevice: boolean;
|
|
14
16
|
}
|
|
15
17
|
export declare namespace PhysicalDeviceProperties {
|
|
16
|
-
function
|
|
18
|
+
function subscriptionIntervalBoundsFor(options?: {
|
|
17
19
|
properties?: PhysicalDeviceProperties;
|
|
18
20
|
description?: string;
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
|
|
21
|
+
request?: Partial<PhysicalDeviceProperties.IntervalBounds>;
|
|
22
|
+
}): PhysicalDeviceProperties.IntervalBounds;
|
|
23
|
+
}
|
|
24
|
+
export declare namespace PhysicalDeviceProperties {
|
|
25
|
+
interface IntervalBounds {
|
|
26
|
+
minIntervalFloor: Duration;
|
|
27
|
+
maxIntervalCeiling: Duration;
|
|
28
|
+
}
|
|
25
29
|
}
|
|
26
30
|
//# sourceMappingURL=PhysicalDeviceProperties.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"PhysicalDeviceProperties.d.ts","sourceRoot":"","sources":["../../../src/peer/PhysicalDeviceProperties.ts"],"names":[],"mappings":"AAAA;;;;GAIG;
|
|
1
|
+
{"version":3,"file":"PhysicalDeviceProperties.d.ts","sourceRoot":"","sources":["../../../src/peer/PhysicalDeviceProperties.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO,EAAE,QAAQ,EAAqC,MAAM,UAAU,CAAC;AAWvE,MAAM,WAAW,wBAAwB;IACrC,eAAe,EAAE,OAAO,CAAC;IACzB,aAAa,EAAE,OAAO,CAAC;IACvB,iBAAiB,EAAE,OAAO,CAAC;IAC3B,sBAAsB,EAAE,MAAM,EAAE,CAAC;IACjC,cAAc,EAAE,OAAO,CAAC;IACxB,gBAAgB,EAAE,OAAO,CAAC;IAC1B,yBAAyB,EAAE,OAAO,CAAC;IACnC,uBAAuB,EAAE,OAAO,CAAC;CACpC;AAED,yBAAiB,wBAAwB,CAAC;IACtC,SAAgB,6BAA6B,CAAC,OAAO,CAAC,EAAE;QACpD,UAAU,CAAC,EAAE,wBAAwB,CAAC;QACtC,WAAW,CAAC,EAAE,MAAM,CAAC;QACrB,OAAO,CAAC,EAAE,OAAO,CAAC,wBAAwB,CAAC,cAAc,CAAC,CAAC;KAC9D,GAAG,wBAAwB,CAAC,cAAc,CAuD1C;CACJ;AAED,yBAAiB,wBAAwB,CAAC;IACtC,UAAiB,cAAc;QAC3B,gBAAgB,EAAE,QAAQ,CAAC;QAC3B,kBAAkB,EAAE,QAAQ,CAAC;KAChC;CACJ"}
|
|
@@ -3,50 +3,59 @@
|
|
|
3
3
|
* Copyright 2022-2025 Matter.js Authors
|
|
4
4
|
* SPDX-License-Identifier: Apache-2.0
|
|
5
5
|
*/
|
|
6
|
-
import { Logger } from "#general";
|
|
6
|
+
import { Duration, Instant, Logger, Minutes, Seconds } from "#general";
|
|
7
7
|
const logger = Logger.get("PhysicalDeviceProperties");
|
|
8
|
-
const
|
|
9
|
-
const
|
|
10
|
-
const
|
|
11
|
-
const
|
|
12
|
-
const
|
|
13
|
-
const
|
|
8
|
+
const DEFAULT_SUBSCRIPTION_FLOOR_DEFAULT = Seconds(1);
|
|
9
|
+
const DEFAULT_SUBSCRIPTION_FLOOR_ICD = Instant;
|
|
10
|
+
const DEFAULT_SUBSCRIPTION_CEILING_WIFI = Minutes(1);
|
|
11
|
+
const DEFAULT_SUBSCRIPTION_CEILING_THREAD = Minutes(1);
|
|
12
|
+
const DEFAULT_SUBSCRIPTION_CEILING_THREAD_SLEEPY = Minutes(3);
|
|
13
|
+
const DEFAULT_SUBSCRIPTION_CEILING_BATTERY_POWERED = Minutes(10);
|
|
14
14
|
var PhysicalDeviceProperties;
|
|
15
15
|
((PhysicalDeviceProperties2) => {
|
|
16
|
-
function
|
|
17
|
-
const { properties } = options ?? {};
|
|
18
|
-
let {
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
}
|
|
16
|
+
function subscriptionIntervalBoundsFor(options) {
|
|
17
|
+
const { properties, request } = options ?? {};
|
|
18
|
+
let { description } = options ?? {};
|
|
19
|
+
let minIntervalFloor, maxIntervalCeiling;
|
|
20
|
+
if (request) {
|
|
21
|
+
({ minIntervalFloor, maxIntervalCeiling } = request);
|
|
22
|
+
}
|
|
23
23
|
if (description === void 0) {
|
|
24
24
|
description = "Node";
|
|
25
25
|
}
|
|
26
|
-
const {
|
|
26
|
+
const {
|
|
27
|
+
isMainsPowered,
|
|
28
|
+
isBatteryPowered,
|
|
29
|
+
isIntermittentlyConnected,
|
|
30
|
+
threadConnected,
|
|
31
|
+
isThreadSleepyEndDevice
|
|
32
|
+
} = properties ?? {};
|
|
27
33
|
if (isIntermittentlyConnected) {
|
|
28
|
-
if (
|
|
34
|
+
if (minIntervalFloor !== void 0 && minIntervalFloor !== DEFAULT_SUBSCRIPTION_FLOOR_ICD) {
|
|
29
35
|
logger.info(
|
|
30
|
-
`${description}: Overwriting minIntervalFloorSeconds for intermittently connected device to ${
|
|
36
|
+
`${description}: Overwriting minIntervalFloorSeconds for intermittently connected device to ${Duration.format(DEFAULT_SUBSCRIPTION_FLOOR_ICD)}`
|
|
31
37
|
);
|
|
32
|
-
|
|
38
|
+
minIntervalFloor = DEFAULT_SUBSCRIPTION_FLOOR_ICD;
|
|
33
39
|
}
|
|
34
40
|
}
|
|
35
|
-
|
|
36
|
-
|
|
37
|
-
|
|
41
|
+
if (minIntervalFloor === void 0) {
|
|
42
|
+
minIntervalFloor = DEFAULT_SUBSCRIPTION_FLOOR_DEFAULT;
|
|
43
|
+
}
|
|
44
|
+
const defaultCeiling = isBatteryPowered && !isMainsPowered ? DEFAULT_SUBSCRIPTION_CEILING_BATTERY_POWERED : isThreadSleepyEndDevice ? DEFAULT_SUBSCRIPTION_CEILING_THREAD_SLEEPY : threadConnected ? DEFAULT_SUBSCRIPTION_CEILING_THREAD : DEFAULT_SUBSCRIPTION_CEILING_WIFI;
|
|
45
|
+
if (maxIntervalCeiling === void 0) {
|
|
46
|
+
maxIntervalCeiling = defaultCeiling;
|
|
38
47
|
}
|
|
39
|
-
if (
|
|
48
|
+
if (maxIntervalCeiling < defaultCeiling) {
|
|
40
49
|
logger.debug(
|
|
41
|
-
`${description}: maxIntervalCeilingSeconds ideally is ${defaultCeiling}s instead of ${
|
|
50
|
+
`${description}: maxIntervalCeilingSeconds ideally is ${defaultCeiling}s instead of ${maxIntervalCeiling}s due to device type`
|
|
42
51
|
);
|
|
43
52
|
}
|
|
44
53
|
return {
|
|
45
|
-
|
|
46
|
-
|
|
54
|
+
minIntervalFloor,
|
|
55
|
+
maxIntervalCeiling
|
|
47
56
|
};
|
|
48
57
|
}
|
|
49
|
-
PhysicalDeviceProperties2.
|
|
58
|
+
PhysicalDeviceProperties2.subscriptionIntervalBoundsFor = subscriptionIntervalBoundsFor;
|
|
50
59
|
})(PhysicalDeviceProperties || (PhysicalDeviceProperties = {}));
|
|
51
60
|
export {
|
|
52
61
|
PhysicalDeviceProperties
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"version": 3,
|
|
3
3
|
"sources": ["../../../src/peer/PhysicalDeviceProperties.ts"],
|
|
4
|
-
"mappings": "AAAA;AAAA;AAAA;AAAA;AAAA;AAMA,SAAS,
|
|
4
|
+
"mappings": "AAAA;AAAA;AAAA;AAAA;AAAA;AAMA,SAAS,UAAU,SAAS,QAAQ,SAAS,eAAe;AAE5D,MAAM,SAAS,OAAO,IAAI,0BAA0B;AAEpD,MAAM,qCAAqC,QAAQ,CAAC;AACpD,MAAM,iCAAiC;AACvC,MAAM,oCAAoC,QAAQ,CAAC;AACnD,MAAM,sCAAsC,QAAQ,CAAC;AACrD,MAAM,6CAA6C,QAAQ,CAAC;AAC5D,MAAM,+CAA+C,QAAQ,EAAE;AAaxD,IAAU;AAAA,CAAV,CAAUA,8BAAV;AACI,WAAS,8BAA8B,SAIF;AACxC,UAAM,EAAE,YAAY,QAAQ,IAAI,WAAW,CAAC;AAE5C,QAAI,EAAE,YAAY,IAAI,WAAW,CAAC;AAElC,QAAI,kBAAkB;AACtB,QAAI,SAAS;AACT,OAAC,EAAE,kBAAkB,mBAAmB,IAAI;AAAA,IAChD;AAEA,QAAI,gBAAgB,QAAW;AAC3B,oBAAc;AAAA,IAClB;AAEA,UAAM;AAAA,MACF;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,IACJ,IAAI,cAAc,CAAC;AAEnB,QAAI,2BAA2B;AAC3B,UAAI,qBAAqB,UAAa,qBAAqB,gCAAgC;AACvF,eAAO;AAAA,UACH,GAAG,WAAW,gFAAgF,SAAS,OAAO,8BAA8B,CAAC;AAAA,QACjJ;AACA,2BAAmB;AAAA,MACvB;AAAA,IACJ;AACA,QAAI,qBAAqB,QAAW;AAChC,yBAAmB;AAAA,IACvB;AAEA,UAAM,iBACF,oBAAoB,CAAC,iBACf,+CACA,0BACE,6CACA,kBACE,sCACA;AACd,QAAI,uBAAuB,QAAW;AAClC,2BAAqB;AAAA,IACzB;AACA,QAAI,qBAAqB,gBAAgB;AACrC,aAAO;AAAA,QACH,GAAG,WAAW,0CAA0C,cAAc,gBAAgB,kBAAkB;AAAA,MAC5G;AAAA,IACJ;AAEA,WAAO;AAAA,MACH;AAAA,MACA;AAAA,IACJ;AAAA,EACJ;AA3DO,EAAAA,0BAAS;AAAA,GADH;",
|
|
5
5
|
"names": ["PhysicalDeviceProperties"]
|
|
6
6
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"DeviceAdvertiser.d.ts","sourceRoot":"","sources":["../../../src/protocol/DeviceAdvertiser.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAGH,OAAO,EAAE,UAAU,EAAE,MAAM,8BAA8B,CAAC;AAC1D,OAAO,EAAE,kBAAkB,EAAE,MAAM,sCAAsC,CAAC;AAE1E,OAAO,EAAE,aAAa,EAAE,MAAM,0BAA0B,CAAC;AACzD,OAAO,EAAE,WAAW,EAAE,aAAa,EAA+C,MAAM,UAAU,CAAC;AAEnG,OAAO,EAAE,cAAc,EAAE,MAAM,4BAA4B,CAAC;AAI5D;;GAEG;AACH,MAAM,WAAW,uBAAuB;IACpC,OAAO,EAAE,aAAa,CAAC;IACvB,QAAQ,EAAE,cAAc,CAAC;CAC5B;AAED;;GAEG;AACH,qBAAa,gBAAgB;;gBAQb,OAAO,EAAE,uBAAuB;
|
|
1
|
+
{"version":3,"file":"DeviceAdvertiser.d.ts","sourceRoot":"","sources":["../../../src/protocol/DeviceAdvertiser.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAGH,OAAO,EAAE,UAAU,EAAE,MAAM,8BAA8B,CAAC;AAC1D,OAAO,EAAE,kBAAkB,EAAE,MAAM,sCAAsC,CAAC;AAE1E,OAAO,EAAE,aAAa,EAAE,MAAM,0BAA0B,CAAC;AACzD,OAAO,EAAE,WAAW,EAAE,aAAa,EAA+C,MAAM,UAAU,CAAC;AAEnG,OAAO,EAAE,cAAc,EAAE,MAAM,4BAA4B,CAAC;AAI5D;;GAEG;AACH,MAAM,WAAW,uBAAuB;IACpC,OAAO,EAAE,aAAa,CAAC;IACvB,QAAQ,EAAE,cAAc,CAAC;CAC5B;AAED;;GAEG;AACH,qBAAa,gBAAgB;;gBAQb,OAAO,EAAE,uBAAuB;IA4G5C,QAAQ;IAIR,MAAM,CAAC,CAAC,aAAa,CAAC,MAAM,CAAC,CAAC,GAAG,EAAE,WAAW;IAS9C;;OAEG;IACH,sBAAsB,CAAC,WAAW,EAAE,kBAAkB,CAAC,cAAc;IAsBrE;;OAEG;IACH,qBAAqB;IASrB;;OAEG;IACH,oBAAoB;IA+BpB;;OAEG;IACH,mBAAmB;IAUnB;;;;OAIG;IACH,oBAAoB;IAKd,KAAK;IAMX,aAAa,CAAC,UAAU,EAAE,UAAU;IAIpC,aAAa,CAAC,UAAU,EAAE,UAAU;IAI9B,gBAAgB,CAAC,UAAU,EAAE,UAAU;IAKvC,gBAAgB;CA6BzB"}
|
|
@@ -25,6 +25,23 @@ class DeviceAdvertiser {
|
|
|
25
25
|
}
|
|
26
26
|
this.#advertiseFabric(fabric, "startup");
|
|
27
27
|
});
|
|
28
|
+
this.#observers.on(fabrics.events.updated, async (fabric) => {
|
|
29
|
+
if (!this.#isOperational) {
|
|
30
|
+
return;
|
|
31
|
+
}
|
|
32
|
+
const fabricIndexAdvertisements = this.#advertisements(
|
|
33
|
+
(ad) => ad.isOperational() && ad.description.fabric.fabricIndex === fabric.fabricIndex
|
|
34
|
+
);
|
|
35
|
+
if (fabricIndexAdvertisements.every(
|
|
36
|
+
(ad) => ad.isOperational() && ad.description.fabric.operationalId === fabric.operationalId && ad.description.fabric.nodeId === fabric.nodeId
|
|
37
|
+
)) {
|
|
38
|
+
return;
|
|
39
|
+
}
|
|
40
|
+
for (const ad of fabricIndexAdvertisements) {
|
|
41
|
+
await ad.close();
|
|
42
|
+
}
|
|
43
|
+
this.#advertiseFabric(fabric, "startup");
|
|
44
|
+
});
|
|
28
45
|
this.#observers.on(fabrics.events.deleted, (fabric) => {
|
|
29
46
|
Advertisement.cancelAll(this.#advertisements((ad) => ad.isOperational() && ad.description.fabric === fabric));
|
|
30
47
|
});
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"version": 3,
|
|
3
3
|
"sources": ["../../../src/protocol/DeviceAdvertiser.ts"],
|
|
4
|
-
"mappings": "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",
|
|
4
|
+
"mappings": "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",
|
|
5
5
|
"names": []
|
|
6
6
|
}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@matter/protocol",
|
|
3
|
-
"version": "0.16.0-alpha.0-
|
|
3
|
+
"version": "0.16.0-alpha.0-20251106-4e10fd77b",
|
|
4
4
|
"description": "Low-level APIs for Matter interaction",
|
|
5
5
|
"keywords": [
|
|
6
6
|
"iot",
|
|
@@ -40,13 +40,13 @@
|
|
|
40
40
|
"#*": "./src/*"
|
|
41
41
|
},
|
|
42
42
|
"dependencies": {
|
|
43
|
-
"@matter/general": "0.16.0-alpha.0-
|
|
44
|
-
"@matter/model": "0.16.0-alpha.0-
|
|
45
|
-
"@matter/types": "0.16.0-alpha.0-
|
|
43
|
+
"@matter/general": "0.16.0-alpha.0-20251106-4e10fd77b",
|
|
44
|
+
"@matter/model": "0.16.0-alpha.0-20251106-4e10fd77b",
|
|
45
|
+
"@matter/types": "0.16.0-alpha.0-20251106-4e10fd77b"
|
|
46
46
|
},
|
|
47
47
|
"devDependencies": {
|
|
48
|
-
"@matter/tools": "0.16.0-alpha.0-
|
|
49
|
-
"@matter/testing": "0.16.0-alpha.0-
|
|
48
|
+
"@matter/tools": "0.16.0-alpha.0-20251106-4e10fd77b",
|
|
49
|
+
"@matter/testing": "0.16.0-alpha.0-20251106-4e10fd77b"
|
|
50
50
|
},
|
|
51
51
|
"files": [
|
|
52
52
|
"dist/**/*",
|
|
@@ -59,7 +59,7 @@ export class ClientInteraction<SessionT extends InteractionSession = Interaction
|
|
|
59
59
|
readonly #exchanges: ExchangeProvider;
|
|
60
60
|
readonly #subscriptions: ClientSubscriptions;
|
|
61
61
|
readonly #interactions = new BasicSet<Read | Write | Invoke | Subscribe>();
|
|
62
|
-
readonly #abort;
|
|
62
|
+
readonly #abort: Abort;
|
|
63
63
|
readonly #sustainRetries: RetrySchedule;
|
|
64
64
|
|
|
65
65
|
constructor({ environment, abort, sustainRetries }: ClientInteractionContext) {
|
|
@@ -72,6 +72,10 @@ export class ClientInteraction<SessionT extends InteractionSession = Interaction
|
|
|
72
72
|
);
|
|
73
73
|
}
|
|
74
74
|
|
|
75
|
+
get session() {
|
|
76
|
+
return this.#exchanges.session;
|
|
77
|
+
}
|
|
78
|
+
|
|
75
79
|
async close() {
|
|
76
80
|
this.#abort();
|
|
77
81
|
|
|
@@ -119,11 +119,9 @@ async function* processReports(
|
|
|
119
119
|
const decoded = DecodedDataReport(report);
|
|
120
120
|
|
|
121
121
|
if (decoded.subscriptionId === undefined) {
|
|
122
|
-
logger.debug(
|
|
123
|
-
"Ignoring data report for incorrect subscription id",
|
|
124
|
-
Diagnostic.strong(decoded.subscriptionId),
|
|
125
|
-
);
|
|
122
|
+
logger.debug("Ignoring data report with missing subscription id");
|
|
126
123
|
await sendInvalid(messenger, decoded.subscriptionId);
|
|
124
|
+
continue;
|
|
127
125
|
}
|
|
128
126
|
|
|
129
127
|
if (decoded.subscriptionId !== subscriptionId) {
|
package/src/certificate/index.ts
CHANGED