@matter/protocol 0.16.0-alpha.0-20251213-e83db3732 → 0.16.0-alpha.0-20251217-038f88085
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/LICENSE +1 -1
- package/dist/cjs/action/client/ClientInteraction.d.ts +12 -5
- package/dist/cjs/action/client/ClientInteraction.d.ts.map +1 -1
- package/dist/cjs/action/client/ClientInteraction.js +39 -15
- package/dist/cjs/action/client/ClientInteraction.js.map +1 -1
- package/dist/cjs/action/client/ClientRead.d.ts +10 -0
- package/dist/cjs/action/client/ClientRead.d.ts.map +1 -0
- package/dist/cjs/action/client/ClientRead.js +22 -0
- package/dist/cjs/action/client/ClientRead.js.map +6 -0
- package/dist/cjs/action/client/ClientRequest.d.ts +20 -0
- package/dist/cjs/action/client/ClientRequest.d.ts.map +1 -0
- package/dist/cjs/action/client/ClientRequest.js +22 -0
- package/dist/cjs/action/client/ClientRequest.js.map +6 -0
- package/dist/cjs/action/client/ClientWrite.d.ts +10 -0
- package/dist/cjs/action/client/ClientWrite.d.ts.map +1 -0
- package/dist/cjs/action/client/ClientWrite.js +22 -0
- package/dist/cjs/action/client/ClientWrite.js.map +6 -0
- package/dist/cjs/action/client/QueuedClientInteraction.d.ts +49 -0
- package/dist/cjs/action/client/QueuedClientInteraction.d.ts.map +1 -0
- package/dist/cjs/action/client/QueuedClientInteraction.js +160 -0
- package/dist/cjs/action/client/QueuedClientInteraction.js.map +6 -0
- package/dist/cjs/action/client/index.d.ts +4 -0
- package/dist/cjs/action/client/index.d.ts.map +1 -1
- package/dist/cjs/action/client/index.js +4 -0
- package/dist/cjs/action/client/index.js.map +1 -1
- package/dist/cjs/action/client/subscription/ClientSubscribe.d.ts +2 -1
- package/dist/cjs/action/client/subscription/ClientSubscribe.d.ts.map +1 -1
- package/dist/cjs/action/client/subscription/ClientSubscriptionHandler.d.ts.map +1 -1
- package/dist/cjs/action/client/subscription/ClientSubscriptionHandler.js +14 -3
- package/dist/cjs/action/client/subscription/ClientSubscriptionHandler.js.map +1 -1
- package/dist/cjs/action/client/subscription/SustainedSubscription.d.ts +1 -1
- package/dist/cjs/action/client/subscription/SustainedSubscription.d.ts.map +1 -1
- package/dist/cjs/action/client/subscription/SustainedSubscription.js +1 -4
- package/dist/cjs/action/client/subscription/SustainedSubscription.js.map +1 -1
- package/dist/cjs/action/request/Invoke.d.ts +7 -1
- package/dist/cjs/action/request/Invoke.d.ts.map +1 -1
- package/dist/cjs/action/request/Invoke.js +0 -3
- package/dist/cjs/action/request/Invoke.js.map +1 -1
- package/dist/cjs/action/request/Read.d.ts.map +1 -1
- package/dist/cjs/action/request/Read.js +3 -2
- package/dist/cjs/action/request/Read.js.map +1 -1
- package/dist/cjs/action/request/Specifier.d.ts +1 -1
- package/dist/cjs/action/request/Specifier.d.ts.map +1 -1
- package/dist/cjs/action/request/Specifier.js +3 -0
- package/dist/cjs/action/request/Specifier.js.map +1 -1
- package/dist/cjs/action/request/Write.d.ts +1 -0
- package/dist/cjs/action/request/Write.d.ts.map +1 -1
- package/dist/cjs/action/request/Write.js +10 -2
- package/dist/cjs/action/request/Write.js.map +1 -1
- package/dist/cjs/action/response/ReadResult.d.ts +1 -1
- package/dist/cjs/action/response/ReadResult.d.ts.map +1 -1
- package/dist/cjs/cluster/client/ClusterClientTypes.d.ts +37 -8
- package/dist/cjs/cluster/client/ClusterClientTypes.d.ts.map +1 -1
- package/dist/cjs/cluster/client/index.d.ts +0 -3
- package/dist/cjs/cluster/client/index.d.ts.map +1 -1
- package/dist/cjs/cluster/client/index.js +0 -3
- package/dist/cjs/cluster/client/index.js.map +1 -1
- package/dist/cjs/interaction/InteractionMessenger.d.ts.map +1 -1
- package/dist/cjs/interaction/InteractionMessenger.js +3 -2
- package/dist/cjs/interaction/InteractionMessenger.js.map +1 -1
- package/dist/cjs/interaction/SubscriptionClient.d.ts.map +1 -1
- package/dist/cjs/interaction/SubscriptionClient.js +2 -1
- package/dist/cjs/interaction/SubscriptionClient.js.map +1 -1
- package/dist/cjs/interaction/index.d.ts +1 -1
- package/dist/cjs/interaction/index.d.ts.map +1 -1
- package/dist/cjs/interaction/index.js +1 -1
- package/dist/cjs/interaction/index.js.map +1 -1
- package/dist/cjs/peer/CommissioningError.d.ts +13 -0
- package/dist/cjs/peer/CommissioningError.d.ts.map +1 -0
- package/dist/cjs/peer/CommissioningError.js +32 -0
- package/dist/cjs/peer/CommissioningError.js.map +6 -0
- package/dist/cjs/peer/ControllerCommissioner.d.ts +2 -3
- package/dist/cjs/peer/ControllerCommissioner.d.ts.map +1 -1
- package/dist/cjs/peer/ControllerCommissioner.js +20 -13
- package/dist/cjs/peer/ControllerCommissioner.js.map +2 -2
- package/dist/cjs/peer/ControllerCommissioningFlow.d.ts +7 -16
- package/dist/cjs/peer/ControllerCommissioningFlow.d.ts.map +1 -1
- package/dist/cjs/peer/ControllerCommissioningFlow.js +395 -178
- package/dist/cjs/peer/ControllerCommissioningFlow.js.map +1 -1
- package/dist/cjs/peer/ControllerDiscovery.d.ts +4 -0
- package/dist/cjs/peer/ControllerDiscovery.d.ts.map +1 -1
- package/dist/cjs/peer/ControllerDiscovery.js +6 -3
- package/dist/cjs/peer/ControllerDiscovery.js.map +1 -1
- package/dist/cjs/peer/InteractionQueue.d.ts +2 -2
- package/dist/cjs/peer/InteractionQueue.d.ts.map +1 -1
- package/dist/cjs/peer/InteractionQueue.js +1 -1
- package/dist/cjs/peer/InteractionQueue.js.map +1 -1
- package/dist/cjs/peer/PeerAddressStore.d.ts +0 -9
- package/dist/cjs/peer/PeerAddressStore.d.ts.map +1 -1
- package/dist/cjs/peer/PeerAddressStore.js.map +1 -1
- package/dist/cjs/peer/PeerSet.d.ts +0 -2
- package/dist/cjs/peer/PeerSet.d.ts.map +1 -1
- package/dist/cjs/peer/PeerSet.js +32 -18
- package/dist/cjs/peer/PeerSet.js.map +1 -1
- package/dist/cjs/peer/PhysicalDeviceProperties.js +1 -1
- package/dist/cjs/peer/PhysicalDeviceProperties.js.map +1 -1
- package/dist/cjs/peer/index.d.ts +1 -0
- package/dist/cjs/peer/index.d.ts.map +1 -1
- package/dist/cjs/peer/index.js +1 -0
- package/dist/cjs/peer/index.js.map +1 -1
- package/dist/cjs/protocol/DeviceCommissioner.d.ts.map +1 -1
- package/dist/cjs/protocol/DeviceCommissioner.js.map +1 -1
- package/dist/cjs/protocol/ExchangeManager.js +2 -2
- package/dist/cjs/protocol/ExchangeManager.js.map +1 -1
- package/dist/cjs/protocol/ExchangeProvider.d.ts +13 -4
- package/dist/cjs/protocol/ExchangeProvider.d.ts.map +1 -1
- package/dist/cjs/protocol/ExchangeProvider.js +5 -3
- package/dist/cjs/protocol/ExchangeProvider.js.map +1 -1
- package/dist/cjs/session/NodeSession.d.ts +5 -2
- package/dist/cjs/session/NodeSession.d.ts.map +1 -1
- package/dist/cjs/session/NodeSession.js +5 -4
- package/dist/cjs/session/NodeSession.js.map +1 -1
- package/dist/cjs/session/Session.d.ts +5 -3
- package/dist/cjs/session/Session.d.ts.map +1 -1
- package/dist/cjs/session/Session.js +8 -4
- package/dist/cjs/session/Session.js.map +1 -1
- package/dist/cjs/session/SessionManager.d.ts +8 -0
- package/dist/cjs/session/SessionManager.d.ts.map +1 -1
- package/dist/cjs/session/SessionManager.js +16 -2
- package/dist/cjs/session/SessionManager.js.map +1 -1
- package/dist/esm/action/client/ClientInteraction.d.ts +12 -5
- package/dist/esm/action/client/ClientInteraction.d.ts.map +1 -1
- package/dist/esm/action/client/ClientInteraction.js +42 -16
- package/dist/esm/action/client/ClientInteraction.js.map +1 -1
- package/dist/esm/action/client/ClientRead.d.ts +10 -0
- package/dist/esm/action/client/ClientRead.d.ts.map +1 -0
- package/dist/esm/action/client/ClientRead.js +6 -0
- package/dist/esm/action/client/ClientRead.js.map +6 -0
- package/dist/esm/action/client/ClientRequest.d.ts +20 -0
- package/dist/esm/action/client/ClientRequest.d.ts.map +1 -0
- package/dist/esm/action/client/ClientRequest.js +6 -0
- package/dist/esm/action/client/ClientRequest.js.map +6 -0
- package/dist/esm/action/client/ClientWrite.d.ts +10 -0
- package/dist/esm/action/client/ClientWrite.d.ts.map +1 -0
- package/dist/esm/action/client/ClientWrite.js +6 -0
- package/dist/esm/action/client/ClientWrite.js.map +6 -0
- package/dist/esm/action/client/QueuedClientInteraction.d.ts +49 -0
- package/dist/esm/action/client/QueuedClientInteraction.d.ts.map +1 -0
- package/dist/esm/action/client/QueuedClientInteraction.js +140 -0
- package/dist/esm/action/client/QueuedClientInteraction.js.map +6 -0
- package/dist/esm/action/client/index.d.ts +4 -0
- package/dist/esm/action/client/index.d.ts.map +1 -1
- package/dist/esm/action/client/index.js +4 -0
- package/dist/esm/action/client/index.js.map +1 -1
- package/dist/esm/action/client/subscription/ClientSubscribe.d.ts +2 -1
- package/dist/esm/action/client/subscription/ClientSubscribe.d.ts.map +1 -1
- package/dist/esm/action/client/subscription/ClientSubscriptionHandler.d.ts.map +1 -1
- package/dist/esm/action/client/subscription/ClientSubscriptionHandler.js +14 -3
- package/dist/esm/action/client/subscription/ClientSubscriptionHandler.js.map +1 -1
- package/dist/esm/action/client/subscription/SustainedSubscription.d.ts +1 -1
- package/dist/esm/action/client/subscription/SustainedSubscription.d.ts.map +1 -1
- package/dist/esm/action/client/subscription/SustainedSubscription.js +1 -4
- package/dist/esm/action/client/subscription/SustainedSubscription.js.map +1 -1
- package/dist/esm/action/request/Invoke.d.ts +7 -1
- package/dist/esm/action/request/Invoke.d.ts.map +1 -1
- package/dist/esm/action/request/Invoke.js +0 -3
- package/dist/esm/action/request/Invoke.js.map +1 -1
- package/dist/esm/action/request/Read.d.ts.map +1 -1
- package/dist/esm/action/request/Read.js +3 -2
- package/dist/esm/action/request/Read.js.map +1 -1
- package/dist/esm/action/request/Specifier.d.ts +1 -1
- package/dist/esm/action/request/Specifier.d.ts.map +1 -1
- package/dist/esm/action/request/Specifier.js +3 -0
- package/dist/esm/action/request/Specifier.js.map +1 -1
- package/dist/esm/action/request/Write.d.ts +1 -0
- package/dist/esm/action/request/Write.d.ts.map +1 -1
- package/dist/esm/action/request/Write.js +10 -2
- package/dist/esm/action/request/Write.js.map +1 -1
- package/dist/esm/action/response/ReadResult.d.ts +1 -1
- package/dist/esm/action/response/ReadResult.d.ts.map +1 -1
- package/dist/esm/cluster/client/ClusterClientTypes.d.ts +37 -8
- package/dist/esm/cluster/client/ClusterClientTypes.d.ts.map +1 -1
- package/dist/esm/cluster/client/index.d.ts +0 -3
- package/dist/esm/cluster/client/index.d.ts.map +1 -1
- package/dist/esm/cluster/client/index.js +0 -3
- package/dist/esm/cluster/client/index.js.map +1 -1
- package/dist/esm/interaction/InteractionMessenger.d.ts.map +1 -1
- package/dist/esm/interaction/InteractionMessenger.js +4 -3
- package/dist/esm/interaction/InteractionMessenger.js.map +1 -1
- package/dist/esm/interaction/SubscriptionClient.d.ts.map +1 -1
- package/dist/esm/interaction/SubscriptionClient.js +2 -1
- package/dist/esm/interaction/SubscriptionClient.js.map +1 -1
- package/dist/esm/interaction/index.d.ts +1 -1
- package/dist/esm/interaction/index.d.ts.map +1 -1
- package/dist/esm/interaction/index.js +1 -1
- package/dist/esm/peer/CommissioningError.d.ts +13 -0
- package/dist/esm/peer/CommissioningError.d.ts.map +1 -0
- package/dist/esm/peer/CommissioningError.js +12 -0
- package/dist/esm/peer/CommissioningError.js.map +6 -0
- package/dist/esm/peer/ControllerCommissioner.d.ts +2 -3
- package/dist/esm/peer/ControllerCommissioner.d.ts.map +1 -1
- package/dist/esm/peer/ControllerCommissioner.js +19 -13
- package/dist/esm/peer/ControllerCommissioner.js.map +2 -2
- package/dist/esm/peer/ControllerCommissioningFlow.d.ts +7 -16
- package/dist/esm/peer/ControllerCommissioningFlow.d.ts.map +1 -1
- package/dist/esm/peer/ControllerCommissioningFlow.js +380 -162
- package/dist/esm/peer/ControllerCommissioningFlow.js.map +1 -1
- package/dist/esm/peer/ControllerDiscovery.d.ts +4 -0
- package/dist/esm/peer/ControllerDiscovery.d.ts.map +1 -1
- package/dist/esm/peer/ControllerDiscovery.js +4 -1
- package/dist/esm/peer/ControllerDiscovery.js.map +1 -1
- package/dist/esm/peer/InteractionQueue.d.ts +2 -2
- package/dist/esm/peer/InteractionQueue.d.ts.map +1 -1
- package/dist/esm/peer/InteractionQueue.js +2 -2
- package/dist/esm/peer/InteractionQueue.js.map +1 -1
- package/dist/esm/peer/PeerAddressStore.d.ts +0 -9
- package/dist/esm/peer/PeerAddressStore.d.ts.map +1 -1
- package/dist/esm/peer/PeerAddressStore.js.map +1 -1
- package/dist/esm/peer/PeerSet.d.ts +0 -2
- package/dist/esm/peer/PeerSet.d.ts.map +1 -1
- package/dist/esm/peer/PeerSet.js +32 -18
- package/dist/esm/peer/PeerSet.js.map +1 -1
- package/dist/esm/peer/PhysicalDeviceProperties.js +1 -1
- package/dist/esm/peer/PhysicalDeviceProperties.js.map +1 -1
- package/dist/esm/peer/index.d.ts +1 -0
- package/dist/esm/peer/index.d.ts.map +1 -1
- package/dist/esm/peer/index.js +1 -0
- package/dist/esm/peer/index.js.map +1 -1
- package/dist/esm/protocol/DeviceCommissioner.d.ts.map +1 -1
- package/dist/esm/protocol/DeviceCommissioner.js.map +1 -1
- package/dist/esm/protocol/ExchangeManager.js +2 -2
- package/dist/esm/protocol/ExchangeManager.js.map +1 -1
- package/dist/esm/protocol/ExchangeProvider.d.ts +13 -4
- package/dist/esm/protocol/ExchangeProvider.d.ts.map +1 -1
- package/dist/esm/protocol/ExchangeProvider.js +5 -3
- package/dist/esm/protocol/ExchangeProvider.js.map +1 -1
- package/dist/esm/session/NodeSession.d.ts +5 -2
- package/dist/esm/session/NodeSession.d.ts.map +1 -1
- package/dist/esm/session/NodeSession.js +5 -4
- package/dist/esm/session/NodeSession.js.map +1 -1
- package/dist/esm/session/Session.d.ts +5 -3
- package/dist/esm/session/Session.d.ts.map +1 -1
- package/dist/esm/session/Session.js +8 -4
- package/dist/esm/session/Session.js.map +1 -1
- package/dist/esm/session/SessionManager.d.ts +8 -0
- package/dist/esm/session/SessionManager.d.ts.map +1 -1
- package/dist/esm/session/SessionManager.js +17 -2
- package/dist/esm/session/SessionManager.js.map +1 -1
- package/package.json +6 -6
- package/src/action/client/ClientInteraction.ts +58 -19
- package/src/action/client/ClientRead.ts +10 -0
- package/src/action/client/ClientRequest.ts +20 -0
- package/src/action/client/ClientWrite.ts +10 -0
- package/src/action/client/QueuedClientInteraction.ts +91 -0
- package/src/action/client/index.ts +4 -0
- package/src/action/client/subscription/ClientSubscribe.ts +2 -1
- package/src/action/client/subscription/ClientSubscriptionHandler.ts +14 -3
- package/src/action/client/subscription/SustainedSubscription.ts +6 -9
- package/src/action/request/Invoke.ts +11 -4
- package/src/action/request/Read.ts +3 -2
- package/src/action/request/Specifier.ts +4 -1
- package/src/action/request/Write.ts +11 -2
- package/src/action/response/ReadResult.ts +1 -1
- package/src/cluster/client/ClusterClientTypes.ts +47 -7
- package/src/cluster/client/index.ts +0 -3
- package/src/interaction/InteractionMessenger.ts +5 -4
- package/src/interaction/SubscriptionClient.ts +2 -1
- package/src/interaction/index.ts +1 -1
- package/src/peer/CommissioningError.ts +13 -0
- package/src/peer/ControllerCommissioner.ts +21 -13
- package/src/peer/ControllerCommissioningFlow.ts +418 -186
- package/src/peer/ControllerDiscovery.ts +4 -1
- package/src/peer/InteractionQueue.ts +2 -2
- package/src/peer/PeerAddressStore.ts +0 -9
- package/src/peer/PeerSet.ts +56 -23
- package/src/peer/PhysicalDeviceProperties.ts +1 -1
- package/src/peer/index.ts +1 -0
- package/src/protocol/DeviceCommissioner.ts +0 -1
- package/src/protocol/ExchangeManager.ts +2 -2
- package/src/protocol/ExchangeProvider.ts +9 -7
- package/src/session/NodeSession.ts +5 -4
- package/src/session/Session.ts +8 -4
- package/src/session/SessionManager.ts +19 -2
- package/dist/cjs/cluster/client/AttributeClient.d.ts +0 -75
- package/dist/cjs/cluster/client/AttributeClient.d.ts.map +0 -1
- package/dist/cjs/cluster/client/AttributeClient.js +0 -209
- package/dist/cjs/cluster/client/AttributeClient.js.map +0 -6
- package/dist/cjs/cluster/client/ClusterClient.d.ts +0 -11
- package/dist/cjs/cluster/client/ClusterClient.d.ts.map +0 -1
- package/dist/cjs/cluster/client/ClusterClient.js +0 -335
- package/dist/cjs/cluster/client/ClusterClient.js.map +0 -6
- package/dist/cjs/cluster/client/EventClient.d.ts +0 -33
- package/dist/cjs/cluster/client/EventClient.d.ts.map +0 -1
- package/dist/cjs/cluster/client/EventClient.js +0 -89
- package/dist/cjs/cluster/client/EventClient.js.map +0 -6
- package/dist/cjs/interaction/InteractionClient.d.ts +0 -375
- package/dist/cjs/interaction/InteractionClient.d.ts.map +0 -1
- package/dist/cjs/interaction/InteractionClient.js +0 -1046
- package/dist/cjs/interaction/InteractionClient.js.map +0 -6
- package/dist/esm/cluster/client/AttributeClient.d.ts +0 -75
- package/dist/esm/cluster/client/AttributeClient.d.ts.map +0 -1
- package/dist/esm/cluster/client/AttributeClient.js +0 -189
- package/dist/esm/cluster/client/AttributeClient.js.map +0 -6
- package/dist/esm/cluster/client/ClusterClient.d.ts +0 -11
- package/dist/esm/cluster/client/ClusterClient.d.ts.map +0 -1
- package/dist/esm/cluster/client/ClusterClient.js +0 -320
- package/dist/esm/cluster/client/ClusterClient.js.map +0 -6
- package/dist/esm/cluster/client/EventClient.d.ts +0 -33
- package/dist/esm/cluster/client/EventClient.d.ts.map +0 -1
- package/dist/esm/cluster/client/EventClient.js +0 -69
- package/dist/esm/cluster/client/EventClient.js.map +0 -6
- package/dist/esm/interaction/InteractionClient.d.ts +0 -375
- package/dist/esm/interaction/InteractionClient.d.ts.map +0 -1
- package/dist/esm/interaction/InteractionClient.js +0 -1047
- package/dist/esm/interaction/InteractionClient.js.map +0 -6
- package/src/cluster/client/AttributeClient.ts +0 -230
- package/src/cluster/client/ClusterClient.ts +0 -433
- package/src/cluster/client/EventClient.ts +0 -99
- package/src/interaction/InteractionClient.ts +0 -1614
package/LICENSE
CHANGED
|
@@ -186,7 +186,7 @@
|
|
|
186
186
|
same "printed page" as the copyright notice for easier
|
|
187
187
|
identification within third-party archives.
|
|
188
188
|
|
|
189
|
-
Copyright
|
|
189
|
+
Copyright 2022-2025 Matter.js Authors
|
|
190
190
|
|
|
191
191
|
Licensed under the Apache License, Version 2.0 (the "License");
|
|
192
192
|
you may not use this file except in compliance with the License.
|
|
@@ -3,15 +3,16 @@
|
|
|
3
3
|
* Copyright 2022-2025 Matter.js Authors
|
|
4
4
|
* SPDX-License-Identifier: Apache-2.0
|
|
5
5
|
*/
|
|
6
|
+
import { ClientRead } from "#action/client/ClientRead.js";
|
|
6
7
|
import { Interactable, InteractionSession } from "#action/Interactable.js";
|
|
7
8
|
import { ClientInvoke } from "#action/request/Invoke.js";
|
|
8
|
-
import { Read } from "#action/request/Read.js";
|
|
9
|
-
import { Write } from "#action/request/Write.js";
|
|
10
9
|
import { DecodedInvokeResult } from "#action/response/InvokeResult.js";
|
|
11
10
|
import { ReadResult } from "#action/response/ReadResult.js";
|
|
12
11
|
import { WriteResult } from "#action/response/WriteResult.js";
|
|
13
12
|
import { Abort, Duration, Environment, RetrySchedule } from "#general";
|
|
13
|
+
import { PeerAddress } from "#peer/index.js";
|
|
14
14
|
import { ExchangeProvider } from "#protocol/ExchangeProvider.js";
|
|
15
|
+
import { ClientWrite } from "./ClientWrite.js";
|
|
15
16
|
import { ClientSubscribe } from "./subscription/ClientSubscribe.js";
|
|
16
17
|
import { ClientSubscriptions } from "./subscription/ClientSubscriptions.js";
|
|
17
18
|
import { PeerSubscription } from "./subscription/PeerSubscription.js";
|
|
@@ -24,6 +25,7 @@ export interface ClientInteractionContext {
|
|
|
24
25
|
abort?: Abort.Signal;
|
|
25
26
|
sustainRetries?: RetrySchedule.Configuration;
|
|
26
27
|
exchangeProvider?: ExchangeProvider;
|
|
28
|
+
address?: PeerAddress;
|
|
27
29
|
}
|
|
28
30
|
export declare const DEFAULT_MIN_INTERVAL_FLOOR: Duration;
|
|
29
31
|
/**
|
|
@@ -38,7 +40,8 @@ export declare const SUBSCRIPTION_MAX_INTERVAL_PUBLISHER_LIMIT: Duration;
|
|
|
38
40
|
*/
|
|
39
41
|
export declare class ClientInteraction<SessionT extends InteractionSession = InteractionSession> implements Interactable<SessionT> {
|
|
40
42
|
#private;
|
|
41
|
-
|
|
43
|
+
protected readonly environment: Environment;
|
|
44
|
+
constructor({ environment, abort, sustainRetries, exchangeProvider, address }: ClientInteractionContext);
|
|
42
45
|
get exchanges(): ExchangeProvider;
|
|
43
46
|
get session(): import("../../index.js").Session;
|
|
44
47
|
close(): Promise<void>;
|
|
@@ -46,14 +49,14 @@ export declare class ClientInteraction<SessionT extends InteractionSession = Int
|
|
|
46
49
|
/**
|
|
47
50
|
* Read attributes and events.
|
|
48
51
|
*/
|
|
49
|
-
read(request:
|
|
52
|
+
read(request: ClientRead, session?: SessionT): ReadResult;
|
|
50
53
|
/**
|
|
51
54
|
* Update node attributes.
|
|
52
55
|
*
|
|
53
56
|
* Writes with the Matter protocol are generally not atomic, so this method only throws if the entire action fails.
|
|
54
57
|
* You must check each {@link WriteResult.AttributeStatus} to determine whether individual updates failed.
|
|
55
58
|
*/
|
|
56
|
-
write<T extends
|
|
59
|
+
write<T extends ClientWrite>(request: T, session?: SessionT): WriteResult<T>;
|
|
57
60
|
/**
|
|
58
61
|
* Invoke one or more commands.
|
|
59
62
|
*/
|
|
@@ -62,5 +65,9 @@ export declare class ClientInteraction<SessionT extends InteractionSession = Int
|
|
|
62
65
|
* Subscribe to attribute values and events.
|
|
63
66
|
*/
|
|
64
67
|
subscribe<T extends ClientSubscribe>(request: T, session?: SessionT): SubscriptionResult<T>;
|
|
68
|
+
get channelType(): import("#general").ChannelType;
|
|
69
|
+
/** Calculates the current maximum response time for a message use in additional logic like timers. */
|
|
70
|
+
maximumPeerResponseTime(expectedProcessingTime?: Duration): Duration;
|
|
71
|
+
get address(): PeerAddress;
|
|
65
72
|
}
|
|
66
73
|
//# 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,
|
|
1
|
+
{"version":3,"file":"ClientInteraction.d.ts","sourceRoot":"","sources":["../../../../src/action/client/ClientInteraction.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO,EAAE,UAAU,EAAE,MAAM,8BAA8B,CAAC;AAC1D,OAAO,EAAE,YAAY,EAAE,kBAAkB,EAAE,MAAM,yBAAyB,CAAC;AAC3E,OAAO,EAAE,YAAY,EAAU,MAAM,2BAA2B,CAAC;AAKjE,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,EAIhB,MAAM,UAAU,CAAC;AAGlB,OAAO,EAAE,WAAW,EAAE,MAAM,gBAAgB,CAAC;AAC7C,OAAO,EAAE,gBAAgB,EAAE,MAAM,+BAA+B,CAAC;AAGjE,OAAO,EAAE,WAAW,EAAE,MAAM,kBAAkB,CAAC;AAE/C,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;IACpC,OAAO,CAAC,EAAE,WAAW,CAAC;CACzB;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;;IAC/B,SAAS,CAAC,QAAQ,CAAC,WAAW,EAAE,WAAW,CAAC;gBAShC,EAAE,WAAW,EAAE,KAAK,EAAE,cAAc,EAAE,gBAAgB,EAAE,OAAO,EAAE,EAAE,wBAAwB;IAyBvG,IAAI,SAAS,qBAEZ;IAED,IAAI,OAAO,qCAEV;IAEK,KAAK;IAUX,IAAI,aAAa,wBAKhB;IAED;;OAEG;IACI,IAAI,CAAC,OAAO,EAAE,UAAU,EAAE,OAAO,CAAC,EAAE,QAAQ,GAAG,UAAU;IA0ChE;;;;;OAKG;IACG,KAAK,CAAC,CAAC,SAAS,WAAW,EAAE,OAAO,EAAE,CAAC,EAAE,OAAO,CAAC,EAAE,QAAQ,GAAG,WAAW,CAAC,CAAC,CAAC;IA6DlF;;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;IAkLjG,IAAI,WAAW,mCAEd;IAED,sGAAsG;IACtG,uBAAuB,CAAC,sBAAsB,CAAC,EAAE,QAAQ;IAIzD,IAAI,OAAO,gBAKV;CACJ"}
|
|
@@ -93,15 +93,16 @@ const SUBSCRIPTION_MAX_INTERVAL_PUBLISHER_LIMIT = (0, import_general.Minutes)(60
|
|
|
93
93
|
const DEFAULT_TIMED_REQUEST_TIMEOUT = (0, import_general.Seconds)(10);
|
|
94
94
|
const DEFAULT_MINIMUM_RESPONSE_TIMEOUT_WITH_FAILSAFE = (0, import_general.Seconds)(30);
|
|
95
95
|
class ClientInteraction {
|
|
96
|
-
|
|
96
|
+
environment;
|
|
97
97
|
#lifetime;
|
|
98
98
|
#exchanges;
|
|
99
99
|
#interactions = new import_general.BasicSet();
|
|
100
100
|
#subscriptions;
|
|
101
101
|
#abort;
|
|
102
102
|
#sustainRetries;
|
|
103
|
-
|
|
104
|
-
|
|
103
|
+
#address;
|
|
104
|
+
constructor({ environment, abort, sustainRetries, exchangeProvider, address }) {
|
|
105
|
+
this.environment = environment;
|
|
105
106
|
this.#exchanges = exchangeProvider ?? environment.get(import_ExchangeProvider.ExchangeProvider);
|
|
106
107
|
if (environment.has(import_ClientSubscriptions.ClientSubscriptions)) {
|
|
107
108
|
this.#subscriptions = environment.get(import_ClientSubscriptions.ClientSubscriptions);
|
|
@@ -111,6 +112,7 @@ class ClientInteraction {
|
|
|
111
112
|
environment.get(import_general.Entropy),
|
|
112
113
|
import_general.RetrySchedule.Configuration(import_SustainedSubscription.SustainedSubscription.DefaultRetrySchedule, sustainRetries)
|
|
113
114
|
);
|
|
115
|
+
this.#address = address;
|
|
114
116
|
this.#lifetime = environment.join("interactions");
|
|
115
117
|
Object.defineProperties(this.#lifetime.details, {
|
|
116
118
|
"# active": {
|
|
@@ -143,7 +145,7 @@ class ClientInteraction {
|
|
|
143
145
|
}
|
|
144
146
|
get subscriptions() {
|
|
145
147
|
if (this.#subscriptions === void 0) {
|
|
146
|
-
this.#subscriptions = this
|
|
148
|
+
this.#subscriptions = this.environment.get(import_ClientSubscriptions.ClientSubscriptions);
|
|
147
149
|
}
|
|
148
150
|
return this.#subscriptions;
|
|
149
151
|
}
|
|
@@ -418,15 +420,6 @@ class ClientInteraction {
|
|
|
418
420
|
checkAbort();
|
|
419
421
|
const responseMessage = await messenger.nextMessage(import_InteractionMessenger.MessageType.SubscribeResponse);
|
|
420
422
|
const response = import_types.TlvSubscribeResponse.decode(responseMessage.payload);
|
|
421
|
-
logger.info(
|
|
422
|
-
"Subscription successful",
|
|
423
|
-
import_Mark.Mark.INBOUND,
|
|
424
|
-
messenger.exchange.via,
|
|
425
|
-
import_general.Diagnostic.dict({
|
|
426
|
-
id: response.subscriptionId,
|
|
427
|
-
interval: import_general.Duration.format((0, import_general.Seconds)(response.maxInterval))
|
|
428
|
-
})
|
|
429
|
-
);
|
|
430
423
|
const subscription2 = new import_PeerSubscription.PeerSubscription({
|
|
431
424
|
lifetime: this.subscriptions,
|
|
432
425
|
request: request2,
|
|
@@ -437,6 +430,16 @@ class ClientInteraction {
|
|
|
437
430
|
maxPeerResponseTime: this.#exchanges.maximumPeerResponseTime()
|
|
438
431
|
});
|
|
439
432
|
this.subscriptions.addPeer(subscription2);
|
|
433
|
+
logger.info(
|
|
434
|
+
"Subscription successful",
|
|
435
|
+
import_Mark.Mark.INBOUND,
|
|
436
|
+
messenger.exchange.via,
|
|
437
|
+
import_general.Diagnostic.dict({
|
|
438
|
+
id: import_Subscription.Subscription.idStrOf(response.subscriptionId),
|
|
439
|
+
interval: import_general.Duration.format((0, import_general.Seconds)(response.maxInterval)),
|
|
440
|
+
timeout: import_general.Duration.format(subscription2.timeout)
|
|
441
|
+
})
|
|
442
|
+
);
|
|
440
443
|
return subscription2;
|
|
441
444
|
} catch (_) {
|
|
442
445
|
var _error = _, _hasError = true;
|
|
@@ -476,9 +479,17 @@ class ClientInteraction {
|
|
|
476
479
|
if (this.#abort.aborted) {
|
|
477
480
|
throw new import_general.ImplementationError("Client interaction unavailable after close");
|
|
478
481
|
}
|
|
479
|
-
this.#interactions.add(request);
|
|
480
482
|
const checkAbort = import_general.Abort.checkerFor(session);
|
|
481
|
-
const
|
|
483
|
+
const now = import_general.Time.nowMs;
|
|
484
|
+
let messenger;
|
|
485
|
+
try {
|
|
486
|
+
messenger = await import_InteractionMessenger.InteractionClientMessenger.create(this.#exchanges);
|
|
487
|
+
} catch (error) {
|
|
488
|
+
import_general.TimeoutError.accept(error);
|
|
489
|
+
await this.exchanges.reconnectChannel({ asOf: now, resetInitialState: true });
|
|
490
|
+
messenger = await import_InteractionMessenger.InteractionClientMessenger.create(this.#exchanges);
|
|
491
|
+
}
|
|
492
|
+
this.#interactions.add(request);
|
|
482
493
|
Object.defineProperty(lifetime.details, "via", {
|
|
483
494
|
get() {
|
|
484
495
|
return messenger.exchange.via;
|
|
@@ -512,6 +523,19 @@ class ClientInteraction {
|
|
|
512
523
|
__callDispose(_stack, _error, _hasError);
|
|
513
524
|
}
|
|
514
525
|
}
|
|
526
|
+
get channelType() {
|
|
527
|
+
return this.#exchanges.channelType;
|
|
528
|
+
}
|
|
529
|
+
/** Calculates the current maximum response time for a message use in additional logic like timers. */
|
|
530
|
+
maximumPeerResponseTime(expectedProcessingTime) {
|
|
531
|
+
return this.#exchanges.maximumPeerResponseTime(expectedProcessingTime);
|
|
532
|
+
}
|
|
533
|
+
get address() {
|
|
534
|
+
if (this.#address === void 0) {
|
|
535
|
+
throw new import_general.ImplementationError("This InteractionClient is not bound to a specific peer.");
|
|
536
|
+
}
|
|
537
|
+
return this.#address;
|
|
538
|
+
}
|
|
515
539
|
}
|
|
516
540
|
async function* readChunks(messenger) {
|
|
517
541
|
const leftOverData = new Array();
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"version": 3,
|
|
3
3
|
"sources": ["../../../../src/action/client/ClientInteraction.ts"],
|
|
4
|
-
"mappings": ";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;
|
|
4
|
+
"mappings": "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",
|
|
5
5
|
"names": ["subscription", "request", "_stack", "_", "_error", "_hasError"]
|
|
6
6
|
}
|
|
@@ -0,0 +1,10 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* @license
|
|
3
|
+
* Copyright 2022-2025 Matter.js Authors
|
|
4
|
+
* SPDX-License-Identifier: Apache-2.0
|
|
5
|
+
*/
|
|
6
|
+
import { Read } from "#action/request/Read.js";
|
|
7
|
+
import { ClientRequest } from "./ClientRequest.js";
|
|
8
|
+
export interface ClientRead extends Read, ClientRequest {
|
|
9
|
+
}
|
|
10
|
+
//# sourceMappingURL=ClientRead.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"ClientRead.d.ts","sourceRoot":"","sources":["../../../../src/action/client/ClientRead.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO,EAAE,IAAI,EAAE,MAAM,yBAAyB,CAAC;AAC/C,OAAO,EAAE,aAAa,EAAE,MAAM,oBAAoB,CAAC;AAEnD,MAAM,WAAW,UAAW,SAAQ,IAAI,EAAE,aAAa;CAAG"}
|
|
@@ -0,0 +1,22 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
var __defProp = Object.defineProperty;
|
|
3
|
+
var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
|
|
4
|
+
var __getOwnPropNames = Object.getOwnPropertyNames;
|
|
5
|
+
var __hasOwnProp = Object.prototype.hasOwnProperty;
|
|
6
|
+
var __copyProps = (to, from, except, desc) => {
|
|
7
|
+
if (from && typeof from === "object" || typeof from === "function") {
|
|
8
|
+
for (let key of __getOwnPropNames(from))
|
|
9
|
+
if (!__hasOwnProp.call(to, key) && key !== except)
|
|
10
|
+
__defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable });
|
|
11
|
+
}
|
|
12
|
+
return to;
|
|
13
|
+
};
|
|
14
|
+
var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
|
|
15
|
+
var ClientRead_exports = {};
|
|
16
|
+
module.exports = __toCommonJS(ClientRead_exports);
|
|
17
|
+
/**
|
|
18
|
+
* @license
|
|
19
|
+
* Copyright 2022-2025 Matter.js Authors
|
|
20
|
+
* SPDX-License-Identifier: Apache-2.0
|
|
21
|
+
*/
|
|
22
|
+
//# sourceMappingURL=ClientRead.js.map
|
|
@@ -0,0 +1,20 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* @license
|
|
3
|
+
* Copyright 2022-2025 Matter.js Authors
|
|
4
|
+
* SPDX-License-Identifier: Apache-2.0
|
|
5
|
+
*/
|
|
6
|
+
/**
|
|
7
|
+
* Represents a client request with customizable transmission behavior.
|
|
8
|
+
*/
|
|
9
|
+
export interface ClientRequest {
|
|
10
|
+
/**
|
|
11
|
+
* If true, the request will be queued over all peers of the node.
|
|
12
|
+
* If false, the request will be sent directly.
|
|
13
|
+
* If undefined, the request will be queued if the physical device is thread connected.
|
|
14
|
+
* TODO Adjust this to be owned by some internal network layer that maintains automatic limits per connection type
|
|
15
|
+
* or such
|
|
16
|
+
* @deprecated
|
|
17
|
+
*/
|
|
18
|
+
queued?: boolean;
|
|
19
|
+
}
|
|
20
|
+
//# sourceMappingURL=ClientRequest.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"ClientRequest.d.ts","sourceRoot":"","sources":["../../../../src/action/client/ClientRequest.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH;;GAEG;AACH,MAAM,WAAW,aAAa;IAC1B;;;;;;;OAOG;IACH,MAAM,CAAC,EAAE,OAAO,CAAC;CACpB"}
|
|
@@ -0,0 +1,22 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
var __defProp = Object.defineProperty;
|
|
3
|
+
var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
|
|
4
|
+
var __getOwnPropNames = Object.getOwnPropertyNames;
|
|
5
|
+
var __hasOwnProp = Object.prototype.hasOwnProperty;
|
|
6
|
+
var __copyProps = (to, from, except, desc) => {
|
|
7
|
+
if (from && typeof from === "object" || typeof from === "function") {
|
|
8
|
+
for (let key of __getOwnPropNames(from))
|
|
9
|
+
if (!__hasOwnProp.call(to, key) && key !== except)
|
|
10
|
+
__defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable });
|
|
11
|
+
}
|
|
12
|
+
return to;
|
|
13
|
+
};
|
|
14
|
+
var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
|
|
15
|
+
var ClientRequest_exports = {};
|
|
16
|
+
module.exports = __toCommonJS(ClientRequest_exports);
|
|
17
|
+
/**
|
|
18
|
+
* @license
|
|
19
|
+
* Copyright 2022-2025 Matter.js Authors
|
|
20
|
+
* SPDX-License-Identifier: Apache-2.0
|
|
21
|
+
*/
|
|
22
|
+
//# sourceMappingURL=ClientRequest.js.map
|
|
@@ -0,0 +1,10 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* @license
|
|
3
|
+
* Copyright 2022-2025 Matter.js Authors
|
|
4
|
+
* SPDX-License-Identifier: Apache-2.0
|
|
5
|
+
*/
|
|
6
|
+
import { Write } from "#action/request/Write.js";
|
|
7
|
+
import { ClientRequest } from "./ClientRequest.js";
|
|
8
|
+
export interface ClientWrite extends Write, ClientRequest {
|
|
9
|
+
}
|
|
10
|
+
//# sourceMappingURL=ClientWrite.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"ClientWrite.d.ts","sourceRoot":"","sources":["../../../../src/action/client/ClientWrite.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO,EAAE,KAAK,EAAE,MAAM,0BAA0B,CAAC;AACjD,OAAO,EAAE,aAAa,EAAE,MAAM,oBAAoB,CAAC;AAEnD,MAAM,WAAW,WAAY,SAAQ,KAAK,EAAE,aAAa;CAAG"}
|
|
@@ -0,0 +1,22 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
var __defProp = Object.defineProperty;
|
|
3
|
+
var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
|
|
4
|
+
var __getOwnPropNames = Object.getOwnPropertyNames;
|
|
5
|
+
var __hasOwnProp = Object.prototype.hasOwnProperty;
|
|
6
|
+
var __copyProps = (to, from, except, desc) => {
|
|
7
|
+
if (from && typeof from === "object" || typeof from === "function") {
|
|
8
|
+
for (let key of __getOwnPropNames(from))
|
|
9
|
+
if (!__hasOwnProp.call(to, key) && key !== except)
|
|
10
|
+
__defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable });
|
|
11
|
+
}
|
|
12
|
+
return to;
|
|
13
|
+
};
|
|
14
|
+
var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
|
|
15
|
+
var ClientWrite_exports = {};
|
|
16
|
+
module.exports = __toCommonJS(ClientWrite_exports);
|
|
17
|
+
/**
|
|
18
|
+
* @license
|
|
19
|
+
* Copyright 2022-2025 Matter.js Authors
|
|
20
|
+
* SPDX-License-Identifier: Apache-2.0
|
|
21
|
+
*/
|
|
22
|
+
//# sourceMappingURL=ClientWrite.js.map
|
|
@@ -0,0 +1,49 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* @license
|
|
3
|
+
* Copyright 2022-2025 Matter.js Authors
|
|
4
|
+
* SPDX-License-Identifier: Apache-2.0
|
|
5
|
+
*/
|
|
6
|
+
import { ClientInvoke, ClientSubscribe, ClientWrite, DecodedInvokeResult, InteractionSession, ReadResult, SubscriptionResult, WriteResult } from "#action/index.js";
|
|
7
|
+
import { InteractionQueue } from "#peer/index.js";
|
|
8
|
+
import { ClientInteraction, ClientInteractionContext } from "./ClientInteraction.js";
|
|
9
|
+
import { ClientRead } from "./ClientRead.js";
|
|
10
|
+
export interface QueuedClientInteractionContext extends ClientInteractionContext {
|
|
11
|
+
queue: InteractionQueue;
|
|
12
|
+
}
|
|
13
|
+
export declare class QueuedClientInteraction<SessionT extends InteractionSession = InteractionSession> extends ClientInteraction<SessionT> {
|
|
14
|
+
#private;
|
|
15
|
+
constructor(options: QueuedClientInteractionContext);
|
|
16
|
+
protected get queue(): InteractionQueue;
|
|
17
|
+
/**
|
|
18
|
+
* Read chosen attributes remotely from the node. Known data versions are automatically injected into the request to
|
|
19
|
+
* optimize the read.
|
|
20
|
+
* Therefore, the returned data only contains attributes that have changed since the last read or subscription.
|
|
21
|
+
* TODO: Allow control of data version injection and enrich response with attribute data missing in response due to data versioning?
|
|
22
|
+
*/
|
|
23
|
+
read(request: ClientRead, session?: SessionT): ReadResult;
|
|
24
|
+
/**
|
|
25
|
+
* Subscribe to remote events and attributes as defined by {@link request}.
|
|
26
|
+
*
|
|
27
|
+
* matter.js updates local state
|
|
28
|
+
*
|
|
29
|
+
* By default, matter.js subscribes to all attributes and events of the peer and updates {@link ClientNode} state
|
|
30
|
+
* automatically. So you normally do not need to subscribe manually.
|
|
31
|
+
*
|
|
32
|
+
* When providing the "sustain" flag, a SustainedSubscription is returned immediately. You need to use the events to
|
|
33
|
+
* know when/if a subscription could be established. This class handles reconnections automatically.
|
|
34
|
+
* When not providing the "sustain" flag, a PeerSubscription is returned after a subscription have been successfully
|
|
35
|
+
* established; or an error is returned if this was not possible.
|
|
36
|
+
*/
|
|
37
|
+
subscribe<T extends ClientSubscribe>(request: T, session?: SessionT): SubscriptionResult<T>;
|
|
38
|
+
/**
|
|
39
|
+
* Write chosen attributes remotely to the node.
|
|
40
|
+
* The returned attribute writing status information is returned.
|
|
41
|
+
*/
|
|
42
|
+
write<T extends ClientWrite>(request: T, session?: SessionT): WriteResult<T>;
|
|
43
|
+
/**
|
|
44
|
+
* Invoke a command remotely on the node.
|
|
45
|
+
* The returned command response is returned as response chunks
|
|
46
|
+
*/
|
|
47
|
+
invoke(request: ClientInvoke, session?: SessionT): DecodedInvokeResult;
|
|
48
|
+
}
|
|
49
|
+
//# sourceMappingURL=QueuedClientInteraction.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"QueuedClientInteraction.d.ts","sourceRoot":"","sources":["../../../../src/action/client/QueuedClientInteraction.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AACH,OAAO,EACH,YAAY,EACZ,eAAe,EACf,WAAW,EACX,mBAAmB,EACnB,kBAAkB,EAClB,UAAU,EACV,kBAAkB,EAClB,WAAW,EACd,MAAM,kBAAkB,CAAC;AAC1B,OAAO,EAAE,gBAAgB,EAAE,MAAM,gBAAgB,CAAC;AAClD,OAAO,EAAE,iBAAiB,EAAE,wBAAwB,EAAE,MAAM,wBAAwB,CAAC;AACrF,OAAO,EAAE,UAAU,EAAE,MAAM,iBAAiB,CAAC;AAE7C,MAAM,WAAW,8BAA+B,SAAQ,wBAAwB;IAC5E,KAAK,EAAE,gBAAgB,CAAC;CAC3B;AAED,qBAAa,uBAAuB,CAChC,QAAQ,SAAS,kBAAkB,GAAG,kBAAkB,CAC1D,SAAQ,iBAAiB,CAAC,QAAQ,CAAC;;gBAGrB,OAAO,EAAE,8BAA8B;IAKnD,SAAS,KAAK,KAAK,qBAKlB;IAED;;;;;OAKG;IACa,IAAI,CAAC,OAAO,EAAE,UAAU,EAAE,OAAO,CAAC,EAAE,QAAQ,GAAG,UAAU;IAMzE;;;;;;;;;;;;OAYG;IACY,SAAS,CAAC,CAAC,SAAS,eAAe,EAAE,OAAO,EAAE,CAAC,EAAE,OAAO,CAAC,EAAE,QAAQ,GAAG,kBAAkB,CAAC,CAAC,CAAC;IAM1G;;;OAGG;IACY,KAAK,CAAC,CAAC,SAAS,WAAW,EAAE,OAAO,EAAE,CAAC,EAAE,OAAO,CAAC,EAAE,QAAQ,GAAG,WAAW,CAAC,CAAC,CAAC;IAM3F;;;OAGG;IACa,MAAM,CAAC,OAAO,EAAE,YAAY,EAAE,OAAO,CAAC,EAAE,QAAQ,GAAG,mBAAmB;CAKzF"}
|
|
@@ -0,0 +1,160 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
var __defProp = Object.defineProperty;
|
|
3
|
+
var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
|
|
4
|
+
var __getOwnPropNames = Object.getOwnPropertyNames;
|
|
5
|
+
var __hasOwnProp = Object.prototype.hasOwnProperty;
|
|
6
|
+
var __knownSymbol = (name, symbol) => (symbol = Symbol[name]) ? symbol : /* @__PURE__ */ Symbol.for("Symbol." + name);
|
|
7
|
+
var __typeError = (msg) => {
|
|
8
|
+
throw TypeError(msg);
|
|
9
|
+
};
|
|
10
|
+
var __export = (target, all) => {
|
|
11
|
+
for (var name in all)
|
|
12
|
+
__defProp(target, name, { get: all[name], enumerable: true });
|
|
13
|
+
};
|
|
14
|
+
var __copyProps = (to, from, except, desc) => {
|
|
15
|
+
if (from && typeof from === "object" || typeof from === "function") {
|
|
16
|
+
for (let key of __getOwnPropNames(from))
|
|
17
|
+
if (!__hasOwnProp.call(to, key) && key !== except)
|
|
18
|
+
__defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable });
|
|
19
|
+
}
|
|
20
|
+
return to;
|
|
21
|
+
};
|
|
22
|
+
var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
|
|
23
|
+
var __using = (stack, value, async) => {
|
|
24
|
+
if (value != null) {
|
|
25
|
+
if (typeof value !== "object" && typeof value !== "function") __typeError("Object expected");
|
|
26
|
+
var dispose, inner;
|
|
27
|
+
if (async) dispose = value[__knownSymbol("asyncDispose")];
|
|
28
|
+
if (dispose === void 0) {
|
|
29
|
+
dispose = value[__knownSymbol("dispose")];
|
|
30
|
+
if (async) inner = dispose;
|
|
31
|
+
}
|
|
32
|
+
if (typeof dispose !== "function") __typeError("Object not disposable");
|
|
33
|
+
if (inner) dispose = function() {
|
|
34
|
+
try {
|
|
35
|
+
inner.call(this);
|
|
36
|
+
} catch (e) {
|
|
37
|
+
return Promise.reject(e);
|
|
38
|
+
}
|
|
39
|
+
};
|
|
40
|
+
stack.push([async, dispose, value]);
|
|
41
|
+
} else if (async) {
|
|
42
|
+
stack.push([async]);
|
|
43
|
+
}
|
|
44
|
+
return value;
|
|
45
|
+
};
|
|
46
|
+
var __callDispose = (stack, error, hasError) => {
|
|
47
|
+
var E = typeof SuppressedError === "function" ? SuppressedError : function(e, s, m, _) {
|
|
48
|
+
return _ = Error(m), _.name = "SuppressedError", _.error = e, _.suppressed = s, _;
|
|
49
|
+
};
|
|
50
|
+
var fail = (e) => error = hasError ? new E(e, error, "An error was suppressed during disposal") : (hasError = true, e);
|
|
51
|
+
var next = (it) => {
|
|
52
|
+
while (it = stack.pop()) {
|
|
53
|
+
try {
|
|
54
|
+
var result = it[1] && it[1].call(it[2]);
|
|
55
|
+
if (it[0]) return Promise.resolve(result).then(next, (e) => (fail(e), next()));
|
|
56
|
+
} catch (e) {
|
|
57
|
+
fail(e);
|
|
58
|
+
}
|
|
59
|
+
}
|
|
60
|
+
if (hasError) throw error;
|
|
61
|
+
};
|
|
62
|
+
return next();
|
|
63
|
+
};
|
|
64
|
+
var QueuedClientInteraction_exports = {};
|
|
65
|
+
__export(QueuedClientInteraction_exports, {
|
|
66
|
+
QueuedClientInteraction: () => QueuedClientInteraction
|
|
67
|
+
});
|
|
68
|
+
module.exports = __toCommonJS(QueuedClientInteraction_exports);
|
|
69
|
+
var import_peer = require("#peer/index.js");
|
|
70
|
+
var import_ClientInteraction = require("./ClientInteraction.js");
|
|
71
|
+
/**
|
|
72
|
+
* @license
|
|
73
|
+
* Copyright 2022-2025 Matter.js Authors
|
|
74
|
+
* SPDX-License-Identifier: Apache-2.0
|
|
75
|
+
*/
|
|
76
|
+
class QueuedClientInteraction extends import_ClientInteraction.ClientInteraction {
|
|
77
|
+
#queue;
|
|
78
|
+
constructor(options) {
|
|
79
|
+
super(options);
|
|
80
|
+
this.#queue = options.queue;
|
|
81
|
+
}
|
|
82
|
+
get queue() {
|
|
83
|
+
if (this.#queue === void 0) {
|
|
84
|
+
this.#queue = this.environment.get(import_peer.InteractionQueue);
|
|
85
|
+
}
|
|
86
|
+
return this.#queue;
|
|
87
|
+
}
|
|
88
|
+
/**
|
|
89
|
+
* Read chosen attributes remotely from the node. Known data versions are automatically injected into the request to
|
|
90
|
+
* optimize the read.
|
|
91
|
+
* Therefore, the returned data only contains attributes that have changed since the last read or subscription.
|
|
92
|
+
* TODO: Allow control of data version injection and enrich response with attribute data missing in response due to data versioning?
|
|
93
|
+
*/
|
|
94
|
+
async *read(request, session) {
|
|
95
|
+
var _stack = [];
|
|
96
|
+
try {
|
|
97
|
+
const _slot = __using(_stack, await this.queue.obtainSlot());
|
|
98
|
+
yield* super.read(request, session);
|
|
99
|
+
} catch (_) {
|
|
100
|
+
var _error = _, _hasError = true;
|
|
101
|
+
} finally {
|
|
102
|
+
__callDispose(_stack, _error, _hasError);
|
|
103
|
+
}
|
|
104
|
+
}
|
|
105
|
+
/**
|
|
106
|
+
* Subscribe to remote events and attributes as defined by {@link request}.
|
|
107
|
+
*
|
|
108
|
+
* matter.js updates local state
|
|
109
|
+
*
|
|
110
|
+
* By default, matter.js subscribes to all attributes and events of the peer and updates {@link ClientNode} state
|
|
111
|
+
* automatically. So you normally do not need to subscribe manually.
|
|
112
|
+
*
|
|
113
|
+
* When providing the "sustain" flag, a SustainedSubscription is returned immediately. You need to use the events to
|
|
114
|
+
* know when/if a subscription could be established. This class handles reconnections automatically.
|
|
115
|
+
* When not providing the "sustain" flag, a PeerSubscription is returned after a subscription have been successfully
|
|
116
|
+
* established; or an error is returned if this was not possible.
|
|
117
|
+
*/
|
|
118
|
+
async subscribe(request, session) {
|
|
119
|
+
var _stack = [];
|
|
120
|
+
try {
|
|
121
|
+
const _slot = __using(_stack, await this.queue.obtainSlot());
|
|
122
|
+
return super.subscribe(request, session);
|
|
123
|
+
} catch (_) {
|
|
124
|
+
var _error = _, _hasError = true;
|
|
125
|
+
} finally {
|
|
126
|
+
__callDispose(_stack, _error, _hasError);
|
|
127
|
+
}
|
|
128
|
+
}
|
|
129
|
+
/**
|
|
130
|
+
* Write chosen attributes remotely to the node.
|
|
131
|
+
* The returned attribute writing status information is returned.
|
|
132
|
+
*/
|
|
133
|
+
async write(request, session) {
|
|
134
|
+
var _stack = [];
|
|
135
|
+
try {
|
|
136
|
+
const _slot = __using(_stack, await this.queue.obtainSlot());
|
|
137
|
+
return super.write(request, session);
|
|
138
|
+
} catch (_) {
|
|
139
|
+
var _error = _, _hasError = true;
|
|
140
|
+
} finally {
|
|
141
|
+
__callDispose(_stack, _error, _hasError);
|
|
142
|
+
}
|
|
143
|
+
}
|
|
144
|
+
/**
|
|
145
|
+
* Invoke a command remotely on the node.
|
|
146
|
+
* The returned command response is returned as response chunks
|
|
147
|
+
*/
|
|
148
|
+
async *invoke(request, session) {
|
|
149
|
+
var _stack = [];
|
|
150
|
+
try {
|
|
151
|
+
const _slot = __using(_stack, await this.queue.obtainSlot());
|
|
152
|
+
yield* super.invoke(request, session);
|
|
153
|
+
} catch (_) {
|
|
154
|
+
var _error = _, _hasError = true;
|
|
155
|
+
} finally {
|
|
156
|
+
__callDispose(_stack, _error, _hasError);
|
|
157
|
+
}
|
|
158
|
+
}
|
|
159
|
+
}
|
|
160
|
+
//# sourceMappingURL=QueuedClientInteraction.js.map
|
|
@@ -0,0 +1,6 @@
|
|
|
1
|
+
{
|
|
2
|
+
"version": 3,
|
|
3
|
+
"sources": ["../../../../src/action/client/QueuedClientInteraction.ts"],
|
|
4
|
+
"mappings": ";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAeA,kBAAiC;AACjC,+BAA4D;AAhB5D;AAAA;AAAA;AAAA;AAAA;AAuBO,MAAM,gCAEH,2CAA4B;AAAA,EAClC;AAAA,EAEA,YAAY,SAAyC;AACjD,UAAM,OAAO;AACb,SAAK,SAAS,QAAQ;AAAA,EAC1B;AAAA,EAEA,IAAc,QAAQ;AAClB,QAAI,KAAK,WAAW,QAAW;AAC3B,WAAK,SAAS,KAAK,YAAY,IAAI,4BAAgB;AAAA,IACvD;AACA,WAAO,KAAK;AAAA,EAChB;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,EAQA,OAAgB,KAAK,SAAqB,SAAgC;AACtE;AAAA;AAAA,YAAM,QAAQ,sBAAM,KAAK,MAAM,WAAW;AAE1C,aAAO,MAAM,KAAK,SAAS,OAAO;AAAA,aAFlC;AAAA;AAAA;AAAA;AAAA;AAAA,EAGJ;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,EAeA,MAAe,UAAqC,SAAY,SAA2C;AACvG;AAAA;AAAA,YAAM,QAAQ,sBAAM,KAAK,MAAM,WAAW;AAE1C,aAAO,MAAM,UAAU,SAAS,OAAO;AAAA,aAFvC;AAAA;AAAA;AAAA;AAAA;AAAA,EAGJ;AAAA;AAAA;AAAA;AAAA;AAAA,EAMA,MAAe,MAA6B,SAAY,SAAoC;AACxF;AAAA;AAAA,YAAM,QAAQ,sBAAM,KAAK,MAAM,WAAW;AAE1C,aAAO,MAAM,MAAM,SAAS,OAAO;AAAA,aAFnC;AAAA;AAAA;AAAA;AAAA;AAAA,EAGJ;AAAA;AAAA;AAAA;AAAA;AAAA,EAMA,OAAgB,OAAO,SAAuB,SAAyC;AACnF;AAAA;AAAA,YAAM,QAAQ,sBAAM,KAAK,MAAM,WAAW;AAE1C,aAAO,MAAM,OAAO,SAAS,OAAO;AAAA,aAFpC;AAAA;AAAA;AAAA;AAAA;AAAA,EAGJ;AACJ;",
|
|
5
|
+
"names": []
|
|
6
|
+
}
|
|
@@ -4,7 +4,11 @@
|
|
|
4
4
|
* SPDX-License-Identifier: Apache-2.0
|
|
5
5
|
*/
|
|
6
6
|
export * from "./ClientInteraction.js";
|
|
7
|
+
export * from "./ClientRead.js";
|
|
8
|
+
export * from "./ClientRequest.js";
|
|
9
|
+
export * from "./ClientWrite.js";
|
|
7
10
|
export * from "./InputChunk.js";
|
|
11
|
+
export * from "./QueuedClientInteraction.js";
|
|
8
12
|
export * from "./ReadScope.js";
|
|
9
13
|
export * from "./subscription/index.js";
|
|
10
14
|
//# sourceMappingURL=index.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/action/client/index.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,cAAc,wBAAwB,CAAC;AACvC,cAAc,iBAAiB,CAAC;AAChC,cAAc,gBAAgB,CAAC;AAC/B,cAAc,yBAAyB,CAAC"}
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/action/client/index.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,cAAc,wBAAwB,CAAC;AACvC,cAAc,iBAAiB,CAAC;AAChC,cAAc,oBAAoB,CAAC;AACnC,cAAc,kBAAkB,CAAC;AACjC,cAAc,iBAAiB,CAAC;AAChC,cAAc,8BAA8B,CAAC;AAC7C,cAAc,gBAAgB,CAAC;AAC/B,cAAc,yBAAyB,CAAC"}
|
|
@@ -16,7 +16,11 @@ var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: tru
|
|
|
16
16
|
var client_exports = {};
|
|
17
17
|
module.exports = __toCommonJS(client_exports);
|
|
18
18
|
__reExport(client_exports, require("./ClientInteraction.js"), module.exports);
|
|
19
|
+
__reExport(client_exports, require("./ClientRead.js"), module.exports);
|
|
20
|
+
__reExport(client_exports, require("./ClientRequest.js"), module.exports);
|
|
21
|
+
__reExport(client_exports, require("./ClientWrite.js"), module.exports);
|
|
19
22
|
__reExport(client_exports, require("./InputChunk.js"), module.exports);
|
|
23
|
+
__reExport(client_exports, require("./QueuedClientInteraction.js"), module.exports);
|
|
20
24
|
__reExport(client_exports, require("./ReadScope.js"), module.exports);
|
|
21
25
|
__reExport(client_exports, require("./subscription/index.js"), module.exports);
|
|
22
26
|
/**
|