@matter/protocol 0.14.0-alpha.0-20250531-7ed2d6da8 → 0.14.0-alpha.0-20250601-939a65f46
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/peer/ControllerCommissioner.d.ts.map +1 -1
- package/dist/cjs/peer/ControllerCommissioner.js +2 -2
- package/dist/cjs/peer/ControllerCommissioner.js.map +1 -1
- package/dist/cjs/peer/ControllerCommissioningFlow.d.ts +34 -1
- package/dist/cjs/peer/ControllerCommissioningFlow.d.ts.map +1 -1
- package/dist/cjs/peer/ControllerCommissioningFlow.js +81 -27
- package/dist/cjs/peer/ControllerCommissioningFlow.js.map +1 -1
- package/dist/cjs/peer/ControllerDiscovery.d.ts.map +1 -1
- package/dist/cjs/peer/ControllerDiscovery.js +3 -3
- package/dist/cjs/peer/ControllerDiscovery.js.map +1 -1
- package/dist/cjs/peer/PeerSet.d.ts.map +1 -1
- package/dist/cjs/peer/PeerSet.js +39 -26
- package/dist/cjs/peer/PeerSet.js.map +1 -1
- package/dist/cjs/securechannel/SecureChannelMessenger.d.ts.map +1 -1
- package/dist/cjs/securechannel/SecureChannelMessenger.js +3 -1
- package/dist/cjs/securechannel/SecureChannelMessenger.js.map +1 -1
- package/dist/cjs/session/SessionManager.d.ts +10 -2
- package/dist/cjs/session/SessionManager.d.ts.map +1 -1
- package/dist/cjs/session/SessionManager.js +24 -8
- package/dist/cjs/session/SessionManager.js.map +1 -1
- package/dist/cjs/session/case/CaseClient.d.ts.map +1 -1
- package/dist/cjs/session/case/CaseClient.js.map +1 -1
- package/dist/cjs/session/case/CaseMessenger.js +1 -1
- package/dist/cjs/session/case/CaseMessenger.js.map +1 -1
- package/dist/esm/peer/ControllerCommissioner.d.ts.map +1 -1
- package/dist/esm/peer/ControllerCommissioner.js +4 -3
- package/dist/esm/peer/ControllerCommissioner.js.map +1 -1
- package/dist/esm/peer/ControllerCommissioningFlow.d.ts +34 -1
- package/dist/esm/peer/ControllerCommissioningFlow.d.ts.map +1 -1
- package/dist/esm/peer/ControllerCommissioningFlow.js +81 -27
- package/dist/esm/peer/ControllerCommissioningFlow.js.map +1 -1
- package/dist/esm/peer/ControllerDiscovery.d.ts.map +1 -1
- package/dist/esm/peer/ControllerDiscovery.js +3 -3
- package/dist/esm/peer/ControllerDiscovery.js.map +1 -1
- package/dist/esm/peer/PeerSet.d.ts.map +1 -1
- package/dist/esm/peer/PeerSet.js +40 -27
- package/dist/esm/peer/PeerSet.js.map +1 -1
- package/dist/esm/securechannel/SecureChannelMessenger.d.ts.map +1 -1
- package/dist/esm/securechannel/SecureChannelMessenger.js +3 -1
- package/dist/esm/securechannel/SecureChannelMessenger.js.map +1 -1
- package/dist/esm/session/SessionManager.d.ts +10 -2
- package/dist/esm/session/SessionManager.d.ts.map +1 -1
- package/dist/esm/session/SessionManager.js +24 -8
- package/dist/esm/session/SessionManager.js.map +1 -1
- package/dist/esm/session/case/CaseClient.d.ts.map +1 -1
- package/dist/esm/session/case/CaseClient.js.map +1 -1
- package/dist/esm/session/case/CaseMessenger.js +1 -1
- package/dist/esm/session/case/CaseMessenger.js.map +1 -1
- package/package.json +6 -6
- package/src/peer/ControllerCommissioner.ts +3 -2
- package/src/peer/ControllerCommissioningFlow.ts +87 -38
- package/src/peer/ControllerDiscovery.ts +3 -3
- package/src/peer/PeerSet.ts +56 -30
- package/src/securechannel/SecureChannelMessenger.ts +3 -1
- package/src/session/SessionManager.ts +24 -7
- package/src/session/case/CaseClient.ts +1 -0
- package/src/session/case/CaseMessenger.ts +1 -1
|
@@ -100,8 +100,16 @@ export declare class SessionManager {
|
|
|
100
100
|
peerSessionParameters?: SessionParameterOptions;
|
|
101
101
|
caseAuthenticatedTags?: CaseAuthenticatedTag[];
|
|
102
102
|
}): Promise<SecureSession>;
|
|
103
|
-
|
|
104
|
-
|
|
103
|
+
/**
|
|
104
|
+
* Deletes a resumption record for a given address. Returns true if the record was deleted, false if it did not
|
|
105
|
+
* exist.
|
|
106
|
+
*/
|
|
107
|
+
deleteResumptionRecord(address: PeerAddress): Promise<boolean>;
|
|
108
|
+
/**
|
|
109
|
+
* Deletes all resumption records for a given fabric. Returns true if any records were deleted, false if none
|
|
110
|
+
* existed.
|
|
111
|
+
*/
|
|
112
|
+
deleteResumptionRecordsForFabric(fabric: Fabric): Promise<boolean>;
|
|
105
113
|
findOldestInactiveSession(): SecureSession;
|
|
106
114
|
getNextAvailableSessionId(): Promise<number>;
|
|
107
115
|
getSession(sessionId: number): SecureSession | undefined;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"SessionManager.d.ts","sourceRoot":"","sources":["../../../src/session/SessionManager.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO,EAAE,aAAa,EAAE,MAAM,0BAA0B,CAAC;AACzD,OAAO,EACH,QAAQ,EAER,YAAY,EAEZ,WAAW,EACX,aAAa,EAMb,UAAU,EAEV,cAAc,EAEjB,MAAM,UAAU,CAAC;AAClB,OAAO,EAAE,YAAY,EAAE,MAAM,8BAA8B,CAAC;AAE5D,OAAO,EAAE,WAAW,EAAkB,MAAM,sBAAsB,CAAC;AACnE,OAAO,EAAE,oBAAoB,EAA0C,WAAW,EAAE,MAAM,EAAE,MAAM,QAAQ,CAAC;AAE3G,OAAO,EAAE,MAAM,EAAE,MAAM,qBAAqB,CAAC;AAE7C,OAAO,EAAE,eAAe,EAAE,MAAM,sBAAsB,CAAC;AACvD,OAAO,EAAE,aAAa,EAAE,MAAM,oBAAoB,CAAC;AACnD,OAAO,EAMH,OAAO,EAIP,uBAAuB,EACvB,iBAAiB,EACpB,MAAM,cAAc,CAAC;AAgBtB,eAAO,MAAM,2BAA2B,IAAS,CAAC;AAElD,MAAM,WAAW,gBAAgB;IAC7B,YAAY,EAAE,UAAU,CAAC;IACzB,YAAY,EAAE,UAAU,CAAC;IACzB,MAAM,EAAE,MAAM,CAAC;IACf,UAAU,EAAE,MAAM,CAAC;IACnB,iBAAiB,EAAE,iBAAiB,CAAC;IACrC,qBAAqB,CAAC,EAAE,oBAAoB,EAAE,CAAC;CAClD;AAsBD;;GAEG;AACH,MAAM,WAAW,qBAAqB;IAClC,OAAO,EAAE,aAAa,CAAC;IACvB,OAAO,EAAE,cAAc,CAAC;IAExB;;OAEG;IACH,UAAU,CAAC,EAAE,OAAO,CAAC,iBAAiB,CAAC,CAAC;IAExC;;;;OAIG;IACH,KAAK,CAAC,EAAE,OAAO,CAAC;CACnB;AAID;;GAEG;AACH,qBAAa,cAAc;;gBAeX,OAAO,EAAE,qBAAqB;IAY1C,MAAM,CAAC,CAAC,aAAa,CAAC,MAAM,CAAC,CAAC,GAAG,EAAE,WAAW;IAS9C,IAAI,YAAY,iCAEf;IAED,IAAI,OAAO,0BAEV;IAED;;OAEG;IACH,IAAI,QAAQ,2CAEX;IAED;;OAEG;IACH,IAAI,gBAAgB,iCAEnB;IAED;;;OAGG;IACH,IAAI,iBAAiB,IAAI,iBAAiB,CAEzC;IAED;;;;;OAKG;IACH,IAAI,iBAAiB,CAAC,UAAU,EAAE,OAAO,CAAC,iBAAiB,CAAC,EAK3D;IAED;;OAEG;IACH,IAAI,oBAAoB,2EAEvB;IAED;;OAEG;IACH,IAAI,mBAAmB,yCAEtB;IAED;;OAEG;IACH,SAAS,CAAC,OAAO,EAAE,WAAW,GAAG,WAAW;IAI5C;;OAEG;IACH,IAAI,KAAK,YAER;IAED,qBAAqB,CAAC,OAAO,EAAE;QAC3B,eAAe,CAAC,EAAE,MAAM,CAAC;QACzB,iBAAiB,CAAC,EAAE,uBAAuB,CAAC;QAC5C,WAAW,CAAC,EAAE,OAAO,CAAC;KACzB;IA0BK,mBAAmB,CAAC,IAAI,EAAE;QAC5B,SAAS,EAAE,MAAM,CAAC;QAClB,MAAM,EAAE,MAAM,GAAG,SAAS,CAAC;QAC3B,UAAU,EAAE,MAAM,CAAC;QACnB,aAAa,EAAE,MAAM,CAAC;QACtB,YAAY,EAAE,UAAU,CAAC;QACzB,IAAI,EAAE,UAAU,CAAC;QACjB,WAAW,EAAE,OAAO,CAAC;QACrB,YAAY,EAAE,OAAO,CAAC;QACtB,qBAAqB,CAAC,EAAE,uBAAuB,CAAC;QAChD,qBAAqB,CAAC,EAAE,oBAAoB,EAAE,CAAC;KAClD;
|
|
1
|
+
{"version":3,"file":"SessionManager.d.ts","sourceRoot":"","sources":["../../../src/session/SessionManager.ts"],"names":[],"mappings":"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"}
|
|
@@ -67,10 +67,9 @@ class SessionManager {
|
|
|
67
67
|
constructor(context) {
|
|
68
68
|
this.#context = context;
|
|
69
69
|
this.#sessionParameters = { ...DEFAULT_SESSION_PARAMETERS, ...context.parameters };
|
|
70
|
-
this.#observers.on(
|
|
71
|
-
|
|
72
|
-
|
|
73
|
-
);
|
|
70
|
+
this.#observers.on(context.fabrics.events.deleted, async (fabric) => {
|
|
71
|
+
await this.deleteResumptionRecordsForFabric(fabric);
|
|
72
|
+
});
|
|
74
73
|
this.#construction = Construction(this, () => this.#initialize());
|
|
75
74
|
}
|
|
76
75
|
static [Environmental.create](env) {
|
|
@@ -202,19 +201,36 @@ class SessionManager {
|
|
|
202
201
|
this.#sessions.add(session);
|
|
203
202
|
return session;
|
|
204
203
|
}
|
|
204
|
+
/**
|
|
205
|
+
* Deletes a resumption record for a given address. Returns true if the record was deleted, false if it did not
|
|
206
|
+
* exist.
|
|
207
|
+
*/
|
|
205
208
|
async deleteResumptionRecord(address) {
|
|
206
209
|
await this.#construction;
|
|
207
|
-
this.#resumptionRecords.delete(address);
|
|
208
|
-
|
|
210
|
+
const result = this.#resumptionRecords.delete(address);
|
|
211
|
+
if (result) {
|
|
212
|
+
await this.#storeResumptionRecords();
|
|
213
|
+
}
|
|
214
|
+
return result;
|
|
209
215
|
}
|
|
216
|
+
/**
|
|
217
|
+
* Deletes all resumption records for a given fabric. Returns true if any records were deleted, false if none
|
|
218
|
+
* existed.
|
|
219
|
+
*/
|
|
210
220
|
async deleteResumptionRecordsForFabric(fabric) {
|
|
211
221
|
await this.#construction;
|
|
222
|
+
let deletedCount = 0;
|
|
212
223
|
for (const address of this.#resumptionRecords.keys()) {
|
|
213
224
|
if (address.fabricIndex === fabric.fabricIndex) {
|
|
214
|
-
this.#resumptionRecords.delete(address)
|
|
225
|
+
if (this.#resumptionRecords.delete(address)) {
|
|
226
|
+
deletedCount++;
|
|
227
|
+
}
|
|
215
228
|
}
|
|
216
229
|
}
|
|
217
|
-
|
|
230
|
+
if (deletedCount > 0) {
|
|
231
|
+
await this.#storeResumptionRecords();
|
|
232
|
+
}
|
|
233
|
+
return deletedCount > 0;
|
|
218
234
|
}
|
|
219
235
|
findOldestInactiveSession() {
|
|
220
236
|
this.#construction.assert();
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"version": 3,
|
|
3
3
|
"sources": ["../../../src/session/SessionManager.ts"],
|
|
4
|
-
"mappings": "AAAA;AAAA;AAAA;AAAA;AAAA;AAMA,SAAS,qBAAqB;AAC9B;AAAA,EACI;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EAEA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EAEA;AAAA,OACG;AAEP,SAAS,qBAAqB;AAC9B,SAAS,aAAa,sBAAsB;AAC5C,SAA+B,8BAAqD,cAAc;AAClG,SAAS,iCAAiC;AAE1C,SAAS,sBAAsB;AAC/B,SAAS,uBAAuB;AAChC,SAAS,qBAAqB;AAC9B;AAAA,EACI;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EAEA;AAAA,EACA;AAAA,EACA;AAAA,OAGG;AAEP,MAAM,SAAS,OAAO,IAAI,gBAAgB;AAE1C,MAAM,6BAA6B;AAAA,EAC/B,gBAAgB;AAAA,EAChB,kBAAkB;AAAA,EAClB,mBAAmB;AAAA,EACnB,mBAAmB,cAAc;AAAA,EACjC,0BAA0B,cAAc;AAAA,EACxC,sBAAsB,cAAc;AAAA,EACpC,mBAAmB;AAAA,EACnB,qBAAqB,CAAC;AAAA,EACtB,mBAAmB;AACvB;AAEO,MAAM,8BAA8B;AAmD3C,MAAM,uBAAuB;AAKtB,MAAM,eAAe;AAAA,EACf;AAAA,EACA,oBAAoB,oBAAI,IAA6B;AAAA,EACrD,YAAY,IAAI,SAAwB;AAAA,EACjD,iBAAiB,OAAO,gBAAgB;AAAA,EACxC,qBAAqB,IAAI,eAAiC;AAAA,EACjD,mCAAmC,IAAI,eAAe;AAAA,EACtD,wBAAwB,WAAiE;AAAA,EAClG;AAAA,EACS,uBAAuB,WAA+B;AAAA,EACtD;AAAA,EACA,aAAa,IAAI,cAAc;AAAA,EAC/B,2BAA2B,IAAI,MAAM,IAAI;AAAA,EAClD,gBAAgB;AAAA,EAEhB,YAAY,SAAgC;AACxC,SAAK,WAAW;AAChB,SAAK,qBAAqB,EAAE,GAAG,4BAA4B,GAAG,QAAQ,WAAW;AAGjF,SAAK,WAAW
|
|
4
|
+
"mappings": "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",
|
|
5
5
|
"names": ["fabric"]
|
|
6
6
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"CaseClient.d.ts","sourceRoot":"","sources":["../../../../src/session/case/CaseClient.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAIH,OAAO,EAAE,cAAc,EAAE,MAAM,4BAA4B,CAAC;AAC5D,OAAO,EAAE,MAAM,EAAsB,MAAM,QAAQ,CAAC;AAEpD,OAAO,EAAE,MAAM,EAAE,MAAM,wBAAwB,CAAC;AAChD,OAAO,EAAE,eAAe,EAAE,MAAM,mCAAmC,CAAC;AAkBpE,qBAAa,UAAU;;gBAGP,QAAQ,EAAE,cAAc;IAI9B,IAAI,CAAC,QAAQ,EAAE,eAAe,EAAE,MAAM,EAAE,MAAM,EAAE,UAAU,EAAE,MAAM,EAAE,wBAAwB,CAAC,EAAE,MAAM;;;;
|
|
1
|
+
{"version":3,"file":"CaseClient.d.ts","sourceRoot":"","sources":["../../../../src/session/case/CaseClient.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAIH,OAAO,EAAE,cAAc,EAAE,MAAM,4BAA4B,CAAC;AAC5D,OAAO,EAAE,MAAM,EAAsB,MAAM,QAAQ,CAAC;AAEpD,OAAO,EAAE,MAAM,EAAE,MAAM,wBAAwB,CAAC;AAChD,OAAO,EAAE,eAAe,EAAE,MAAM,mCAAmC,CAAC;AAkBpE,qBAAa,UAAU;;gBAGP,QAAQ,EAAE,cAAc;IAI9B,IAAI,CAAC,QAAQ,EAAE,eAAe,EAAE,MAAM,EAAE,MAAM,EAAE,UAAU,EAAE,MAAM,EAAE,wBAAwB,CAAC,EAAE,MAAM;;;;CA0N9G"}
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"version": 3,
|
|
3
3
|
"sources": ["../../../../src/session/case/CaseClient.ts"],
|
|
4
|
-
"mappings": "AAAA;AAAA;AAAA;AAAA;AAAA;AAMA,SAAS,OAAO,QAAQ,QAAQ,WAAW,2BAA2B;AACtE,SAAS,kCAAkC;AAE3C,SAAS,QAAQ,0BAA0B;AAC3C,SAAS,4BAA4B,iCAAiC;AAGtE;AAAA,EACI;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,OACG;AACP,SAAS,2BAA2B;AAEpC,MAAM,SAAS,OAAO,IAAI,YAAY;AAE/B,MAAM,WAAW;AAAA,EACpB;AAAA,EAEA,YAAY,UAA0B;AAClC,SAAK,YAAY;AAAA,EACrB;AAAA,EAEA,MAAM,KAAK,UAA2B,QAAgB,YAAoB,0BAAmC;AACzG,UAAM,YAAY,IAAI,oBAAoB,UAAU,wBAAwB;
|
|
4
|
+
"mappings": "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",
|
|
5
5
|
"names": ["fabric"]
|
|
6
6
|
}
|
|
@@ -39,7 +39,7 @@ class CaseClientMessenger extends SecureChannelMessenger {
|
|
|
39
39
|
return { sigma2Resume: TlvCaseSigma2Resume.decode(payload) };
|
|
40
40
|
default:
|
|
41
41
|
throw new MatterFlowError(
|
|
42
|
-
`Received unexpected message type while expecting CASE Sigma2: ${messageType}, expected: ${SecureMessageType.Sigma2} or ${SecureMessageType.Sigma2Resume}`
|
|
42
|
+
`Received unexpected message type while expecting CASE Sigma2(Resume): ${messageType}, expected: ${SecureMessageType.Sigma2} or ${SecureMessageType.Sigma2Resume}`
|
|
43
43
|
);
|
|
44
44
|
}
|
|
45
45
|
}
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"version": 3,
|
|
3
3
|
"sources": ["../../../../src/session/case/CaseMessenger.ts"],
|
|
4
|
-
"mappings": "AAAA;AAAA;AAAA;AAAA;AAAA;AAMA,SAAS,uBAAuB;AAChC,SAAS,yBAAyC;AAClD,SAAS,8BAA8B;AACvC,SAAS,eAAe,eAAe,qBAAqB,qBAAqB;AAE1E,MAAM,4BAA4B,uBAAuB;AAAA,EAC5D,MAAM,aAAa;AACf,UAAM,EAAE,QAAQ,IAAI,MAAM,KAAK,YAAY,kBAAkB,MAAM;AACnE,WAAO,EAAE,aAAa,SAAS,QAAQ,cAAc,OAAO,OAAO,EAAE;AAAA,EACzE;AAAA,EAEA,WAAW,QAA8C;AACrD,WAAO,KAAK,KAAK,QAAQ,kBAAkB,QAAQ,aAAa;AAAA,EACpE;AAAA,EAEA,iBAAiB,cAA0D;AACvE,WAAO,KAAK,KAAK,cAAc,kBAAkB,cAAc,mBAAmB;AAAA,EACtF;AAAA,EAEA,MAAM,aAAa;AACf,UAAM,EAAE,QAAQ,IAAI,MAAM,KAAK,YAAY,kBAAkB,MAAM;AACnE,WAAO,EAAE,aAAa,SAAS,QAAQ,cAAc,OAAO,OAAO,EAAE;AAAA,EACzE;AACJ;AAEO,MAAM,4BAA4B,uBAAuB;AAAA,EAC5D,WAAW,QAA8C;AACrD,WAAO,KAAK,KAAK,QAAQ,kBAAkB,QAAQ,aAAa;AAAA,EACpE;AAAA,EAEA,MAAM,aAAa;AACf,UAAM;AAAA,MACF;AAAA,MACA,eAAe,EAAE,YAAY;AAAA,IACjC,IAAI,MAAM,KAAK,eAAe,gBAAgB;AAC9C,YAAQ,aAAa;AAAA,MACjB,KAAK,kBAAkB;AACnB,eAAO,EAAE,aAAa,SAAS,QAAQ,cAAc,OAAO,OAAO,EAAE;AAAA,MACzE,KAAK,kBAAkB;AACnB,eAAO,EAAE,cAAc,oBAAoB,OAAO,OAAO,EAAE;AAAA,MAC/D;AACI,cAAM,IAAI;AAAA,UACN,
|
|
4
|
+
"mappings": "AAAA;AAAA;AAAA;AAAA;AAAA;AAMA,SAAS,uBAAuB;AAChC,SAAS,yBAAyC;AAClD,SAAS,8BAA8B;AACvC,SAAS,eAAe,eAAe,qBAAqB,qBAAqB;AAE1E,MAAM,4BAA4B,uBAAuB;AAAA,EAC5D,MAAM,aAAa;AACf,UAAM,EAAE,QAAQ,IAAI,MAAM,KAAK,YAAY,kBAAkB,MAAM;AACnE,WAAO,EAAE,aAAa,SAAS,QAAQ,cAAc,OAAO,OAAO,EAAE;AAAA,EACzE;AAAA,EAEA,WAAW,QAA8C;AACrD,WAAO,KAAK,KAAK,QAAQ,kBAAkB,QAAQ,aAAa;AAAA,EACpE;AAAA,EAEA,iBAAiB,cAA0D;AACvE,WAAO,KAAK,KAAK,cAAc,kBAAkB,cAAc,mBAAmB;AAAA,EACtF;AAAA,EAEA,MAAM,aAAa;AACf,UAAM,EAAE,QAAQ,IAAI,MAAM,KAAK,YAAY,kBAAkB,MAAM;AACnE,WAAO,EAAE,aAAa,SAAS,QAAQ,cAAc,OAAO,OAAO,EAAE;AAAA,EACzE;AACJ;AAEO,MAAM,4BAA4B,uBAAuB;AAAA,EAC5D,WAAW,QAA8C;AACrD,WAAO,KAAK,KAAK,QAAQ,kBAAkB,QAAQ,aAAa;AAAA,EACpE;AAAA,EAEA,MAAM,aAAa;AACf,UAAM;AAAA,MACF;AAAA,MACA,eAAe,EAAE,YAAY;AAAA,IACjC,IAAI,MAAM,KAAK,eAAe,gBAAgB;AAC9C,YAAQ,aAAa;AAAA,MACjB,KAAK,kBAAkB;AACnB,eAAO,EAAE,aAAa,SAAS,QAAQ,cAAc,OAAO,OAAO,EAAE;AAAA,MACzE,KAAK,kBAAkB;AACnB,eAAO,EAAE,cAAc,oBAAoB,OAAO,OAAO,EAAE;AAAA,MAC/D;AACI,cAAM,IAAI;AAAA,UACN,yEAAyE,WAAW,eAAe,kBAAkB,MAAM,OAAO,kBAAkB,YAAY;AAAA,QACpK;AAAA,IACR;AAAA,EACJ;AAAA,EAEA,WAAW,QAA8C;AACrD,WAAO,KAAK,KAAK,QAAQ,kBAAkB,QAAQ,aAAa;AAAA,EACpE;AACJ;",
|
|
5
5
|
"names": []
|
|
6
6
|
}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@matter/protocol",
|
|
3
|
-
"version": "0.14.0-alpha.0-
|
|
3
|
+
"version": "0.14.0-alpha.0-20250601-939a65f46",
|
|
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.14.0-alpha.0-
|
|
44
|
-
"@matter/model": "0.14.0-alpha.0-
|
|
45
|
-
"@matter/types": "0.14.0-alpha.0-
|
|
43
|
+
"@matter/general": "0.14.0-alpha.0-20250601-939a65f46",
|
|
44
|
+
"@matter/model": "0.14.0-alpha.0-20250601-939a65f46",
|
|
45
|
+
"@matter/types": "0.14.0-alpha.0-20250601-939a65f46"
|
|
46
46
|
},
|
|
47
47
|
"devDependencies": {
|
|
48
|
-
"@matter/tools": "0.14.0-alpha.0-
|
|
49
|
-
"@matter/testing": "0.14.0-alpha.0-
|
|
48
|
+
"@matter/tools": "0.14.0-alpha.0-20250601-939a65f46",
|
|
49
|
+
"@matter/testing": "0.14.0-alpha.0-20250601-939a65f46"
|
|
50
50
|
},
|
|
51
51
|
"files": [
|
|
52
52
|
"dist/**/*",
|
|
@@ -27,6 +27,7 @@ import {
|
|
|
27
27
|
CommissioningError,
|
|
28
28
|
ControllerCommissioningFlow,
|
|
29
29
|
ControllerCommissioningFlowOptions,
|
|
30
|
+
NodeIdConflictError,
|
|
30
31
|
} from "#peer/ControllerCommissioningFlow.js";
|
|
31
32
|
import { ControllerDiscovery, PairRetransmissionLimitReachedError } from "#peer/ControllerDiscovery.js";
|
|
32
33
|
import { ChannelStatusResponseError } from "#securechannel/index.js";
|
|
@@ -370,10 +371,10 @@ export class ControllerCommissioner {
|
|
|
370
371
|
return new MessageChannel(paseChannel, paseSecureSession);
|
|
371
372
|
}
|
|
372
373
|
|
|
373
|
-
/** Validate if a
|
|
374
|
+
/** Validate if a Peer Address is already known and commissioned */
|
|
374
375
|
#assertPeerAddress(address: PeerAddress) {
|
|
375
376
|
if (this.#context.peers.has(address)) {
|
|
376
|
-
throw new
|
|
377
|
+
throw new NodeIdConflictError(`Node ID ${address.nodeId} is already commissioned and can not be reused.`);
|
|
377
378
|
}
|
|
378
379
|
}
|
|
379
380
|
|
|
@@ -140,10 +140,43 @@ type CollectedCommissioningData = {
|
|
|
140
140
|
fabricIndex?: FabricIndex;
|
|
141
141
|
};
|
|
142
142
|
|
|
143
|
-
/**
|
|
143
|
+
/**
|
|
144
|
+
* Error that throws when Commissioning fails and a process cannot be continued, and no more specific error
|
|
145
|
+
* information is available.
|
|
146
|
+
*/
|
|
144
147
|
export class CommissioningError extends MatterError {}
|
|
145
148
|
|
|
146
|
-
/**
|
|
149
|
+
/** The number of fabrics that can be commissioned is already reached. */
|
|
150
|
+
export class MaximumCommissionedFabricsReachedError extends CommissioningError {}
|
|
151
|
+
|
|
152
|
+
/** The commissioning process could not be finished within the maximum allowed commissioning timeframe. */
|
|
153
|
+
export class CommissioningTimeoutError extends CommissioningError {}
|
|
154
|
+
|
|
155
|
+
/** Error that throws when the device is already commissioned to this fabric. */
|
|
156
|
+
export class DeviceAlreadyCommissionedToThisFabricError extends CommissioningError {}
|
|
157
|
+
|
|
158
|
+
/** Error that throws when the device is already commissioned to another fabric with the same label. */
|
|
159
|
+
export class FabricLabelConflictError extends CommissioningError {}
|
|
160
|
+
|
|
161
|
+
/** Error that throws when the device has no connected network and no credentials for Wifi or Thread network were configured. */
|
|
162
|
+
export class WifiOrThreadNetworkCredentialsNotConfiguredError extends CommissioningError {}
|
|
163
|
+
|
|
164
|
+
/** Error that throws when the setup for the provided Wifi network failed. */
|
|
165
|
+
export class WifiNetworkSetupFailedError extends CommissioningError {}
|
|
166
|
+
|
|
167
|
+
/** Error that throws when the setup for the provided Thread network failed. */
|
|
168
|
+
export class ThreadNetworkSetupFailedError extends CommissioningError {}
|
|
169
|
+
|
|
170
|
+
/** Error that throws when the NodeId is already used in the fabric. */
|
|
171
|
+
export class NodeIdConflictError extends CommissioningError {}
|
|
172
|
+
|
|
173
|
+
/** Error that throws when the device could not be discovered using the provided details. */
|
|
174
|
+
export class CommissionableDeviceDiscoveryFailedError extends CommissioningError {}
|
|
175
|
+
|
|
176
|
+
/** Error that throws when the device could not be connected using the operational discovery and no session could be created. */
|
|
177
|
+
export class OperativeConnectionFailedError extends CommissioningError {}
|
|
178
|
+
|
|
179
|
+
/** Error that throws when Commissioning fails but a process can be continued. */
|
|
147
180
|
class RecoverableCommissioningError extends CommissioningError {}
|
|
148
181
|
|
|
149
182
|
const DEFAULT_FAILSAFE_TIME_MS = 60_000; // 60 seconds
|
|
@@ -225,7 +258,11 @@ export class ControllerCommissioningFlow {
|
|
|
225
258
|
logger.error(
|
|
226
259
|
`Commissioning step ${step.stepNumber}.${step.subStepNumber}: ${step.name} succeeded, but commissioning took too long in general!`,
|
|
227
260
|
);
|
|
228
|
-
|
|
261
|
+
const maxTimeS =
|
|
262
|
+
this.collectedCommissioningData.basicCommissioningInfo?.maxCumulativeFailsafeSeconds;
|
|
263
|
+
throw new CommissioningTimeoutError(
|
|
264
|
+
`Commissioning time exceeds the maximum timeframe${maxTimeS ? ` of ${maxTimeS}s` : ""}`,
|
|
265
|
+
);
|
|
229
266
|
}
|
|
230
267
|
/**
|
|
231
268
|
* Commissioner SHALL re-arm the Fail-safe timer on the Commissionee to the desired commissioning
|
|
@@ -457,15 +494,15 @@ export class ControllerCommissioningFlow {
|
|
|
457
494
|
if (context === "addNoc") {
|
|
458
495
|
// Let's return a bit more convenient error in this case
|
|
459
496
|
if (statusCode === OperationalCredentials.NodeOperationalCertStatus.FabricConflict) {
|
|
460
|
-
throw new
|
|
497
|
+
throw new DeviceAlreadyCommissionedToThisFabricError(
|
|
461
498
|
`Commission error: This device is already commissioned into this fabric. You cannot commission it again.`,
|
|
462
499
|
);
|
|
463
500
|
} else if (statusCode === OperationalCredentials.NodeOperationalCertStatus.TableFull) {
|
|
464
|
-
throw new
|
|
501
|
+
throw new MaximumCommissionedFabricsReachedError(
|
|
465
502
|
`Commission error: This device reached the maximum number of fabrics it can be part of. Please remove a fabric before trying to add another one.`,
|
|
466
503
|
);
|
|
467
504
|
} else if (statusCode === OperationalCredentials.NodeOperationalCertStatus.LabelConflict) {
|
|
468
|
-
throw new
|
|
505
|
+
throw new FabricLabelConflictError(
|
|
469
506
|
`Commission error: This device is already commissioned with a fabric with the same label. Please choose a different label.`,
|
|
470
507
|
);
|
|
471
508
|
}
|
|
@@ -483,7 +520,7 @@ export class ControllerCommissioningFlow {
|
|
|
483
520
|
|
|
484
521
|
if (errorCode === GeneralCommissioning.CommissioningError.Ok) return;
|
|
485
522
|
throw new CommissioningError(
|
|
486
|
-
`Commission error for "${context}": ${errorCode}${debugText ? `, ${debugText}` : ""}`,
|
|
523
|
+
`Commission error for "${context}": ${GeneralCommissioning.CommissioningError[errorCode]} (${errorCode})${debugText ? `, ${debugText}` : ""}`,
|
|
487
524
|
);
|
|
488
525
|
}
|
|
489
526
|
|
|
@@ -491,6 +528,15 @@ export class ControllerCommissioningFlow {
|
|
|
491
528
|
* Initial Step to receive some common data used by other steps
|
|
492
529
|
*/
|
|
493
530
|
async #getInitialData() {
|
|
531
|
+
const operationalCredentialsClient = this.#getClusterClient(OperationalCredentials.Cluster);
|
|
532
|
+
const supportedFabrics = await operationalCredentialsClient.getSupportedFabricsAttribute();
|
|
533
|
+
const commissionedFabrics = await operationalCredentialsClient.getCommissionedFabricsAttribute();
|
|
534
|
+
if (commissionedFabrics >= supportedFabrics) {
|
|
535
|
+
throw new MaximumCommissionedFabricsReachedError(
|
|
536
|
+
`Commissioned fabrics (${commissionedFabrics}) exceed supported fabrics (${supportedFabrics}). Please remove some fabrics before commissioning.`,
|
|
537
|
+
);
|
|
538
|
+
}
|
|
539
|
+
|
|
494
540
|
const descriptorClient = this.#getClusterClient(Descriptor.Cluster);
|
|
495
541
|
this.collectedCommissioningData.rootPartsList = await descriptorClient.getPartsListAttribute();
|
|
496
542
|
this.collectedCommissioningData.rootServerList = await descriptorClient.getServerListAttribute();
|
|
@@ -537,16 +583,6 @@ export class ControllerCommissioningFlow {
|
|
|
537
583
|
this.collectedCommissioningData.supportsConcurrentConnection =
|
|
538
584
|
await generalCommissioningClient.getSupportsConcurrentConnectionAttribute();
|
|
539
585
|
|
|
540
|
-
/*
|
|
541
|
-
Apple is additionally requesting:
|
|
542
|
-
* MA-rootdevice(0x0)/GeneralCommissioning(0x30)/breadcrumb(0x0)
|
|
543
|
-
|
|
544
|
-
Google is additionally requesting:
|
|
545
|
-
* MA-rootdevice(0x0)/OperationalCredentials(0x3e)/supportedFabrics(0x2)
|
|
546
|
-
* MA-rootdevice(0x0)/OperationalCredentials(0x3e)/commissionedFabrics(0x3)
|
|
547
|
-
* MA-rootdevice(0x0)/OperationalCredentials(0x3e)/fabrics(0x1), isFabricFiltered=false
|
|
548
|
-
*/
|
|
549
|
-
|
|
550
586
|
return {
|
|
551
587
|
code: CommissioningStepResultCode.Success,
|
|
552
588
|
breadcrumb: this.lastBreadcrumb,
|
|
@@ -610,7 +646,9 @@ export class ControllerCommissioningFlow {
|
|
|
610
646
|
*/
|
|
611
647
|
async #configureRegulatoryInformation() {
|
|
612
648
|
if (this.collectedCommissioningData.networkFeatures === undefined) {
|
|
613
|
-
throw new CommissioningError(
|
|
649
|
+
throw new CommissioningError(
|
|
650
|
+
"Initial information collection failed. No network features collected. This should never happen.",
|
|
651
|
+
);
|
|
614
652
|
}
|
|
615
653
|
// Read the infos for all Network Commissioning clusters
|
|
616
654
|
const hasRadioNetwork = this.collectedCommissioningData.networkFeatures.some(
|
|
@@ -878,7 +916,9 @@ export class ControllerCommissioningFlow {
|
|
|
878
916
|
this.collectedCommissioningData.networkFeatures === undefined ||
|
|
879
917
|
this.collectedCommissioningData.networkStatus === undefined
|
|
880
918
|
) {
|
|
881
|
-
throw new CommissioningError(
|
|
919
|
+
throw new CommissioningError(
|
|
920
|
+
"Initial information collection failed. No network features or status collected. This should never happen.",
|
|
921
|
+
);
|
|
882
922
|
}
|
|
883
923
|
if (
|
|
884
924
|
(this.commissioningOptions.wifiNetwork === undefined ||
|
|
@@ -900,7 +940,7 @@ export class ControllerCommissioningFlow {
|
|
|
900
940
|
value.some(({ connected }) => connected),
|
|
901
941
|
);
|
|
902
942
|
if (!anyEthernetInterface && !anyInterfaceConnected) {
|
|
903
|
-
throw new
|
|
943
|
+
throw new WifiOrThreadNetworkCredentialsNotConfiguredError(
|
|
904
944
|
"No Wi-Fi/Thread network credentials are configured for commissioning and no Ethernet interface is available on the device and no interface already connected.",
|
|
905
945
|
);
|
|
906
946
|
}
|
|
@@ -969,10 +1009,10 @@ export class ControllerCommissioningFlow {
|
|
|
969
1009
|
{ useExtendedFailSafeMessageResponseTimeout: true },
|
|
970
1010
|
);
|
|
971
1011
|
if (networkingStatus !== NetworkCommissioning.NetworkCommissioningStatus.Success) {
|
|
972
|
-
throw new
|
|
1012
|
+
throw new WifiNetworkSetupFailedError(`Commissionee failed to scan for WiFi networks: ${debugText}`);
|
|
973
1013
|
}
|
|
974
1014
|
if (wiFiScanResults === undefined || wiFiScanResults.length === 0) {
|
|
975
|
-
throw new
|
|
1015
|
+
throw new WifiNetworkSetupFailedError(
|
|
976
1016
|
`Commissionee did not return any WiFi networks for the requested SSID ${this.commissioningOptions.wifiNetwork.wifiSsid}`,
|
|
977
1017
|
);
|
|
978
1018
|
}
|
|
@@ -990,10 +1030,10 @@ export class ControllerCommissioningFlow {
|
|
|
990
1030
|
{ useExtendedFailSafeMessageResponseTimeout: true },
|
|
991
1031
|
);
|
|
992
1032
|
if (addNetworkingStatus !== NetworkCommissioning.NetworkCommissioningStatus.Success) {
|
|
993
|
-
throw new
|
|
1033
|
+
throw new WifiNetworkSetupFailedError(`Commissionee failed to add WiFi network: ${addDebugText}`);
|
|
994
1034
|
}
|
|
995
1035
|
if (networkIndex === undefined) {
|
|
996
|
-
throw new
|
|
1036
|
+
throw new WifiNetworkSetupFailedError(`Commissionee did not return network index`);
|
|
997
1037
|
}
|
|
998
1038
|
logger.debug(
|
|
999
1039
|
`Commissionee added WiFi network ${this.commissioningOptions.wifiNetwork.wifiSsid} with network index ${networkIndex}`,
|
|
@@ -1001,7 +1041,7 @@ export class ControllerCommissioningFlow {
|
|
|
1001
1041
|
|
|
1002
1042
|
const updatedNetworks = await networkCommissioningClusterClient.getNetworksAttribute();
|
|
1003
1043
|
if (updatedNetworks[networkIndex] === undefined) {
|
|
1004
|
-
throw new
|
|
1044
|
+
throw new WifiNetworkSetupFailedError(`Commissionee did not return network with index ${networkIndex}`);
|
|
1005
1045
|
}
|
|
1006
1046
|
const { networkId, connected } = updatedNetworks[networkIndex];
|
|
1007
1047
|
if (connected) {
|
|
@@ -1026,7 +1066,9 @@ export class ControllerCommissioningFlow {
|
|
|
1026
1066
|
);
|
|
1027
1067
|
|
|
1028
1068
|
if (connectResult.networkingStatus !== NetworkCommissioning.NetworkCommissioningStatus.Success) {
|
|
1029
|
-
throw new
|
|
1069
|
+
throw new WifiNetworkSetupFailedError(
|
|
1070
|
+
`Commissionee failed to connect to WiFi network: ${connectResult.debugText}`,
|
|
1071
|
+
);
|
|
1030
1072
|
}
|
|
1031
1073
|
this.collectedCommissioningData.successfullyConnectedToNetwork = true;
|
|
1032
1074
|
logger.debug(
|
|
@@ -1099,10 +1141,10 @@ export class ControllerCommissioningFlow {
|
|
|
1099
1141
|
{ useExtendedFailSafeMessageResponseTimeout: true },
|
|
1100
1142
|
);
|
|
1101
1143
|
if (networkingStatus !== NetworkCommissioning.NetworkCommissioningStatus.Success) {
|
|
1102
|
-
throw new
|
|
1144
|
+
throw new ThreadNetworkSetupFailedError(`Commissionee failed to scan for Thread networks: ${debugText}`);
|
|
1103
1145
|
}
|
|
1104
1146
|
if (threadScanResults === undefined || threadScanResults.length === 0) {
|
|
1105
|
-
throw new
|
|
1147
|
+
throw new ThreadNetworkSetupFailedError(
|
|
1106
1148
|
`Commissionee did not return any Thread networks for the requested Network ${this.commissioningOptions.threadNetwork.networkName}`,
|
|
1107
1149
|
);
|
|
1108
1150
|
}
|
|
@@ -1110,7 +1152,7 @@ export class ControllerCommissioningFlow {
|
|
|
1110
1152
|
({ networkName }) => networkName === this.commissioningOptions.threadNetwork?.networkName,
|
|
1111
1153
|
);
|
|
1112
1154
|
if (wantedNetworkFound === undefined) {
|
|
1113
|
-
throw new
|
|
1155
|
+
throw new ThreadNetworkSetupFailedError(
|
|
1114
1156
|
`Commissionee did not return the requested Network ${
|
|
1115
1157
|
this.commissioningOptions.threadNetwork.networkName
|
|
1116
1158
|
}: ${Diagnostic.json(threadScanResults)}`,
|
|
@@ -1134,10 +1176,10 @@ export class ControllerCommissioningFlow {
|
|
|
1134
1176
|
{ useExtendedFailSafeMessageResponseTimeout: true },
|
|
1135
1177
|
);
|
|
1136
1178
|
if (addNetworkingStatus !== NetworkCommissioning.NetworkCommissioningStatus.Success) {
|
|
1137
|
-
throw new
|
|
1179
|
+
throw new ThreadNetworkSetupFailedError(`Commissionee failed to add Thread network: ${addDebugText}`);
|
|
1138
1180
|
}
|
|
1139
1181
|
if (networkIndex === undefined) {
|
|
1140
|
-
throw new
|
|
1182
|
+
throw new ThreadNetworkSetupFailedError(`Commissionee did not return network index`);
|
|
1141
1183
|
}
|
|
1142
1184
|
logger.debug(
|
|
1143
1185
|
`Commissionee added Thread network ${this.commissioningOptions.threadNetwork.networkName} with network index ${networkIndex}`,
|
|
@@ -1145,7 +1187,7 @@ export class ControllerCommissioningFlow {
|
|
|
1145
1187
|
|
|
1146
1188
|
const updatedNetworks = await networkCommissioningClusterClient.getNetworksAttribute();
|
|
1147
1189
|
if (updatedNetworks[networkIndex] === undefined) {
|
|
1148
|
-
throw new
|
|
1190
|
+
throw new ThreadNetworkSetupFailedError(`Commissionee did not return network with index ${networkIndex}`);
|
|
1149
1191
|
}
|
|
1150
1192
|
const { networkId, connected } = updatedNetworks[networkIndex];
|
|
1151
1193
|
if (connected) {
|
|
@@ -1169,7 +1211,7 @@ export class ControllerCommissioningFlow {
|
|
|
1169
1211
|
);
|
|
1170
1212
|
|
|
1171
1213
|
if (connectResult.networkingStatus !== NetworkCommissioning.NetworkCommissioningStatus.Success) {
|
|
1172
|
-
throw new
|
|
1214
|
+
throw new ThreadNetworkSetupFailedError(
|
|
1173
1215
|
`Commissionee failed to connect to Thread network: ${connectResult.debugText}`,
|
|
1174
1216
|
);
|
|
1175
1217
|
}
|
|
@@ -1225,11 +1267,18 @@ export class ControllerCommissioningFlow {
|
|
|
1225
1267
|
reArmFailsafeInterval.start();
|
|
1226
1268
|
}
|
|
1227
1269
|
|
|
1228
|
-
|
|
1229
|
-
|
|
1230
|
-
|
|
1231
|
-
|
|
1232
|
-
|
|
1270
|
+
let transitionResult: InteractionClient | undefined;
|
|
1271
|
+
try {
|
|
1272
|
+
transitionResult = await this.transitionToCase(
|
|
1273
|
+
this.interactionClient.address,
|
|
1274
|
+
// Assume concurrent connections are supported if not know (which should not be the case when we came here)
|
|
1275
|
+
isConcurrentFlow,
|
|
1276
|
+
);
|
|
1277
|
+
} catch (error) {
|
|
1278
|
+
const commError = new OperativeConnectionFailedError("Operative reconnection with device failed");
|
|
1279
|
+
commError.cause = error;
|
|
1280
|
+
throw commError;
|
|
1281
|
+
}
|
|
1233
1282
|
|
|
1234
1283
|
reArmFailsafeInterval.stop();
|
|
1235
1284
|
|
|
@@ -5,6 +5,7 @@
|
|
|
5
5
|
*/
|
|
6
6
|
|
|
7
7
|
import { anyPromise, ClassExtends, Diagnostic, Logger, NoResponseTimeoutError, serverAddressToString } from "#general";
|
|
8
|
+
import { CommissionableDeviceDiscoveryFailedError } from "#peer/ControllerCommissioningFlow.js";
|
|
8
9
|
import { NodeId } from "#types";
|
|
9
10
|
import {
|
|
10
11
|
AddressTypeFromDevice,
|
|
@@ -17,7 +18,6 @@ import {
|
|
|
17
18
|
import { Fabric } from "../fabric/Fabric.js";
|
|
18
19
|
import { MdnsScanner } from "../mdns/MdnsScanner.js";
|
|
19
20
|
import { RetransmissionLimitReachedError } from "../protocol/MessageExchange.js";
|
|
20
|
-
import { CommissioningError } from "./ControllerCommissioningFlow.js";
|
|
21
21
|
|
|
22
22
|
const logger = Logger.get("ControllerDiscovery");
|
|
23
23
|
|
|
@@ -50,7 +50,7 @@ export class ControllerDiscovery {
|
|
|
50
50
|
);
|
|
51
51
|
logger.info(`Found ${foundDevices.length} devices using identifier ${Diagnostic.json(identifier)}`);
|
|
52
52
|
if (foundDevices.length === 0) {
|
|
53
|
-
throw new
|
|
53
|
+
throw new CommissionableDeviceDiscoveryFailedError(
|
|
54
54
|
`No device discovered using identifier ${Diagnostic.json(
|
|
55
55
|
identifier,
|
|
56
56
|
)}! Please check that the relevant device is online.`,
|
|
@@ -59,7 +59,7 @@ export class ControllerDiscovery {
|
|
|
59
59
|
|
|
60
60
|
const devices = foundDevices.filter(device => device.addresses.length > 0);
|
|
61
61
|
if (devices.length === 0) {
|
|
62
|
-
throw new
|
|
62
|
+
throw new CommissionableDeviceDiscoveryFailedError(
|
|
63
63
|
`Device discovered using identifier ${Diagnostic.json(
|
|
64
64
|
identifier,
|
|
65
65
|
)}, but no Network addresses discovered.`,
|