@matter/protocol 0.16.8-alpha.0-20260125-38e62bc3e → 0.16.8-alpha.0-20260127-de48449ad

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 (143) hide show
  1. package/dist/cjs/dcl/DclCertificateService.d.ts.map +1 -1
  2. package/dist/cjs/dcl/DclCertificateService.js +3 -0
  3. package/dist/cjs/dcl/DclCertificateService.js.map +1 -1
  4. package/dist/cjs/dcl/DclOtaUpdateService.d.ts.map +1 -1
  5. package/dist/cjs/dcl/DclOtaUpdateService.js +6 -4
  6. package/dist/cjs/dcl/DclOtaUpdateService.js.map +1 -1
  7. package/dist/cjs/mdns/MdnsClient.d.ts.map +1 -1
  8. package/dist/cjs/mdns/MdnsClient.js +6 -2
  9. package/dist/cjs/mdns/MdnsClient.js.map +1 -1
  10. package/dist/cjs/peer/Peer.d.ts +2 -1
  11. package/dist/cjs/peer/Peer.d.ts.map +1 -1
  12. package/dist/cjs/peer/Peer.js +27 -3
  13. package/dist/cjs/peer/Peer.js.map +1 -1
  14. package/dist/cjs/peer/PeerAddressStore.d.ts +1 -11
  15. package/dist/cjs/peer/PeerAddressStore.d.ts.map +1 -1
  16. package/dist/cjs/peer/PeerAddressStore.js +1 -4
  17. package/dist/cjs/peer/PeerAddressStore.js.map +1 -1
  18. package/dist/cjs/peer/PeerDescriptor.d.ts +1 -9
  19. package/dist/cjs/peer/PeerDescriptor.d.ts.map +1 -1
  20. package/dist/cjs/peer/PeerDescriptor.js +1 -6
  21. package/dist/cjs/peer/PeerDescriptor.js.map +1 -1
  22. package/dist/cjs/peer/PeerSet.d.ts +1 -1
  23. package/dist/cjs/peer/PeerSet.d.ts.map +1 -1
  24. package/dist/cjs/peer/PeerSet.js +55 -22
  25. package/dist/cjs/peer/PeerSet.js.map +2 -2
  26. package/dist/cjs/protocol/ExchangeManager.d.ts.map +1 -1
  27. package/dist/cjs/protocol/ExchangeManager.js +5 -2
  28. package/dist/cjs/protocol/ExchangeManager.js.map +1 -1
  29. package/dist/cjs/protocol/ExchangeProvider.d.ts.map +1 -1
  30. package/dist/cjs/protocol/ExchangeProvider.js +3 -3
  31. package/dist/cjs/protocol/ExchangeProvider.js.map +1 -1
  32. package/dist/cjs/protocol/MRP.d.ts +54 -0
  33. package/dist/cjs/protocol/MRP.d.ts.map +1 -0
  34. package/dist/cjs/protocol/MRP.js +96 -0
  35. package/dist/cjs/protocol/MRP.js.map +6 -0
  36. package/dist/cjs/protocol/MessageChannel.d.ts +11 -26
  37. package/dist/cjs/protocol/MessageChannel.d.ts.map +1 -1
  38. package/dist/cjs/protocol/MessageChannel.js +52 -55
  39. package/dist/cjs/protocol/MessageChannel.js.map +2 -2
  40. package/dist/cjs/protocol/MessageExchange.d.ts.map +1 -1
  41. package/dist/cjs/protocol/MessageExchange.js +7 -7
  42. package/dist/cjs/protocol/MessageExchange.js.map +1 -1
  43. package/dist/cjs/protocol/ProtocolMocks.d.ts +2 -1
  44. package/dist/cjs/protocol/ProtocolMocks.d.ts.map +1 -1
  45. package/dist/cjs/protocol/ProtocolMocks.js +1 -0
  46. package/dist/cjs/protocol/ProtocolMocks.js.map +1 -1
  47. package/dist/cjs/protocol/index.d.ts +1 -0
  48. package/dist/cjs/protocol/index.d.ts.map +1 -1
  49. package/dist/cjs/protocol/index.js +1 -0
  50. package/dist/cjs/protocol/index.js.map +1 -1
  51. package/dist/cjs/session/NodeSession.js +2 -2
  52. package/dist/cjs/session/NodeSession.js.map +1 -1
  53. package/dist/cjs/session/Session.d.ts +2 -4
  54. package/dist/cjs/session/Session.d.ts.map +1 -1
  55. package/dist/cjs/session/Session.js +1 -4
  56. package/dist/cjs/session/Session.js.map +1 -1
  57. package/dist/cjs/session/case/CaseClient.d.ts.map +1 -1
  58. package/dist/cjs/session/case/CaseClient.js +1 -1
  59. package/dist/cjs/session/case/CaseClient.js.map +1 -1
  60. package/dist/cjs/session/case/CaseServer.d.ts.map +1 -1
  61. package/dist/cjs/session/case/CaseServer.js +4 -1
  62. package/dist/cjs/session/case/CaseServer.js.map +1 -1
  63. package/dist/esm/dcl/DclCertificateService.d.ts.map +1 -1
  64. package/dist/esm/dcl/DclCertificateService.js +3 -0
  65. package/dist/esm/dcl/DclCertificateService.js.map +1 -1
  66. package/dist/esm/dcl/DclOtaUpdateService.d.ts.map +1 -1
  67. package/dist/esm/dcl/DclOtaUpdateService.js +6 -4
  68. package/dist/esm/dcl/DclOtaUpdateService.js.map +1 -1
  69. package/dist/esm/mdns/MdnsClient.d.ts.map +1 -1
  70. package/dist/esm/mdns/MdnsClient.js +6 -2
  71. package/dist/esm/mdns/MdnsClient.js.map +1 -1
  72. package/dist/esm/peer/Peer.d.ts +2 -1
  73. package/dist/esm/peer/Peer.d.ts.map +1 -1
  74. package/dist/esm/peer/Peer.js +27 -3
  75. package/dist/esm/peer/Peer.js.map +1 -1
  76. package/dist/esm/peer/PeerAddressStore.d.ts +1 -11
  77. package/dist/esm/peer/PeerAddressStore.d.ts.map +1 -1
  78. package/dist/esm/peer/PeerAddressStore.js +1 -4
  79. package/dist/esm/peer/PeerAddressStore.js.map +1 -1
  80. package/dist/esm/peer/PeerDescriptor.d.ts +1 -9
  81. package/dist/esm/peer/PeerDescriptor.d.ts.map +1 -1
  82. package/dist/esm/peer/PeerDescriptor.js +1 -6
  83. package/dist/esm/peer/PeerDescriptor.js.map +1 -1
  84. package/dist/esm/peer/PeerSet.d.ts +1 -1
  85. package/dist/esm/peer/PeerSet.d.ts.map +1 -1
  86. package/dist/esm/peer/PeerSet.js +60 -24
  87. package/dist/esm/peer/PeerSet.js.map +2 -2
  88. package/dist/esm/protocol/ExchangeManager.d.ts.map +1 -1
  89. package/dist/esm/protocol/ExchangeManager.js +6 -3
  90. package/dist/esm/protocol/ExchangeManager.js.map +1 -1
  91. package/dist/esm/protocol/ExchangeProvider.d.ts.map +1 -1
  92. package/dist/esm/protocol/ExchangeProvider.js +3 -3
  93. package/dist/esm/protocol/ExchangeProvider.js.map +1 -1
  94. package/dist/esm/protocol/MRP.d.ts +54 -0
  95. package/dist/esm/protocol/MRP.d.ts.map +1 -0
  96. package/dist/esm/protocol/MRP.js +76 -0
  97. package/dist/esm/protocol/MRP.js.map +6 -0
  98. package/dist/esm/protocol/MessageChannel.d.ts +11 -26
  99. package/dist/esm/protocol/MessageChannel.d.ts.map +1 -1
  100. package/dist/esm/protocol/MessageChannel.js +55 -58
  101. package/dist/esm/protocol/MessageChannel.js.map +2 -2
  102. package/dist/esm/protocol/MessageExchange.d.ts.map +1 -1
  103. package/dist/esm/protocol/MessageExchange.js +3 -3
  104. package/dist/esm/protocol/MessageExchange.js.map +1 -1
  105. package/dist/esm/protocol/ProtocolMocks.d.ts +2 -1
  106. package/dist/esm/protocol/ProtocolMocks.d.ts.map +1 -1
  107. package/dist/esm/protocol/ProtocolMocks.js +1 -0
  108. package/dist/esm/protocol/ProtocolMocks.js.map +1 -1
  109. package/dist/esm/protocol/index.d.ts +1 -0
  110. package/dist/esm/protocol/index.d.ts.map +1 -1
  111. package/dist/esm/protocol/index.js +1 -0
  112. package/dist/esm/protocol/index.js.map +1 -1
  113. package/dist/esm/session/NodeSession.js +2 -2
  114. package/dist/esm/session/NodeSession.js.map +1 -1
  115. package/dist/esm/session/Session.d.ts +2 -4
  116. package/dist/esm/session/Session.d.ts.map +1 -1
  117. package/dist/esm/session/Session.js +1 -4
  118. package/dist/esm/session/Session.js.map +1 -1
  119. package/dist/esm/session/case/CaseClient.d.ts.map +1 -1
  120. package/dist/esm/session/case/CaseClient.js +2 -2
  121. package/dist/esm/session/case/CaseClient.js.map +1 -1
  122. package/dist/esm/session/case/CaseServer.d.ts.map +1 -1
  123. package/dist/esm/session/case/CaseServer.js +4 -1
  124. package/dist/esm/session/case/CaseServer.js.map +1 -1
  125. package/package.json +6 -6
  126. package/src/dcl/DclCertificateService.ts +3 -0
  127. package/src/dcl/DclOtaUpdateService.ts +11 -5
  128. package/src/mdns/MdnsClient.ts +9 -2
  129. package/src/peer/Peer.ts +37 -5
  130. package/src/peer/PeerAddressStore.ts +1 -19
  131. package/src/peer/PeerDescriptor.ts +1 -15
  132. package/src/peer/PeerSet.ts +82 -35
  133. package/src/protocol/ExchangeManager.ts +15 -3
  134. package/src/protocol/ExchangeProvider.ts +3 -3
  135. package/src/protocol/MRP.ts +146 -0
  136. package/src/protocol/MessageChannel.ts +66 -100
  137. package/src/protocol/MessageExchange.ts +4 -3
  138. package/src/protocol/ProtocolMocks.ts +1 -0
  139. package/src/protocol/index.ts +1 -0
  140. package/src/session/NodeSession.ts +3 -3
  141. package/src/session/Session.ts +2 -4
  142. package/src/session/case/CaseClient.ts +8 -2
  143. package/src/session/case/CaseServer.ts +4 -0
@@ -0,0 +1,76 @@
1
+ /**
2
+ * @license
3
+ * Copyright 2022-2026 Matter.js Authors
4
+ * SPDX-License-Identifier: Apache-2.0
5
+ */
6
+ import { ChannelType, MatterFlowError, Millis, Seconds } from "#general";
7
+ var MRP;
8
+ ((MRP2) => {
9
+ MRP2.MAX_TRANSMISSIONS = 5;
10
+ MRP2.BACKOFF_BASE = 1.6;
11
+ MRP2.BACKOFF_JITTER = 0.25;
12
+ MRP2.BACKOFF_MARGIN = 1.1;
13
+ MRP2.BACKOFF_THRESHOLD = 1;
14
+ MRP2.STANDALONE_ACK_TIMEOUT = Millis(200);
15
+ MRP2.DEFAULT_EXPECTED_PROCESSING_TIME = Seconds(2);
16
+ const PEER_RESPONSE_TIME_BUFFER = Seconds(5);
17
+ function maxPeerResponseTimeOf({
18
+ peerSessionParameters,
19
+ localSessionParameters,
20
+ channelType,
21
+ isPeerActive,
22
+ usesMrp = channelType === ChannelType.UDP,
23
+ expectedProcessingTime = MRP2.DEFAULT_EXPECTED_PROCESSING_TIME
24
+ }) {
25
+ switch (channelType) {
26
+ case "tcp":
27
+ return Millis(Seconds(30) + PEER_RESPONSE_TIME_BUFFER);
28
+ case "udp":
29
+ if (!usesMrp) {
30
+ throw new MatterFlowError("No response expected for this message exchange because UDP and no MRP");
31
+ }
32
+ return Millis(
33
+ maxResponseTimeOf(peerSessionParameters, isPeerActive) + maxResponseTimeOf(localSessionParameters, isPeerActive) + expectedProcessingTime + PEER_RESPONSE_TIME_BUFFER
34
+ );
35
+ case "ble":
36
+ return Millis(Seconds(30) + PEER_RESPONSE_TIME_BUFFER);
37
+ default:
38
+ throw new MatterFlowError(
39
+ `Can not calculate expected timeout for unknown channel type: ${channelType}`
40
+ );
41
+ }
42
+ }
43
+ MRP2.maxPeerResponseTimeOf = maxPeerResponseTimeOf;
44
+ function maxRetransmissionIntervalOf({
45
+ transmissionNumber,
46
+ sessionParameters,
47
+ isPeerActive
48
+ }) {
49
+ const { activeInterval, idleInterval } = sessionParameters;
50
+ const peerActive = transmissionNumber > 0 && (sessionParameters !== void 0 || isPeerActive);
51
+ const baseInterval = peerActive ? activeInterval : idleInterval;
52
+ return Millis.floor(
53
+ Millis(
54
+ baseInterval * MRP2.BACKOFF_MARGIN * Math.pow(MRP2.BACKOFF_BASE, Math.max(0, transmissionNumber - MRP2.BACKOFF_THRESHOLD)) * (1 + (sessionParameters !== void 0 ? 1 : Math.random()) * MRP2.BACKOFF_JITTER)
55
+ )
56
+ );
57
+ }
58
+ MRP2.maxRetransmissionIntervalOf = maxRetransmissionIntervalOf;
59
+ })(MRP || (MRP = {}));
60
+ function maxResponseTimeOf(sessionParameters, isPeerActive) {
61
+ let finalWaitTime = 0;
62
+ for (let i = 0; i < MRP.MAX_TRANSMISSIONS; i++) {
63
+ finalWaitTime = Millis(
64
+ finalWaitTime + MRP.maxRetransmissionIntervalOf({
65
+ transmissionNumber: i,
66
+ sessionParameters,
67
+ isPeerActive
68
+ })
69
+ );
70
+ }
71
+ return finalWaitTime;
72
+ }
73
+ export {
74
+ MRP
75
+ };
76
+ //# sourceMappingURL=MRP.js.map
@@ -0,0 +1,6 @@
1
+ {
2
+ "version": 3,
3
+ "sources": ["../../../src/protocol/MRP.ts"],
4
+ "mappings": "AAAA;AAAA;AAAA;AAAA;AAAA;AAMA,SAAS,aAAuB,iBAAiB,QAAQ,eAAe;AAGjE,IAAU;AAAA,CAAV,CAAUA,SAAV;AAKI,EAAMA,KAAA,oBAAoB;AAG1B,EAAMA,KAAA,eAAe;AAGrB,EAAMA,KAAA,iBAAiB;AAGvB,EAAMA,KAAA,iBAAiB;AAGvB,EAAMA,KAAA,oBAAoB;AAG1B,EAAMA,KAAA,yBAAyB,OAAO,GAAG;AAOzC,EAAMA,KAAA,mCAAmC,QAAQ,CAAC;AAMzD,QAAM,4BAA4B,QAAQ,CAAC;AAWpC,WAAS,sBAAsB;AAAA,IAClC;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA,UAAU,gBAAgB,YAAY;AAAA,IACtC,yBAAyBA,KAAA;AAAA,EAC7B,GAAiC;AAC7B,YAAQ,aAAa;AAAA,MACjB,KAAK;AAED,eAAO,OAAO,QAAQ,EAAE,IAAI,yBAAyB;AAAA,MAEzD,KAAK;AAED,YAAI,CAAC,SAAS;AACV,gBAAM,IAAI,gBAAgB,uEAAuE;AAAA,QACrG;AAEA,eAAO;AAAA,UACH,kBAAkB,uBAAuB,YAAY,IACjD,kBAAkB,wBAAwB,YAAY,IACtD,yBACA;AAAA,QACR;AAAA,MAEJ,KAAK;AAED,eAAO,OAAO,QAAQ,EAAE,IAAI,yBAAyB;AAAA,MAEzD;AACI,cAAM,IAAI;AAAA,UACN,gEAAgE,WAAW;AAAA,QAC/E;AAAA,IACR;AAAA,EACJ;AAnCO,EAAAA,KAAS;AAmDT,WAAS,4BAA4B;AAAA,IACxC;AAAA,IACA;AAAA,IACA;AAAA,EACJ,GAAqB;AACjB,UAAM,EAAE,gBAAgB,aAAa,IAAI;AAIzC,UAAM,aAAa,qBAAqB,MAAM,sBAAsB,UAAa;AACjF,UAAM,eAAe,aAAa,iBAAiB;AACnD,WAAO,OAAO;AAAA,MACV;AAAA,QACI,eACIA,KAAI,iBACJ,KAAK,IAAIA,KAAI,cAAc,KAAK,IAAI,GAAG,qBAAqBA,KAAI,iBAAiB,CAAC,KACjF,KAAK,sBAAsB,SAAY,IAAI,KAAK,OAAO,KAAKA,KAAI;AAAA,MACzE;AAAA,IACJ;AAAA,EACJ;AAnBO,EAAAA,KAAS;AAAA,GA/FH;AAwHjB,SAAS,kBAAkB,mBAAsC,cAAuB;AACpF,MAAI,gBAAgB;AAGpB,WAAS,IAAI,GAAG,IAAI,IAAI,mBAAmB,KAAK;AAC5C,oBAAgB;AAAA,MACZ,gBACI,IAAI,4BAA4B;AAAA,QAC5B,oBAAoB;AAAA,QACpB;AAAA,QACA;AAAA,MACJ,CAAC;AAAA,IACT;AAAA,EACJ;AAEA,SAAO;AACX;",
5
+ "names": ["MRP"]
6
+ }
@@ -4,36 +4,12 @@
4
4
  * SPDX-License-Identifier: Apache-2.0
5
5
  */
6
6
  import { Message } from "#codec/MessageCodec.js";
7
- import { Bytes, Channel, Duration, MaybePromise } from "#general";
7
+ import { Bytes, Channel, Duration, MaybePromise, ObservableValue, ServerAddressUdp } from "#general";
8
8
  import type { ExchangeLogContext } from "#protocol/MessageExchange.js";
9
9
  import type { Session } from "#session/Session.js";
10
10
  import type { SessionParameters } from "#session/SessionParameters.js";
11
- /**
12
- * Default expected processing time for a messages in milliseconds. The value is derived from kExpectedIMProcessingTime
13
- * from chip implementation. This is basically the default used with different names, also kExpectedLowProcessingTime or
14
- * kExpectedSigma1ProcessingTime.
15
- */
16
- export declare const DEFAULT_EXPECTED_PROCESSING_TIME: Duration;
17
- export declare namespace MRP {
18
- /**
19
- * The maximum number of transmission attempts for a given reliable message. The sender MAY choose this value as it
20
- * sees fit.
21
- */
22
- const MAX_TRANSMISSIONS = 5;
23
- /** The base number for the exponential backoff equation. */
24
- const BACKOFF_BASE = 1.6;
25
- /** The scaler for random jitter in the backoff equation. */
26
- const BACKOFF_JITTER = 0.25;
27
- /** The scaler margin increase to backoff over the peer sleepy interval. */
28
- const BACKOFF_MARGIN = 1.1;
29
- /** The number of retransmissions before transitioning from linear to exponential backoff. */
30
- const BACKOFF_THRESHOLD = 1;
31
- /** @see {@link MatterSpecification.v12.Core}, section 4.11.8 */
32
- const STANDALONE_ACK_TIMEOUT: Duration;
33
- }
34
11
  export declare class MessageChannel implements Channel<Message> {
35
12
  #private;
36
- readonly channel: Channel<Bytes>;
37
13
  readonly session: Session;
38
14
  closed: boolean;
39
15
  constructor(channel: Channel<Bytes>, session: Session, onClose?: () => MaybePromise<void>);
@@ -53,7 +29,16 @@ export declare class MessageChannel implements Channel<Message> {
53
29
  get maxPayloadSize(): number;
54
30
  send(message: Message, logContext?: ExchangeLogContext): Promise<void>;
55
31
  get name(): string;
56
- get networkAddress(): import("#general").ServerAddressUdp | undefined;
32
+ get networkAddress(): ServerAddressUdp | undefined;
33
+ get networkAddressChanged(): ObservableValue<[ServerAddressUdp], void>;
34
+ get channel(): Channel<AllowSharedBufferSource>;
35
+ /**
36
+ * Sync the addresses for IP network channels and replace channel if the IPs change
37
+ * If the channel is on a non ip network then the call is basically ignored
38
+ * We already use a new naming here which will be more used in future, so yes inconsistency in naming is ok for now
39
+ * TODO refactor this out again and remove the address from the channel
40
+ */
41
+ set socket(channel: Channel<Bytes>);
57
42
  close(): Promise<void>;
58
43
  calculateMaximumPeerResponseTime(peerSessionParameters: SessionParameters, localSessionParameters: SessionParameters, expectedProcessingTime?: Duration): Duration;
59
44
  /**
@@ -1 +1 @@
1
- {"version":3,"file":"MessageChannel.d.ts","sourceRoot":"","sources":["../../../src/protocol/MessageChannel.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO,EAAE,OAAO,EAAgB,MAAM,wBAAwB,CAAC;AAE/D,OAAO,EACH,KAAK,EACL,OAAO,EAEP,QAAQ,EAIR,YAAY,EAGf,MAAM,UAAU,CAAC;AAClB,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,8BAA8B,CAAC;AACvE,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,qBAAqB,CAAC;AACnD,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,+BAA+B,CAAC;AAIvE;;;;GAIG;AACH,eAAO,MAAM,gCAAgC,UAAa,CAAC;AAQ3D,yBAAiB,GAAG,CAAC;IACjB;;;OAGG;IACI,MAAM,iBAAiB,IAAI,CAAC;IAEnC,4DAA4D;IACrD,MAAM,YAAY,MAAM,CAAC;IAEhC,4DAA4D;IACrD,MAAM,cAAc,OAAO,CAAC;IAEnC,2EAA2E;IACpE,MAAM,cAAc,MAAM,CAAC;IAElC,6FAA6F;IACtF,MAAM,iBAAiB,IAAI,CAAC;IAEnC,gEAAgE;IACzD,MAAM,sBAAsB,UAAc,CAAC;CACrD;AAED,qBAAa,cAAe,YAAW,OAAO,CAAC,OAAO,CAAC;;IAM/C,QAAQ,CAAC,OAAO,EAAE,OAAO,CAAC,KAAK,CAAC;IAChC,QAAQ,CAAC,OAAO,EAAE,OAAO;IANtB,MAAM,UAAS;gBAKT,OAAO,EAAE,OAAO,CAAC,KAAK,CAAC,EACvB,OAAO,EAAE,OAAO,EACzB,OAAO,CAAC,EAAE,MAAM,YAAY,CAAC,IAAI,CAAC;IAKtC,IAAI,OAAO,CAAC,QAAQ,EAAE,MAAM,YAAY,CAAC,IAAI,CAAC,EAE7C;IAED,4CAA4C;IAC5C,IAAI,UAAU,YAEb;IAED;;;OAGG;IACH,IAAI,qBAAqB,YAExB;IAED,IAAI,IAAI,mCAEP;IAED;;;OAGG;IACH,IAAI,cAAc,WAEjB;IAEK,IAAI,CAAC,OAAO,EAAE,OAAO,EAAE,UAAU,CAAC,EAAE,kBAAkB;IAa5D,IAAI,IAAI,WAEP;IAED,IAAI,cAAc,oDAEjB;IAEK,KAAK;IASX,gCAAgC,CAC5B,qBAAqB,EAAE,iBAAiB,EACxC,sBAAsB,EAAE,iBAAiB,EACzC,sBAAsB,WAAmC,GAC1D,QAAQ;IA8BX;;;;;;;OAOG;IACH,6BAA6B,CAAC,mBAAmB,EAAE,MAAM,EAAE,iBAAiB,CAAC,EAAE,iBAAiB;CA2BnG"}
1
+ {"version":3,"file":"MessageChannel.d.ts","sourceRoot":"","sources":["../../../src/protocol/MessageChannel.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO,EAAE,OAAO,EAAgB,MAAM,wBAAwB,CAAC;AAE/D,OAAO,EACH,KAAK,EACL,OAAO,EAEP,QAAQ,EAIR,YAAY,EACZ,eAAe,EAEf,gBAAgB,EACnB,MAAM,UAAU,CAAC;AAClB,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,8BAA8B,CAAC;AACvE,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,qBAAqB,CAAC;AACnD,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,+BAA+B,CAAC;AAKvE,qBAAa,cAAe,YAAW,OAAO,CAAC,OAAO,CAAC;;IAU/C,QAAQ,CAAC,OAAO,EAAE,OAAO;IANtB,MAAM,UAAS;gBAKlB,OAAO,EAAE,OAAO,CAAC,KAAK,CAAC,EACd,OAAO,EAAE,OAAO,EACzB,OAAO,CAAC,EAAE,MAAM,YAAY,CAAC,IAAI,CAAC;IAUtC,IAAI,OAAO,CAAC,QAAQ,EAAE,MAAM,YAAY,CAAC,IAAI,CAAC,EAE7C;IAED,4CAA4C;IAC5C,IAAI,UAAU,YAEb;IAED;;;OAGG;IACH,IAAI,qBAAqB,YAExB;IAED,IAAI,IAAI,mCAEP;IAED;;;OAGG;IACH,IAAI,cAAc,WAEjB;IAEK,IAAI,CAAC,OAAO,EAAE,OAAO,EAAE,UAAU,CAAC,EAAE,kBAAkB;IAa5D,IAAI,IAAI,WAEP;IAED,IAAI,cAAc,iCAEjB;IAED,IAAI,qBAAqB,8CAExB;IAED,IAAI,OAAO,qCAEV;IAED;;;;;OAKG;IACH,IAAI,MAAM,CAAC,OAAO,EAAE,OAAO,CAAC,KAAK,CAAC,EAejC;IAEK,KAAK;IASX,gCAAgC,CAC5B,qBAAqB,EAAE,iBAAiB,EACxC,sBAAsB,EAAE,iBAAiB,EACzC,sBAAsB,CAAC,EAAE,QAAQ,GAClC,QAAQ;IAWX;;;;;;;OAOG;IACH,6BAA6B,CAAC,mBAAmB,EAAE,MAAM,EAAE,iBAAiB,CAAC,EAAE,iBAAiB;CAOnG"}
@@ -7,30 +7,27 @@ import { Message, MessageCodec } from "#codec/MessageCodec.js";
7
7
  import { Mark } from "#common/Mark.js";
8
8
  import {
9
9
  Diagnostic,
10
+ isIpNetworkChannel,
10
11
  Logger,
11
- MatterFlowError,
12
- Millis,
13
- Seconds
12
+ ObservableValue,
13
+ sameIpNetworkChannel
14
14
  } from "#general";
15
+ import { MRP } from "./MRP.js";
15
16
  const logger = new Logger("MessageChannel");
16
- const DEFAULT_EXPECTED_PROCESSING_TIME = Seconds(2);
17
- const PEER_RESPONSE_TIME_BUFFER = Seconds(5);
18
- var MRP;
19
- ((MRP2) => {
20
- MRP2.MAX_TRANSMISSIONS = 5;
21
- MRP2.BACKOFF_BASE = 1.6;
22
- MRP2.BACKOFF_JITTER = 0.25;
23
- MRP2.BACKOFF_MARGIN = 1.1;
24
- MRP2.BACKOFF_THRESHOLD = 1;
25
- MRP2.STANDALONE_ACK_TIMEOUT = Millis(200);
26
- })(MRP || (MRP = {}));
27
17
  class MessageChannel {
28
18
  // When the session is supporting MRP and the channel is not reliable, use MRP handling
29
19
  constructor(channel, session, onClose) {
30
- this.channel = channel;
31
20
  this.session = session;
21
+ this.#channel = channel;
22
+ if (isIpNetworkChannel(channel)) {
23
+ this.#isIpNetworkChannel = true;
24
+ this.#networkAddress.emit(channel.networkAddress);
25
+ }
32
26
  this.#onClose = onClose;
33
27
  }
28
+ #channel;
29
+ #networkAddress = ObservableValue();
30
+ #isIpNetworkChannel = false;
34
31
  closed = false;
35
32
  #onClose;
36
33
  set onClose(callback) {
@@ -38,7 +35,7 @@ class MessageChannel {
38
35
  }
39
36
  /** Is the underlying transport reliable? */
40
37
  get isReliable() {
41
- return this.channel.isReliable;
38
+ return this.#channel.isReliable;
42
39
  }
43
40
  /**
44
41
  * Does the underlying transport support large messages?
@@ -48,14 +45,14 @@ class MessageChannel {
48
45
  return this.type === "tcp";
49
46
  }
50
47
  get type() {
51
- return this.channel.type;
48
+ return this.#channel.type;
52
49
  }
53
50
  /**
54
51
  * Max Payload size of the exchange which bases on the maximum payload size of the channel. The full encoded matter
55
52
  * message payload sent here can be as huge as allowed by the channel.
56
53
  */
57
54
  get maxPayloadSize() {
58
- return this.channel.maxPayloadSize;
55
+ return this.#channel.maxPayloadSize;
59
56
  }
60
57
  async send(message, logContext) {
61
58
  logger.debug("Message", Mark.OUTBOUND, Message.diagnosticsOf(this.session, message, logContext));
@@ -66,40 +63,53 @@ class MessageChannel {
66
63
  `Matter message to send to ${this.name} is ${bytes.byteLength}bytes long, which is larger than the maximum allowed size of ${this.maxPayloadSize}. This only works if both nodes support it.`
67
64
  );
68
65
  }
69
- return await this.channel.send(bytes);
66
+ return await this.#channel.send(bytes);
70
67
  }
71
68
  get name() {
72
- return Diagnostic.via(`${this.session.via}@${this.channel.name}`);
69
+ return Diagnostic.via(`${this.session.via}@${this.#channel.name}`);
73
70
  }
74
71
  get networkAddress() {
75
- return this.channel?.networkAddress;
72
+ return this.#networkAddress.value;
73
+ }
74
+ get networkAddressChanged() {
75
+ return this.#networkAddress;
76
+ }
77
+ get channel() {
78
+ return this.#channel;
79
+ }
80
+ /**
81
+ * Sync the addresses for IP network channels and replace channel if the IPs change
82
+ * If the channel is on a non ip network then the call is basically ignored
83
+ * We already use a new naming here which will be more used in future, so yes inconsistency in naming is ok for now
84
+ * TODO refactor this out again and remove the address from the channel
85
+ */
86
+ set socket(channel) {
87
+ if (this.closed || !this.#isIpNetworkChannel || !isIpNetworkChannel(channel) || channel.type !== "udp" || this.#channel.type !== "udp") {
88
+ return;
89
+ }
90
+ if (!sameIpNetworkChannel(channel, this.#channel)) {
91
+ logger.debug(`Updated address to`, this.name);
92
+ this.#channel = channel;
93
+ this.#networkAddress.emit(channel.networkAddress);
94
+ }
76
95
  }
77
96
  async close() {
78
97
  const wasAlreadyClosed = this.closed;
79
98
  this.closed = true;
80
- await this.channel.close();
99
+ await this.#channel.close();
81
100
  if (!wasAlreadyClosed) {
82
101
  await this.#onClose?.();
83
102
  }
84
103
  }
85
- calculateMaximumPeerResponseTime(peerSessionParameters, localSessionParameters, expectedProcessingTime = DEFAULT_EXPECTED_PROCESSING_TIME) {
86
- switch (this.channel.type) {
87
- case "tcp":
88
- return Millis(Seconds(30) + PEER_RESPONSE_TIME_BUFFER);
89
- case "udp":
90
- if (!this.session.usesMrp) {
91
- throw new MatterFlowError("No response expected for this message exchange because UDP and no MRP.");
92
- }
93
- return Millis(
94
- this.#calculateMrpMaximumPeerResponseTime(peerSessionParameters) + this.#calculateMrpMaximumPeerResponseTime(localSessionParameters) + expectedProcessingTime + PEER_RESPONSE_TIME_BUFFER
95
- );
96
- case "ble":
97
- return Millis(Seconds(30) + PEER_RESPONSE_TIME_BUFFER);
98
- default:
99
- throw new MatterFlowError(
100
- `Can not calculate expected timeout for unknown channel type: ${this.channel.type}`
101
- );
102
- }
104
+ calculateMaximumPeerResponseTime(peerSessionParameters, localSessionParameters, expectedProcessingTime) {
105
+ return MRP.maxPeerResponseTimeOf({
106
+ peerSessionParameters,
107
+ localSessionParameters,
108
+ channelType: this.#channel.type,
109
+ isPeerActive: this.session.isPeerActive,
110
+ usesMrp: this.session.usesMrp,
111
+ expectedProcessingTime
112
+ });
103
113
  }
104
114
  /**
105
115
  * Calculates the backoff time for a resubmission based on the current retransmission count.
@@ -110,27 +120,14 @@ class MessageChannel {
110
120
  * @see {@link MatterSpecification.v10.Core}, section 4.11.2.1
111
121
  */
112
122
  getMrpResubmissionBackOffTime(retransmissionCount, sessionParameters) {
113
- const { activeInterval, idleInterval } = sessionParameters ?? this.session.parameters;
114
- const peerActive = retransmissionCount > 0 && (sessionParameters !== void 0 || this.session.isPeerActive);
115
- const baseInterval = peerActive ? activeInterval : idleInterval;
116
- return Millis.floor(
117
- Millis(
118
- baseInterval * MRP.BACKOFF_MARGIN * Math.pow(MRP.BACKOFF_BASE, Math.max(0, retransmissionCount - MRP.BACKOFF_THRESHOLD)) * (1 + (sessionParameters !== void 0 ? 1 : Math.random()) * MRP.BACKOFF_JITTER)
119
- )
120
- );
121
- }
122
- /** Calculates the maximum time the peer might take to respond when using MRP for one direction. */
123
- #calculateMrpMaximumPeerResponseTime(sessionParameters) {
124
- let finalWaitTime = 0;
125
- for (let i = 0; i < MRP.MAX_TRANSMISSIONS; i++) {
126
- finalWaitTime = Millis(finalWaitTime + this.getMrpResubmissionBackOffTime(i, sessionParameters));
127
- }
128
- return finalWaitTime;
123
+ return MRP.maxRetransmissionIntervalOf({
124
+ transmissionNumber: retransmissionCount,
125
+ sessionParameters: sessionParameters ?? this.session.parameters,
126
+ isPeerActive: this.session.isPeerActive
127
+ });
129
128
  }
130
129
  }
131
130
  export {
132
- DEFAULT_EXPECTED_PROCESSING_TIME,
133
- MRP,
134
131
  MessageChannel
135
132
  };
136
133
  //# sourceMappingURL=MessageChannel.js.map
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "version": 3,
3
3
  "sources": ["../../../src/protocol/MessageChannel.ts"],
4
- "mappings": "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",
5
- "names": ["MRP"]
4
+ "mappings": "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",
5
+ "names": []
6
6
  }
@@ -1 +1 @@
1
- {"version":3,"file":"MessageExchange.d.ts","sourceRoot":"","sources":["../../../src/protocol/MessageExchange.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO,EAAE,OAAO,EAA6B,MAAM,wBAAwB,CAAC;AAE5E,OAAO,EACH,oBAAoB,EACpB,KAAK,EAKL,QAAQ,EAIR,QAAQ,EAMX,MAAM,UAAU,CAAC;AAGlB,OAAO,EAAE,OAAO,EAAE,MAAM,qBAAqB,CAAC;AAC9C,OAAO,EAAE,iBAAiB,EAAE,MAAM,+BAA+B,CAAC;AAClE,OAAO,EAEH,MAAM,EAKT,MAAM,QAAQ,CAAC;AAEhB,OAAO,EAAoC,cAAc,EAAO,MAAM,qBAAqB,CAAC;AAI5F,MAAM,MAAM,kBAAkB,GAAG,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;AAEzD,MAAM,MAAM,mBAAmB,GAAG;IAC9B;;;OAGG;IACH,aAAa,CAAC,EAAE,OAAO,CAAC;IAExB;;;OAGG;IACH,0BAA0B,CAAC,EAAE,OAAO,CAAC;IAErC;;;OAGG;IACH,sBAAsB,CAAC,EAAE,QAAQ,CAAC;IAElC,gGAAgG;IAChG,WAAW,CAAC,EAAE,OAAO,CAAC;IAEtB,qFAAqF;IACrF,2BAA2B,CAAC,EAAE,MAAM,CAAC;IAErC;;OAEG;IACH,eAAe,CAAC,EAAE,OAAO,CAAC;IAE1B,qGAAqG;IACrG,UAAU,CAAC,EAAE,kBAAkB,CAAC;IAIhC,0FAA0F;IAC1F,UAAU,CAAC,EAAE,MAAM,CAAC;CACvB,CAAC;AAEF;;;;;GAKG;AACH,eAAO,MAAM,uBAAuB,QAAyC,CAAC;AAE9E;;GAEG;AACH,MAAM,WAAW,sBAAsB;IACnC,OAAO,EAAE,OAAO,CAAC;IACjB,KAAK,CAAC,MAAM,EAAE,MAAM,GAAG,IAAI,CAAC;IAC5B,sBAAsB,EAAE,iBAAiB,CAAC;CAC7C;AAED;;;;GAIG;AACH,qBAAa,eAAe;;IACxB,MAAM,CAAC,kBAAkB,CAAC,OAAO,EAAE,sBAAsB,EAAE,cAAc,EAAE,OAAO;IAalF,MAAM,CAAC,QAAQ,CAAC,OAAO,EAAE,sBAAsB,EAAE,UAAU,EAAE,MAAM,EAAE,UAAU,EAAE,MAAM;gBA+C3E,MAAM,EAAE,eAAe,CAAC,MAAM;IAwC1C,IAAI,OAAO,2BAEV;IAED,IAAI,WAAW,YAEd;IAED,6GAA6G;IAC7G,IAAI,MAAM,0CAET;IAED,IAAI,cAAc,QAEjB;IAED;;;OAGG;IACH,IAAI,OAAO,0CAEV;IAED,IAAI,EAAE,WAEL;IAED,IAAI,KAAK,WAER;IAED,IAAI,OAAO,YAEV;IAED,IAAI,OAAO,mBAKV;IAED;;;OAGG;IACH,IAAI,cAAc,WAIjB;IAED,IAAI,CAAC,GAAG,IAAI,EAAE,OAAO,EAAE;IAIjB,iBAAiB,CAAC,OAAO,EAAE,OAAO,EAAE,SAAS,UAAQ;IAkFrD,IAAI,CAAC,WAAW,EAAE,MAAM,EAAE,OAAO,EAAE,KAAK,EAAE,OAAO,GAAE,mBAAwB;IAuIjF,WAAW,CAAC,OAAO,CAAC,EAAE;QAAE,sBAAsB,CAAC,EAAE,QAAQ,CAAC;QAAC,OAAO,CAAC,EAAE,QAAQ,CAAA;KAAE;IAoG/E,CAAC,MAAM,CAAC,YAAY,CAAC;IAIf,OAAO;IAkBb,qBAAqB,CAAC,OAAO,EAAE,QAAQ;IAuBvC,qBAAqB;IAWrB,mBAAmB;IAInB,yBAAyB;IAIzB,0BAA0B;IAI1B;;;;OAIG;IACG,KAAK,CAAC,KAAK,UAAQ;IAqEzB,IAAI,GAAG,WAMN;CACJ;AAED,yBAAiB,eAAe,CAAC;IAC7B,UAAiB,MAAM;QACnB,OAAO,EAAE,sBAAsB,CAAC;QAChC,WAAW,EAAE,OAAO,CAAC;QACrB,aAAa,EAAE,MAAM,CAAC;QACtB,MAAM,CAAC,EAAE,MAAM,CAAC;QAChB,UAAU,CAAC,EAAE,MAAM,CAAC;QACpB,UAAU,EAAE,MAAM,CAAC;QACnB,UAAU,EAAE,MAAM,CAAC;KACtB;CACJ"}
1
+ {"version":3,"file":"MessageExchange.d.ts","sourceRoot":"","sources":["../../../src/protocol/MessageExchange.ts"],"names":[],"mappings":"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"}
@@ -75,7 +75,7 @@ import {
75
75
  StatusResponseError
76
76
  } from "#types";
77
77
  import { RetransmissionLimitReachedError, SessionClosedError, UnexpectedMessageError } from "./errors.js";
78
- import { DEFAULT_EXPECTED_PROCESSING_TIME, MRP } from "./MessageChannel.js";
78
+ import { MRP } from "./MRP.js";
79
79
  const logger = Logger.get("MessageExchange");
80
80
  const MATTER_MESSAGE_OVERHEAD = 26 + 12 + CRYPTO_AEAD_MIC_LENGTH_BYTES;
81
81
  class MessageExchange {
@@ -254,7 +254,7 @@ class MessageExchange {
254
254
  if (isStandaloneAck) {
255
255
  } else {
256
256
  throw new MatterFlowError(
257
- `Incorrect ack received. Expected ${sentMessageIdToAck}, received: ${ackedMessageId}`
257
+ `Incorrect ack received. Expected ${hex.fixed(sentMessageIdToAck, 8)}, received: ${hex.fixed(ackedMessageId, 8)}`
258
258
  );
259
259
  }
260
260
  } else {
@@ -289,7 +289,7 @@ class MessageExchange {
289
289
  const {
290
290
  expectAckOnly = false,
291
291
  disableMrpLogic,
292
- expectedProcessingTime = DEFAULT_EXPECTED_PROCESSING_TIME,
292
+ expectedProcessingTime = MRP.DEFAULT_EXPECTED_PROCESSING_TIME,
293
293
  includeAcknowledgeMessageId,
294
294
  logContext,
295
295
  protocolId = this.#protocolId
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "version": 3,
3
3
  "sources": ["../../../src/protocol/MessageExchange.ts"],
4
- "mappings": "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",
4
+ "mappings": "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",
5
5
  "names": ["_stack", "protocolId", "messageType", "_", "_error", "_hasError", "error"]
6
6
  }
@@ -5,7 +5,7 @@
5
5
  */
6
6
  import { Message } from "#codec/MessageCodec.js";
7
7
  import { Fabric as RealFabric } from "#fabric/Fabric.js";
8
- import { AsyncObservable, Bytes, Channel, ChannelType, Crypto, IpNetworkChannel, MaybePromise, ServerAddressUdp } from "#general";
8
+ import { AsyncObservable, Bytes, Channel, ChannelType, Crypto, IpNetworkChannel, MaybePromise, Observable, ServerAddressUdp } from "#general";
9
9
  import { NodeSession as RealNodeSession } from "#session/NodeSession.js";
10
10
  import { Session } from "#session/Session.js";
11
11
  import { Status } from "#types";
@@ -42,6 +42,7 @@ export declare namespace ProtocolMocks {
42
42
  name: string;
43
43
  type: ChannelType;
44
44
  networkAddress: ServerAddressUdp;
45
+ networkAddressChanged: Observable<[ServerAddressUdp], void>;
45
46
  constructor(config: MockNetworkConfig);
46
47
  send(): Promise<void>;
47
48
  close(): Promise<void>;
@@ -1 +1 @@
1
- {"version":3,"file":"ProtocolMocks.d.ts","sourceRoot":"","sources":["../../../src/protocol/ProtocolMocks.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"ProtocolMocks.d.ts","sourceRoot":"","sources":["../../../src/protocol/ProtocolMocks.ts"],"names":[],"mappings":"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"}
@@ -129,6 +129,7 @@ var ProtocolMocks;
129
129
  name = "mock-byte-channel";
130
130
  type = ChannelType.UDP;
131
131
  networkAddress;
132
+ networkAddressChanged = new Observable();
132
133
  constructor(config) {
133
134
  const index = config.index ?? 1;
134
135
  this.maxPayloadSize = config.maxPayloadSize ?? MAX_UDP_MESSAGE_SIZE;
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "version": 3,
3
3
  "sources": ["../../../src/protocol/ProtocolMocks.ts"],
4
- "mappings": "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",
4
+ "mappings": "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",
5
5
  "names": ["ProtocolMocks", "Fabric"]
6
6
  }
@@ -12,6 +12,7 @@ export * from "./MessageChannel.js";
12
12
  export * from "./MessageCounter.js";
13
13
  export * from "./MessageExchange.js";
14
14
  export * from "./MessageReceptionState.js";
15
+ export * from "./MRP.js";
15
16
  export * from "./ProtocolHandler.js";
16
17
  export * from "./ProtocolMocks.js";
17
18
  export * from "./ProtocolStatusMessage.js";
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/protocol/index.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,cAAc,uBAAuB,CAAC;AACtC,cAAc,yBAAyB,CAAC;AACxC,cAAc,aAAa,CAAC;AAC5B,cAAc,sBAAsB,CAAC;AACrC,cAAc,uBAAuB,CAAC;AACtC,cAAc,qBAAqB,CAAC;AACpC,cAAc,qBAAqB,CAAC;AACpC,cAAc,sBAAsB,CAAC;AACrC,cAAc,4BAA4B,CAAC;AAC3C,cAAc,sBAAsB,CAAC;AACrC,cAAc,oBAAoB,CAAC;AACnC,cAAc,4BAA4B,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/protocol/index.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,cAAc,uBAAuB,CAAC;AACtC,cAAc,yBAAyB,CAAC;AACxC,cAAc,aAAa,CAAC;AAC5B,cAAc,sBAAsB,CAAC;AACrC,cAAc,uBAAuB,CAAC;AACtC,cAAc,qBAAqB,CAAC;AACpC,cAAc,qBAAqB,CAAC;AACpC,cAAc,sBAAsB,CAAC;AACrC,cAAc,4BAA4B,CAAC;AAC3C,cAAc,UAAU,CAAC;AACzB,cAAc,sBAAsB,CAAC;AACrC,cAAc,oBAAoB,CAAC;AACnC,cAAc,4BAA4B,CAAC"}
@@ -12,6 +12,7 @@ export * from "./MessageChannel.js";
12
12
  export * from "./MessageCounter.js";
13
13
  export * from "./MessageExchange.js";
14
14
  export * from "./MessageReceptionState.js";
15
+ export * from "./MRP.js";
15
16
  export * from "./ProtocolHandler.js";
16
17
  export * from "./ProtocolMocks.js";
17
18
  export * from "./ProtocolStatusMessage.js";
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "version": 3,
3
3
  "sources": ["../../../src/protocol/index.ts"],
4
- "mappings": "AAAA;AAAA;AAAA;AAAA;AAAA;AAMA,cAAc;AACd,cAAc;AACd,cAAc;AACd,cAAc;AACd,cAAc;AACd,cAAc;AACd,cAAc;AACd,cAAc;AACd,cAAc;AACd,cAAc;AACd,cAAc;AACd,cAAc;",
4
+ "mappings": "AAAA;AAAA;AAAA;AAAA;AAAA;AAMA,cAAc;AACd,cAAc;AACd,cAAc;AACd,cAAc;AACd,cAAc;AACd,cAAc;AACd,cAAc;AACd,cAAc;AACd,cAAc;AACd,cAAc;AACd,cAAc;AACd,cAAc;AACd,cAAc;",
5
5
  "names": []
6
6
  }
@@ -105,13 +105,13 @@ class NodeSession extends SecureSession {
105
105
  this.#attestationKey = attestationKey;
106
106
  this.#caseAuthenticatedTags = caseAuthenticatedTags ?? [];
107
107
  this.#isInitiator = isInitiator;
108
- manager?.sessions.add(this);
109
- fabric?.addSession(this);
110
108
  logger.debug(
111
109
  `Created secure ${this.isPase ? "PASE" : "CASE"} session for fabric index ${fabric?.fabricIndex}`,
112
110
  this.via,
113
111
  this.parameterDiagnostics
114
112
  );
113
+ manager?.sessions.add(this);
114
+ fabric?.addSession(this);
115
115
  }
116
116
  get parameterDiagnostics() {
117
117
  return Diagnostic.dict(
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "version": 3,
3
3
  "sources": ["../../../src/session/NodeSession.ts"],
4
- "mappings": "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",
4
+ "mappings": "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",
5
5
  "names": ["NodeSession", "logger"]
6
6
  }