@project-chip/matter.js 0.12.3 → 0.12.4-alpha.0-20250210-ad8edf096

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.
@@ -4,10 +4,9 @@
4
4
  * SPDX-License-Identifier: Apache-2.0
5
5
  */
6
6
  import { Environment, NetInterfaceSet, StorageContext, SyncStorage } from "#general";
7
- import { CommissionableDevice, CommissionableDeviceIdentifiers, DecodedAttributeReportValue, DiscoveryAndCommissioningOptions, DiscoveryData, InteractionClient, MdnsBroadcaster, MdnsScanner, NodeDiscoveryType, ScannerSet } from "#protocol";
7
+ import { CommissionableDevice, CommissionableDeviceIdentifiers, DiscoveryAndCommissioningOptions, DiscoveryData, InteractionClient, MdnsBroadcaster, MdnsScanner, NodeDiscoveryType, ScannerSet } from "#protocol";
8
8
  import { CaseAuthenticatedTag, DiscoveryCapabilitiesBitmap, FabricId, FabricIndex, NodeId, TypeFromPartialBitSchema, VendorId } from "#types";
9
9
  import { CommissioningControllerNodeOptions, PairedNode } from "./device/PairedNode.js";
10
- import { MatterController } from "./MatterController.js";
11
10
  import { MatterNode } from "./MatterNode.js";
12
11
  export type ControllerEnvironmentOptions = {
13
12
  /**
@@ -75,19 +74,7 @@ export type NodeCommissioningOptions = CommissioningControllerNodeOptions & {
75
74
  };
76
75
  /** Controller class to commission and connect multiple nodes into one fabric. */
77
76
  export declare class CommissioningController extends MatterNode {
78
- private readonly options;
79
- private started;
80
- private ipv4Disabled?;
81
- private readonly listeningAddressIpv4?;
82
- private readonly listeningAddressIpv6?;
83
- private environment?;
84
- private storage?;
85
- private mdnsScanner?;
86
- private mdnsBroadcaster?;
87
- private controllerInstance?;
88
- private initializedNodes;
89
- private nodeUpdateLabelHandlers;
90
- private sessionDisconnectedHandler;
77
+ #private;
91
78
  /**
92
79
  * Creates a new CommissioningController instance
93
80
  *
@@ -95,21 +82,14 @@ export declare class CommissioningController extends MatterNode {
95
82
  */
96
83
  constructor(options: CommissioningControllerOptions);
97
84
  get nodeId(): NodeId | undefined;
85
+ /** Returns the configuration data needed to create a PASE commissioner, e.g. in a mobile app. */
98
86
  get paseCommissionerConfig(): {
99
87
  caConfig: import("#protocol").CertificateAuthority.Configuration;
100
88
  fabricData: import("#protocol").Fabric.Config;
101
89
  };
102
- assertIsAddedToMatterServer(): {
103
- mdnsScanner: MdnsScanner;
104
- storage: StorageContext<any> | undefined;
105
- environment: Environment | undefined;
106
- };
107
- assertControllerIsStarted(errorText?: string): MatterController;
108
- /** Internal method to initialize a MatterController instance. */
109
- private initializeController;
110
90
  /**
111
91
  * Commissions/Pairs a new device into the controller fabric. The method returns the NodeId of the commissioned
112
- * node.
92
+ * node on success.
113
93
  */
114
94
  commissionNode(nodeOptions: NodeCommissioningOptions, connectNodeAfterCommissioning?: boolean): Promise<NodeId>;
115
95
  /**
@@ -124,40 +104,53 @@ export declare class CommissioningController extends MatterNode {
124
104
  * Remove a Node id from the controller. This method should only be used if the decommission method on the
125
105
  * PairedNode instance returns an error. By default, it tries to decommission the node from the controller but will
126
106
  * remove it also in case of an error during decommissioning. Ideally try to decommission the node before and only
127
- * use this in case of an error.
107
+ * use this in case of an error as last option.
108
+ * If this method is used the state of the PairedNode instance might be out of sync, so the PairedNode instance
109
+ * should be disconnected first.
128
110
  */
129
111
  removeNode(nodeId: NodeId, tryDecommissioning?: boolean): Promise<void>;
112
+ /** @deprecated Use PairedNode.disconnect() instead */
130
113
  disconnectNode(nodeId: NodeId): Promise<void>;
114
+ /**
115
+ * Returns the PairedNode instance for a given NodeId. The instance is initialized without auto connect if not yet
116
+ * created.
117
+ */
131
118
  getNode(nodeId: NodeId): Promise<PairedNode>;
132
119
  /**
133
120
  * Connect to an already paired Node.
134
121
  * After connection the endpoint data of the device is analyzed and an object structure is created.
135
122
  * This call is not blocking and returns an initialized PairedNode instance. The connection or reconnection
136
123
  * happens in the background. Please monitor the state of the node to see if the connection was successful.
124
+ *
125
+ * @deprecated Use getNode() instead and call PairedNode.connect() or PairedNode.disconnect() as needed.
137
126
  */
138
127
  connectNode(nodeId: NodeId, connectOptions?: CommissioningControllerNodeOptions): Promise<PairedNode>;
139
- collectStoredAttributeData(nodeId: NodeId): Promise<DecodedAttributeReportValue<any>[]>;
140
128
  /**
141
129
  * Connects to all paired nodes.
142
130
  * After connection the endpoint data of the device is analyzed and an object structure is created.
131
+ *
132
+ * @deprecated Use getCommissionedNodes() to get the list of nodes and getNode(nodeId) instead and call PairedNode.connect() or PairedNode.disconnect() as needed.
143
133
  */
144
134
  connect(connectOptions?: CommissioningControllerNodeOptions): Promise<PairedNode[]>;
145
135
  /**
146
136
  * Set the MDNS Scanner instance. Should be only used internally
147
137
  *
148
138
  * @param mdnsScanner MdnsScanner instance
139
+ * @private
149
140
  */
150
141
  setMdnsScanner(mdnsScanner: MdnsScanner): void;
151
142
  /**
152
143
  * Set the MDNS Broadcaster instance. Should be only used internally
153
144
  *
154
145
  * @param mdnsBroadcaster MdnsBroadcaster instance
146
+ * @private
155
147
  */
156
148
  setMdnsBroadcaster(mdnsBroadcaster: MdnsBroadcaster): void;
157
149
  /**
158
150
  * Set the Storage instance. Should be only used internally
159
151
  *
160
152
  * @param storage storage context to use
153
+ * @private
161
154
  */
162
155
  setStorage(storage: StorageContext<SyncStorage>): void;
163
156
  /** Returns true if t least one node is commissioned/paired with this controller instance. */
@@ -167,10 +160,14 @@ export declare class CommissioningController extends MatterNode {
167
160
  * not be used directly. See the PairedNode class for the public API.
168
161
  */
169
162
  createInteractionClient(nodeId: NodeId, discoveryType?: NodeDiscoveryType, forcedConnection?: boolean): Promise<InteractionClient>;
170
- /** Returns the PairedNode instance for a given node id, if this node is connected. */
163
+ /**
164
+ * Returns the PairedNode instance for a given node id, if this node is connected.
165
+ * @deprecated Use getNode() instead
166
+ */
171
167
  getPairedNode(nodeId: NodeId): PairedNode | undefined;
172
- /** Returns an array with the Node Ids for all commissioned nodes. */
168
+ /** Returns an array with the NodeIds of all commissioned nodes. */
173
169
  getCommissionedNodes(): NodeId[];
170
+ /** Returns an arra with all commissioned NodeIds and their metadata. */
174
171
  getCommissionedNodesDetails(): {
175
172
  nodeId: NodeId;
176
173
  operationalAddress: string | undefined;
@@ -178,15 +175,35 @@ export declare class CommissioningController extends MatterNode {
178
175
  discoveryData: DiscoveryData | undefined;
179
176
  deviceData: import("./device/DeviceInformation.js").DeviceInformationData | undefined;
180
177
  }[];
181
- /** Disconnects all connected nodes and Closes the network connections and other resources of the controller. */
178
+ /**
179
+ * Disconnects all connected nodes and closes the network connections and other resources of the controller.
180
+ * You can use "start()" to restart the controller after closing it.
181
+ */
182
182
  close(): Promise<void>;
183
+ /** Return the port used by the controller for the UDP interface. */
183
184
  getPort(): number | undefined;
185
+ /** @private */
184
186
  initialize(ipv4Disabled: boolean): void;
187
+ /** @private */
185
188
  initializeControllerStore(): Promise<void>;
186
- /** Initialize the controller and connect to all commissioned nodes if autoConnect is not set to false. */
189
+ /**
190
+ * Initialize the controller and initialize and connect to all commissioned nodes if autoConnect is not set to false.
191
+ */
187
192
  start(): Promise<void>;
193
+ /**
194
+ * Cancels the discovery process for commissionable devices started with discoverCommissionableDevices().
195
+ */
188
196
  cancelCommissionableDeviceDiscovery(identifierData: CommissionableDeviceIdentifiers, discoveryCapabilities?: TypeFromPartialBitSchema<typeof DiscoveryCapabilitiesBitmap>): void;
197
+ /**
198
+ * Starts to discover commissionable devices.
199
+ * The promise will be fulfilled after the provided timeout or when the discovery is stopped via
200
+ * cancelCommissionableDeviceDiscovery(). The discoveredCallback will be called for each discovered device.
201
+ */
189
202
  discoverCommissionableDevices(identifierData: CommissionableDeviceIdentifiers, discoveryCapabilities?: TypeFromPartialBitSchema<typeof DiscoveryCapabilitiesBitmap>, discoveredCallback?: (device: CommissionableDevice) => void, timeoutSeconds?: number): Promise<CommissionableDevice[]>;
203
+ /**
204
+ * Use this method to reset the Controller storage. The method can only be called if the controller is stopped and
205
+ * will remove all commissioning data and paired nodes from the controller.
206
+ */
190
207
  resetStorage(): Promise<void>;
191
208
  /** Returns active session information for all connected nodes. */
192
209
  getActiveSessionInformation(): {
@@ -200,7 +217,12 @@ export declare class CommissioningController extends MatterNode {
200
217
  lastActiveTimestamp: number | undefined;
201
218
  numberOfActiveSubscriptions: number;
202
219
  }[];
220
+ /** @private */
203
221
  validateAndUpdateFabricLabel(nodeId: NodeId): Promise<void>;
222
+ /**
223
+ * Updates the fabric label for the controller and all connected nodes.
224
+ * The label is used to identify the controller and all connected nodes in the fabric.
225
+ */
204
226
  updateFabricLabel(label: string): Promise<void>;
205
227
  }
206
228
  export declare function configureNetwork(options: {
@@ -1 +1 @@
1
- {"version":3,"file":"CommissioningController.d.ts","sourceRoot":"","sources":["../../src/CommissioningController.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"CommissioningController.d.ts","sourceRoot":"","sources":["../../src/CommissioningController.ts"],"names":[],"mappings":"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"}