@matter/protocol 0.12.0-alpha.0-20241220-ad0dea627 → 0.12.0-alpha.0-20241220-c66941cd7

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.
Files changed (52) hide show
  1. package/dist/cjs/certificate/CertificateAuthority.js +2 -2
  2. package/dist/cjs/certificate/CertificateAuthority.js.map +1 -1
  3. package/dist/cjs/interaction/InteractionMessenger.d.ts +1 -1
  4. package/dist/cjs/interaction/InteractionMessenger.d.ts.map +1 -1
  5. package/dist/cjs/interaction/InteractionMessenger.js +7 -6
  6. package/dist/cjs/interaction/InteractionMessenger.js.map +1 -1
  7. package/dist/cjs/mdns/MdnsScanner.d.ts +2 -4
  8. package/dist/cjs/mdns/MdnsScanner.d.ts.map +1 -1
  9. package/dist/cjs/mdns/MdnsScanner.js +130 -51
  10. package/dist/cjs/mdns/MdnsScanner.js.map +2 -2
  11. package/dist/cjs/mdns/MdnsServer.d.ts +1 -1
  12. package/dist/cjs/mdns/MdnsServer.d.ts.map +1 -1
  13. package/dist/cjs/mdns/MdnsServer.js +20 -8
  14. package/dist/cjs/mdns/MdnsServer.js.map +1 -1
  15. package/dist/cjs/peer/ControllerDiscovery.js +1 -1
  16. package/dist/cjs/peer/ControllerDiscovery.js.map +1 -1
  17. package/dist/cjs/peer/PeerSet.d.ts.map +1 -1
  18. package/dist/cjs/peer/PeerSet.js +27 -10
  19. package/dist/cjs/peer/PeerSet.js.map +2 -2
  20. package/dist/cjs/protocol/MessageExchange.d.ts +5 -0
  21. package/dist/cjs/protocol/MessageExchange.d.ts.map +1 -1
  22. package/dist/cjs/protocol/MessageExchange.js.map +1 -1
  23. package/dist/esm/certificate/CertificateAuthority.js +2 -2
  24. package/dist/esm/certificate/CertificateAuthority.js.map +1 -1
  25. package/dist/esm/interaction/InteractionMessenger.d.ts +1 -1
  26. package/dist/esm/interaction/InteractionMessenger.d.ts.map +1 -1
  27. package/dist/esm/interaction/InteractionMessenger.js +7 -6
  28. package/dist/esm/interaction/InteractionMessenger.js.map +1 -1
  29. package/dist/esm/mdns/MdnsScanner.d.ts +2 -4
  30. package/dist/esm/mdns/MdnsScanner.d.ts.map +1 -1
  31. package/dist/esm/mdns/MdnsScanner.js +130 -51
  32. package/dist/esm/mdns/MdnsScanner.js.map +2 -2
  33. package/dist/esm/mdns/MdnsServer.d.ts +1 -1
  34. package/dist/esm/mdns/MdnsServer.d.ts.map +1 -1
  35. package/dist/esm/mdns/MdnsServer.js +20 -8
  36. package/dist/esm/mdns/MdnsServer.js.map +1 -1
  37. package/dist/esm/peer/ControllerDiscovery.js +1 -1
  38. package/dist/esm/peer/ControllerDiscovery.js.map +1 -1
  39. package/dist/esm/peer/PeerSet.d.ts.map +1 -1
  40. package/dist/esm/peer/PeerSet.js +27 -10
  41. package/dist/esm/peer/PeerSet.js.map +2 -2
  42. package/dist/esm/protocol/MessageExchange.d.ts +5 -0
  43. package/dist/esm/protocol/MessageExchange.d.ts.map +1 -1
  44. package/dist/esm/protocol/MessageExchange.js.map +1 -1
  45. package/package.json +6 -6
  46. package/src/certificate/CertificateAuthority.ts +2 -2
  47. package/src/interaction/InteractionMessenger.ts +9 -5
  48. package/src/mdns/MdnsScanner.ts +190 -59
  49. package/src/mdns/MdnsServer.ts +24 -8
  50. package/src/peer/ControllerDiscovery.ts +1 -1
  51. package/src/peer/PeerSet.ts +34 -11
  52. package/src/protocol/MessageExchange.ts +6 -0
@@ -51,10 +51,10 @@ class CertificateAuthority {
51
51
  this.rootKeyIdentifier = certValues.rootKeyIdentifier;
52
52
  this.rootCertBytes = certValues.rootCertBytes;
53
53
  this.nextCertificateId = BigInt(certValues.nextCertificateId);
54
- logger.debug(`Loaded stored credentials with ID ${this.rootCertId}`);
54
+ logger.info(`Loaded stored credentials with ID ${this.rootCertId}`);
55
55
  return;
56
56
  }
57
- logger.debug(`Created new credentials with ID ${this.rootCertId}`);
57
+ logger.info(`Created new credentials with ID ${this.rootCertId}`);
58
58
  if (options instanceof import_general.StorageContext) {
59
59
  await options.set({
60
60
  rootCertId: this.rootCertId,
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "version": 3,
3
3
  "sources": ["../../../src/certificate/CertificateAuthority.ts"],
4
- "mappings": "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",
4
+ "mappings": "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",
5
5
  "names": []
6
6
  }
@@ -34,7 +34,7 @@ declare class InteractionMessenger {
34
34
  constructor(exchange: MessageExchange);
35
35
  calculateMaximumPeerResponseTime(expectedProcessingTimeMs?: number): number;
36
36
  send(messageType: number, payload: Uint8Array, options?: ExchangeSendOptions): Promise<void>;
37
- sendStatus(status: StatusCode): Promise<void>;
37
+ sendStatus(status: StatusCode, options?: ExchangeSendOptions): Promise<void>;
38
38
  waitForSuccess(expectedProcessingTimeMs?: number): Promise<void>;
39
39
  nextMessage(expectedMessageType?: number, expectedProcessingTimeMs?: number): Promise<Message>;
40
40
  close(): Promise<void>;
@@ -1 +1 @@
1
- {"version":3,"file":"InteractionMessenger.d.ts","sourceRoot":"","sources":["../../../src/interaction/InteractionMessenger.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"InteractionMessenger.d.ts","sourceRoot":"","sources":["../../../src/interaction/InteractionMessenger.ts"],"names":[],"mappings":"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"}
@@ -60,10 +60,11 @@ class InteractionMessenger {
60
60
  send(messageType, payload, options) {
61
61
  return this.exchange.send(messageType, payload, options);
62
62
  }
63
- sendStatus(status) {
63
+ sendStatus(status, options) {
64
64
  return this.send(
65
65
  1 /* StatusResponse */,
66
- import_types.TlvStatusResponse.encode({ status, interactionModelRevision: import_model.Specification.INTERACTION_MODEL_REVISION })
66
+ import_types.TlvStatusResponse.encode({ status, interactionModelRevision: import_model.Specification.INTERACTION_MODEL_REVISION }),
67
+ options
67
68
  );
68
69
  }
69
70
  async waitForSuccess(expectedProcessingTimeMs) {
@@ -320,7 +321,7 @@ class IncomingInteractionClientMessenger extends InteractionMessenger {
320
321
  const report = import_types.TlvDataReport.decode(dataReportMessage.payload);
321
322
  if (expectedSubscriptionIds !== void 0) {
322
323
  if (report.subscriptionId === void 0 || !expectedSubscriptionIds.includes(report.subscriptionId)) {
323
- await this.sendStatus(import_types.StatusCode.InvalidSubscription);
324
+ await this.sendStatus(import_types.StatusCode.InvalidSubscription, { multipleMessageInteraction: true });
324
325
  throw new import_general.UnexpectedDataError(
325
326
  report.subscriptionId === void 0 ? "Invalid Data report without Subscription ID" : `Invalid Data report with unexpected subscription ID ${report.subscriptionId}`
326
327
  );
@@ -341,9 +342,9 @@ class IncomingInteractionClientMessenger extends InteractionMessenger {
341
342
  eventValues.push(...report.eventReports);
342
343
  }
343
344
  if (report.moreChunkedMessages) {
344
- await this.sendStatus(import_types.StatusCode.Success);
345
+ await this.sendStatus(import_types.StatusCode.Success, { multipleMessageInteraction: true });
345
346
  } else if (!report.suppressResponse) {
346
- this.sendStatus(import_types.StatusCode.Success).catch(
347
+ this.sendStatus(import_types.StatusCode.Success, { multipleMessageInteraction: true }).catch(
347
348
  (error) => logger.info("Error while sending final Success after receiving all DataReport chunks", error)
348
349
  );
349
350
  }
@@ -372,7 +373,7 @@ class InteractionClientMessenger extends IncomingInteractionClientMessenger {
372
373
  }
373
374
  return await this.exchange.send(messageType, payload, options);
374
375
  } catch (error) {
375
- if (error instanceof import_MessageExchange.RetransmissionLimitReachedError || error instanceof import_ExchangeManager.ChannelNotConnectedError) {
376
+ if ((error instanceof import_MessageExchange.RetransmissionLimitReachedError || error instanceof import_ExchangeManager.ChannelNotConnectedError) && !options?.multipleMessageInteraction) {
376
377
  logger.debug(
377
378
  `${error instanceof import_MessageExchange.RetransmissionLimitReachedError ? "Retransmission limit reached" : "Channel not connected"}, trying to reconnect and resend the message.`
378
379
  );
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "version": 3,
3
3
  "sources": ["../../../src/interaction/InteractionMessenger.ts"],
4
- "mappings": "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",
4
+ "mappings": "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",
5
5
  "names": ["MessageType"]
6
6
  }
@@ -38,10 +38,8 @@ export declare class MdnsScanner implements Scanner {
38
38
  */
39
39
  findCommissionableDevices(identifier: CommissionableDeviceIdentifiers, timeoutSeconds?: number, ignoreExistingRecords?: boolean): Promise<CommissionableDevice[]>;
40
40
  /**
41
- * Discovers commissionable devices based on a defined identifier and returns the first found entries. If already a
42
- * @param identifier
43
- * @param callback
44
- * @param timeoutSeconds
41
+ * Discovers commissionable devices based on a defined identifier and returns the first found entries.
42
+ * If an own cancelSignal promise is used the discovery can only be cancelled via this signal!
45
43
  */
46
44
  findCommissionableDevicesContinuously(identifier: CommissionableDeviceIdentifiers, callback: (device: CommissionableDevice) => void, timeoutSeconds?: number, cancelSignal?: Promise<void>): Promise<CommissionableDevice[]>;
47
45
  getDiscoveredCommissionableDevices(identifier: CommissionableDeviceIdentifiers): {
@@ -1 +1 @@
1
- {"version":3,"file":"MdnsScanner.d.ts","sourceRoot":"","sources":["../../../src/mdns/MdnsScanner.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO,EAEH,WAAW,EACX,UAAU,EASV,QAAQ,EAGR,OAAO,EACP,eAAe,EAIf,kBAAkB,EAGrB,MAAM,UAAU,CAAC;AAClB,OAAO,EAAE,MAAM,EAAY,MAAM,QAAQ,CAAC;AAC1C,OAAO,EACH,oBAAoB,EACpB,+BAA+B,EAC/B,aAAa,EACb,iBAAiB,EACjB,OAAO,EACV,MAAM,sBAAsB,CAAC;AAC9B,OAAO,EAAE,MAAM,EAAE,MAAM,qBAAqB,CAAC;AAkB7C,KAAK,4BAA4B,GAAG,eAAe,GAAG,QAAQ,CAAC;AAmB/D;;;GAGG;AACH,qBAAa,WAAY,YAAW,OAAO;;IACvC,IAAI,IAAI,gBAEP;WAEY,MAAM,CAAC,OAAO,EAAE,OAAO,EAAE,OAAO,CAAC,EAAE;QAAE,UAAU,CAAC,EAAE,OAAO,CAAC;QAAC,YAAY,CAAC,EAAE,MAAM,CAAA;KAAE;gBAkCnF,eAAe,EAAE,kBAAkB,EAAE,UAAU,CAAC,EAAE,OAAO;IAkPrE;;;OAGG;IACG,qBAAqB,CACvB,EAAE,aAAa,EAAE,EAAE,MAAM,EACzB,MAAM,EAAE,MAAM,EACd,cAAc,CAAC,EAAE,MAAM,EACvB,qBAAqB,UAAQ,GAC9B,OAAO,CAAC,iBAAiB,GAAG,SAAS,CAAC;IAyBzC,gCAAgC,CAAC,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,cAAc,UAAO;IAKtF,mCAAmC,CAAC,UAAU,EAAE,+BAA+B,EAAE,cAAc,UAAO;IAKtG,8BAA8B,CAAC,EAAE,aAAa,EAAE,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM;IAoLxE;;;;;;;OAOG;IACG,yBAAyB,CAC3B,UAAU,EAAE,+BAA+B,EAC3C,cAAc,SAAI,EAClB,qBAAqB,UAAQ,GAC9B,OAAO,CAAC,oBAAoB,EAAE,CAAC;IAkBlC;;;;;OAKG;IACG,qCAAqC,CACvC,UAAU,EAAE,+BAA+B,EAC3C,QAAQ,EAAE,CAAC,MAAM,EAAE,oBAAoB,KAAK,IAAI,EAChD,cAAc,CAAC,EAAE,MAAM,EACvB,YAAY,CAAC,EAAE,OAAO,CAAC,IAAI,CAAC,GAC7B,OAAO,CAAC,oBAAoB,EAAE,CAAC;IAwClC,kCAAkC,CAAC,UAAU,EAAE,+BAA+B;mBA5NvD,eAAe,EAAE;;;;;;;;;;;;;;;;;oBAhYxB,MAAM;YACd,MAAM;YACN,MAAM;YACN,MAAM;;IA6lBd;;OAEG;IACG,KAAK;IAiZX,MAAM,CAAC,wBAAwB,CAAC,IAAI,EAAE,aAAa;IAgBnD,MAAM,CAAC,wBAAwB,CAAC,SAAS,EAAE,GAAG,CAAC,MAAM,EAAE,4BAA4B,CAAC;CASvF"}
1
+ {"version":3,"file":"MdnsScanner.d.ts","sourceRoot":"","sources":["../../../src/mdns/MdnsScanner.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO,EAEH,WAAW,EACX,UAAU,EASV,QAAQ,EAGR,OAAO,EACP,eAAe,EAIf,kBAAkB,EAGrB,MAAM,UAAU,CAAC;AAClB,OAAO,EAAE,MAAM,EAAY,MAAM,QAAQ,CAAC;AAC1C,OAAO,EACH,oBAAoB,EACpB,+BAA+B,EAC/B,aAAa,EACb,iBAAiB,EACjB,OAAO,EACV,MAAM,sBAAsB,CAAC;AAC9B,OAAO,EAAE,MAAM,EAAE,MAAM,qBAAqB,CAAC;AAkB7C,KAAK,4BAA4B,GAAG,eAAe,GAAG,QAAQ,CAAC;AAyB/D;;;GAGG;AACH,qBAAa,WAAY,YAAW,OAAO;;IACvC,IAAI,IAAI,gBAEP;WAEY,MAAM,CAAC,OAAO,EAAE,OAAO,EAAE,OAAO,CAAC,EAAE;QAAE,UAAU,CAAC,EAAE,OAAO,CAAC;QAAC,YAAY,CAAC,EAAE,MAAM,CAAA;KAAE;gBAmCnF,eAAe,EAAE,kBAAkB,EAAE,UAAU,CAAC,EAAE,OAAO;IA8PrE;;;OAGG;IACG,qBAAqB,CACvB,EAAE,aAAa,EAAE,EAAE,MAAM,EACzB,MAAM,EAAE,MAAM,EACd,cAAc,CAAC,EAAE,MAAM,EACvB,qBAAqB,UAAQ,GAC9B,OAAO,CAAC,iBAAiB,GAAG,SAAS,CAAC;IAyBzC,gCAAgC,CAAC,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,cAAc,UAAO;IAKtF,mCAAmC,CAAC,UAAU,EAAE,+BAA+B,EAAE,cAAc,UAAO;IAQtG,8BAA8B,CAAC,EAAE,aAAa,EAAE,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM;IAoLxE;;;;;;;OAOG;IACG,yBAAyB,CAC3B,UAAU,EAAE,+BAA+B,EAC3C,cAAc,SAAI,EAClB,qBAAqB,UAAQ,GAC9B,OAAO,CAAC,oBAAoB,EAAE,CAAC;IAkBlC;;;OAGG;IACG,qCAAqC,CACvC,UAAU,EAAE,+BAA+B,EAC3C,QAAQ,EAAE,CAAC,MAAM,EAAE,oBAAoB,KAAK,IAAI,EAChD,cAAc,CAAC,EAAE,MAAM,EACvB,YAAY,CAAC,EAAE,OAAO,CAAC,IAAI,CAAC,GAC7B,OAAO,CAAC,oBAAoB,EAAE,CAAC;IAiDlC,kCAAkC,CAAC,UAAU,EAAE,+BAA+B;mBAnOvD,eAAe,EAAE;;;;;;;;;;;;;;;;;oBAtZxB,MAAM;YACd,MAAM;YACN,MAAM;YACN,MAAM;;IA0nBd;;OAEG;IACG,KAAK;IAufX,MAAM,CAAC,wBAAwB,CAAC,IAAI,EAAE,aAAa;IAgBnD,MAAM,CAAC,wBAAwB,CAAC,SAAS,EAAE,GAAG,CAAC,MAAM,EAAE,4BAA4B,CAAC;CASvF"}
@@ -85,7 +85,9 @@ class MdnsScanner {
85
85
  this.#queryTimer?.stop();
86
86
  const allQueries = Array.from(this.#activeAnnounceQueries.values());
87
87
  const queries = allQueries.flatMap(({ queries: queries2 }) => queries2);
88
- const answers = allQueries.flatMap(({ answers: answers2 }) => answers2);
88
+ const answers = allQueries.flatMap(
89
+ ({ answers: answers2 }) => Object.values(answers2).flatMap((answer) => Object.values(answer).flatMap((records) => records))
90
+ );
89
91
  this.#queryTimer = import_general.Time.getTimer(
90
92
  "MDNS discovery",
91
93
  this.#nextAnnounceIntervalSeconds * 1e3,
@@ -145,7 +147,7 @@ class MdnsScanner {
145
147
  * Set new DnsQuery records to the list of active queries to discover devices in the network and start sending them
146
148
  * out. When entry already exists the query is overwritten and answers are always added.
147
149
  */
148
- #setQueryRecords(queryId, queries, answers = []) {
150
+ #setQueryRecords(queryId, queries, answers = {}) {
149
151
  const activeExistingQuery = this.#activeAnnounceQueries.get(queryId);
150
152
  if (activeExistingQuery) {
151
153
  const { queries: existingQueries } = activeExistingQuery;
@@ -161,7 +163,7 @@ class MdnsScanner {
161
163
  return;
162
164
  }
163
165
  queries = [...newQueries, ...existingQueries];
164
- answers = [...activeExistingQuery.answers, ...answers];
166
+ answers = this.#combineStructuredAnswers(activeExistingQuery.answers, answers);
165
167
  }
166
168
  this.#activeAnnounceQueries.set(queryId, { queries, answers });
167
169
  logger.debug(`Set ${queries.length} query records for query ${queryId}: ${import_general.Logger.toJSON(queries)}`);
@@ -170,7 +172,9 @@ class MdnsScanner {
170
172
  this.#queryTimer = import_general.Time.getTimer("MDNS discovery", 0, () => this.#sendQueries()).start();
171
173
  }
172
174
  #getActiveQueryEarlierAnswers() {
173
- return Array.from(this.#activeAnnounceQueries.values()).flatMap(({ answers }) => answers);
175
+ return this.#combineStructuredAnswers(
176
+ ...[...this.#activeAnnounceQueries.values()].map(({ answers }) => answers)
177
+ );
174
178
  }
175
179
  /**
176
180
  * Remove a query from the list of active queries because discovery has finished or timed out and stop sending it
@@ -238,10 +242,13 @@ class MdnsScanner {
238
242
  * Registers a deferred promise for a specific queryId together with a timeout and return the promise.
239
243
  * The promise will be resolved when the timer runs out latest.
240
244
  */
241
- async #registerWaiterPromise(queryId, timeoutSeconds, resolveOnUpdatedRecords = true) {
245
+ async #registerWaiterPromise(queryId, timeoutSeconds, resolveOnUpdatedRecords = true, cancelResolver) {
242
246
  const { promise, resolver } = (0, import_general.createPromise)();
243
- const timer = timeoutSeconds !== void 0 ? import_general.Time.getTimer("MDNS timeout", timeoutSeconds * 1e3, () => this.#finishWaiter(queryId, true)).start() : void 0;
244
- this.#recordWaiters.set(queryId, { resolver, timer, resolveOnUpdatedRecords });
247
+ const timer = timeoutSeconds !== void 0 ? import_general.Time.getTimer("MDNS timeout", timeoutSeconds * 1e3, () => {
248
+ cancelResolver?.();
249
+ this.#finishWaiter(queryId, true);
250
+ }).start() : void 0;
251
+ this.#recordWaiters.set(queryId, { resolver, timer, resolveOnUpdatedRecords, cancelResolver });
245
252
  logger.debug(
246
253
  `Registered waiter for query ${queryId} with ${timeoutSeconds !== void 0 ? `timeout ${timeoutSeconds} seconds` : "no timeout"}${resolveOnUpdatedRecords ? "" : " (not resolving on updated records)"}`
247
254
  );
@@ -304,6 +311,8 @@ class MdnsScanner {
304
311
  }
305
312
  cancelCommissionableDeviceDiscovery(identifier, resolvePromise = true) {
306
313
  const queryId = this.#buildCommissionableQueryIdentifier(identifier);
314
+ const { cancelResolver } = this.#recordWaiters.get(queryId) ?? {};
315
+ cancelResolver?.();
307
316
  this.#finishWaiter(queryId, resolvePromise);
308
317
  }
309
318
  getDiscoveredOperationalDevice({ operationalId }, nodeId) {
@@ -476,22 +485,27 @@ class MdnsScanner {
476
485
  return storedRecords;
477
486
  }
478
487
  /**
479
- * Discovers commissionable devices based on a defined identifier and returns the first found entries. If already a
480
- * @param identifier
481
- * @param callback
482
- * @param timeoutSeconds
488
+ * Discovers commissionable devices based on a defined identifier and returns the first found entries.
489
+ * If an own cancelSignal promise is used the discovery can only be cancelled via this signal!
483
490
  */
484
491
  async findCommissionableDevicesContinuously(identifier, callback, timeoutSeconds, cancelSignal) {
485
492
  const discoveredDevices = /* @__PURE__ */ new Set();
486
- const now = import_general.Time.nowMs();
487
- const discoveryEndTime = timeoutSeconds ? now + timeoutSeconds * 1e3 : void 0;
493
+ const discoveryEndTime = timeoutSeconds ? import_general.Time.nowMs() + timeoutSeconds * 1e3 : void 0;
488
494
  const queryId = this.#buildCommissionableQueryIdentifier(identifier);
489
495
  this.#setQueryRecords(queryId, this.#getCommissionableQueryRecords(identifier));
496
+ let queryResolver;
497
+ if (cancelSignal === void 0) {
498
+ const { promise, resolver } = (0, import_general.createPromise)();
499
+ cancelSignal = promise;
500
+ queryResolver = resolver;
501
+ }
490
502
  let canceled = false;
491
503
  cancelSignal?.then(
492
504
  () => {
493
505
  canceled = true;
494
- this.#finishWaiter(queryId, true);
506
+ if (queryResolver === void 0) {
507
+ this.#finishWaiter(queryId, true);
508
+ }
495
509
  },
496
510
  (cause) => {
497
511
  logger.error("Unexpected error canceling commissioning", cause);
@@ -507,12 +521,12 @@ class MdnsScanner {
507
521
  });
508
522
  let remainingTime;
509
523
  if (discoveryEndTime !== void 0) {
510
- const remainingTime2 = Math.ceil((discoveryEndTime - now) / 1e3);
511
- if (remainingTime2 <= 0) {
524
+ remainingTime = discoveryEndTime - import_general.Time.nowMs();
525
+ if (remainingTime <= 0) {
512
526
  break;
513
527
  }
514
528
  }
515
- await this.#registerWaiterPromise(queryId, remainingTime, false);
529
+ await this.#registerWaiterPromise(queryId, remainingTime, false, queryResolver);
516
530
  }
517
531
  return this.#getCommissionableDeviceRecords(identifier);
518
532
  }
@@ -531,6 +545,74 @@ class MdnsScanner {
531
545
  (queryId) => this.#finishWaiter(queryId, !!this.#recordWaiters.get(queryId)?.timer)
532
546
  );
533
547
  }
548
+ /** Converts the discovery data into a structured format for performant access. */
549
+ #structureAnswers(...answersList) {
550
+ const structuredAnswers = {};
551
+ answersList.forEach(
552
+ (answers) => answers.forEach((answer) => {
553
+ const { name, recordType } = answer;
554
+ if (name.endsWith(import_MdnsConsts.MATTER_SERVICE_QNAME)) {
555
+ structuredAnswers.operational = structuredAnswers.operational ?? {};
556
+ structuredAnswers.operational[recordType] = structuredAnswers.operational[recordType] ?? [];
557
+ structuredAnswers.operational[recordType].push(answer);
558
+ } else if (name.endsWith(import_MdnsConsts.MATTER_COMMISSION_SERVICE_QNAME)) {
559
+ structuredAnswers.commissionable = structuredAnswers.commissionable ?? {};
560
+ structuredAnswers.commissionable[recordType] = structuredAnswers.commissionable[recordType] ?? [];
561
+ structuredAnswers.commissionable[recordType].push(answer);
562
+ } else if (recordType === import_general.DnsRecordType.A || recordType === import_general.DnsRecordType.AAAA) {
563
+ structuredAnswers.addresses = structuredAnswers.addresses ?? {};
564
+ structuredAnswers.addresses[name] = structuredAnswers.addresses[name] ?? [];
565
+ structuredAnswers.addresses[name].push(answer);
566
+ }
567
+ })
568
+ );
569
+ return structuredAnswers;
570
+ }
571
+ #combineStructuredAnswers(...answersList) {
572
+ const combinedAnswers = {};
573
+ for (const answers of answersList) {
574
+ if (answers.operational) {
575
+ combinedAnswers.operational = combinedAnswers.operational ?? {};
576
+ for (const [recordType, records] of Object.entries(answers.operational)) {
577
+ combinedAnswers.operational[recordType] = combinedAnswers.operational[recordType] ?? /* @__PURE__ */ new Map();
578
+ records.forEach((record) => {
579
+ combinedAnswers.operational[recordType].set(record.name, record);
580
+ });
581
+ }
582
+ }
583
+ if (answers.commissionable) {
584
+ combinedAnswers.commissionable = combinedAnswers.commissionable ?? {};
585
+ for (const [recordType, records] of Object.entries(answers.commissionable)) {
586
+ combinedAnswers.commissionable[recordType] = combinedAnswers.commissionable[recordType] ?? /* @__PURE__ */ new Map();
587
+ records.forEach((record) => {
588
+ combinedAnswers.commissionable[recordType].set(record.name, record);
589
+ });
590
+ }
591
+ }
592
+ if (answers.addresses) {
593
+ combinedAnswers.addresses = combinedAnswers.addresses ?? {};
594
+ for (const [name, records] of Object.entries(answers.addresses)) {
595
+ combinedAnswers.addresses[name] = combinedAnswers.addresses[name] ?? [];
596
+ combinedAnswers.addresses[name].push(...records);
597
+ }
598
+ }
599
+ }
600
+ return {
601
+ operational: combinedAnswers.operational ? Object.fromEntries(
602
+ Object.entries(combinedAnswers.operational).map(([recordType, records]) => [
603
+ recordType,
604
+ Array.from(records.values())
605
+ ])
606
+ ) : void 0,
607
+ commissionable: combinedAnswers.commissionable ? Object.fromEntries(
608
+ Object.entries(combinedAnswers.commissionable).map(([recordType, records]) => [
609
+ recordType,
610
+ Array.from(records.values())
611
+ ])
612
+ ) : void 0,
613
+ addresses: combinedAnswers.addresses
614
+ };
615
+ }
534
616
  /**
535
617
  * Main method to handle all incoming DNS messages.
536
618
  * It will parse the message and check if it contains relevant discovery records.
@@ -541,43 +623,39 @@ class MdnsScanner {
541
623
  if (message === void 0) return;
542
624
  if (message.messageType !== import_general.DnsMessageType.Response && message.messageType !== import_general.DnsMessageType.TruncatedResponse)
543
625
  return;
544
- const answers = [...message.answers, ...message.additionalRecords];
545
- if (this.#handleOperationalRecords(answers, this.#getActiveQueryEarlierAnswers(), netInterface)) return;
546
- this.#handleCommissionableRecords(answers, this.#getActiveQueryEarlierAnswers(), netInterface);
626
+ const answers = this.#structureAnswers([...message.answers, ...message.additionalRecords]);
627
+ const formerAnswers = this.#getActiveQueryEarlierAnswers();
628
+ this.#handleOperationalRecords(answers, formerAnswers, netInterface);
629
+ this.#handleCommissionableRecords(answers, formerAnswers, netInterface);
547
630
  }
548
631
  #handleIpRecords(answers, target, netInterface) {
549
- const ipRecords = answers.filter(
550
- ({ name, recordType }) => (recordType === import_general.DnsRecordType.A && this.#enableIpv4 || recordType === import_general.DnsRecordType.AAAA) && name === target
632
+ const ipRecords = answers.flatMap((answer) => answer.addresses?.[target] ?? []).filter(
633
+ ({ recordType }) => recordType === import_general.DnsRecordType.AAAA || recordType === import_general.DnsRecordType.A && this.#enableIpv4
551
634
  );
552
- return ipRecords.map(({ value, ttl }) => ({
553
- value: value.startsWith("fe80::") ? `${value}%${netInterface}` : value,
554
- ttl
555
- }));
635
+ const collectedIps = /* @__PURE__ */ new Map();
636
+ ipRecords.forEach((record) => {
637
+ const { value, ttl } = record;
638
+ if (value.startsWith("fe80::")) {
639
+ collectedIps.set(value, { value: `${value}%${netInterface}`, ttl });
640
+ } else {
641
+ collectedIps.set(value, { value, ttl });
642
+ }
643
+ });
644
+ return [...collectedIps.values()];
556
645
  }
557
646
  #handleOperationalRecords(answers, formerAnswers, netInterface) {
558
- let recordsHandled = false;
559
- const operationalTxtRecords = answers.filter(
560
- ({ name, recordType }) => recordType === import_general.DnsRecordType.TXT && name.endsWith(import_MdnsConsts.MATTER_SERVICE_QNAME)
561
- );
562
- if (operationalTxtRecords.length) {
563
- operationalTxtRecords.forEach((record) => this.#handleOperationalTxtRecord(record, netInterface));
564
- recordsHandled = true;
565
- }
566
- let operationalSrvRecords = answers.filter(
567
- ({ name, recordType }) => recordType === import_general.DnsRecordType.SRV && name.endsWith(import_MdnsConsts.MATTER_SERVICE_QNAME)
568
- );
569
- if (!operationalSrvRecords.length) {
570
- operationalSrvRecords = formerAnswers.filter(
571
- ({ name, recordType }) => recordType === import_general.DnsRecordType.SRV && name.endsWith(import_MdnsConsts.MATTER_SERVICE_QNAME)
572
- );
647
+ if (!answers.operational) return;
648
+ const operationalTxtRecords = answers.operational[import_general.DnsRecordType.TXT] ?? [];
649
+ operationalTxtRecords.forEach((record) => this.#handleOperationalTxtRecord(record, netInterface));
650
+ let operationalSrvRecords = answers.operational[import_general.DnsRecordType.SRV] ?? [];
651
+ if (!operationalSrvRecords.length && formerAnswers.operational) {
652
+ operationalSrvRecords = formerAnswers.operational[import_general.DnsRecordType.SRV] ?? [];
573
653
  }
574
654
  if (operationalSrvRecords.length) {
575
655
  operationalSrvRecords.forEach(
576
656
  (record) => this.#handleOperationalSrvRecord(record, answers, formerAnswers, netInterface)
577
657
  );
578
- recordsHandled = true;
579
658
  }
580
- return recordsHandled;
581
659
  }
582
660
  #handleOperationalTxtRecord(record, netInterface) {
583
661
  const { name: matterName, value, ttl } = record;
@@ -633,7 +711,7 @@ class MdnsScanner {
633
711
  }
634
712
  return true;
635
713
  }
636
- const ips = this.#handleIpRecords([...answers, ...formerAnswers], target, netInterface);
714
+ const ips = this.#handleIpRecords([formerAnswers, answers], target, netInterface);
637
715
  const deviceExisted = this.#operationalDeviceRecords.has(matterName);
638
716
  const device = this.#operationalDeviceRecords.get(matterName) ?? {
639
717
  deviceIdentifier: matterName,
@@ -678,13 +756,14 @@ class MdnsScanner {
678
756
  return true;
679
757
  }
680
758
  #handleCommissionableRecords(answers, formerAnswers, netInterface) {
681
- let commissionableRecords = answers.filter(({ name }) => name.endsWith(import_MdnsConsts.MATTER_COMMISSION_SERVICE_QNAME));
682
- if (!commissionableRecords.length) {
683
- commissionableRecords = formerAnswers.filter(({ name }) => name.endsWith(import_MdnsConsts.MATTER_COMMISSION_SERVICE_QNAME));
684
- if (!commissionableRecords.length) return;
759
+ let commissionableRecords = answers.commissionable ?? {};
760
+ if (!commissionableRecords[import_general.DnsRecordType.SRV]?.length && !commissionableRecords[import_general.DnsRecordType.TXT]?.length) {
761
+ commissionableRecords = formerAnswers.commissionable ?? {};
762
+ if (!commissionableRecords[import_general.DnsRecordType.SRV]?.length && !commissionableRecords[import_general.DnsRecordType.TXT]?.length)
763
+ return;
685
764
  }
686
765
  const queryMissingDataForInstances = /* @__PURE__ */ new Set();
687
- const txtRecords = commissionableRecords.filter(({ recordType }) => recordType === import_general.DnsRecordType.TXT);
766
+ const txtRecords = commissionableRecords[import_general.DnsRecordType.TXT] ?? [];
688
767
  for (const record of txtRecords) {
689
768
  const { name, ttl } = record;
690
769
  if (ttl === 0) {
@@ -724,7 +803,7 @@ class MdnsScanner {
724
803
  }
725
804
  this.#commissionableDeviceRecords.set(name, parsedRecord);
726
805
  }
727
- const srvRecords = commissionableRecords.filter(({ recordType }) => recordType === import_general.DnsRecordType.SRV);
806
+ const srvRecords = commissionableRecords[import_general.DnsRecordType.SRV] ?? [];
728
807
  for (const record of srvRecords) {
729
808
  const storedRecord = this.#commissionableDeviceRecords.get(record.name);
730
809
  if (storedRecord === void 0) continue;
@@ -740,7 +819,7 @@ class MdnsScanner {
740
819
  continue;
741
820
  }
742
821
  const recordExisting = storedRecord.addresses.size > 0;
743
- const ips = this.#handleIpRecords([...answers, ...formerAnswers], target, netInterface);
822
+ const ips = this.#handleIpRecords([formerAnswers, answers], target, netInterface);
744
823
  if (ips.length > 0) {
745
824
  for (const { value: ip, ttl: ttl2 } of ips) {
746
825
  if (ttl2 === 0) {