@matter/protocol 0.16.0-alpha.0-20250816-d22ad240d → 0.16.0-alpha.0-20250819-0a388db8b
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/cjs/action/Val.d.ts +6 -0
- package/dist/cjs/action/Val.d.ts.map +1 -1
- package/dist/cjs/action/Val.js.map +1 -1
- package/dist/cjs/action/client/ClientInteraction.d.ts +1 -1
- package/dist/cjs/action/client/ClientInteraction.d.ts.map +1 -1
- package/dist/cjs/action/client/ClientInteraction.js +4 -4
- package/dist/cjs/action/client/ClientInteraction.js.map +1 -1
- package/dist/cjs/action/client/ClientSubscription.d.ts +2 -1
- package/dist/cjs/action/client/ClientSubscription.d.ts.map +1 -1
- package/dist/cjs/action/client/ClientSubscriptionHandler.js +2 -2
- package/dist/cjs/action/client/ClientSubscriptionHandler.js.map +1 -1
- package/dist/cjs/action/client/ClientSubscriptions.d.ts.map +1 -1
- package/dist/cjs/action/client/ClientSubscriptions.js +11 -7
- package/dist/cjs/action/client/ClientSubscriptions.js.map +1 -1
- package/dist/cjs/action/request/Subscribe.d.ts +6 -6
- package/dist/cjs/action/request/Subscribe.d.ts.map +1 -1
- package/dist/cjs/action/request/Subscribe.js +11 -9
- package/dist/cjs/action/request/Subscribe.js.map +1 -1
- package/dist/cjs/advertisement/Advertisement.d.ts +3 -3
- package/dist/cjs/advertisement/Advertisement.d.ts.map +1 -1
- package/dist/cjs/advertisement/Advertisement.js +5 -5
- package/dist/cjs/advertisement/Advertisement.js.map +1 -1
- package/dist/cjs/advertisement/ble/BleAdvertisement.d.ts.map +1 -1
- package/dist/cjs/advertisement/ble/BleAdvertisement.js +7 -6
- package/dist/cjs/advertisement/ble/BleAdvertisement.js.map +1 -1
- package/dist/cjs/advertisement/ble/BleAdvertiser.d.ts +11 -10
- package/dist/cjs/advertisement/ble/BleAdvertiser.d.ts.map +1 -1
- package/dist/cjs/advertisement/ble/BleAdvertiser.js +4 -4
- package/dist/cjs/advertisement/ble/BleAdvertiser.js.map +1 -1
- package/dist/cjs/advertisement/mdns/MdnsAdvertisement.d.ts.map +1 -1
- package/dist/cjs/advertisement/mdns/MdnsAdvertisement.js +7 -7
- package/dist/cjs/advertisement/mdns/MdnsAdvertisement.js.map +1 -1
- package/dist/cjs/advertisement/mdns/MdnsAdvertiser.d.ts +2 -2
- package/dist/cjs/advertisement/mdns/MdnsAdvertiser.d.ts.map +1 -1
- package/dist/cjs/advertisement/mdns/MdnsAdvertiser.js +4 -4
- package/dist/cjs/advertisement/mdns/MdnsAdvertiser.js.map +1 -1
- package/dist/cjs/ble/Ble.d.ts +2 -2
- package/dist/cjs/ble/Ble.d.ts.map +1 -1
- package/dist/cjs/ble/Ble.js.map +1 -1
- package/dist/cjs/ble/BleConsts.d.ts +4 -4
- package/dist/cjs/ble/BleConsts.d.ts.map +1 -1
- package/dist/cjs/ble/BleConsts.js +7 -7
- package/dist/cjs/ble/BleConsts.js.map +1 -1
- package/dist/cjs/ble/BtpSessionHandler.js +2 -2
- package/dist/cjs/ble/BtpSessionHandler.js.map +1 -1
- package/dist/cjs/certificate/AttestationCertificateManager.js +3 -3
- package/dist/cjs/certificate/AttestationCertificateManager.js.map +1 -1
- package/dist/cjs/certificate/CertificateAuthority.js +2 -2
- package/dist/cjs/certificate/CertificateAuthority.js.map +1 -1
- package/dist/cjs/certificate/kinds/OperationalBase.js +2 -2
- package/dist/cjs/certificate/kinds/OperationalBase.js.map +1 -1
- package/dist/cjs/cluster/client/ClusterClient.js +5 -5
- package/dist/cjs/cluster/client/ClusterClient.js.map +1 -1
- package/dist/cjs/cluster/client/ClusterClientTypes.d.ts +3 -3
- package/dist/cjs/cluster/client/ClusterClientTypes.d.ts.map +1 -1
- package/dist/cjs/cluster/client/EventClient.d.ts +2 -1
- package/dist/cjs/cluster/client/EventClient.d.ts.map +1 -1
- package/dist/cjs/cluster/client/EventClient.js +3 -3
- package/dist/cjs/cluster/client/EventClient.js.map +1 -1
- package/dist/cjs/common/FailsafeContext.d.ts +4 -4
- package/dist/cjs/common/FailsafeContext.d.ts.map +1 -1
- package/dist/cjs/common/FailsafeContext.js +8 -8
- package/dist/cjs/common/FailsafeContext.js.map +1 -1
- package/dist/cjs/common/FailsafeTimer.d.ts +3 -3
- package/dist/cjs/common/FailsafeTimer.d.ts.map +1 -1
- package/dist/cjs/common/FailsafeTimer.js +8 -8
- package/dist/cjs/common/FailsafeTimer.js.map +1 -1
- package/dist/cjs/common/Scanner.d.ts +7 -7
- package/dist/cjs/common/Scanner.d.ts.map +1 -1
- package/dist/cjs/common/Scanner.js.map +1 -1
- package/dist/cjs/events/OccurrenceManager.js +1 -1
- package/dist/cjs/events/OccurrenceManager.js.map +1 -1
- package/dist/cjs/groups/FabricGroups.d.ts +1 -1
- package/dist/cjs/groups/FabricGroups.js +1 -1
- package/dist/cjs/groups/Groups.d.ts +1 -1
- package/dist/cjs/groups/KeySets.d.ts +3 -3
- package/dist/cjs/groups/KeySets.d.ts.map +1 -1
- package/dist/cjs/groups/KeySets.js +12 -4
- package/dist/cjs/groups/KeySets.js.map +1 -1
- package/dist/cjs/interaction/InteractionClient.d.ts +9 -9
- package/dist/cjs/interaction/InteractionClient.d.ts.map +1 -1
- package/dist/cjs/interaction/InteractionClient.js +33 -33
- package/dist/cjs/interaction/InteractionClient.js.map +1 -1
- package/dist/cjs/interaction/InteractionMessenger.d.ts +10 -10
- package/dist/cjs/interaction/InteractionMessenger.d.ts.map +1 -1
- package/dist/cjs/interaction/InteractionMessenger.js +15 -15
- package/dist/cjs/interaction/InteractionMessenger.js.map +1 -1
- package/dist/cjs/interaction/Subscription.d.ts +3 -4
- package/dist/cjs/interaction/Subscription.d.ts.map +1 -1
- package/dist/cjs/interaction/Subscription.js +9 -12
- package/dist/cjs/interaction/Subscription.js.map +1 -1
- package/dist/cjs/interaction/SubscriptionClient.d.ts +3 -3
- package/dist/cjs/interaction/SubscriptionClient.d.ts.map +1 -1
- package/dist/cjs/interaction/SubscriptionClient.js +3 -3
- package/dist/cjs/interaction/SubscriptionClient.js.map +1 -1
- package/dist/cjs/mdns/MdnsClient.d.ts +9 -9
- package/dist/cjs/mdns/MdnsClient.d.ts.map +1 -1
- package/dist/cjs/mdns/MdnsClient.js +86 -82
- package/dist/cjs/mdns/MdnsClient.js.map +1 -1
- package/dist/cjs/mdns/MdnsServer.d.ts.map +1 -1
- package/dist/cjs/mdns/MdnsServer.js +11 -9
- package/dist/cjs/mdns/MdnsServer.js.map +1 -1
- package/dist/cjs/peer/ControllerCommissioner.d.ts +2 -2
- package/dist/cjs/peer/ControllerCommissioner.d.ts.map +1 -1
- package/dist/cjs/peer/ControllerCommissioner.js +7 -7
- package/dist/cjs/peer/ControllerCommissioner.js.map +1 -1
- package/dist/cjs/peer/ControllerCommissioningFlow.d.ts.map +1 -1
- package/dist/cjs/peer/ControllerCommissioningFlow.js +37 -35
- package/dist/cjs/peer/ControllerCommissioningFlow.js.map +1 -1
- package/dist/cjs/peer/ControllerDiscovery.d.ts +4 -4
- package/dist/cjs/peer/ControllerDiscovery.d.ts.map +1 -1
- package/dist/cjs/peer/ControllerDiscovery.js +12 -17
- package/dist/cjs/peer/ControllerDiscovery.js.map +1 -1
- package/dist/cjs/peer/InteractionQueue.d.ts.map +1 -1
- package/dist/cjs/peer/InteractionQueue.js +2 -2
- package/dist/cjs/peer/InteractionQueue.js.map +1 -1
- package/dist/cjs/peer/PeerSet.d.ts +2 -2
- package/dist/cjs/peer/PeerSet.d.ts.map +1 -1
- package/dist/cjs/peer/PeerSet.js +25 -25
- package/dist/cjs/peer/PeerSet.js.map +1 -1
- package/dist/cjs/protocol/DeviceCommissioner.d.ts.map +1 -1
- package/dist/cjs/protocol/DeviceCommissioner.js +1 -1
- package/dist/cjs/protocol/DeviceCommissioner.js.map +1 -1
- package/dist/cjs/protocol/ExchangeManager.d.ts +1 -1
- package/dist/cjs/protocol/ExchangeManager.d.ts.map +1 -1
- package/dist/cjs/protocol/ExchangeManager.js +2 -5
- package/dist/cjs/protocol/ExchangeManager.js.map +1 -1
- package/dist/cjs/protocol/ExchangeProvider.d.ts +4 -4
- package/dist/cjs/protocol/ExchangeProvider.d.ts.map +1 -1
- package/dist/cjs/protocol/ExchangeProvider.js +3 -3
- package/dist/cjs/protocol/ExchangeProvider.js.map +1 -1
- package/dist/cjs/protocol/MessageChannel.d.ts +5 -5
- package/dist/cjs/protocol/MessageChannel.d.ts.map +1 -1
- package/dist/cjs/protocol/MessageChannel.js +19 -15
- package/dist/cjs/protocol/MessageChannel.js.map +1 -1
- package/dist/cjs/protocol/MessageExchange.d.ts +6 -6
- package/dist/cjs/protocol/MessageExchange.d.ts.map +1 -1
- package/dist/cjs/protocol/MessageExchange.js +35 -33
- package/dist/cjs/protocol/MessageExchange.js.map +1 -1
- package/dist/cjs/securechannel/SecureChannelMessenger.d.ts +8 -8
- package/dist/cjs/securechannel/SecureChannelMessenger.d.ts.map +1 -1
- package/dist/cjs/securechannel/SecureChannelMessenger.js +17 -17
- package/dist/cjs/securechannel/SecureChannelMessenger.js.map +1 -1
- package/dist/cjs/session/InsecureSession.d.ts +2 -2
- package/dist/cjs/session/InsecureSession.d.ts.map +1 -1
- package/dist/cjs/session/InsecureSession.js.map +1 -1
- package/dist/cjs/session/NodeSession.js +3 -3
- package/dist/cjs/session/Session.d.ts +7 -7
- package/dist/cjs/session/Session.d.ts.map +1 -1
- package/dist/cjs/session/Session.js +19 -19
- package/dist/cjs/session/Session.js.map +1 -1
- package/dist/cjs/session/SessionIntervals.d.ts +7 -6
- package/dist/cjs/session/SessionIntervals.d.ts.map +1 -1
- package/dist/cjs/session/SessionIntervals.js +8 -8
- package/dist/cjs/session/SessionIntervals.js.map +1 -1
- package/dist/cjs/session/SessionManager.d.ts +2 -2
- package/dist/cjs/session/SessionManager.d.ts.map +1 -1
- package/dist/cjs/session/SessionManager.js +6 -6
- package/dist/cjs/session/SessionManager.js.map +1 -1
- package/dist/cjs/session/case/CaseClient.d.ts +2 -1
- package/dist/cjs/session/case/CaseClient.d.ts.map +1 -1
- package/dist/cjs/session/case/CaseClient.js +2 -2
- package/dist/cjs/session/case/CaseClient.js.map +1 -1
- package/dist/cjs/session/pase/PaseMessenger.d.ts.map +1 -1
- package/dist/cjs/session/pase/PaseMessenger.js +4 -7
- package/dist/cjs/session/pase/PaseMessenger.js.map +1 -1
- package/dist/cjs/session/pase/PaseServer.d.ts.map +1 -1
- package/dist/cjs/session/pase/PaseServer.js +1 -1
- package/dist/cjs/session/pase/PaseServer.js.map +1 -1
- package/dist/esm/action/Val.d.ts +6 -0
- package/dist/esm/action/Val.d.ts.map +1 -1
- package/dist/esm/action/Val.js.map +1 -1
- package/dist/esm/action/client/ClientInteraction.d.ts +1 -1
- package/dist/esm/action/client/ClientInteraction.d.ts.map +1 -1
- package/dist/esm/action/client/ClientInteraction.js +5 -5
- package/dist/esm/action/client/ClientInteraction.js.map +1 -1
- package/dist/esm/action/client/ClientSubscription.d.ts +2 -1
- package/dist/esm/action/client/ClientSubscription.d.ts.map +1 -1
- package/dist/esm/action/client/ClientSubscriptionHandler.js +2 -2
- package/dist/esm/action/client/ClientSubscriptionHandler.js.map +1 -1
- package/dist/esm/action/client/ClientSubscriptions.d.ts.map +1 -1
- package/dist/esm/action/client/ClientSubscriptions.js +14 -8
- package/dist/esm/action/client/ClientSubscriptions.js.map +1 -1
- package/dist/esm/action/request/Subscribe.d.ts +6 -6
- package/dist/esm/action/request/Subscribe.d.ts.map +1 -1
- package/dist/esm/action/request/Subscribe.js +12 -10
- package/dist/esm/action/request/Subscribe.js.map +1 -1
- package/dist/esm/advertisement/Advertisement.d.ts +3 -3
- package/dist/esm/advertisement/Advertisement.d.ts.map +1 -1
- package/dist/esm/advertisement/Advertisement.js +16 -7
- package/dist/esm/advertisement/Advertisement.js.map +1 -1
- package/dist/esm/advertisement/ble/BleAdvertisement.d.ts.map +1 -1
- package/dist/esm/advertisement/ble/BleAdvertisement.js +7 -6
- package/dist/esm/advertisement/ble/BleAdvertisement.js.map +1 -1
- package/dist/esm/advertisement/ble/BleAdvertiser.d.ts +11 -10
- package/dist/esm/advertisement/ble/BleAdvertiser.d.ts.map +1 -1
- package/dist/esm/advertisement/ble/BleAdvertiser.js +6 -6
- package/dist/esm/advertisement/ble/BleAdvertiser.js.map +1 -1
- package/dist/esm/advertisement/mdns/MdnsAdvertisement.d.ts.map +1 -1
- package/dist/esm/advertisement/mdns/MdnsAdvertisement.js +17 -8
- package/dist/esm/advertisement/mdns/MdnsAdvertisement.js.map +1 -1
- package/dist/esm/advertisement/mdns/MdnsAdvertiser.d.ts +2 -2
- package/dist/esm/advertisement/mdns/MdnsAdvertiser.d.ts.map +1 -1
- package/dist/esm/advertisement/mdns/MdnsAdvertiser.js +14 -6
- package/dist/esm/advertisement/mdns/MdnsAdvertiser.js.map +1 -1
- package/dist/esm/ble/Ble.d.ts +2 -2
- package/dist/esm/ble/Ble.d.ts.map +1 -1
- package/dist/esm/ble/Ble.js +5 -1
- package/dist/esm/ble/Ble.js.map +1 -1
- package/dist/esm/ble/BleConsts.d.ts +4 -4
- package/dist/esm/ble/BleConsts.d.ts.map +1 -1
- package/dist/esm/ble/BleConsts.js +8 -8
- package/dist/esm/ble/BleConsts.js.map +1 -1
- package/dist/esm/ble/BtpSessionHandler.js +4 -4
- package/dist/esm/ble/BtpSessionHandler.js.map +1 -1
- package/dist/esm/certificate/AttestationCertificateManager.js +3 -3
- package/dist/esm/certificate/AttestationCertificateManager.js.map +1 -1
- package/dist/esm/certificate/CertificateAuthority.js +2 -2
- package/dist/esm/certificate/CertificateAuthority.js.map +1 -1
- package/dist/esm/certificate/kinds/OperationalBase.js +2 -2
- package/dist/esm/certificate/kinds/OperationalBase.js.map +1 -1
- package/dist/esm/cluster/client/ClusterClient.js +5 -5
- package/dist/esm/cluster/client/ClusterClient.js.map +1 -1
- package/dist/esm/cluster/client/ClusterClientTypes.d.ts +3 -3
- package/dist/esm/cluster/client/ClusterClientTypes.d.ts.map +1 -1
- package/dist/esm/cluster/client/EventClient.d.ts +2 -1
- package/dist/esm/cluster/client/EventClient.d.ts.map +1 -1
- package/dist/esm/cluster/client/EventClient.js +3 -3
- package/dist/esm/cluster/client/EventClient.js.map +1 -1
- package/dist/esm/common/FailsafeContext.d.ts +4 -4
- package/dist/esm/common/FailsafeContext.d.ts.map +1 -1
- package/dist/esm/common/FailsafeContext.js +9 -8
- package/dist/esm/common/FailsafeContext.js.map +1 -1
- package/dist/esm/common/FailsafeTimer.d.ts +3 -3
- package/dist/esm/common/FailsafeTimer.d.ts.map +1 -1
- package/dist/esm/common/FailsafeTimer.js +8 -8
- package/dist/esm/common/FailsafeTimer.js.map +1 -1
- package/dist/esm/common/Scanner.d.ts +7 -7
- package/dist/esm/common/Scanner.d.ts.map +1 -1
- package/dist/esm/common/Scanner.js +5 -1
- package/dist/esm/common/Scanner.js.map +1 -1
- package/dist/esm/events/OccurrenceManager.js +1 -1
- package/dist/esm/events/OccurrenceManager.js.map +1 -1
- package/dist/esm/groups/FabricGroups.d.ts +1 -1
- package/dist/esm/groups/FabricGroups.js +1 -1
- package/dist/esm/groups/Groups.d.ts +1 -1
- package/dist/esm/groups/KeySets.d.ts +3 -3
- package/dist/esm/groups/KeySets.d.ts.map +1 -1
- package/dist/esm/groups/KeySets.js +13 -5
- package/dist/esm/groups/KeySets.js.map +1 -1
- package/dist/esm/interaction/InteractionClient.d.ts +9 -9
- package/dist/esm/interaction/InteractionClient.d.ts.map +1 -1
- package/dist/esm/interaction/InteractionClient.js +34 -33
- package/dist/esm/interaction/InteractionClient.js.map +1 -1
- package/dist/esm/interaction/InteractionMessenger.d.ts +10 -10
- package/dist/esm/interaction/InteractionMessenger.d.ts.map +1 -1
- package/dist/esm/interaction/InteractionMessenger.js +16 -15
- package/dist/esm/interaction/InteractionMessenger.js.map +1 -1
- package/dist/esm/interaction/Subscription.d.ts +3 -4
- package/dist/esm/interaction/Subscription.d.ts.map +1 -1
- package/dist/esm/interaction/Subscription.js +9 -12
- package/dist/esm/interaction/Subscription.js.map +1 -1
- package/dist/esm/interaction/SubscriptionClient.d.ts +3 -3
- package/dist/esm/interaction/SubscriptionClient.d.ts.map +1 -1
- package/dist/esm/interaction/SubscriptionClient.js +4 -4
- package/dist/esm/interaction/SubscriptionClient.js.map +1 -1
- package/dist/esm/mdns/MdnsClient.d.ts +9 -9
- package/dist/esm/mdns/MdnsClient.d.ts.map +1 -1
- package/dist/esm/mdns/MdnsClient.js +94 -82
- package/dist/esm/mdns/MdnsClient.js.map +1 -1
- package/dist/esm/mdns/MdnsServer.d.ts.map +1 -1
- package/dist/esm/mdns/MdnsServer.js +14 -9
- package/dist/esm/mdns/MdnsServer.js.map +1 -1
- package/dist/esm/peer/ControllerCommissioner.d.ts +2 -2
- package/dist/esm/peer/ControllerCommissioner.d.ts.map +1 -1
- package/dist/esm/peer/ControllerCommissioner.js +11 -8
- package/dist/esm/peer/ControllerCommissioner.js.map +1 -1
- package/dist/esm/peer/ControllerCommissioningFlow.d.ts.map +1 -1
- package/dist/esm/peer/ControllerCommissioningFlow.js +44 -35
- package/dist/esm/peer/ControllerCommissioningFlow.js.map +1 -1
- package/dist/esm/peer/ControllerDiscovery.d.ts +4 -4
- package/dist/esm/peer/ControllerDiscovery.d.ts.map +1 -1
- package/dist/esm/peer/ControllerDiscovery.js +20 -18
- package/dist/esm/peer/ControllerDiscovery.js.map +1 -1
- package/dist/esm/peer/InteractionQueue.d.ts.map +1 -1
- package/dist/esm/peer/InteractionQueue.js +3 -3
- package/dist/esm/peer/InteractionQueue.js.map +1 -1
- package/dist/esm/peer/PeerSet.d.ts +2 -2
- package/dist/esm/peer/PeerSet.d.ts.map +1 -1
- package/dist/esm/peer/PeerSet.js +29 -26
- package/dist/esm/peer/PeerSet.js.map +1 -1
- package/dist/esm/protocol/DeviceCommissioner.d.ts.map +1 -1
- package/dist/esm/protocol/DeviceCommissioner.js +2 -2
- package/dist/esm/protocol/DeviceCommissioner.js.map +1 -1
- package/dist/esm/protocol/ExchangeManager.d.ts +1 -1
- package/dist/esm/protocol/ExchangeManager.d.ts.map +1 -1
- package/dist/esm/protocol/ExchangeManager.js +3 -6
- package/dist/esm/protocol/ExchangeManager.js.map +1 -1
- package/dist/esm/protocol/ExchangeProvider.d.ts +4 -4
- package/dist/esm/protocol/ExchangeProvider.d.ts.map +1 -1
- package/dist/esm/protocol/ExchangeProvider.js +4 -4
- package/dist/esm/protocol/ExchangeProvider.js.map +1 -1
- package/dist/esm/protocol/MessageChannel.d.ts +5 -5
- package/dist/esm/protocol/MessageChannel.d.ts.map +1 -1
- package/dist/esm/protocol/MessageChannel.js +20 -16
- package/dist/esm/protocol/MessageChannel.js.map +1 -1
- package/dist/esm/protocol/MessageExchange.d.ts +6 -6
- package/dist/esm/protocol/MessageExchange.d.ts.map +1 -1
- package/dist/esm/protocol/MessageExchange.js +39 -34
- package/dist/esm/protocol/MessageExchange.js.map +1 -1
- package/dist/esm/securechannel/SecureChannelMessenger.d.ts +8 -8
- package/dist/esm/securechannel/SecureChannelMessenger.d.ts.map +1 -1
- package/dist/esm/securechannel/SecureChannelMessenger.js +18 -18
- package/dist/esm/securechannel/SecureChannelMessenger.js.map +1 -1
- package/dist/esm/session/InsecureSession.d.ts +2 -2
- package/dist/esm/session/InsecureSession.d.ts.map +1 -1
- package/dist/esm/session/InsecureSession.js.map +1 -1
- package/dist/esm/session/NodeSession.js +3 -3
- package/dist/esm/session/Session.d.ts +7 -7
- package/dist/esm/session/Session.d.ts.map +1 -1
- package/dist/esm/session/Session.js +27 -20
- package/dist/esm/session/Session.js.map +1 -1
- package/dist/esm/session/SessionIntervals.d.ts +7 -6
- package/dist/esm/session/SessionIntervals.d.ts.map +1 -1
- package/dist/esm/session/SessionIntervals.js +8 -8
- package/dist/esm/session/SessionIntervals.js.map +1 -1
- package/dist/esm/session/SessionManager.d.ts +2 -2
- package/dist/esm/session/SessionManager.d.ts.map +1 -1
- package/dist/esm/session/SessionManager.js +6 -6
- package/dist/esm/session/SessionManager.js.map +1 -1
- package/dist/esm/session/case/CaseClient.d.ts +2 -1
- package/dist/esm/session/case/CaseClient.d.ts.map +1 -1
- package/dist/esm/session/case/CaseClient.js +2 -2
- package/dist/esm/session/case/CaseClient.js.map +1 -1
- package/dist/esm/session/pase/PaseMessenger.d.ts.map +1 -1
- package/dist/esm/session/pase/PaseMessenger.js +5 -11
- package/dist/esm/session/pase/PaseMessenger.js.map +1 -1
- package/dist/esm/session/pase/PaseServer.d.ts.map +1 -1
- package/dist/esm/session/pase/PaseServer.js +2 -1
- package/dist/esm/session/pase/PaseServer.js.map +1 -1
- package/package.json +6 -6
- package/src/action/Val.ts +5 -0
- package/src/action/client/ClientInteraction.ts +4 -4
- package/src/action/client/ClientSubscription.ts +2 -1
- package/src/action/client/ClientSubscriptionHandler.ts +2 -2
- package/src/action/client/ClientSubscriptions.ts +14 -8
- package/src/action/request/Subscribe.ts +17 -15
- package/src/advertisement/Advertisement.ts +18 -8
- package/src/advertisement/ble/BleAdvertisement.ts +7 -6
- package/src/advertisement/ble/BleAdvertiser.ts +11 -11
- package/src/advertisement/mdns/MdnsAdvertisement.ts +20 -9
- package/src/advertisement/mdns/MdnsAdvertiser.ts +17 -7
- package/src/ble/Ble.ts +11 -2
- package/src/ble/BleConsts.ts +5 -5
- package/src/ble/BtpSessionHandler.ts +4 -4
- package/src/certificate/AttestationCertificateManager.ts +3 -3
- package/src/certificate/CertificateAuthority.ts +2 -2
- package/src/certificate/kinds/OperationalBase.ts +3 -3
- package/src/cluster/client/ClusterClient.ts +8 -8
- package/src/cluster/client/ClusterClientTypes.ts +3 -3
- package/src/cluster/client/EventClient.ts +5 -5
- package/src/common/FailsafeContext.ts +11 -13
- package/src/common/FailsafeTimer.ts +11 -13
- package/src/common/Scanner.ts +16 -7
- package/src/events/OccurrenceManager.ts +1 -1
- package/src/groups/FabricGroups.ts +1 -1
- package/src/groups/KeySets.ts +14 -6
- package/src/interaction/InteractionClient.ts +46 -44
- package/src/interaction/InteractionMessenger.ts +24 -22
- package/src/interaction/Subscription.ts +10 -14
- package/src/interaction/SubscriptionClient.ts +6 -6
- package/src/mdns/MdnsClient.ts +105 -82
- package/src/mdns/MdnsServer.ts +14 -9
- package/src/peer/ControllerCommissioner.ts +12 -9
- package/src/peer/ControllerCommissioningFlow.ts +48 -39
- package/src/peer/ControllerDiscovery.ts +22 -18
- package/src/peer/InteractionQueue.ts +3 -3
- package/src/peer/PeerSet.ts +34 -28
- package/src/protocol/DeviceCommissioner.ts +2 -2
- package/src/protocol/ExchangeManager.ts +3 -6
- package/src/protocol/ExchangeProvider.ts +6 -6
- package/src/protocol/MessageChannel.ts +26 -21
- package/src/protocol/MessageExchange.ts +42 -38
- package/src/securechannel/SecureChannelMessenger.ts +16 -22
- package/src/session/InsecureSession.ts +2 -2
- package/src/session/NodeSession.ts +3 -3
- package/src/session/Session.ts +31 -21
- package/src/session/SessionIntervals.ts +11 -11
- package/src/session/SessionManager.ts +10 -9
- package/src/session/case/CaseClient.ts +3 -3
- package/src/session/pase/PaseMessenger.ts +5 -11
- package/src/session/pase/PaseServer.ts +2 -1
|
@@ -4,7 +4,7 @@
|
|
|
4
4
|
* SPDX-License-Identifier: Apache-2.0
|
|
5
5
|
*/
|
|
6
6
|
import { Message } from "#codec/MessageCodec.js";
|
|
7
|
-
import { Bytes, Channel, MatterError } from "#general";
|
|
7
|
+
import { Bytes, Channel, Duration, MatterError } from "#general";
|
|
8
8
|
import type { ExchangeLogContext } from "#protocol/MessageExchange.js";
|
|
9
9
|
import { Session, SessionParameters } from "#session/Session.js";
|
|
10
10
|
export declare class ChannelNotConnectedError extends MatterError {
|
|
@@ -14,7 +14,7 @@ export declare class ChannelNotConnectedError extends MatterError {
|
|
|
14
14
|
* from chip implementation. This is basically the default used with different names, also kExpectedLowProcessingTime or
|
|
15
15
|
* kExpectedSigma1ProcessingTime.
|
|
16
16
|
*/
|
|
17
|
-
export declare const
|
|
17
|
+
export declare const DEFAULT_EXPECTED_PROCESSING_TIME: Duration;
|
|
18
18
|
export declare namespace MRP {
|
|
19
19
|
/**
|
|
20
20
|
* The maximum number of transmission attempts for a given reliable message. The sender MAY choose this value as it
|
|
@@ -30,7 +30,7 @@ export declare namespace MRP {
|
|
|
30
30
|
/** The number of retransmissions before transitioning from linear to exponential backoff. */
|
|
31
31
|
const BACKOFF_THRESHOLD = 1;
|
|
32
32
|
/** @see {@link MatterSpecification.v12.Core}, section 4.11.8 */
|
|
33
|
-
const
|
|
33
|
+
const STANDALONE_ACK_TIMEOUT: Duration;
|
|
34
34
|
}
|
|
35
35
|
export declare class MessageChannel implements Channel<Message> {
|
|
36
36
|
#private;
|
|
@@ -51,7 +51,7 @@ export declare class MessageChannel implements Channel<Message> {
|
|
|
51
51
|
send(message: Message, logContext?: ExchangeLogContext): Promise<void>;
|
|
52
52
|
get name(): string;
|
|
53
53
|
close(): Promise<void>;
|
|
54
|
-
|
|
54
|
+
calculateMaximumPeerResponseTime(sessionParameters: SessionParameters, expectedProcessingTime?: Duration): Duration;
|
|
55
55
|
/**
|
|
56
56
|
* Calculates the backoff time for a resubmission based on the current retransmission count.
|
|
57
57
|
* If no session parameters are provided, the parameters of the current session are used.
|
|
@@ -60,6 +60,6 @@ export declare class MessageChannel implements Channel<Message> {
|
|
|
60
60
|
*
|
|
61
61
|
* @see {@link MatterSpecification.v10.Core}, section 4.11.2.1
|
|
62
62
|
*/
|
|
63
|
-
getMrpResubmissionBackOffTime(retransmissionCount: number, sessionParameters?: SessionParameters):
|
|
63
|
+
getMrpResubmissionBackOffTime(retransmissionCount: number, sessionParameters?: SessionParameters): Duration;
|
|
64
64
|
}
|
|
65
65
|
//# sourceMappingURL=MessageChannel.d.ts.map
|
|
@@ -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;AAC/D,OAAO,EAAE,KAAK,EAAE,OAAO,EAAU,WAAW,
|
|
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;AAC/D,OAAO,EAAE,KAAK,EAAE,OAAO,EAAE,QAAQ,EAAU,WAAW,EAAoC,MAAM,UAAU,CAAC;AAC3G,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,8BAA8B,CAAC;AACvE,OAAO,EAAE,OAAO,EAAE,iBAAiB,EAAE,MAAM,qBAAqB,CAAC;AAIjE,qBAAa,wBAAyB,SAAQ,WAAW;CAAG;AAE5D;;;;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,aAAa,CAAC,EAAE,MAAM,OAAO,CAAC,IAAI,CAAC;IAKvC,IAAI,aAAa,CAAC,QAAQ,EAAE,MAAM,OAAO,CAAC,IAAI,CAAC,EAE9C;IAED,IAAI,OAAO,YAEV;IAED,4CAA4C;IAC5C,IAAI,UAAU,YAEb;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;IAEK,KAAK;IASX,gCAAgC,CAC5B,iBAAiB,EAAE,iBAAiB,EACpC,sBAAsB,WAAmC,GAC1D,QAAQ;IA2BX;;;;;;;OAOG;IACH,6BAA6B,CAAC,mBAAmB,EAAE,MAAM,EAAE,iBAAiB,CAAC,EAAE,iBAAiB;CA6BnG"}
|
|
@@ -4,12 +4,12 @@
|
|
|
4
4
|
* SPDX-License-Identifier: Apache-2.0
|
|
5
5
|
*/
|
|
6
6
|
import { MessageCodec } from "#codec/MessageCodec.js";
|
|
7
|
-
import { Logger, MatterError, MatterFlowError } from "#general";
|
|
7
|
+
import { Logger, MatterError, MatterFlowError, Millis, Seconds } from "#general";
|
|
8
8
|
const logger = new Logger("MessageChannel");
|
|
9
9
|
class ChannelNotConnectedError extends MatterError {
|
|
10
10
|
}
|
|
11
|
-
const
|
|
12
|
-
const
|
|
11
|
+
const DEFAULT_EXPECTED_PROCESSING_TIME = Seconds(2);
|
|
12
|
+
const PEER_RESPONSE_TIME_BUFFER = Seconds(5);
|
|
13
13
|
var MRP;
|
|
14
14
|
((MRP2) => {
|
|
15
15
|
MRP2.MAX_TRANSMISSIONS = 5;
|
|
@@ -17,7 +17,7 @@ var MRP;
|
|
|
17
17
|
MRP2.BACKOFF_JITTER = 0.25;
|
|
18
18
|
MRP2.BACKOFF_MARGIN = 1.1;
|
|
19
19
|
MRP2.BACKOFF_THRESHOLD = 1;
|
|
20
|
-
MRP2.
|
|
20
|
+
MRP2.STANDALONE_ACK_TIMEOUT = Millis(200);
|
|
21
21
|
})(MRP || (MRP = {}));
|
|
22
22
|
class MessageChannel {
|
|
23
23
|
// When the session is supporting MRP and the channel is not reliable, use MRP handling
|
|
@@ -70,17 +70,19 @@ class MessageChannel {
|
|
|
70
70
|
await this.#closeCallback?.();
|
|
71
71
|
}
|
|
72
72
|
}
|
|
73
|
-
|
|
73
|
+
calculateMaximumPeerResponseTime(sessionParameters, expectedProcessingTime = DEFAULT_EXPECTED_PROCESSING_TIME) {
|
|
74
74
|
switch (this.channel.type) {
|
|
75
75
|
case "tcp":
|
|
76
|
-
return
|
|
76
|
+
return Millis(Seconds(30) + PEER_RESPONSE_TIME_BUFFER);
|
|
77
77
|
case "udp":
|
|
78
78
|
if (!this.usesMrp) {
|
|
79
79
|
throw new MatterFlowError("No response expected for this message exchange because UDP and no MRP.");
|
|
80
80
|
}
|
|
81
|
-
return
|
|
81
|
+
return Millis(
|
|
82
|
+
this.#calculateMrpMaximumPeerResponseTime(sessionParameters, expectedProcessingTime) + PEER_RESPONSE_TIME_BUFFER
|
|
83
|
+
);
|
|
82
84
|
case "ble":
|
|
83
|
-
return
|
|
85
|
+
return Millis(Seconds(30) + PEER_RESPONSE_TIME_BUFFER);
|
|
84
86
|
default:
|
|
85
87
|
throw new MatterFlowError(
|
|
86
88
|
`Can not calculate expected timeout for unknown channel type: ${this.channel.type}`
|
|
@@ -96,23 +98,25 @@ class MessageChannel {
|
|
|
96
98
|
* @see {@link MatterSpecification.v10.Core}, section 4.11.2.1
|
|
97
99
|
*/
|
|
98
100
|
getMrpResubmissionBackOffTime(retransmissionCount, sessionParameters) {
|
|
99
|
-
const {
|
|
100
|
-
const baseInterval = sessionParameters !== void 0 || this.session.isPeerActive() ?
|
|
101
|
-
return
|
|
102
|
-
|
|
101
|
+
const { activeInterval, idleInterval } = sessionParameters ?? this.session.parameters;
|
|
102
|
+
const baseInterval = sessionParameters !== void 0 || this.session.isPeerActive() ? activeInterval : idleInterval;
|
|
103
|
+
return Millis.floor(
|
|
104
|
+
Millis(
|
|
105
|
+
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)
|
|
106
|
+
)
|
|
103
107
|
);
|
|
104
108
|
}
|
|
105
|
-
#calculateMrpMaximumPeerResponseTime(sessionParameters,
|
|
106
|
-
let finalWaitTime =
|
|
109
|
+
#calculateMrpMaximumPeerResponseTime(sessionParameters, expectedProcessingTime = DEFAULT_EXPECTED_PROCESSING_TIME) {
|
|
110
|
+
let finalWaitTime = expectedProcessingTime;
|
|
107
111
|
for (let i = 0; i < MRP.MAX_TRANSMISSIONS; i++) {
|
|
108
|
-
finalWaitTime
|
|
112
|
+
finalWaitTime = Millis(finalWaitTime + this.getMrpResubmissionBackOffTime(i, sessionParameters));
|
|
109
113
|
}
|
|
110
114
|
return finalWaitTime;
|
|
111
115
|
}
|
|
112
116
|
}
|
|
113
117
|
export {
|
|
114
118
|
ChannelNotConnectedError,
|
|
115
|
-
|
|
119
|
+
DEFAULT_EXPECTED_PROCESSING_TIME,
|
|
116
120
|
MRP,
|
|
117
121
|
MessageChannel
|
|
118
122
|
};
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"version": 3,
|
|
3
3
|
"sources": ["../../../src/protocol/MessageChannel.ts"],
|
|
4
|
-
"mappings": "AAAA;AAAA;AAAA;AAAA;AAAA;AAMA,SAAkB,oBAAoB;AACtC,
|
|
4
|
+
"mappings": "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",
|
|
5
5
|
"names": ["MRP"]
|
|
6
6
|
}
|
|
@@ -4,7 +4,7 @@
|
|
|
4
4
|
* SPDX-License-Identifier: Apache-2.0
|
|
5
5
|
*/
|
|
6
6
|
import { Message } from "#codec/MessageCodec.js";
|
|
7
|
-
import { AsyncObservable, Bytes, MatterError, NoResponseTimeoutError } from "#general";
|
|
7
|
+
import { AsyncObservable, Bytes, Duration, MatterError, NoResponseTimeoutError } from "#general";
|
|
8
8
|
import { MessageChannel } from "#protocol/MessageChannel.js";
|
|
9
9
|
import { SessionParameters } from "#session/Session.js";
|
|
10
10
|
import { NodeId } from "#types";
|
|
@@ -30,7 +30,7 @@ export type ExchangeSendOptions = {
|
|
|
30
30
|
* Defined an expected processing time by the responder for the message. This is used to calculate the final
|
|
31
31
|
* timeout for responses together with the normal retransmission logic when MRP is used.
|
|
32
32
|
*/
|
|
33
|
-
|
|
33
|
+
expectedProcessingTime?: Duration;
|
|
34
34
|
/** Allows to specify if the send message requires to be acknowledged by the receiver or not. */
|
|
35
35
|
requiresAck?: boolean;
|
|
36
36
|
/** Use the provided acknowledge MessageId instead checking the latest to send one */
|
|
@@ -85,12 +85,12 @@ export declare class MessageExchange {
|
|
|
85
85
|
onMessageReceived(message: Message, duplicate?: boolean): Promise<void>;
|
|
86
86
|
send(messageType: number, payload: Bytes, options?: ExchangeSendOptions): Promise<void>;
|
|
87
87
|
nextMessage(options?: {
|
|
88
|
-
|
|
89
|
-
|
|
88
|
+
expectedProcessingTime?: Duration;
|
|
89
|
+
timeout?: Duration;
|
|
90
90
|
}): Promise<Message>;
|
|
91
|
-
calculateMaximumPeerResponseTimeMs(expectedProcessingTimeMs?:
|
|
91
|
+
calculateMaximumPeerResponseTimeMs(expectedProcessingTimeMs?: Duration): Duration;
|
|
92
92
|
destroy(): Promise<void>;
|
|
93
|
-
startTimedInteraction(
|
|
93
|
+
startTimedInteraction(timeout: Duration): void;
|
|
94
94
|
clearTimedInteraction(): void;
|
|
95
95
|
hasTimedInteraction(): boolean;
|
|
96
96
|
hasActiveTimedInteraction(): boolean;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"MessageExchange.d.ts","sourceRoot":"","sources":["../../../src/protocol/MessageExchange.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO,EAAE,OAAO,EAA2C,MAAM,wBAAwB,CAAC;AAC1F,OAAO,EACH,eAAe,EACf,KAAK,
|
|
1
|
+
{"version":3,"file":"MessageExchange.d.ts","sourceRoot":"","sources":["../../../src/protocol/MessageExchange.ts"],"names":[],"mappings":"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"}
|
|
@@ -10,16 +10,19 @@ import {
|
|
|
10
10
|
CRYPTO_AEAD_MIC_LENGTH_BYTES,
|
|
11
11
|
DataReadQueue,
|
|
12
12
|
Diagnostic,
|
|
13
|
+
Duration,
|
|
14
|
+
Instant,
|
|
13
15
|
InternalError,
|
|
14
16
|
Logger,
|
|
15
17
|
MatterError,
|
|
16
18
|
MatterFlowError,
|
|
19
|
+
Millis,
|
|
17
20
|
NoResponseTimeoutError,
|
|
18
21
|
Time
|
|
19
22
|
} from "#general";
|
|
20
23
|
import {
|
|
21
24
|
ChannelNotConnectedError,
|
|
22
|
-
|
|
25
|
+
DEFAULT_EXPECTED_PROCESSING_TIME,
|
|
23
26
|
MRP
|
|
24
27
|
} from "#protocol/MessageChannel.js";
|
|
25
28
|
import { GroupSession } from "#session/GroupSession.js";
|
|
@@ -53,10 +56,10 @@ class MessageExchange {
|
|
|
53
56
|
this.#peerNodeId = peerNodeId;
|
|
54
57
|
this.#exchangeId = exchangeId;
|
|
55
58
|
this.#protocolId = protocolId;
|
|
56
|
-
const {
|
|
57
|
-
this.#
|
|
58
|
-
this.#
|
|
59
|
-
this.#
|
|
59
|
+
const { activeInterval, idleInterval, activeThreshold } = SessionIntervals(session.parameters);
|
|
60
|
+
this.#activeInterval = activeInterval;
|
|
61
|
+
this.#idleInterval = idleInterval;
|
|
62
|
+
this.#activeThreshold = activeThreshold;
|
|
60
63
|
this.#used = !isInitiator;
|
|
61
64
|
logger.debug(
|
|
62
65
|
"New exchange",
|
|
@@ -66,9 +69,9 @@ class MessageExchange {
|
|
|
66
69
|
exId: this.#exchangeId,
|
|
67
70
|
sess: session.name,
|
|
68
71
|
peerSess: this.#peerSessionId,
|
|
69
|
-
SAT: this.#
|
|
70
|
-
SAI: this.#
|
|
71
|
-
SII: this.#
|
|
72
|
+
SAT: this.#activeThreshold,
|
|
73
|
+
SAI: this.#activeInterval,
|
|
74
|
+
SII: this.#idleInterval,
|
|
72
75
|
maxTrans: MRP.MAX_TRANSMISSIONS,
|
|
73
76
|
exchangeFlags: Diagnostic.asFlags({
|
|
74
77
|
MRP: this.channel.usesMrp,
|
|
@@ -107,12 +110,12 @@ class MessageExchange {
|
|
|
107
110
|
session.isSecure
|
|
108
111
|
);
|
|
109
112
|
}
|
|
110
|
-
#
|
|
111
|
-
#
|
|
112
|
-
#
|
|
113
|
+
#activeInterval;
|
|
114
|
+
#idleInterval;
|
|
115
|
+
#activeThreshold;
|
|
113
116
|
#messagesQueue = new DataReadQueue();
|
|
114
117
|
#receivedMessageToAck;
|
|
115
|
-
#receivedMessageAckTimer = Time.getTimer("Ack receipt timeout", MRP.
|
|
118
|
+
#receivedMessageAckTimer = Time.getTimer("Ack receipt timeout", MRP.STANDALONE_ACK_TIMEOUT, () => {
|
|
116
119
|
if (this.#receivedMessageToAck !== void 0) {
|
|
117
120
|
const messageToAck = this.#receivedMessageToAck;
|
|
118
121
|
this.#receivedMessageToAck = void 0;
|
|
@@ -246,7 +249,7 @@ class MessageExchange {
|
|
|
246
249
|
const {
|
|
247
250
|
expectAckOnly = false,
|
|
248
251
|
disableMrpLogic,
|
|
249
|
-
|
|
252
|
+
expectedProcessingTime = DEFAULT_EXPECTED_PROCESSING_TIME,
|
|
250
253
|
requiresAck,
|
|
251
254
|
includeAcknowledgeMessageId,
|
|
252
255
|
logContext
|
|
@@ -328,7 +331,7 @@ class MessageExchange {
|
|
|
328
331
|
this.#retransmissionTimer = Time.getTimer(
|
|
329
332
|
`Message retransmission ${message.packetHeader.messageId}`,
|
|
330
333
|
this.channel.getMrpResubmissionBackOffTime(0),
|
|
331
|
-
() => this.#retransmitMessage(message,
|
|
334
|
+
() => this.#retransmitMessage(message, expectedProcessingTime)
|
|
332
335
|
);
|
|
333
336
|
const { promise, resolver, rejecter } = createPromise();
|
|
334
337
|
ackPromise = promise;
|
|
@@ -352,32 +355,34 @@ class MessageExchange {
|
|
|
352
355
|
}
|
|
353
356
|
nextMessage(options) {
|
|
354
357
|
let timeout;
|
|
355
|
-
if (options?.
|
|
356
|
-
timeout = options.
|
|
358
|
+
if (options?.timeout !== void 0) {
|
|
359
|
+
timeout = options.timeout;
|
|
357
360
|
} else if (this.#messagesQueue.size > 0) {
|
|
358
|
-
timeout =
|
|
361
|
+
timeout = Instant;
|
|
359
362
|
} else {
|
|
360
|
-
timeout = this.channel.
|
|
363
|
+
timeout = this.channel.calculateMaximumPeerResponseTime(
|
|
361
364
|
this.context.localSessionParameters,
|
|
362
|
-
options?.
|
|
365
|
+
options?.expectedProcessingTime
|
|
363
366
|
);
|
|
364
367
|
}
|
|
365
368
|
return this.#messagesQueue.read(timeout);
|
|
366
369
|
}
|
|
367
|
-
calculateMaximumPeerResponseTimeMs(expectedProcessingTimeMs =
|
|
368
|
-
return this.channel.
|
|
370
|
+
calculateMaximumPeerResponseTimeMs(expectedProcessingTimeMs = DEFAULT_EXPECTED_PROCESSING_TIME) {
|
|
371
|
+
return this.channel.calculateMaximumPeerResponseTime(
|
|
369
372
|
this.context.localSessionParameters,
|
|
370
373
|
expectedProcessingTimeMs
|
|
371
374
|
);
|
|
372
375
|
}
|
|
373
|
-
#retransmitMessage(message,
|
|
376
|
+
#retransmitMessage(message, expectedProcessingTime) {
|
|
374
377
|
this.#retransmissionCounter++;
|
|
375
378
|
if (this.#retransmissionCounter >= MRP.MAX_TRANSMISSIONS) {
|
|
376
|
-
if (
|
|
377
|
-
const finalWaitTime =
|
|
378
|
-
this.
|
|
379
|
-
|
|
380
|
-
|
|
379
|
+
if (expectedProcessingTime) {
|
|
380
|
+
const finalWaitTime = Millis(
|
|
381
|
+
this.channel.calculateMaximumPeerResponseTime(
|
|
382
|
+
this.context.localSessionParameters,
|
|
383
|
+
expectedProcessingTime
|
|
384
|
+
) - (this.#retransmissionTimer?.interval ?? Instant)
|
|
385
|
+
);
|
|
381
386
|
if (finalWaitTime > 0) {
|
|
382
387
|
this.#retransmissionCounter--;
|
|
383
388
|
logger.debug(
|
|
@@ -408,12 +413,12 @@ class MessageExchange {
|
|
|
408
413
|
logger.debug(
|
|
409
414
|
`Resubmit message ${message.packetHeader.messageId} (retransmission attempt ${this.#retransmissionCounter}, backoff time ${resubmissionBackoffTime}ms))`
|
|
410
415
|
);
|
|
411
|
-
this.channel.send(message).then(() => this.#initializeResubmission(message, resubmissionBackoffTime,
|
|
416
|
+
this.channel.send(message).then(() => this.#initializeResubmission(message, resubmissionBackoffTime, expectedProcessingTime)).catch((error) => {
|
|
412
417
|
logger.error("An error happened when retransmitting a message", error);
|
|
413
418
|
if (error instanceof ChannelNotConnectedError) {
|
|
414
419
|
this.#close().catch((error2) => logger.error("An error happened when closing the exchange", error2));
|
|
415
420
|
} else {
|
|
416
|
-
this.#initializeResubmission(message, resubmissionBackoffTime,
|
|
421
|
+
this.#initializeResubmission(message, resubmissionBackoffTime, expectedProcessingTime);
|
|
417
422
|
}
|
|
418
423
|
});
|
|
419
424
|
}
|
|
@@ -437,7 +442,7 @@ class MessageExchange {
|
|
|
437
442
|
}
|
|
438
443
|
await this.#close();
|
|
439
444
|
}
|
|
440
|
-
startTimedInteraction(
|
|
445
|
+
startTimedInteraction(timeout) {
|
|
441
446
|
if (this.#timedInteractionTimer !== void 0 && this.#timedInteractionTimer.isRunning) {
|
|
442
447
|
this.#timedInteractionTimer.stop();
|
|
443
448
|
throw new StatusResponseError(
|
|
@@ -446,9 +451,9 @@ class MessageExchange {
|
|
|
446
451
|
);
|
|
447
452
|
}
|
|
448
453
|
logger.debug(
|
|
449
|
-
`Starting timed interaction with Transaction ID ${this.#exchangeId} for ${
|
|
454
|
+
`Starting timed interaction with Transaction ID ${this.#exchangeId} for ${Duration.format(timeout)} from ${this.channel.name}`
|
|
450
455
|
);
|
|
451
|
-
this.#timedInteractionTimer = Time.getTimer("Timed interaction",
|
|
456
|
+
this.#timedInteractionTimer = Time.getTimer("Timed interaction", timeout, () => {
|
|
452
457
|
logger.debug(
|
|
453
458
|
`Timed interaction with Transaction ID ${this.#exchangeId} from ${this.channel.name} timed out`
|
|
454
459
|
);
|
|
@@ -504,9 +509,9 @@ class MessageExchange {
|
|
|
504
509
|
} else if (this.#sentMessageToAck === void 0 || force) {
|
|
505
510
|
return this.#close();
|
|
506
511
|
}
|
|
507
|
-
let maxResubmissionTime =
|
|
512
|
+
let maxResubmissionTime = Instant;
|
|
508
513
|
for (let i = this.#retransmissionCounter; i <= MRP.MAX_TRANSMISSIONS; i++) {
|
|
509
|
-
maxResubmissionTime
|
|
514
|
+
maxResubmissionTime = Millis(maxResubmissionTime + this.channel.getMrpResubmissionBackOffTime(i));
|
|
510
515
|
}
|
|
511
516
|
this.#closeTimer = Time.getTimer(
|
|
512
517
|
`Message exchange cleanup ${this.session.name} / ${this.#exchangeId}`,
|
|
@@ -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": ["messageType", "error"]
|
|
6
6
|
}
|
|
@@ -3,7 +3,7 @@
|
|
|
3
3
|
* Copyright 2022-2025 Matter.js Authors
|
|
4
4
|
* SPDX-License-Identifier: Apache-2.0
|
|
5
5
|
*/
|
|
6
|
-
import { MatterError } from "#general";
|
|
6
|
+
import { Duration, MatterError } from "#general";
|
|
7
7
|
import { GeneralStatusCode, SecureChannelStatusCode, TlvSchema } from "#types";
|
|
8
8
|
import { Message } from "../codec/MessageCodec.js";
|
|
9
9
|
import { ExchangeSendOptions, MessageExchange } from "../protocol/MessageExchange.js";
|
|
@@ -14,28 +14,28 @@ export declare class ChannelStatusResponseError extends MatterError {
|
|
|
14
14
|
constructor(message: string, generalStatusCode: GeneralStatusCode, protocolStatusCode: SecureChannelStatusCode);
|
|
15
15
|
}
|
|
16
16
|
/** This value is used by chip SDK when performance wise heavy crypto operations are expected. */
|
|
17
|
-
export declare const
|
|
17
|
+
export declare const EXPECTED_CRYPTO_PROCESSING_TIME: Duration;
|
|
18
18
|
/** This value is used by chip SDK when normal processing time is expected. */
|
|
19
|
-
export declare const
|
|
19
|
+
export declare const DEFAULT_NORMAL_PROCESSING_TIME: Duration;
|
|
20
20
|
export declare class SecureChannelMessenger {
|
|
21
21
|
#private;
|
|
22
22
|
protected readonly exchange: MessageExchange;
|
|
23
|
-
constructor(exchange: MessageExchange,
|
|
23
|
+
constructor(exchange: MessageExchange, defaultExpectedProcessingTime?: Duration);
|
|
24
24
|
get channel(): import("../index.js").MessageChannel;
|
|
25
|
-
nextMessage(expectedMessageType: number, expectedProcessingTimeMs?:
|
|
26
|
-
anyNextMessage(expectedMessageInfo: string,
|
|
25
|
+
nextMessage(expectedMessageType: number, expectedProcessingTimeMs?: Duration, expectedMessageInfo?: string): Promise<Message>;
|
|
26
|
+
anyNextMessage(expectedMessageInfo: string, expectedProcessingTime?: Duration): Promise<Message>;
|
|
27
27
|
/**
|
|
28
28
|
* Waits for the next message and decodes it.
|
|
29
29
|
*
|
|
30
30
|
* When no expectedProcessingTimeMs is provided, the default value of EXPECTED_CRYPTO_PROCESSING_TIME_MS is used.
|
|
31
31
|
*/
|
|
32
|
-
nextMessageDecoded<T>(expectedMessageType: number, schema: TlvSchema<T>,
|
|
32
|
+
nextMessageDecoded<T>(expectedMessageType: number, schema: TlvSchema<T>, expectedProcessingTime?: Duration): Promise<T>;
|
|
33
33
|
/**
|
|
34
34
|
* Waits for the next message and returns it.
|
|
35
35
|
*
|
|
36
36
|
* When no expectedProcessingTimeMs is provided, the default value of EXPECTED_CRYPTO_PROCESSING_TIME_MS is used.
|
|
37
37
|
*/
|
|
38
|
-
waitForSuccess(expectedMessageInfo: string,
|
|
38
|
+
waitForSuccess(expectedMessageInfo: string, expectedProcessingTime?: Duration): Promise<void>;
|
|
39
39
|
/**
|
|
40
40
|
* Sends a message of the given type with the given payload.
|
|
41
41
|
*
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"SecureChannelMessenger.d.ts","sourceRoot":"","sources":["../../../src/securechannel/SecureChannelMessenger.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO,EAAc,WAAW,
|
|
1
|
+
{"version":3,"file":"SecureChannelMessenger.d.ts","sourceRoot":"","sources":["../../../src/securechannel/SecureChannelMessenger.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO,EAAc,QAAQ,EAAE,WAAW,EAAgC,MAAM,UAAU,CAAC;AAC3F,OAAO,EAAE,iBAAiB,EAAE,uBAAuB,EAAqB,SAAS,EAAE,MAAM,QAAQ,CAAC;AAClG,OAAO,EAAE,OAAO,EAAE,MAAM,0BAA0B,CAAC;AACnD,OAAO,EAAE,mBAAmB,EAAE,eAAe,EAAE,MAAM,gCAAgC,CAAC;AAGtF,+EAA+E;AAC/E,qBAAa,0BAA2B,SAAQ,WAAW;aAGnC,iBAAiB,EAAE,iBAAiB;aACpC,kBAAkB,EAAE,uBAAuB;gBAF3D,OAAO,EAAE,MAAM,EACC,iBAAiB,EAAE,iBAAiB,EACpC,kBAAkB,EAAE,uBAAuB;CAMlE;AAED,iGAAiG;AACjG,eAAO,MAAM,+BAA+B,UAAc,CAAC;AAE3D,8EAA8E;AAC9E,eAAO,MAAM,8BAA8B,UAAa,CAAC;AAEzD,qBAAa,sBAAsB;;IAI3B,SAAS,CAAC,QAAQ,CAAC,QAAQ,EAAE,eAAe;gBAAzB,QAAQ,EAAE,eAAe,EAC5C,6BAA6B,WAAkC;IAKnE,IAAI,OAAO,yCAEV;IAEK,WAAW,CACb,mBAAmB,EAAE,MAAM,EAC3B,wBAAwB,WAAsC,EAC9D,mBAAmB,CAAC,EAAE,MAAM;IAK1B,cAAc,CAAC,mBAAmB,EAAE,MAAM,EAAE,sBAAsB,WAAsC;IA2B9G;;;;OAIG;IACG,kBAAkB,CAAC,CAAC,EACtB,mBAAmB,EAAE,MAAM,EAC3B,MAAM,EAAE,SAAS,CAAC,CAAC,CAAC,EACpB,sBAAsB,WAAsC;IAKhE;;;;OAIG;IACG,cAAc,CAAC,mBAAmB,EAAE,MAAM,EAAE,sBAAsB,WAAsC;IAK9G;;;;;OAKG;IACG,IAAI,CAAC,CAAC,EAAE,OAAO,EAAE,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,MAAM,EAAE,SAAS,CAAC,CAAC,CAAC,EAAE,OAAO,CAAC,EAAE,mBAAmB;IAU3F,SAAS,CAAC,IAAI,EAAE,uBAAuB;IAIvC,WAAW;IAIX,gBAAgB;IAIhB,cAAc;IAIR,KAAK;IAyBX,SAAS,CAAC,wBAAwB,CAAC,OAAO,EAAE,OAAO,EAAE,OAAO,CAAC,EAAE,MAAM;CAuBxE"}
|
|
@@ -3,7 +3,7 @@
|
|
|
3
3
|
* Copyright 2022-2025 Matter.js Authors
|
|
4
4
|
* SPDX-License-Identifier: Apache-2.0
|
|
5
5
|
*/
|
|
6
|
-
import { Diagnostic, MatterError, UnexpectedDataError } from "#general";
|
|
6
|
+
import { Diagnostic, MatterError, Seconds, UnexpectedDataError } from "#general";
|
|
7
7
|
import { GeneralStatusCode, SecureChannelStatusCode, SecureMessageType } from "#types";
|
|
8
8
|
import { SecureChannelStatusMessage } from "./SecureChannelStatusMessageSchema.js";
|
|
9
9
|
class ChannelStatusResponseError extends MatterError {
|
|
@@ -15,30 +15,30 @@ class ChannelStatusResponseError extends MatterError {
|
|
|
15
15
|
this.protocolStatusCode = protocolStatusCode;
|
|
16
16
|
}
|
|
17
17
|
}
|
|
18
|
-
const
|
|
19
|
-
const
|
|
18
|
+
const EXPECTED_CRYPTO_PROCESSING_TIME = Seconds(30);
|
|
19
|
+
const DEFAULT_NORMAL_PROCESSING_TIME = Seconds(2);
|
|
20
20
|
class SecureChannelMessenger {
|
|
21
|
-
constructor(exchange,
|
|
21
|
+
constructor(exchange, defaultExpectedProcessingTime = EXPECTED_CRYPTO_PROCESSING_TIME) {
|
|
22
22
|
this.exchange = exchange;
|
|
23
|
-
this.#
|
|
23
|
+
this.#defaultExpectedProcessingTime = defaultExpectedProcessingTime;
|
|
24
24
|
}
|
|
25
|
-
#
|
|
25
|
+
#defaultExpectedProcessingTime;
|
|
26
26
|
get channel() {
|
|
27
27
|
return this.exchange.channel;
|
|
28
28
|
}
|
|
29
|
-
async nextMessage(expectedMessageType, expectedProcessingTimeMs = this.#
|
|
29
|
+
async nextMessage(expectedMessageType, expectedProcessingTimeMs = this.#defaultExpectedProcessingTime, expectedMessageInfo) {
|
|
30
30
|
return this.#nextMessage(expectedMessageType, expectedProcessingTimeMs, expectedMessageInfo);
|
|
31
31
|
}
|
|
32
|
-
async anyNextMessage(expectedMessageInfo,
|
|
33
|
-
return this.#nextMessage(void 0,
|
|
32
|
+
async anyNextMessage(expectedMessageInfo, expectedProcessingTime = this.#defaultExpectedProcessingTime) {
|
|
33
|
+
return this.#nextMessage(void 0, expectedProcessingTime, expectedMessageInfo);
|
|
34
34
|
}
|
|
35
35
|
/**
|
|
36
36
|
* Waits for the next message and returns it.
|
|
37
37
|
*
|
|
38
38
|
* When no expectedProcessingTimeMs is provided, the default value of EXPECTED_CRYPTO_PROCESSING_TIME_MS is used.
|
|
39
39
|
*/
|
|
40
|
-
async #nextMessage(expectedMessageType,
|
|
41
|
-
const message = await this.exchange.nextMessage({
|
|
40
|
+
async #nextMessage(expectedMessageType, expectedProcessingTime = this.#defaultExpectedProcessingTime, expectedMessageInfo) {
|
|
41
|
+
const message = await this.exchange.nextMessage({ expectedProcessingTime });
|
|
42
42
|
const messageType = message.payloadHeader.messageType;
|
|
43
43
|
if (expectedMessageType !== void 0 && expectedMessageInfo === void 0) {
|
|
44
44
|
expectedMessageInfo = SecureMessageType[expectedMessageType];
|
|
@@ -55,16 +55,16 @@ class SecureChannelMessenger {
|
|
|
55
55
|
*
|
|
56
56
|
* When no expectedProcessingTimeMs is provided, the default value of EXPECTED_CRYPTO_PROCESSING_TIME_MS is used.
|
|
57
57
|
*/
|
|
58
|
-
async nextMessageDecoded(expectedMessageType, schema,
|
|
59
|
-
return schema.decode((await this.nextMessage(expectedMessageType,
|
|
58
|
+
async nextMessageDecoded(expectedMessageType, schema, expectedProcessingTime = this.#defaultExpectedProcessingTime) {
|
|
59
|
+
return schema.decode((await this.nextMessage(expectedMessageType, expectedProcessingTime)).payload);
|
|
60
60
|
}
|
|
61
61
|
/**
|
|
62
62
|
* Waits for the next message and returns it.
|
|
63
63
|
*
|
|
64
64
|
* When no expectedProcessingTimeMs is provided, the default value of EXPECTED_CRYPTO_PROCESSING_TIME_MS is used.
|
|
65
65
|
*/
|
|
66
|
-
async waitForSuccess(expectedMessageInfo,
|
|
67
|
-
await this.nextMessage(SecureMessageType.StatusReport,
|
|
66
|
+
async waitForSuccess(expectedMessageInfo, expectedProcessingTime = this.#defaultExpectedProcessingTime) {
|
|
67
|
+
await this.nextMessage(SecureMessageType.StatusReport, expectedProcessingTime, expectedMessageInfo);
|
|
68
68
|
}
|
|
69
69
|
/**
|
|
70
70
|
* Sends a message of the given type with the given payload.
|
|
@@ -75,7 +75,7 @@ class SecureChannelMessenger {
|
|
|
75
75
|
async send(message, type, schema, options) {
|
|
76
76
|
options = {
|
|
77
77
|
...options,
|
|
78
|
-
|
|
78
|
+
expectedProcessingTime: options?.expectedProcessingTime ?? this.#defaultExpectedProcessingTime
|
|
79
79
|
};
|
|
80
80
|
const payload = schema.encode(message);
|
|
81
81
|
await this.exchange.send(type, payload, options);
|
|
@@ -137,8 +137,8 @@ class SecureChannelMessenger {
|
|
|
137
137
|
}
|
|
138
138
|
export {
|
|
139
139
|
ChannelStatusResponseError,
|
|
140
|
-
|
|
141
|
-
|
|
140
|
+
DEFAULT_NORMAL_PROCESSING_TIME,
|
|
141
|
+
EXPECTED_CRYPTO_PROCESSING_TIME,
|
|
142
142
|
SecureChannelMessenger
|
|
143
143
|
};
|
|
144
144
|
//# sourceMappingURL=SecureChannelMessenger.js.map
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"version": 3,
|
|
3
3
|
"sources": ["../../../src/securechannel/SecureChannelMessenger.ts"],
|
|
4
|
-
"mappings": "AAAA;AAAA;AAAA;AAAA;AAAA;AAMA,SAAS,
|
|
4
|
+
"mappings": "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",
|
|
5
5
|
"names": []
|
|
6
6
|
}
|
|
@@ -3,7 +3,7 @@
|
|
|
3
3
|
* Copyright 2022-2025 Matter.js Authors
|
|
4
4
|
* SPDX-License-Identifier: Apache-2.0
|
|
5
5
|
*/
|
|
6
|
-
import { Crypto } from "#general";
|
|
6
|
+
import { Bytes, Crypto } from "#general";
|
|
7
7
|
import { NodeId } from "#types";
|
|
8
8
|
import { DecodedMessage, DecodedPacket, Message, Packet, SessionType } from "../codec/MessageCodec.js";
|
|
9
9
|
import { Fabric } from "../fabric/Fabric.js";
|
|
@@ -28,7 +28,7 @@ export declare class InsecureSession extends Session {
|
|
|
28
28
|
get isPase(): boolean;
|
|
29
29
|
decode(packet: DecodedPacket): DecodedMessage;
|
|
30
30
|
encode(message: Message): Packet;
|
|
31
|
-
get attestationChallengeKey():
|
|
31
|
+
get attestationChallengeKey(): Bytes;
|
|
32
32
|
setFabric(_fabric: Fabric): void;
|
|
33
33
|
get name(): string;
|
|
34
34
|
get id(): number;
|