@matter/protocol 0.16.0-alpha.0-20251210-206ca2db7 → 0.16.0-alpha.0-20251211-0f80042cf

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 (63) hide show
  1. package/dist/cjs/action/client/ClientInteraction.d.ts +10 -3
  2. package/dist/cjs/action/client/ClientInteraction.d.ts.map +1 -1
  3. package/dist/cjs/action/client/ClientInteraction.js +35 -14
  4. package/dist/cjs/action/client/ClientInteraction.js.map +1 -1
  5. package/dist/cjs/action/client/subscription/ClientSubscriptionHandler.d.ts.map +1 -1
  6. package/dist/cjs/action/client/subscription/ClientSubscriptionHandler.js +22 -23
  7. package/dist/cjs/action/client/subscription/ClientSubscriptionHandler.js.map +1 -1
  8. package/dist/cjs/action/client/subscription/PeerSubscription.d.ts +2 -0
  9. package/dist/cjs/action/client/subscription/PeerSubscription.d.ts.map +1 -1
  10. package/dist/cjs/action/client/subscription/PeerSubscription.js +7 -2
  11. package/dist/cjs/action/client/subscription/PeerSubscription.js.map +1 -1
  12. package/dist/cjs/action/request/Subscribe.d.ts +0 -1
  13. package/dist/cjs/action/request/Subscribe.d.ts.map +1 -1
  14. package/dist/cjs/action/request/Subscribe.js.map +1 -1
  15. package/dist/cjs/interaction/AttributeDataDecoder.d.ts +1 -2
  16. package/dist/cjs/interaction/AttributeDataDecoder.d.ts.map +1 -1
  17. package/dist/cjs/peer/index.d.ts +1 -0
  18. package/dist/cjs/peer/index.d.ts.map +1 -1
  19. package/dist/cjs/peer/index.js +1 -0
  20. package/dist/cjs/peer/index.js.map +1 -1
  21. package/dist/cjs/protocol/ExchangeManager.d.ts.map +1 -1
  22. package/dist/cjs/protocol/ExchangeManager.js +5 -6
  23. package/dist/cjs/protocol/ExchangeManager.js.map +1 -1
  24. package/dist/cjs/protocol/MessageExchange.d.ts +6 -1
  25. package/dist/cjs/protocol/MessageExchange.d.ts.map +1 -1
  26. package/dist/cjs/protocol/MessageExchange.js +11 -6
  27. package/dist/cjs/protocol/MessageExchange.js.map +1 -1
  28. package/dist/esm/action/client/ClientInteraction.d.ts +10 -3
  29. package/dist/esm/action/client/ClientInteraction.d.ts.map +1 -1
  30. package/dist/esm/action/client/ClientInteraction.js +35 -14
  31. package/dist/esm/action/client/ClientInteraction.js.map +1 -1
  32. package/dist/esm/action/client/subscription/ClientSubscriptionHandler.d.ts.map +1 -1
  33. package/dist/esm/action/client/subscription/ClientSubscriptionHandler.js +22 -23
  34. package/dist/esm/action/client/subscription/ClientSubscriptionHandler.js.map +1 -1
  35. package/dist/esm/action/client/subscription/PeerSubscription.d.ts +2 -0
  36. package/dist/esm/action/client/subscription/PeerSubscription.d.ts.map +1 -1
  37. package/dist/esm/action/client/subscription/PeerSubscription.js +7 -2
  38. package/dist/esm/action/client/subscription/PeerSubscription.js.map +1 -1
  39. package/dist/esm/action/request/Subscribe.d.ts +0 -1
  40. package/dist/esm/action/request/Subscribe.d.ts.map +1 -1
  41. package/dist/esm/action/request/Subscribe.js.map +1 -1
  42. package/dist/esm/interaction/AttributeDataDecoder.d.ts +1 -2
  43. package/dist/esm/interaction/AttributeDataDecoder.d.ts.map +1 -1
  44. package/dist/esm/peer/index.d.ts +1 -0
  45. package/dist/esm/peer/index.d.ts.map +1 -1
  46. package/dist/esm/peer/index.js +1 -0
  47. package/dist/esm/peer/index.js.map +1 -1
  48. package/dist/esm/protocol/ExchangeManager.d.ts.map +1 -1
  49. package/dist/esm/protocol/ExchangeManager.js +5 -6
  50. package/dist/esm/protocol/ExchangeManager.js.map +1 -1
  51. package/dist/esm/protocol/MessageExchange.d.ts +6 -1
  52. package/dist/esm/protocol/MessageExchange.d.ts.map +1 -1
  53. package/dist/esm/protocol/MessageExchange.js +11 -6
  54. package/dist/esm/protocol/MessageExchange.js.map +1 -1
  55. package/package.json +6 -6
  56. package/src/action/client/ClientInteraction.ts +45 -16
  57. package/src/action/client/subscription/ClientSubscriptionHandler.ts +29 -30
  58. package/src/action/client/subscription/PeerSubscription.ts +8 -2
  59. package/src/action/request/Subscribe.ts +0 -1
  60. package/src/interaction/AttributeDataDecoder.ts +1 -1
  61. package/src/peer/index.ts +1 -0
  62. package/src/protocol/ExchangeManager.ts +5 -6
  63. package/src/protocol/MessageExchange.ts +14 -9
@@ -11,13 +11,19 @@ import { DecodedInvokeResult } from "#action/response/InvokeResult.js";
11
11
  import { ReadResult } from "#action/response/ReadResult.js";
12
12
  import { WriteResult } from "#action/response/WriteResult.js";
13
13
  import { Abort, Duration, Environment, RetrySchedule } from "#general";
14
+ import { ExchangeProvider } from "#protocol/ExchangeProvider.js";
14
15
  import { ClientSubscribe } from "./subscription/ClientSubscribe.js";
15
- import { ClientSubscription } from "./subscription/ClientSubscription.js";
16
16
  import { ClientSubscriptions } from "./subscription/ClientSubscriptions.js";
17
+ import { PeerSubscription } from "./subscription/PeerSubscription.js";
18
+ import { SustainedSubscription } from "./subscription/SustainedSubscription.js";
19
+ export type SubscriptionResult<T extends ClientSubscribe = ClientSubscribe> = Promise<T extends {
20
+ sustain: true;
21
+ } ? SustainedSubscription : PeerSubscription>;
17
22
  export interface ClientInteractionContext {
18
23
  environment: Environment;
19
24
  abort?: Abort.Signal;
20
25
  sustainRetries?: RetrySchedule.Configuration;
26
+ exchangeProvider?: ExchangeProvider;
21
27
  }
22
28
  export declare const DEFAULT_MIN_INTERVAL_FLOOR: Duration;
23
29
  /**
@@ -32,7 +38,8 @@ export declare const SUBSCRIPTION_MAX_INTERVAL_PUBLISHER_LIMIT: Duration;
32
38
  */
33
39
  export declare class ClientInteraction<SessionT extends InteractionSession = InteractionSession> implements Interactable<SessionT> {
34
40
  #private;
35
- constructor({ environment, abort, sustainRetries }: ClientInteractionContext);
41
+ constructor({ environment, abort, sustainRetries, exchangeProvider }: ClientInteractionContext);
42
+ get exchanges(): ExchangeProvider;
36
43
  get session(): import("../../index.js").Session;
37
44
  close(): Promise<void>;
38
45
  get subscriptions(): ClientSubscriptions;
@@ -54,6 +61,6 @@ export declare class ClientInteraction<SessionT extends InteractionSession = Int
54
61
  /**
55
62
  * Subscribe to attribute values and events.
56
63
  */
57
- subscribe(request: ClientSubscribe, session?: SessionT): Promise<ClientSubscription>;
64
+ subscribe<T extends ClientSubscribe>(request: T, session?: SessionT): SubscriptionResult<T>;
58
65
  }
59
66
  //# sourceMappingURL=ClientInteraction.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"ClientInteraction.d.ts","sourceRoot":"","sources":["../../../../src/action/client/ClientInteraction.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO,EAAE,YAAY,EAAE,kBAAkB,EAAE,MAAM,yBAAyB,CAAC;AAC3E,OAAO,EAAE,YAAY,EAAU,MAAM,2BAA2B,CAAC;AACjE,OAAO,EAAE,IAAI,EAAE,MAAM,yBAAyB,CAAC;AAG/C,OAAO,EAAE,KAAK,EAAE,MAAM,0BAA0B,CAAC;AACjD,OAAO,EAAE,mBAAmB,EAAgB,MAAM,kCAAkC,CAAC;AACrF,OAAO,EAAE,UAAU,EAAE,MAAM,gCAAgC,CAAC;AAC5D,OAAO,EAAE,WAAW,EAAE,MAAM,iCAAiC,CAAC;AAE9D,OAAO,EACH,KAAK,EAGL,QAAQ,EAER,WAAW,EAMX,aAAa,EAEhB,MAAM,UAAU,CAAC;AAOlB,OAAO,EAAE,eAAe,EAAE,MAAM,mCAAmC,CAAC;AACpE,OAAO,EAAE,kBAAkB,EAAE,MAAM,sCAAsC,CAAC;AAC1E,OAAO,EAAE,mBAAmB,EAAE,MAAM,uCAAuC,CAAC;AAM5E,MAAM,WAAW,wBAAwB;IACrC,WAAW,EAAE,WAAW,CAAC;IACzB,KAAK,CAAC,EAAE,KAAK,CAAC,MAAM,CAAC;IACrB,cAAc,CAAC,EAAE,aAAa,CAAC,aAAa,CAAC;CAChD;AAED,eAAO,MAAM,0BAA0B,UAAa,CAAC;AAErD;;;;;GAKG;AACH,eAAO,MAAM,yCAAyC,UAAc,CAAC;AAKrE;;GAEG;AACH,qBAAa,iBAAiB,CAC1B,QAAQ,SAAS,kBAAkB,GAAG,kBAAkB,CAC1D,YAAW,YAAY,CAAC,QAAQ,CAAC;;gBAQnB,EAAE,WAAW,EAAE,KAAK,EAAE,cAAc,EAAE,EAAE,wBAAwB;IAqB5E,IAAI,OAAO,qCAEV;IAEK,KAAK;IAUX,IAAI,aAAa,wBAEhB;IAED;;OAEG;IACI,IAAI,CAAC,OAAO,EAAE,IAAI,EAAE,OAAO,CAAC,EAAE,QAAQ,GAAG,UAAU;IAuC1D;;;;;OAKG;IACG,KAAK,CAAC,CAAC,SAAS,KAAK,EAAE,OAAO,EAAE,CAAC,EAAE,OAAO,CAAC,EAAE,QAAQ,GAAG,WAAW,CAAC,CAAC,CAAC;IA6D5E;;OAEG;IACI,MAAM,CAAC,OAAO,EAAE,YAAY,EAAE,OAAO,CAAC,EAAE,QAAQ,GAAG,mBAAmB;IAuG7E;;OAEG;IACG,SAAS,CAAC,OAAO,EAAE,eAAe,EAAE,OAAO,CAAC,EAAE,QAAQ;CAwJ/D"}
1
+ {"version":3,"file":"ClientInteraction.d.ts","sourceRoot":"","sources":["../../../../src/action/client/ClientInteraction.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO,EAAE,YAAY,EAAE,kBAAkB,EAAE,MAAM,yBAAyB,CAAC;AAC3E,OAAO,EAAE,YAAY,EAAU,MAAM,2BAA2B,CAAC;AACjE,OAAO,EAAE,IAAI,EAAE,MAAM,yBAAyB,CAAC;AAG/C,OAAO,EAAE,KAAK,EAAE,MAAM,0BAA0B,CAAC;AACjD,OAAO,EAAE,mBAAmB,EAAgB,MAAM,kCAAkC,CAAC;AACrF,OAAO,EAAE,UAAU,EAAE,MAAM,gCAAgC,CAAC;AAC5D,OAAO,EAAE,WAAW,EAAE,MAAM,iCAAiC,CAAC;AAE9D,OAAO,EACH,KAAK,EAGL,QAAQ,EAER,WAAW,EAMX,aAAa,EAEhB,MAAM,UAAU,CAAC;AAIlB,OAAO,EAAE,gBAAgB,EAAE,MAAM,+BAA+B,CAAC;AAIjE,OAAO,EAAE,eAAe,EAAE,MAAM,mCAAmC,CAAC;AAEpE,OAAO,EAAE,mBAAmB,EAAE,MAAM,uCAAuC,CAAC;AAC5E,OAAO,EAAE,gBAAgB,EAAE,MAAM,oCAAoC,CAAC;AACtE,OAAO,EAAE,qBAAqB,EAAE,MAAM,yCAAyC,CAAC;AAIhF,MAAM,MAAM,kBAAkB,CAAC,CAAC,SAAS,eAAe,GAAG,eAAe,IAAI,OAAO,CACjF,CAAC,SAAS;IAAE,OAAO,EAAE,IAAI,CAAA;CAAE,GAAG,qBAAqB,GAAG,gBAAgB,CACzE,CAAC;AAEF,MAAM,WAAW,wBAAwB;IACrC,WAAW,EAAE,WAAW,CAAC;IACzB,KAAK,CAAC,EAAE,KAAK,CAAC,MAAM,CAAC;IACrB,cAAc,CAAC,EAAE,aAAa,CAAC,aAAa,CAAC;IAC7C,gBAAgB,CAAC,EAAE,gBAAgB,CAAC;CACvC;AAED,eAAO,MAAM,0BAA0B,UAAa,CAAC;AAErD;;;;;GAKG;AACH,eAAO,MAAM,yCAAyC,UAAc,CAAC;AAKrE;;GAEG;AACH,qBAAa,iBAAiB,CAC1B,QAAQ,SAAS,kBAAkB,GAAG,kBAAkB,CAC1D,YAAW,YAAY,CAAC,QAAQ,CAAC;;gBASnB,EAAE,WAAW,EAAE,KAAK,EAAE,cAAc,EAAE,gBAAgB,EAAE,EAAE,wBAAwB;IAwB9F,IAAI,SAAS,qBAEZ;IAED,IAAI,OAAO,qCAEV;IAEK,KAAK;IAUX,IAAI,aAAa,wBAKhB;IAED;;OAEG;IACI,IAAI,CAAC,OAAO,EAAE,IAAI,EAAE,OAAO,CAAC,EAAE,QAAQ,GAAG,UAAU;IA0C1D;;;;;OAKG;IACG,KAAK,CAAC,CAAC,SAAS,KAAK,EAAE,OAAO,EAAE,CAAC,EAAE,OAAO,CAAC,EAAE,QAAQ,GAAG,WAAW,CAAC,CAAC,CAAC;IA6D5E;;OAEG;IACI,MAAM,CAAC,OAAO,EAAE,YAAY,EAAE,OAAO,CAAC,EAAE,QAAQ,GAAG,mBAAmB;IAuG7E;;OAEG;IACG,SAAS,CAAC,CAAC,SAAS,eAAe,EAAE,OAAO,EAAE,CAAC,EAAE,OAAO,CAAC,EAAE,QAAQ,GAAG,kBAAkB,CAAC,CAAC,CAAC;CAiKpG"}
@@ -74,6 +74,7 @@ var import_Mark = require("#common/Mark.js");
74
74
  var import_general = require("#general");
75
75
  var import_InteractionMessenger = require("#interaction/InteractionMessenger.js");
76
76
  var import_Subscription = require("#interaction/Subscription.js");
77
+ var import_peer = require("#peer/index.js");
77
78
  var import_ExchangeProvider = require("#protocol/ExchangeProvider.js");
78
79
  var import_SecureSession = require("#session/SecureSession.js");
79
80
  var import_types = require("#types");
@@ -92,15 +93,19 @@ const SUBSCRIPTION_MAX_INTERVAL_PUBLISHER_LIMIT = (0, import_general.Minutes)(60
92
93
  const DEFAULT_TIMED_REQUEST_TIMEOUT = (0, import_general.Seconds)(10);
93
94
  const DEFAULT_MINIMUM_RESPONSE_TIMEOUT_WITH_FAILSAFE = (0, import_general.Seconds)(30);
94
95
  class ClientInteraction {
96
+ #environment;
95
97
  #lifetime;
96
98
  #exchanges;
97
- #subscriptions;
98
99
  #interactions = new import_general.BasicSet();
100
+ #subscriptions;
99
101
  #abort;
100
102
  #sustainRetries;
101
- constructor({ environment, abort, sustainRetries }) {
102
- this.#exchanges = environment.get(import_ExchangeProvider.ExchangeProvider);
103
- this.#subscriptions = environment.get(import_ClientSubscriptions.ClientSubscriptions);
103
+ constructor({ environment, abort, sustainRetries, exchangeProvider }) {
104
+ this.#environment = environment;
105
+ this.#exchanges = exchangeProvider ?? environment.get(import_ExchangeProvider.ExchangeProvider);
106
+ if (environment.has(import_ClientSubscriptions.ClientSubscriptions)) {
107
+ this.#subscriptions = environment.get(import_ClientSubscriptions.ClientSubscriptions);
108
+ }
104
109
  this.#abort = import_general.Abort.subtask(abort);
105
110
  this.#sustainRetries = new import_general.RetrySchedule(
106
111
  environment.get(import_general.Entropy),
@@ -116,6 +121,9 @@ class ClientInteraction {
116
121
  }
117
122
  });
118
123
  }
124
+ get exchanges() {
125
+ return this.#exchanges;
126
+ }
119
127
  get session() {
120
128
  return this.#exchanges.session;
121
129
  }
@@ -134,6 +142,9 @@ class ClientInteraction {
134
142
  }
135
143
  }
136
144
  get subscriptions() {
145
+ if (this.#subscriptions === void 0) {
146
+ this.#subscriptions = this.#environment.get(import_ClientSubscriptions.ClientSubscriptions);
147
+ }
137
148
  return this.#subscriptions;
138
149
  }
139
150
  /**
@@ -143,6 +154,9 @@ class ClientInteraction {
143
154
  var _stack = [];
144
155
  try {
145
156
  const readPathsCount = (request.attributeRequests?.length ?? 0) + (request.eventRequests?.length ?? 0);
157
+ if (readPathsCount === 0) {
158
+ throw new import_general.ImplementationError("When reading attributes and events, at least one must be specified.");
159
+ }
146
160
  if (readPathsCount > 9) {
147
161
  logger.debug(
148
162
  "Read interactions with more then 9 paths might be not allowed by the device. Consider splitting then into several read requests."
@@ -349,11 +363,19 @@ class ClientInteraction {
349
363
  */
350
364
  async subscribe(request, session) {
351
365
  const subscriptionPathsCount = (request.attributeRequests?.length ?? 0) + (request.eventRequests?.length ?? 0);
366
+ if (subscriptionPathsCount === 0) {
367
+ throw new import_general.ImplementationError("When subscribing to attributes and events, at least one must be specified.");
368
+ }
352
369
  if (subscriptionPathsCount > 3) {
353
370
  logger.debug("Subscribe interactions with more then 3 paths might be not allowed by the device.");
354
371
  }
372
+ import_SecureSession.SecureSession.assert(this.#exchanges.session);
373
+ const peer = this.#exchanges.session.peerAddress;
355
374
  if (!request.keepSubscriptions) {
356
- for (const subscription2 of this.#subscriptions) {
375
+ for (const subscription2 of this.subscriptions) {
376
+ if (!import_peer.PeerAddress.is(peer, subscription2.peer)) {
377
+ continue;
378
+ }
357
379
  logger.debug(
358
380
  `Removing subscription with ID ${import_Subscription.Subscription.idStrOf(subscription2)} because new subscription replaces it`
359
381
  );
@@ -371,8 +393,6 @@ class ClientInteraction {
371
393
  )}) is less than minIntervalFloor (${import_general.Duration.format(minIntervalFloor)})`
372
394
  );
373
395
  }
374
- import_SecureSession.SecureSession.assert(this.#exchanges.session);
375
- const peer = this.#exchanges.session.peerAddress;
376
396
  const subscribe = async (request2) => {
377
397
  var _stack = [];
378
398
  try {
@@ -408,14 +428,15 @@ class ClientInteraction {
408
428
  })
409
429
  );
410
430
  const subscription2 = new import_PeerSubscription.PeerSubscription({
411
- lifetime: this.#subscriptions,
431
+ lifetime: this.subscriptions,
412
432
  request: request2,
413
433
  peer,
414
- closed: () => this.#subscriptions.delete(subscription2),
434
+ closed: () => this.subscriptions.delete(subscription2),
415
435
  response,
416
- abort: session?.abort
436
+ abort: session?.abort,
437
+ maxPeerResponseTime: this.#exchanges.maximumPeerResponseTime()
417
438
  });
418
- this.#subscriptions.addPeer(subscription2);
439
+ this.subscriptions.addPeer(subscription2);
419
440
  return subscription2;
420
441
  } catch (_) {
421
442
  var _error = _, _hasError = true;
@@ -427,10 +448,10 @@ class ClientInteraction {
427
448
  let subscription;
428
449
  if (request.sustain) {
429
450
  subscription = new import_SustainedSubscription.SustainedSubscription({
430
- lifetime: this.#subscriptions,
451
+ lifetime: this.subscriptions,
431
452
  subscribe,
432
453
  peer,
433
- closed: () => this.#subscriptions.delete(subscription),
454
+ closed: () => this.subscriptions.delete(subscription),
434
455
  request,
435
456
  abort: session?.abort,
436
457
  retries: this.#sustainRetries
@@ -438,7 +459,7 @@ class ClientInteraction {
438
459
  } else {
439
460
  subscription = await subscribe(request);
440
461
  }
441
- this.#subscriptions.addActive(subscription);
462
+ this.subscriptions.addActive(subscription);
442
463
  return subscription;
443
464
  }
444
465
  async #handleSubscriptionResponse(request, result) {
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "version": 3,
3
3
  "sources": ["../../../../src/action/client/ClientInteraction.ts"],
4
- "mappings": "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",
4
+ "mappings": "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",
5
5
  "names": ["subscription", "request", "_stack", "_", "_error", "_hasError"]
6
6
  }
@@ -1 +1 @@
1
- {"version":3,"file":"ClientSubscriptionHandler.d.ts","sourceRoot":"","sources":["../../../../../src/action/client/subscription/ClientSubscriptionHandler.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAOH,OAAO,EAAE,eAAe,EAAE,MAAM,8BAA8B,CAAC;AAC/D,OAAO,EAAE,eAAe,EAAE,MAAM,8BAA8B,CAAC;AAI/D,OAAO,EAAE,mBAAmB,EAAE,MAAM,0BAA0B,CAAC;AAI/D;;GAEG;AACH,qBAAa,yBAA0B,YAAW,eAAe;;IAC7D,EAAE,SAA2B;IAC7B,qBAAqB,UAAQ;gBAIjB,aAAa,EAAE,mBAAmB;IAIxC,aAAa,CAAC,QAAQ,EAAE,eAAe;IAyDvC,KAAK;CACd"}
1
+ {"version":3,"file":"ClientSubscriptionHandler.d.ts","sourceRoot":"","sources":["../../../../../src/action/client/subscription/ClientSubscriptionHandler.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAMH,OAAO,EAAE,eAAe,EAAE,MAAM,8BAA8B,CAAC;AAC/D,OAAO,EAAE,eAAe,EAAE,MAAM,8BAA8B,CAAC;AAI/D,OAAO,EAAE,mBAAmB,EAAE,MAAM,0BAA0B,CAAC;AAI/D;;GAEG;AACH,qBAAa,yBAA0B,YAAW,eAAe;;IAC7D,EAAE,SAA2B;IAC7B,qBAAqB,UAAQ;gBAIjB,aAAa,EAAE,mBAAmB;IAIxC,aAAa,CAAC,QAAQ,EAAE,eAAe;IA2DvC,KAAK;CACd"}
@@ -22,7 +22,6 @@ __export(ClientSubscriptionHandler_exports, {
22
22
  });
23
23
  module.exports = __toCommonJS(ClientSubscriptionHandler_exports);
24
24
  var import_general = require("#general");
25
- var import_DecodedDataReport = require("#interaction/DecodedDataReport.js");
26
25
  var import_InteractionMessenger = require("#interaction/InteractionMessenger.js");
27
26
  var import_Subscription = require("#interaction/Subscription.js");
28
27
  var import_SecureSession = require("#session/SecureSession.js");
@@ -59,28 +58,30 @@ class ClientSubscriptionHandler {
59
58
  import_SecureSession.SecureSession.assert(session);
60
59
  const subscription = this.#subscriptions.getPeer(session.peerAddress, subscriptionId);
61
60
  if (subscription === void 0) {
62
- logger.debug("Ignoring data report for unknown subscription ID", import_general.Diagnostic.strong(subscriptionId));
61
+ logger.info("Ignoring data report for unknown subscription ID", import_general.Diagnostic.strong(subscriptionId));
63
62
  await sendInvalid(messenger, subscriptionId);
64
63
  return;
65
64
  }
66
- if (!initialReport.attributeReports?.length && !initialReport.eventReports?.length) {
67
- subscription.timeoutAt = void 0;
68
- this.#subscriptions.resetTimer();
69
- await exchange.close();
70
- return;
71
- }
72
65
  try {
73
66
  subscription.isReading = true;
74
- if (subscription.request.updated) {
75
- await subscription.request.updated(processReports(initialReport, reports, messenger));
67
+ if (!initialReport.attributeReports?.length && !initialReport.eventReports?.length) {
68
+ const ending = await reports.next();
69
+ if (!ending.done) {
70
+ logger.warn("Unexpected data reports after empty report", import_general.Diagnostic.strong(subscriptionId));
71
+ for await (const _chunk of reports) ;
72
+ }
76
73
  } else {
77
- for await (const _chunk of reports) ;
74
+ if (subscription.request.updated) {
75
+ await subscription.request.updated(processReports(initialReport, reports, messenger));
76
+ } else {
77
+ for await (const _chunk of reports) ;
78
+ }
78
79
  }
79
80
  } finally {
80
81
  subscription.isReading = false;
81
82
  subscription.timeoutAt = void 0;
82
83
  this.#subscriptions.resetTimer();
83
- await exchange.close();
84
+ await messenger.close();
84
85
  }
85
86
  }
86
87
  async close() {
@@ -94,24 +95,22 @@ async function sendInvalid(messenger, subscriptionId) {
94
95
  await messenger.close();
95
96
  }
96
97
  async function* processReports(initialReport, otherReports, messenger) {
97
- yield (0, import_InputChunk.InputChunk)(initialReport);
98
+ const leftOverData = new Array();
99
+ yield (0, import_InputChunk.InputChunk)(initialReport, leftOverData);
98
100
  const { subscriptionId } = initialReport;
99
101
  for await (const report of otherReports) {
100
- const decoded = (0, import_DecodedDataReport.DecodedDataReport)(report);
101
- if (decoded.subscriptionId === void 0) {
102
+ const { subscriptionId: reportSubscriptionId } = report;
103
+ if (reportSubscriptionId === void 0) {
102
104
  logger.debug("Ignoring data report with missing subscription id");
103
- await sendInvalid(messenger, decoded.subscriptionId);
105
+ await sendInvalid(messenger, reportSubscriptionId);
104
106
  continue;
105
107
  }
106
- if (decoded.subscriptionId !== subscriptionId) {
107
- logger.debug(
108
- "Ignoring data report for incorrect subscription id",
109
- import_general.Diagnostic.strong(decoded.subscriptionId)
110
- );
111
- await sendInvalid(messenger, decoded.subscriptionId);
108
+ if (reportSubscriptionId !== subscriptionId) {
109
+ logger.debug("Ignoring data report for incorrect subscription id", import_general.Diagnostic.strong(reportSubscriptionId));
110
+ await sendInvalid(messenger, reportSubscriptionId);
112
111
  continue;
113
112
  }
114
- yield (0, import_InputChunk.InputChunk)(report);
113
+ yield (0, import_InputChunk.InputChunk)(report, leftOverData);
115
114
  }
116
115
  }
117
116
  //# sourceMappingURL=ClientSubscriptionHandler.js.map
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "version": 3,
3
3
  "sources": ["../../../../../src/action/client/subscription/ClientSubscriptionHandler.ts"],
4
- "mappings": ";;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAOA,qBAAkD;AAClD,+BAAkC;AAClC,kCAAmD;AACnD,0BAA6C;AAG7C,2BAA8B;AAC9B,mBAA4D;AAC5D,wBAA2B;AAf3B;AAAA;AAAA;AAAA;AAAA;AAkBA,MAAM,SAAS,sBAAO,IAAI,2BAA2B;AAK9C,MAAM,0BAAqD;AAAA,EAC9D,KAAK;AAAA,EACL,wBAAwB;AAAA,EAExB;AAAA,EAEA,YAAY,eAAoC;AAC5C,SAAK,iBAAiB;AAAA,EAC1B;AAAA,EAEA,MAAM,cAAc,UAA2B;AAC3C,UAAM,YAAY,IAAI,+DAAmC,QAAQ;AAEjE,UAAM,UAAU,UAAU,gBAAgB;AAE1C,UAAM,mBAAmB,MAAM,QAAQ,KAAK;AAC5C,QAAI,iBAAiB,MAAM;AACvB,YAAM,IAAI,6BAAc,4CAA4C;AAAA,IACxE;AACA,UAAM,gBAAgB,iBAAiB;AAGvC,UAAM,EAAE,eAAe,IAAI;AAC3B,QAAI,mBAAmB,QAAW;AAC9B,aAAO,MAAM,0DAA0D;AACvE,YAAM,YAAY,WAAW,MAAS;AACtC;AAAA,IACJ;AAGA,UAAM,EAAE,QAAQ,IAAI,SAAS;AAC7B,uCAAc,OAAO,OAAO;AAC5B,UAAM,eAAe,KAAK,eAAe,QAAQ,QAAQ,aAAa,cAAc;AACpF,QAAI,iBAAiB,QAAW;AAC5B,aAAO,MAAM,oDAAoD,0BAAW,OAAO,cAAc,CAAC;AAClG,YAAM,YAAY,WAAW,cAAc;AAC3C;AAAA,IACJ;AAGA,QAAI,CAAC,cAAc,kBAAkB,UAAU,CAAC,cAAc,cAAc,QAAQ;AAChF,mBAAa,YAAY;AACzB,WAAK,eAAe,WAAW;AAC/B,YAAM,SAAS,MAAM;AACrB;AAAA,IACJ;AAGA,QAAI;AACA,mBAAa,YAAY;AAEzB,UAAI,aAAa,QAAQ,SAAS;AAC9B,cAAM,aAAa,QAAQ,QAAQ,eAAe,eAAe,SAAS,SAAS,CAAC;AAAA,MACxF,OAAO;AAIH,yBAAiB,UAAU,QAAQ;AAAA,MACvC;AAAA,IACJ,UAAE;AACE,mBAAa,YAAY;AACzB,mBAAa,YAAY;AACzB,WAAK,eAAe,WAAW;AAC/B,YAAM,SAAS,MAAM;AAAA,IACzB;AAAA,EACJ;AAAA,EAEA,MAAM,QAAQ;AAAA,EAAC;AACnB;AAEA,eAAe,YAAY,WAA+C,gBAAiC;AACvG,QAAM,UAAU,WAAW,oBAAO,qBAAqB;AAAA,IACnD,4BAA4B;AAAA,IAC5B,YAAY,iCAAa,aAAa,cAAc;AAAA,EACxD,CAAC;AACD,QAAM,UAAU,MAAM;AAC1B;AAOA,gBAAgB,eACZ,eACA,cACA,WACU;AACV,YAAM,8BAAW,aAAa;AAE9B,QAAM,EAAE,eAAe,IAAI;AAE3B,mBAAiB,UAAU,cAAc;AACrC,UAAM,cAAU,4CAAkB,MAAM;AAExC,QAAI,QAAQ,mBAAmB,QAAW;AACtC,aAAO,MAAM,mDAAmD;AAChE,YAAM,YAAY,WAAW,QAAQ,cAAc;AACnD;AAAA,IACJ;AAEA,QAAI,QAAQ,mBAAmB,gBAAgB;AAC3C,aAAO;AAAA,QACH;AAAA,QACA,0BAAW,OAAO,QAAQ,cAAc;AAAA,MAC5C;AACA,YAAM,YAAY,WAAW,QAAQ,cAAc;AACnD;AAAA,IACJ;AAEA,cAAM,8BAAW,MAAM;AAAA,EAC3B;AACJ;",
4
+ "mappings": ";;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAOA,qBAAkD;AAClD,kCAAmD;AACnD,0BAA6C;AAG7C,2BAA8B;AAC9B,mBAAgG;AAChG,wBAA2B;AAd3B;AAAA;AAAA;AAAA;AAAA;AAiBA,MAAM,SAAS,sBAAO,IAAI,2BAA2B;AAK9C,MAAM,0BAAqD;AAAA,EAC9D,KAAK;AAAA,EACL,wBAAwB;AAAA,EAExB;AAAA,EAEA,YAAY,eAAoC;AAC5C,SAAK,iBAAiB;AAAA,EAC1B;AAAA,EAEA,MAAM,cAAc,UAA2B;AAC3C,UAAM,YAAY,IAAI,+DAAmC,QAAQ;AAEjE,UAAM,UAAU,UAAU,gBAAgB;AAE1C,UAAM,mBAAmB,MAAM,QAAQ,KAAK;AAC5C,QAAI,iBAAiB,MAAM;AACvB,YAAM,IAAI,6BAAc,4CAA4C;AAAA,IACxE;AACA,UAAM,gBAAgB,iBAAiB;AAGvC,UAAM,EAAE,eAAe,IAAI;AAC3B,QAAI,mBAAmB,QAAW;AAC9B,aAAO,MAAM,0DAA0D;AACvE,YAAM,YAAY,WAAW,MAAS;AACtC;AAAA,IACJ;AAGA,UAAM,EAAE,QAAQ,IAAI,SAAS;AAC7B,uCAAc,OAAO,OAAO;AAC5B,UAAM,eAAe,KAAK,eAAe,QAAQ,QAAQ,aAAa,cAAc;AACpF,QAAI,iBAAiB,QAAW;AAC5B,aAAO,KAAK,oDAAoD,0BAAW,OAAO,cAAc,CAAC;AACjG,YAAM,YAAY,WAAW,cAAc;AAC3C;AAAA,IACJ;AAGA,QAAI;AACA,mBAAa,YAAY;AAGzB,UAAI,CAAC,cAAc,kBAAkB,UAAU,CAAC,cAAc,cAAc,QAAQ;AAEhF,cAAM,SAAS,MAAM,QAAQ,KAAK;AAClC,YAAI,CAAC,OAAO,MAAM;AACd,iBAAO,KAAK,8CAA8C,0BAAW,OAAO,cAAc,CAAC;AAC3F,2BAAiB,UAAU,QAAQ;AAAA,QACvC;AAAA,MACJ,OAAO;AACH,YAAI,aAAa,QAAQ,SAAS;AAC9B,gBAAM,aAAa,QAAQ,QAAQ,eAAe,eAAe,SAAS,SAAS,CAAC;AAAA,QACxF,OAAO;AAIH,2BAAiB,UAAU,QAAQ;AAAA,QACvC;AAAA,MACJ;AAAA,IACJ,UAAE;AACE,mBAAa,YAAY;AACzB,mBAAa,YAAY;AACzB,WAAK,eAAe,WAAW;AAC/B,YAAM,UAAU,MAAM;AAAA,IAC1B;AAAA,EACJ;AAAA,EAEA,MAAM,QAAQ;AAAA,EAAC;AACnB;AAEA,eAAe,YAAY,WAA+C,gBAAiC;AACvG,QAAM,UAAU,WAAW,oBAAO,qBAAqB;AAAA,IACnD,4BAA4B;AAAA,IAC5B,YAAY,iCAAa,aAAa,cAAc;AAAA,EACxD,CAAC;AACD,QAAM,UAAU,MAAM;AAC1B;AAOA,gBAAgB,eACZ,eACA,cACA,WACU;AACV,QAAM,eAAe,IAAI,MAAiD;AAE1E,YAAM,8BAAW,eAAe,YAAY;AAE5C,QAAM,EAAE,eAAe,IAAI;AAE3B,mBAAiB,UAAU,cAAc;AACrC,UAAM,EAAE,gBAAgB,qBAAqB,IAAI;AACjD,QAAI,yBAAyB,QAAW;AACpC,aAAO,MAAM,mDAAmD;AAChE,YAAM,YAAY,WAAW,oBAAoB;AACjD;AAAA,IACJ;AAEA,QAAI,yBAAyB,gBAAgB;AACzC,aAAO,MAAM,sDAAsD,0BAAW,OAAO,oBAAoB,CAAC;AAC1G,YAAM,YAAY,WAAW,oBAAoB;AACjD;AAAA,IACJ;AAEA,cAAM,8BAAW,QAAQ,YAAY;AAAA,EACzC;AACJ;",
5
5
  "names": []
6
6
  }
@@ -10,6 +10,7 @@ import { ClientSubscription } from "./ClientSubscription.js";
10
10
  * A Matter protocol-level subscription established with a peer.
11
11
  */
12
12
  export declare class PeerSubscription extends ClientSubscription {
13
+ #private;
13
14
  readonly interactionModelRevision: number;
14
15
  readonly maxInterval: number;
15
16
  isReading: boolean;
@@ -21,6 +22,7 @@ export declare class PeerSubscription extends ClientSubscription {
21
22
  export declare namespace PeerSubscription {
22
23
  interface Configuration extends ClientSubscription.Configuration {
23
24
  response: SubscribeResponse;
25
+ maxPeerResponseTime: Duration;
24
26
  }
25
27
  }
26
28
  //# sourceMappingURL=PeerSubscription.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"PeerSubscription.d.ts","sourceRoot":"","sources":["../../../../../src/action/client/subscription/PeerSubscription.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO,EAAc,QAAQ,EAAmB,SAAS,EAAE,MAAM,UAAU,CAAC;AAC5E,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,QAAQ,CAAC;AAChD,OAAO,EAAE,kBAAkB,EAAE,MAAM,yBAAyB,CAAC;AAE7D;;GAEG;AACH,qBAAa,gBAAiB,SAAQ,kBAAkB;IACpD,QAAQ,CAAC,wBAAwB,EAAE,MAAM,CAAC;IAC1C,QAAQ,CAAC,WAAW,EAAE,MAAM,CAAC;IAC7B,SAAS,UAAS;IAElB,SAAS,CAAC,EAAE,SAAS,CAAC;gBAEV,MAAM,EAAE,gBAAgB,CAAC,aAAa;IAUlD,IAAI,OAAO,aAEV;IAED,QAAQ;CAUX;AAED,yBAAiB,gBAAgB,CAAC;IAC9B,UAAiB,aAAc,SAAQ,kBAAkB,CAAC,aAAa;QACnE,QAAQ,EAAE,iBAAiB,CAAC;KAC/B;CACJ"}
1
+ {"version":3,"file":"PeerSubscription.d.ts","sourceRoot":"","sources":["../../../../../src/action/client/subscription/PeerSubscription.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO,EAAc,QAAQ,EAAmB,SAAS,EAAE,MAAM,UAAU,CAAC;AAC5E,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,QAAQ,CAAC;AAChD,OAAO,EAAE,kBAAkB,EAAE,MAAM,yBAAyB,CAAC;AAE7D;;GAEG;AACH,qBAAa,gBAAiB,SAAQ,kBAAkB;;IACpD,QAAQ,CAAC,wBAAwB,EAAE,MAAM,CAAC;IAC1C,QAAQ,CAAC,WAAW,EAAE,MAAM,CAAC;IAE7B,SAAS,UAAS;IAElB,SAAS,CAAC,EAAE,SAAS,CAAC;gBAEV,MAAM,EAAE,gBAAgB,CAAC,aAAa;IAclD,IAAI,OAAO,aAEV;IAED,QAAQ;CAUX;AAED,yBAAiB,gBAAgB,CAAC;IAC9B,UAAiB,aAAc,SAAQ,kBAAkB,CAAC,aAAa;QACnE,QAAQ,EAAE,iBAAiB,CAAC;QAC5B,mBAAmB,EAAE,QAAQ,CAAC;KACjC;CACJ"}
@@ -31,17 +31,22 @@ var import_ClientSubscription = require("./ClientSubscription.js");
31
31
  class PeerSubscription extends import_ClientSubscription.ClientSubscription {
32
32
  interactionModelRevision;
33
33
  maxInterval;
34
+ #maxPeerResponseTime;
34
35
  isReading = false;
35
36
  timeoutAt;
36
37
  constructor(config) {
37
- const { subscriptionId, interactionModelRevision, maxInterval } = config.response;
38
+ const {
39
+ maxPeerResponseTime,
40
+ response: { subscriptionId, interactionModelRevision, maxInterval }
41
+ } = config;
38
42
  super(config);
39
43
  this.subscriptionId = subscriptionId;
40
44
  this.interactionModelRevision = interactionModelRevision;
41
45
  this.maxInterval = maxInterval;
46
+ this.#maxPeerResponseTime = maxPeerResponseTime;
42
47
  }
43
48
  get timeout() {
44
- return (0, import_general.Millis)((0, import_general.Seconds)(this.maxInterval) + (this.request.maxPeerResponseTime ?? 0));
49
+ return (0, import_general.Millis)((0, import_general.Seconds)(this.maxInterval) + this.#maxPeerResponseTime * 2);
45
50
  }
46
51
  timedOut() {
47
52
  this.logger.info(
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "version": 3,
3
3
  "sources": ["../../../../../src/action/client/subscription/PeerSubscription.ts"],
4
- "mappings": ";;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAMA,qBAAiE;AAEjE,gCAAmC;AARnC;AAAA;AAAA;AAAA;AAAA;AAaO,MAAM,yBAAyB,6CAAmB;AAAA,EAC5C;AAAA,EACA;AAAA,EACT,YAAY;AAAA,EAEZ;AAAA,EAEA,YAAY,QAAwC;AAChD,UAAM,EAAE,gBAAgB,0BAA0B,YAAY,IAAI,OAAO;AAEzE,UAAM,MAAM;AAEZ,SAAK,iBAAiB;AACtB,SAAK,2BAA2B;AAChC,SAAK,cAAc;AAAA,EACvB;AAAA,EAEA,IAAI,UAAU;AACV,eAAO,2BAAO,wBAAQ,KAAK,WAAW,KAAK,KAAK,QAAQ,uBAAuB,EAAE;AAAA,EACrF;AAAA,EAEA,WAAW;AACP,SAAK,OAAO;AAAA,MACR;AAAA,MACA,0BAAW,OAAO,KAAK,cAAc;AAAA,MACrC;AAAA,MACA,0BAAW,OAAO,wBAAS,OAAO,KAAK,OAAO,CAAC;AAAA,IACnD;AAEA,SAAK,MAAM;AAAA,EACf;AACJ;",
4
+ "mappings": ";;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAMA,qBAAiE;AAEjE,gCAAmC;AARnC;AAAA;AAAA;AAAA;AAAA;AAaO,MAAM,yBAAyB,6CAAmB;AAAA,EAC5C;AAAA,EACA;AAAA,EACA;AAAA,EACT,YAAY;AAAA,EAEZ;AAAA,EAEA,YAAY,QAAwC;AAChD,UAAM;AAAA,MACF;AAAA,MACA,UAAU,EAAE,gBAAgB,0BAA0B,YAAY;AAAA,IACtE,IAAI;AAEJ,UAAM,MAAM;AAEZ,SAAK,iBAAiB;AACtB,SAAK,2BAA2B;AAChC,SAAK,cAAc;AACnB,SAAK,uBAAuB;AAAA,EAChC;AAAA,EAEA,IAAI,UAAU;AACV,eAAO,2BAAO,wBAAQ,KAAK,WAAW,IAAI,KAAK,uBAAuB,CAAC;AAAA,EAC3E;AAAA,EAEA,WAAW;AACP,SAAK,OAAO;AAAA,MACR;AAAA,MACA,0BAAW,OAAO,KAAK,cAAc;AAAA,MACrC;AAAA,MACA,0BAAW,OAAO,wBAAS,OAAO,KAAK,OAAO,CAAC;AAAA,IACnD;AAEA,SAAK,MAAM;AAAA,EACf;AACJ;",
5
5
  "names": []
6
6
  }
@@ -16,7 +16,6 @@ export interface Subscribe extends Read {
16
16
  keepSubscriptions: boolean;
17
17
  minIntervalFloor?: Duration;
18
18
  maxIntervalCeiling?: Duration;
19
- maxPeerResponseTime?: Duration;
20
19
  /**
21
20
  * Invoked when subscribed data changes.
22
21
  */
@@ -1 +1 @@
1
- {"version":3,"file":"Subscribe.d.ts","sourceRoot":"","sources":["../../../../src/action/request/Subscribe.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,gCAAgC,CAAC;AACjE,OAAO,EAAE,QAAQ,EAAuB,MAAM,UAAU,CAAC;AAEzD,OAAO,EAAE,IAAI,EAAE,MAAM,WAAW,CAAC;AAEjC;;;;;GAKG;AACH,MAAM,WAAW,SAAU,SAAQ,IAAI;IACnC,iBAAiB,EAAE,OAAO,CAAC;IAC3B,gBAAgB,CAAC,EAAE,QAAQ,CAAC;IAC5B,kBAAkB,CAAC,EAAE,QAAQ,CAAC;IAC9B,mBAAmB,CAAC,EAAE,QAAQ,CAAC;IAE/B;;OAEG;IACH,OAAO,CAAC,EAAE,CAAC,IAAI,EAAE,UAAU,KAAK,OAAO,CAAC,IAAI,CAAC,CAAC;IAE9C;;OAEG;IACH,MAAM,CAAC,EAAE,MAAM,IAAI,CAAC;CACvB;AAED,wBAAgB,SAAS,CAAC,OAAO,EAAE,SAAS,CAAC,OAAO,EAAE,GAAG,SAAS,EAAE,IAAI,CAAC,QAAQ,EAAE,GAAG,SAAS,CAuB9F;AAED,yBAAiB,SAAS,CAAC;IACvB,UAAiB,OAAQ,SAAQ,IAAI,CAAC,OAAO;QACzC,iBAAiB,CAAC,EAAE,OAAO,CAAC;QAC5B,gBAAgB,CAAC,EAAE,QAAQ,CAAC;QAC5B,kBAAkB,CAAC,EAAE,QAAQ,CAAC;QAC9B,MAAM,CAAC,EAAE,SAAS,CAAC,SAAS,CAAC,CAAC;QAC9B,MAAM,CAAC,EAAE,SAAS,CAAC,QAAQ,CAAC,CAAC;KAChC;CACJ"}
1
+ {"version":3,"file":"Subscribe.d.ts","sourceRoot":"","sources":["../../../../src/action/request/Subscribe.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,gCAAgC,CAAC;AACjE,OAAO,EAAE,QAAQ,EAAuB,MAAM,UAAU,CAAC;AAEzD,OAAO,EAAE,IAAI,EAAE,MAAM,WAAW,CAAC;AAEjC;;;;;GAKG;AACH,MAAM,WAAW,SAAU,SAAQ,IAAI;IACnC,iBAAiB,EAAE,OAAO,CAAC;IAC3B,gBAAgB,CAAC,EAAE,QAAQ,CAAC;IAC5B,kBAAkB,CAAC,EAAE,QAAQ,CAAC;IAE9B;;OAEG;IACH,OAAO,CAAC,EAAE,CAAC,IAAI,EAAE,UAAU,KAAK,OAAO,CAAC,IAAI,CAAC,CAAC;IAE9C;;OAEG;IACH,MAAM,CAAC,EAAE,MAAM,IAAI,CAAC;CACvB;AAED,wBAAgB,SAAS,CAAC,OAAO,EAAE,SAAS,CAAC,OAAO,EAAE,GAAG,SAAS,EAAE,IAAI,CAAC,QAAQ,EAAE,GAAG,SAAS,CAuB9F;AAED,yBAAiB,SAAS,CAAC;IACvB,UAAiB,OAAQ,SAAQ,IAAI,CAAC,OAAO;QACzC,iBAAiB,CAAC,EAAE,OAAO,CAAC;QAC5B,gBAAgB,CAAC,EAAE,QAAQ,CAAC;QAC5B,kBAAkB,CAAC,EAAE,QAAQ,CAAC;QAC9B,MAAM,CAAC,EAAE,SAAS,CAAC,SAAS,CAAC,CAAC;QAC9B,MAAM,CAAC,EAAE,SAAS,CAAC,QAAQ,CAAC,CAAC;KAChC;CACJ"}
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "version": 3,
3
3
  "sources": ["../../../../src/action/request/Subscribe.ts"],
4
- "mappings": ";;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAOA,qBAA8C;AAC9C,mCAAsC;AACtC,kBAAqB;AATrB;AAAA;AAAA;AAAA;AAAA;AAkCO,SAAS,UAAU,YAA+B,WAAuC;AAC5F,QAAM,gBAAY,kBAAK,SAAS,GAAG,SAAS;AAE5C,QAAM,EAAE,mBAAmB,kBAAkB,mBAAmB,IAAI;AACpE,YAAU,oBAAoB,qBAAqB;AAEnD,MAAI,qBAAqB,QAAW;AAChC,QAAI,mBAAmB,KAAK,uBAAQ,GAAG,gBAAgB,IAAI,2BAAY;AACnE,YAAM,IAAI,mDAAsB,0BAA0B,uBAAQ,GAAG,gBAAgB,CAAC,kBAAkB;AAAA,IAC5G;AACA,cAAU,mBAAmB;AAAA,EACjC;AAEA,MAAI,uBAAuB,QAAW;AAClC,QAAI,qBAAqB,KAAK,uBAAQ,GAAG,kBAAkB,IAAI,2BAAY;AACvE,YAAM,IAAI;AAAA,QACN,4BAA4B,uBAAQ,GAAG,kBAAkB,CAAC;AAAA,MAC9D;AAAA,IACJ;AACA,cAAU,qBAAqB;AAAA,EACnC;AAEA,SAAO;AACX;",
4
+ "mappings": ";;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAOA,qBAA8C;AAC9C,mCAAsC;AACtC,kBAAqB;AATrB;AAAA;AAAA;AAAA;AAAA;AAiCO,SAAS,UAAU,YAA+B,WAAuC;AAC5F,QAAM,gBAAY,kBAAK,SAAS,GAAG,SAAS;AAE5C,QAAM,EAAE,mBAAmB,kBAAkB,mBAAmB,IAAI;AACpE,YAAU,oBAAoB,qBAAqB;AAEnD,MAAI,qBAAqB,QAAW;AAChC,QAAI,mBAAmB,KAAK,uBAAQ,GAAG,gBAAgB,IAAI,2BAAY;AACnE,YAAM,IAAI,mDAAsB,0BAA0B,uBAAQ,GAAG,gBAAgB,CAAC,kBAAkB;AAAA,IAC5G;AACA,cAAU,mBAAmB;AAAA,EACjC;AAEA,MAAI,uBAAuB,QAAW;AAClC,QAAI,qBAAqB,KAAK,uBAAQ,GAAG,kBAAkB,IAAI,2BAAY;AACvE,YAAM,IAAI;AAAA,QACN,4BAA4B,uBAAQ,GAAG,kBAAkB,CAAC;AAAA,MAC9D;AAAA,IACJ;AACA,cAAU,qBAAqB;AAAA,EACnC;AAEA,SAAO;AACX;",
5
5
  "names": []
6
6
  }
@@ -4,7 +4,7 @@
4
4
  * SPDX-License-Identifier: Apache-2.0
5
5
  */
6
6
  import { ArraySchema, AttributeId, ClusterId, EndpointNumber, NodeId, Status, TlvAttributeData, TlvAttributeReport, TlvAttributeStatus, TlvSchema, TypeFromSchema } from "#types";
7
- type DecodedAttributeReportEntry = {
7
+ export type DecodedAttributeReportEntry = {
8
8
  path: {
9
9
  nodeId?: NodeId;
10
10
  endpointId: EndpointNumber;
@@ -67,5 +67,4 @@ export declare function decodeAttributeValueWithSchema<T>(schema: TlvSchema<T>,
67
67
  export declare function decodeUnknownAttributeValue(values: TypeFromSchema<typeof TlvAttributeData>[]): any;
68
68
  /** Structure the data of a received DataReport into an endpointId/clusterId/attributeName object structure. */
69
69
  export declare function structureReadAttributeDataToClusterObject(data: DecodedAttributeReportValue<any>[]): StructuredReadAttributeData;
70
- export {};
71
70
  //# sourceMappingURL=AttributeDataDecoder.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"AttributeDataDecoder.d.ts","sourceRoot":"","sources":["../../../src/interaction/AttributeDataDecoder.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"AttributeDataDecoder.d.ts","sourceRoot":"","sources":["../../../src/interaction/AttributeDataDecoder.ts"],"names":[],"mappings":"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"}
@@ -6,6 +6,7 @@
6
6
  export * from "./ControllerCommissioner.js";
7
7
  export * from "./ControllerCommissioningFlow.js";
8
8
  export * from "./ControllerDiscovery.js";
9
+ export * from "./InteractionQueue.js";
9
10
  export * from "./PeerAddress.js";
10
11
  export * from "./PeerAddressStore.js";
11
12
  export * from "./PeerDescriptor.js";
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/peer/index.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,cAAc,6BAA6B,CAAC;AAC5C,cAAc,kCAAkC,CAAC;AACjD,cAAc,0BAA0B,CAAC;AACzC,cAAc,kBAAkB,CAAC;AACjC,cAAc,uBAAuB,CAAC;AACtC,cAAc,qBAAqB,CAAC;AACpC,cAAc,cAAc,CAAC;AAC7B,cAAc,+BAA+B,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/peer/index.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,cAAc,6BAA6B,CAAC;AAC5C,cAAc,kCAAkC,CAAC;AACjD,cAAc,0BAA0B,CAAC;AACzC,cAAc,uBAAuB,CAAC;AACtC,cAAc,kBAAkB,CAAC;AACjC,cAAc,uBAAuB,CAAC;AACtC,cAAc,qBAAqB,CAAC;AACpC,cAAc,cAAc,CAAC;AAC7B,cAAc,+BAA+B,CAAC"}
@@ -18,6 +18,7 @@ module.exports = __toCommonJS(peer_exports);
18
18
  __reExport(peer_exports, require("./ControllerCommissioner.js"), module.exports);
19
19
  __reExport(peer_exports, require("./ControllerCommissioningFlow.js"), module.exports);
20
20
  __reExport(peer_exports, require("./ControllerDiscovery.js"), module.exports);
21
+ __reExport(peer_exports, require("./InteractionQueue.js"), module.exports);
21
22
  __reExport(peer_exports, require("./PeerAddress.js"), module.exports);
22
23
  __reExport(peer_exports, require("./PeerAddressStore.js"), module.exports);
23
24
  __reExport(peer_exports, require("./PeerDescriptor.js"), module.exports);
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "version": 3,
3
3
  "sources": ["../../../src/peer/index.ts"],
4
- "mappings": ";;;;;;;;;;;;;;;AAAA;AAAA;AAMA,yBAAc,wCANd;AAOA,yBAAc,6CAPd;AAQA,yBAAc,qCARd;AASA,yBAAc,6BATd;AAUA,yBAAc,kCAVd;AAWA,yBAAc,gCAXd;AAYA,yBAAc,yBAZd;AAaA,yBAAc,0CAbd;AAAA;AAAA;AAAA;AAAA;AAAA;",
4
+ "mappings": ";;;;;;;;;;;;;;;AAAA;AAAA;AAMA,yBAAc,wCANd;AAOA,yBAAc,6CAPd;AAQA,yBAAc,qCARd;AASA,yBAAc,kCATd;AAUA,yBAAc,6BAVd;AAWA,yBAAc,kCAXd;AAYA,yBAAc,gCAZd;AAaA,yBAAc,yBAbd;AAcA,yBAAc,0CAdd;AAAA;AAAA;AAAA;AAAA;AAAA;",
5
5
  "names": []
6
6
  }
@@ -1 +1 @@
1
- {"version":3,"file":"ExchangeManager.d.ts","sourceRoot":"","sources":["../../../src/protocol/ExchangeManager.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAIH,OAAO,EAKH,0BAA0B,EAE1B,OAAO,EACP,WAAW,EACX,aAAa,EAGb,QAAQ,EAMX,MAAM,UAAU,CAAC;AAClB,OAAO,EAAE,WAAW,EAAE,MAAM,sBAAsB,CAAC;AAInD,OAAO,EAAE,OAAO,EAAE,MAAM,qBAAqB,CAAC;AAC9C,OAAO,EAAE,cAAc,EAAE,MAAM,4BAA4B,CAAC;AAG5D,OAAO,EAAE,eAAe,EAA0B,MAAM,sBAAsB,CAAC;AAE/E,OAAO,EAAE,eAAe,EAAE,MAAM,sBAAsB,CAAC;AAYvD;;GAEG;AACH,MAAM,WAAW,sBAAsB;IACnC,QAAQ,EAAE,QAAQ,CAAC,KAAK,CAAC;IACzB,OAAO,EAAE,OAAO,CAAC;IACjB,YAAY,EAAE,0BAA0B,CAAC;IACzC,QAAQ,EAAE,cAAc,CAAC;CAC5B;AAED,qBAAa,eAAe;;gBAaZ,OAAO,EAAE,sBAAsB;IAiB3C,MAAM,CAAC,CAAC,aAAa,CAAC,MAAM,CAAC,CAAC,GAAG,EAAE,WAAW;IAW9C,kBAAkB,CAAC,UAAU,EAAE,MAAM;IAIrC,kBAAkB,CAAC,UAAU,EAAE,MAAM;IAIrC,kBAAkB,CAAC,QAAQ,EAAE,eAAe;IAO5C,gBAAgB,CAAC,OAAO,EAAE,WAAW,EAAE,UAAU,EAAE,MAAM;IAIzD,0BAA0B,CAAC,OAAO,EAAE,OAAO,EAAE,UAAU,EAAE,MAAM;IAQzD,KAAK;IA+NL,cAAc,CAAC,aAAa,EAAE,MAAM;IAoC1C,qCAAqC,CAAC,OAAO,EAAE,OAAO,EAAE,sBAAsB,8BAAmC;CA6EpH;AAED,qBAAa,eAAe;;gBAGZ,OAAO,EAAE,OAAO;IAI5B,qBAAqB;CAOxB"}
1
+ {"version":3,"file":"ExchangeManager.d.ts","sourceRoot":"","sources":["../../../src/protocol/ExchangeManager.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAIH,OAAO,EAKH,0BAA0B,EAE1B,OAAO,EACP,WAAW,EACX,aAAa,EAGb,QAAQ,EAMX,MAAM,UAAU,CAAC;AAClB,OAAO,EAAE,WAAW,EAAE,MAAM,sBAAsB,CAAC;AAInD,OAAO,EAAE,OAAO,EAAE,MAAM,qBAAqB,CAAC;AAC9C,OAAO,EAAE,cAAc,EAAE,MAAM,4BAA4B,CAAC;AAG5D,OAAO,EAAE,eAAe,EAA0B,MAAM,sBAAsB,CAAC;AAE/E,OAAO,EAAE,eAAe,EAAE,MAAM,sBAAsB,CAAC;AAYvD;;GAEG;AACH,MAAM,WAAW,sBAAsB;IACnC,QAAQ,EAAE,QAAQ,CAAC,KAAK,CAAC;IACzB,OAAO,EAAE,OAAO,CAAC;IACjB,YAAY,EAAE,0BAA0B,CAAC;IACzC,QAAQ,EAAE,cAAc,CAAC;CAC5B;AAED,qBAAa,eAAe;;gBAaZ,OAAO,EAAE,sBAAsB;IAiB3C,MAAM,CAAC,CAAC,aAAa,CAAC,MAAM,CAAC,CAAC,GAAG,EAAE,WAAW;IAW9C,kBAAkB,CAAC,UAAU,EAAE,MAAM;IAIrC,kBAAkB,CAAC,UAAU,EAAE,MAAM;IAIrC,kBAAkB,CAAC,QAAQ,EAAE,eAAe;IAO5C,gBAAgB,CAAC,OAAO,EAAE,WAAW,EAAE,UAAU,EAAE,MAAM;IAIzD,0BAA0B,CAAC,OAAO,EAAE,OAAO,EAAE,UAAU,EAAE,MAAM;IAQzD,KAAK;IA8NL,cAAc,CAAC,aAAa,EAAE,MAAM;IAoC1C,qCAAqC,CAAC,OAAO,EAAE,OAAO,EAAE,sBAAsB,8BAAmC;CA6EpH;AAED,qBAAa,eAAe;;gBAGZ,OAAO,EAAE,OAAO;IAI5B,qBAAqB;CAOxB"}
@@ -262,13 +262,13 @@ class ExchangeManager {
262
262
  });
263
263
  if (exchange !== void 0) {
264
264
  this.#lifetime.details.exchange = exchange.idStr;
265
- if (exchange.session.id !== packet.header.sessionId || exchange.isClosing && !isStandaloneAck) {
265
+ if (exchange.session.id !== packet.header.sessionId || exchange.considerClosed && !isStandaloneAck) {
266
266
  logger.debug(
267
267
  exchange.via,
268
268
  "Ignore",
269
269
  import_Mark.Mark.INBOUND,
270
270
  "message because",
271
- exchange.isClosing ? "exchange is closing" : `session ID mismatch (header session is ${import_Session.Session.idStrOf(packet)}`,
271
+ exchange.considerClosed ? "exchange is closing" : `session ID mismatch (header session is ${import_Session.Session.idStrOf(packet)}`,
272
272
  messageDiagnostics
273
273
  );
274
274
  await exchange.send(import_types.SecureMessageType.StandaloneAck, new Uint8Array(0), {
@@ -282,9 +282,8 @@ class ExchangeManager {
282
282
  } else {
283
283
  if (this.#isClosing) return;
284
284
  if (session.isClosing) {
285
- throw new import_general.MatterFlowError(
286
- `Declining new exchange because session ${import_Session.Session.idStrOf(packet)} is closing`
287
- );
285
+ logger.debug(`Declining new exchange because session ${import_Session.Session.idStrOf(packet)} is closing`);
286
+ return;
288
287
  }
289
288
  const protocolHandler = this.#protocols.get(message.payloadHeader.protocolId);
290
289
  const handlerSecurityMismatch = protocolHandler?.requiresSecureSession !== void 0 && protocolHandler.requiresSecureSession !== session.isSecure;
@@ -356,7 +355,7 @@ class ExchangeManager {
356
355
  return;
357
356
  }
358
357
  const sessionExchanges = Array.from(this.#exchanges.values()).filter(
359
- (exchange) => exchange.session.id === sessionId && !exchange.isClosing && exchange.isInitiator
358
+ (exchange) => exchange.session.id === sessionId && !exchange.considerClosed
360
359
  );
361
360
  if (sessionExchanges.length <= MAXIMUM_CONCURRENT_OUTGOING_EXCHANGES_PER_SESSION) {
362
361
  return;
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "version": 3,
3
3
  "sources": ["../../../src/protocol/ExchangeManager.ts"],
4
- "mappings": "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",
4
+ "mappings": "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",
5
5
  "names": ["_stack", "_", "_error", "_hasError", "exchange"]
6
6
  }
@@ -67,12 +67,12 @@ export declare class MessageExchange {
67
67
  get isInitiator(): boolean;
68
68
  /** Emits when the exchange is actually closed. This happens after all Retries and Communication are done. */
69
69
  get closed(): AsyncObservableValue<[any, ...any[]]>;
70
+ get considerClosed(): any;
70
71
  /**
71
72
  * Emit when the exchange is closing, but not yet closed. We only wait for acks and retries to happen, but the
72
73
  * actual interaction logic is already done.
73
74
  */
74
75
  get closing(): AsyncObservableValue<[any, ...any[]]>;
75
- get isClosing(): any;
76
76
  get id(): number;
77
77
  get idStr(): string;
78
78
  get session(): Session;
@@ -96,6 +96,11 @@ export declare class MessageExchange {
96
96
  hasTimedInteraction(): boolean;
97
97
  hasActiveTimedInteraction(): boolean;
98
98
  hasExpiredTimedInteraction(): boolean;
99
+ /**
100
+ * Closes the exchange.
101
+ * If force is true, the exchange will be closed immediately, even if there are still messages to send.
102
+ * If force is false, the exchange will be closed only after all messages have been sent.
103
+ */
99
104
  close(force?: boolean): Promise<void>;
100
105
  get via(): string;
101
106
  }