@matter/node 0.16.7 → 0.16.8-alpha.0-20260125-38e62bc3e
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/behavior/system/software-update/OtaAnnouncements.d.ts.map +1 -1
- package/dist/cjs/behavior/system/software-update/OtaAnnouncements.js +10 -8
- package/dist/cjs/behavior/system/software-update/OtaAnnouncements.js.map +1 -1
- package/dist/cjs/behaviors/thermostat/ThermostatServer.d.ts.map +1 -1
- package/dist/cjs/behaviors/thermostat/ThermostatServer.js +12 -8
- package/dist/cjs/behaviors/thermostat/ThermostatServer.js.map +1 -1
- package/dist/cjs/node/client/ClientNodeInteraction.d.ts +4 -1
- package/dist/cjs/node/client/ClientNodeInteraction.d.ts.map +1 -1
- package/dist/cjs/node/client/ClientNodeInteraction.js +4 -1
- package/dist/cjs/node/client/ClientNodeInteraction.js.map +1 -1
- package/dist/cjs/node/server/InteractionServer.d.ts +2 -2
- package/dist/cjs/node/server/InteractionServer.d.ts.map +1 -1
- package/dist/cjs/node/server/InteractionServer.js +130 -78
- package/dist/cjs/node/server/InteractionServer.js.map +1 -1
- package/dist/cjs/node/server/OnlineServerInteraction.d.ts +10 -2
- package/dist/cjs/node/server/OnlineServerInteraction.d.ts.map +1 -1
- package/dist/cjs/node/server/OnlineServerInteraction.js +9 -1
- package/dist/cjs/node/server/OnlineServerInteraction.js.map +1 -1
- package/dist/cjs/storage/client/RemoteWriter.d.ts.map +1 -1
- package/dist/cjs/storage/client/RemoteWriter.js +1 -2
- package/dist/cjs/storage/client/RemoteWriter.js.map +1 -1
- package/dist/esm/behavior/system/software-update/OtaAnnouncements.d.ts.map +1 -1
- package/dist/esm/behavior/system/software-update/OtaAnnouncements.js +11 -9
- package/dist/esm/behavior/system/software-update/OtaAnnouncements.js.map +1 -1
- package/dist/esm/behaviors/thermostat/ThermostatServer.d.ts.map +1 -1
- package/dist/esm/behaviors/thermostat/ThermostatServer.js +12 -8
- package/dist/esm/behaviors/thermostat/ThermostatServer.js.map +1 -1
- package/dist/esm/node/client/ClientNodeInteraction.d.ts +4 -1
- package/dist/esm/node/client/ClientNodeInteraction.d.ts.map +1 -1
- package/dist/esm/node/client/ClientNodeInteraction.js +4 -1
- package/dist/esm/node/client/ClientNodeInteraction.js.map +1 -1
- package/dist/esm/node/server/InteractionServer.d.ts +2 -2
- package/dist/esm/node/server/InteractionServer.d.ts.map +1 -1
- package/dist/esm/node/server/InteractionServer.js +130 -78
- package/dist/esm/node/server/InteractionServer.js.map +1 -1
- package/dist/esm/node/server/OnlineServerInteraction.d.ts +10 -2
- package/dist/esm/node/server/OnlineServerInteraction.d.ts.map +1 -1
- package/dist/esm/node/server/OnlineServerInteraction.js +9 -1
- package/dist/esm/node/server/OnlineServerInteraction.js.map +1 -1
- package/dist/esm/storage/client/RemoteWriter.d.ts.map +1 -1
- package/dist/esm/storage/client/RemoteWriter.js +1 -2
- package/dist/esm/storage/client/RemoteWriter.js.map +1 -1
- package/package.json +7 -7
- package/src/behavior/system/software-update/OtaAnnouncements.ts +12 -9
- package/src/behaviors/thermostat/ThermostatServer.ts +15 -9
- package/src/node/client/ClientNodeInteraction.ts +4 -1
- package/src/node/server/InteractionServer.ts +197 -92
- package/src/node/server/OnlineServerInteraction.ts +13 -2
- package/src/storage/client/RemoteWriter.ts +1 -2
|
@@ -261,8 +261,9 @@ class InteractionServer {
|
|
|
261
261
|
payload: this.#executeReadInteraction(readRequest, exchange, message)
|
|
262
262
|
};
|
|
263
263
|
}
|
|
264
|
-
async handleWriteRequest(exchange, writeRequest, message) {
|
|
265
|
-
|
|
264
|
+
async handleWriteRequest(exchange, writeRequest, messenger, message) {
|
|
265
|
+
let { suppressResponse, writeRequests, moreChunkedMessages } = writeRequest;
|
|
266
|
+
const { timedRequest, interactionModelRevision } = writeRequest;
|
|
266
267
|
const sessionType = message.packetHeader.sessionType;
|
|
267
268
|
logger.info(() => [
|
|
268
269
|
"Write",
|
|
@@ -315,23 +316,81 @@ class InteractionServer {
|
|
|
315
316
|
StatusCode.InvalidAction
|
|
316
317
|
);
|
|
317
318
|
}
|
|
318
|
-
|
|
319
|
-
|
|
320
|
-
|
|
321
|
-
|
|
322
|
-
|
|
323
|
-
|
|
324
|
-
|
|
325
|
-
|
|
326
|
-
|
|
327
|
-
|
|
328
|
-
|
|
329
|
-
|
|
330
|
-
|
|
331
|
-
|
|
332
|
-
|
|
333
|
-
|
|
334
|
-
|
|
319
|
+
let previousProcessedAttributePath;
|
|
320
|
+
while (true) {
|
|
321
|
+
const allResponses = new Array();
|
|
322
|
+
let currentBatch = new Array();
|
|
323
|
+
const processBatch = async () => {
|
|
324
|
+
if (currentBatch.length === 0) {
|
|
325
|
+
return;
|
|
326
|
+
}
|
|
327
|
+
const context = this.#prepareOnlineContext(
|
|
328
|
+
exchange,
|
|
329
|
+
message,
|
|
330
|
+
true,
|
|
331
|
+
// always fabric filtered
|
|
332
|
+
receivedWithinTimedInteraction
|
|
333
|
+
);
|
|
334
|
+
const batchRequest = { ...writeRequest, writeRequests: currentBatch, suppressResponse: false };
|
|
335
|
+
const batchResults = await this.#serverInteraction.write(batchRequest, context);
|
|
336
|
+
if (batchResults) {
|
|
337
|
+
allResponses.push(...batchResults);
|
|
338
|
+
}
|
|
339
|
+
currentBatch = [];
|
|
340
|
+
};
|
|
341
|
+
for (const request of writeRequests) {
|
|
342
|
+
const { path } = request;
|
|
343
|
+
const listIndex = path.listIndex;
|
|
344
|
+
if (listIndex === null) {
|
|
345
|
+
if (previousProcessedAttributePath?.endpointId !== path.endpointId || previousProcessedAttributePath?.clusterId !== path.clusterId || previousProcessedAttributePath?.attributeId !== path.attributeId) {
|
|
346
|
+
await processBatch();
|
|
347
|
+
allResponses.push({
|
|
348
|
+
kind: "attr-status",
|
|
349
|
+
path,
|
|
350
|
+
status: Status.Busy
|
|
351
|
+
});
|
|
352
|
+
continue;
|
|
353
|
+
}
|
|
354
|
+
}
|
|
355
|
+
currentBatch.push(request);
|
|
356
|
+
if (path.endpointId !== void 0 && path.clusterId !== void 0 && path.attributeId !== void 0) {
|
|
357
|
+
previousProcessedAttributePath = path;
|
|
358
|
+
}
|
|
359
|
+
}
|
|
360
|
+
await processBatch();
|
|
361
|
+
if (suppressResponse) {
|
|
362
|
+
break;
|
|
363
|
+
}
|
|
364
|
+
const chunkResponse = {
|
|
365
|
+
writeResponses: allResponses.map(({ path, status, clusterStatus }) => ({
|
|
366
|
+
path,
|
|
367
|
+
status: { status, clusterStatus }
|
|
368
|
+
})),
|
|
369
|
+
interactionModelRevision: Specification.INTERACTION_MODEL_REVISION
|
|
370
|
+
};
|
|
371
|
+
await messenger.sendWriteResponse(chunkResponse, {
|
|
372
|
+
logContext: moreChunkedMessages ? "WriteResponse-chunk" : void 0
|
|
373
|
+
});
|
|
374
|
+
if (!moreChunkedMessages) {
|
|
375
|
+
break;
|
|
376
|
+
}
|
|
377
|
+
const nextChunk = await messenger.readNextWriteRequest();
|
|
378
|
+
const nextRequest = nextChunk.writeRequest;
|
|
379
|
+
({ writeRequests, moreChunkedMessages, suppressResponse } = nextRequest);
|
|
380
|
+
logger.info(() => [
|
|
381
|
+
"Write",
|
|
382
|
+
Mark.INBOUND,
|
|
383
|
+
exchange.via,
|
|
384
|
+
Diagnostic.asFlags({ suppressResponse, moreChunkedMessages }),
|
|
385
|
+
Diagnostic.weak(writeRequests.map((req) => this.#node.protocol.inspectPath(req.path)).join(", "))
|
|
386
|
+
]);
|
|
387
|
+
if (suppressResponse) {
|
|
388
|
+
throw new StatusResponseError(
|
|
389
|
+
"Multiple chunked messages and SuppressResponse cannot be used together in write messages",
|
|
390
|
+
StatusCode.InvalidAction
|
|
391
|
+
);
|
|
392
|
+
}
|
|
393
|
+
}
|
|
335
394
|
}
|
|
336
395
|
async handleSubscribeRequest(exchange, request, messenger, message) {
|
|
337
396
|
const {
|
|
@@ -623,79 +682,56 @@ class InteractionServer {
|
|
|
623
682
|
StatusCode.InvalidAction
|
|
624
683
|
);
|
|
625
684
|
}
|
|
685
|
+
const context = this.#prepareOnlineContext(exchange, message, void 0, receivedWithinTimedInteraction);
|
|
626
686
|
const isGroupSession = message.packetHeader.sessionType === SessionType.Group;
|
|
627
|
-
const
|
|
687
|
+
const results = this.#serverInteraction.invoke(request, context);
|
|
688
|
+
if (suppressResponse || isGroupSession) {
|
|
689
|
+
for await (const _chunk of results) ;
|
|
690
|
+
return;
|
|
691
|
+
}
|
|
692
|
+
const currentChunkResponses = new Array();
|
|
693
|
+
const emptyInvokeResponse = {
|
|
628
694
|
suppressResponse: false,
|
|
629
695
|
// Deprecated but must be present
|
|
630
696
|
interactionModelRevision: Specification.INTERACTION_MODEL_REVISION,
|
|
631
|
-
invokeResponses: []
|
|
632
|
-
moreChunkedMessages: invokeRequests.length > 1
|
|
633
|
-
// Assume for now we have multiple responses when having multiple invokes
|
|
697
|
+
invokeResponses: []
|
|
634
698
|
};
|
|
635
|
-
const
|
|
636
|
-
let messageSize =
|
|
637
|
-
let
|
|
638
|
-
const
|
|
639
|
-
invokeResultsProcessed++;
|
|
640
|
-
if (isGroupSession) {
|
|
641
|
-
return;
|
|
642
|
-
}
|
|
699
|
+
const emptyInvokeResponseLength = TlvInvokeResponseForSend.encode(emptyInvokeResponse).byteLength;
|
|
700
|
+
let messageSize = emptyInvokeResponseLength;
|
|
701
|
+
let chunkedTransmissionTerminated = false;
|
|
702
|
+
const sendChunkIfNeeded = async (invokeResponse) => {
|
|
643
703
|
const encodedInvokeResponse = TlvInvokeResponseData.encodeTlv(invokeResponse);
|
|
644
704
|
const invokeResponseBytes = TlvAny.getEncodedByteLength(encodedInvokeResponse);
|
|
645
|
-
if (messageSize + invokeResponseBytes > exchange.maxPayloadSize
|
|
646
|
-
|
|
647
|
-
|
|
648
|
-
|
|
649
|
-
|
|
650
|
-
|
|
651
|
-
|
|
652
|
-
|
|
653
|
-
|
|
654
|
-
|
|
655
|
-
|
|
656
|
-
|
|
657
|
-
|
|
658
|
-
|
|
659
|
-
const moreChunkedMessages = lastMessageProcessed ? void 0 : true;
|
|
660
|
-
await messenger.send(
|
|
661
|
-
MessageType.InvokeResponse,
|
|
662
|
-
TlvInvokeResponseForSend.encode({
|
|
663
|
-
...invokeResponseMessage,
|
|
664
|
-
moreChunkedMessages
|
|
665
|
-
}),
|
|
666
|
-
{
|
|
667
|
-
logContext: {
|
|
668
|
-
invokeMsgFlags: Diagnostic.asFlags({
|
|
669
|
-
suppressResponse,
|
|
670
|
-
moreChunkedMessages
|
|
671
|
-
})
|
|
672
|
-
}
|
|
673
|
-
}
|
|
674
|
-
);
|
|
675
|
-
invokeResponseMessage.invokeResponses = [];
|
|
676
|
-
messageSize = emptyInvokeResponseBytes.byteLength;
|
|
677
|
-
}
|
|
678
|
-
if (!lastMessageProcessed) {
|
|
679
|
-
invokeResultsProcessed--;
|
|
680
|
-
return processResponseResult(invokeResponse);
|
|
705
|
+
if (messageSize + invokeResponseBytes > exchange.maxPayloadSize && currentChunkResponses.length > 0) {
|
|
706
|
+
logger.debug(
|
|
707
|
+
"Invoke (chunk)",
|
|
708
|
+
Mark.OUTBOUND,
|
|
709
|
+
exchange.via,
|
|
710
|
+
Diagnostic.dict({ commands: currentChunkResponses.length })
|
|
711
|
+
);
|
|
712
|
+
const chunkResponse = {
|
|
713
|
+
...emptyInvokeResponse,
|
|
714
|
+
invokeResponses: currentChunkResponses.map((r) => TlvInvokeResponseData.encodeTlv(r))
|
|
715
|
+
};
|
|
716
|
+
if (!await messenger.sendInvokeResponseChunk(chunkResponse)) {
|
|
717
|
+
chunkedTransmissionTerminated = true;
|
|
718
|
+
return;
|
|
681
719
|
}
|
|
682
|
-
|
|
683
|
-
|
|
684
|
-
messageSize += invokeResponseBytes;
|
|
720
|
+
currentChunkResponses.length = 0;
|
|
721
|
+
messageSize = emptyInvokeResponseLength;
|
|
685
722
|
}
|
|
723
|
+
currentChunkResponses.push(invokeResponse);
|
|
724
|
+
messageSize += invokeResponseBytes;
|
|
686
725
|
};
|
|
687
|
-
for await (const chunk of
|
|
688
|
-
|
|
689
|
-
|
|
690
|
-
)) {
|
|
691
|
-
if (suppressResponse) {
|
|
692
|
-
throw new InternalError("Received response that should be suppressed for invoke");
|
|
726
|
+
for await (const chunk of results) {
|
|
727
|
+
if (chunkedTransmissionTerminated) {
|
|
728
|
+
continue;
|
|
693
729
|
}
|
|
694
730
|
for (const data of chunk) {
|
|
695
731
|
switch (data.kind) {
|
|
696
732
|
case "cmd-response": {
|
|
697
733
|
const { path: commandPath, commandRef, data: commandFields } = data;
|
|
698
|
-
await
|
|
734
|
+
await sendChunkIfNeeded({
|
|
699
735
|
command: {
|
|
700
736
|
commandPath,
|
|
701
737
|
commandFields,
|
|
@@ -706,13 +742,29 @@ class InteractionServer {
|
|
|
706
742
|
}
|
|
707
743
|
case "cmd-status": {
|
|
708
744
|
const { path, commandRef, status, clusterStatus } = data;
|
|
709
|
-
await
|
|
745
|
+
await sendChunkIfNeeded({
|
|
710
746
|
status: { commandPath: path, status: { status, clusterStatus }, commandRef }
|
|
711
747
|
});
|
|
748
|
+
break;
|
|
712
749
|
}
|
|
713
750
|
}
|
|
714
751
|
}
|
|
715
752
|
}
|
|
753
|
+
if (!chunkedTransmissionTerminated) {
|
|
754
|
+
if (currentChunkResponses.length > 0) {
|
|
755
|
+
logger.debug(
|
|
756
|
+
"Invoke (final)",
|
|
757
|
+
Mark.OUTBOUND,
|
|
758
|
+
exchange.via,
|
|
759
|
+
Diagnostic.dict({ commands: currentChunkResponses.length })
|
|
760
|
+
);
|
|
761
|
+
}
|
|
762
|
+
const finalResponse = {
|
|
763
|
+
...emptyInvokeResponse,
|
|
764
|
+
invokeResponses: currentChunkResponses.map((r) => TlvInvokeResponseData.encodeTlv(r))
|
|
765
|
+
};
|
|
766
|
+
await messenger.sendInvokeResponse(finalResponse);
|
|
767
|
+
}
|
|
716
768
|
}
|
|
717
769
|
handleTimedRequest(exchange, { timeout, interactionModelRevision }) {
|
|
718
770
|
const interval = Millis(timeout);
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"version": 3,
|
|
3
3
|
"sources": ["../../../../src/node/server/InteractionServer.ts"],
|
|
4
|
-
"mappings": "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",
|
|
4
|
+
"mappings": "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",
|
|
5
5
|
"names": ["subscription"]
|
|
6
6
|
}
|
|
@@ -1,11 +1,19 @@
|
|
|
1
1
|
import { RemoteActorContext } from "#behavior/context/server/RemoteActorContext.js";
|
|
2
|
-
import { Interactable, Invoke, NodeProtocol, Read, ReadResult, Subscribe, SubscribeResult, Write, WriteResult } from "#protocol";
|
|
2
|
+
import { Interactable, Invoke, InvokeResult, NodeProtocol, Read, ReadResult, Subscribe, SubscribeResult, Write, WriteResult } from "#protocol";
|
|
3
3
|
export declare class OnlineServerInteraction implements Interactable<RemoteActorContext.Options> {
|
|
4
4
|
#private;
|
|
5
5
|
constructor(node: NodeProtocol);
|
|
6
6
|
read(request: Read, context: RemoteActorContext.Options): ReadResult;
|
|
7
7
|
subscribe(_request: Subscribe, _context: RemoteActorContext.Options): SubscribeResult;
|
|
8
|
+
/**
|
|
9
|
+
* Process write requests and return results.
|
|
10
|
+
* The caller is responsible for messaging/chunking and list state tracking.
|
|
11
|
+
*/
|
|
8
12
|
write<T extends Write>(request: T, context: RemoteActorContext.Options): WriteResult<T>;
|
|
9
|
-
|
|
13
|
+
/**
|
|
14
|
+
* Process invoke requests and yield results.
|
|
15
|
+
* The caller is responsible for messaging/chunking.
|
|
16
|
+
*/
|
|
17
|
+
invoke(request: Invoke, context: RemoteActorContext.Options): InvokeResult;
|
|
10
18
|
}
|
|
11
19
|
//# sourceMappingURL=OnlineServerInteraction.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"OnlineServerInteraction.d.ts","sourceRoot":"","sources":["../../../../src/node/server/OnlineServerInteraction.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,kBAAkB,EAAE,MAAM,gDAAgD,CAAC;AAEpF,OAAO,EACH,YAAY,EACZ,MAAM,EACN,YAAY,EACZ,IAAI,EACJ,UAAU,EAEV,SAAS,EACT,eAAe,EACf,KAAK,EACL,WAAW,EACd,MAAM,WAAW,CAAC;AAEnB,qBAAa,uBAAwB,YAAW,YAAY,CAAC,kBAAkB,CAAC,OAAO,CAAC;;gBAGxE,IAAI,EAAE,YAAY;IAIvB,IAAI,CAAC,OAAO,EAAE,IAAI,EAAE,OAAO,EAAE,kBAAkB,CAAC,OAAO,GAAG,UAAU;IAW3E,SAAS,CAAC,QAAQ,EAAE,SAAS,EAAE,QAAQ,EAAE,kBAAkB,CAAC,OAAO,GAAG,eAAe;
|
|
1
|
+
{"version":3,"file":"OnlineServerInteraction.d.ts","sourceRoot":"","sources":["../../../../src/node/server/OnlineServerInteraction.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,kBAAkB,EAAE,MAAM,gDAAgD,CAAC;AAEpF,OAAO,EACH,YAAY,EACZ,MAAM,EACN,YAAY,EACZ,YAAY,EACZ,IAAI,EACJ,UAAU,EAEV,SAAS,EACT,eAAe,EACf,KAAK,EACL,WAAW,EACd,MAAM,WAAW,CAAC;AAEnB,qBAAa,uBAAwB,YAAW,YAAY,CAAC,kBAAkB,CAAC,OAAO,CAAC;;gBAGxE,IAAI,EAAE,YAAY;IAIvB,IAAI,CAAC,OAAO,EAAE,IAAI,EAAE,OAAO,EAAE,kBAAkB,CAAC,OAAO,GAAG,UAAU;IAW3E,SAAS,CAAC,QAAQ,EAAE,SAAS,EAAE,QAAQ,EAAE,kBAAkB,CAAC,OAAO,GAAG,eAAe;IAIrF;;;OAGG;IACG,KAAK,CAAC,CAAC,SAAS,KAAK,EAAE,OAAO,EAAE,CAAC,EAAE,OAAO,EAAE,kBAAkB,CAAC,OAAO,GAAG,WAAW,CAAC,CAAC,CAAC;IAI7F;;;OAGG;IACI,MAAM,CAAC,OAAO,EAAE,MAAM,EAAE,OAAO,EAAE,kBAAkB,CAAC,OAAO,GAAG,YAAY;CAapF"}
|
|
@@ -21,9 +21,17 @@ class OnlineServerInteraction {
|
|
|
21
21
|
subscribe(_request, _context) {
|
|
22
22
|
throw new NotImplementedError("subscribe not implemented");
|
|
23
23
|
}
|
|
24
|
+
/**
|
|
25
|
+
* Process write requests and return results.
|
|
26
|
+
* The caller is responsible for messaging/chunking and list state tracking.
|
|
27
|
+
*/
|
|
24
28
|
async write(request, context) {
|
|
25
29
|
return RemoteActorContext(context).act((session) => this.#interaction.write(request, session));
|
|
26
30
|
}
|
|
31
|
+
/**
|
|
32
|
+
* Process invoke requests and yield results.
|
|
33
|
+
* The caller is responsible for messaging/chunking.
|
|
34
|
+
*/
|
|
27
35
|
async *invoke(request, context) {
|
|
28
36
|
const session = RemoteActorContext({ ...context, command: true }).open();
|
|
29
37
|
try {
|
|
@@ -33,7 +41,7 @@ class OnlineServerInteraction {
|
|
|
33
41
|
} catch (error) {
|
|
34
42
|
await session.reject(error);
|
|
35
43
|
}
|
|
36
|
-
|
|
44
|
+
await session.resolve(void 0);
|
|
37
45
|
}
|
|
38
46
|
}
|
|
39
47
|
export {
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"version": 3,
|
|
3
3
|
"sources": ["../../../../src/node/server/OnlineServerInteraction.ts"],
|
|
4
|
-
"mappings": "AAAA,SAAS,0BAA0B;AACnC,SAAS,2BAA2B;AACpC;AAAA,
|
|
4
|
+
"mappings": "AAAA,SAAS,0BAA0B;AACnC,SAAS,2BAA2B;AACpC;AAAA,EAOI;AAAA,OAKG;AAEA,MAAM,wBAA4E;AAAA,EAC5E;AAAA,EAET,YAAY,MAAoB;AAC5B,SAAK,eAAe,IAAI,kBAAkB,IAAI;AAAA,EAClD;AAAA,EAEA,OAAO,KAAK,SAAe,SAAiD;AACxE,UAAM,UAAU,mBAAmB,OAAO,EAAE,cAAc;AAC1D,QAAI;AACA,uBAAiB,UAAU,KAAK,aAAa,KAAK,SAAS,OAAO,GAAG;AACjE,cAAM;AAAA,MACV;AAAA,IACJ,UAAE;AACE,cAAQ,OAAO,OAAO,EAAE;AAAA,IAC5B;AAAA,EACJ;AAAA,EAEA,UAAU,UAAqB,UAAuD;AAClF,UAAM,IAAI,oBAAoB,2BAA2B;AAAA,EAC7D;AAAA;AAAA;AAAA;AAAA;AAAA,EAMA,MAAM,MAAuB,SAAY,SAAqD;AAC1F,WAAO,mBAAmB,OAAO,EAAE,IAAI,aAAW,KAAK,aAAa,MAAM,SAAS,OAAO,CAAC;AAAA,EAC/F;AAAA;AAAA;AAAA;AAAA;AAAA,EAMA,OAAO,OAAO,SAAiB,SAAmD;AAC9E,UAAM,UAAU,mBAAmB,EAAE,GAAG,SAAS,SAAS,KAAK,CAAC,EAAE,KAAK;AAEvE,QAAI;AACA,uBAAiB,SAAS,KAAK,aAAa,OAAO,SAAS,OAAO,GAAG;AAClE,cAAM;AAAA,MACV;AAAA,IACJ,SAAS,OAAO;AACZ,YAAM,QAAQ,OAAO,KAAK;AAAA,IAC9B;AAEA,UAAM,QAAQ,QAAQ,MAAS;AAAA,EACnC;AACJ;",
|
|
5
5
|
"names": []
|
|
6
6
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"RemoteWriter.d.ts","sourceRoot":"","sources":["../../../../src/storage/client/RemoteWriter.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAGH,OAAO,EAAE,eAAe,EAAE,MAAM,iCAAiC,CAAC;AAClE,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,qBAAqB,CAAC;AACtD,OAAO,EAAsB,KAAK,GAAG,EAAE,MAAM,WAAW,CAAC;AACzD,OAAO,KAAK,EAA0B,cAAc,EAAE,MAAM,QAAQ,CAAC;AAGrE;;;;;GAKG;AACH,MAAM,WAAW,YAAY;IACzB,CAAC,OAAO,EAAE,YAAY,CAAC,OAAO,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;CAClD;AAID,wBAAgB,YAAY,CAAC,IAAI,EAAE,UAAU,EAAE,SAAS,EAAE,eAAe,GAAG,YAAY,
|
|
1
|
+
{"version":3,"file":"RemoteWriter.d.ts","sourceRoot":"","sources":["../../../../src/storage/client/RemoteWriter.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAGH,OAAO,EAAE,eAAe,EAAE,MAAM,iCAAiC,CAAC;AAClE,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,qBAAqB,CAAC;AACtD,OAAO,EAAsB,KAAK,GAAG,EAAE,MAAM,WAAW,CAAC;AACzD,OAAO,KAAK,EAA0B,cAAc,EAAE,MAAM,QAAQ,CAAC;AAGrE;;;;;GAKG;AACH,MAAM,WAAW,YAAY;IACzB,CAAC,OAAO,EAAE,YAAY,CAAC,OAAO,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;CAClD;AAID,wBAAgB,YAAY,CAAC,IAAI,EAAE,UAAU,EAAE,SAAS,EAAE,eAAe,GAAG,YAAY,CAkCvF;AAED,yBAAiB,YAAY,CAAC;IAC1B,UAAiB,qBAAqB;QAClC,MAAM,EAAE,cAAc,CAAC;QACvB,UAAU,EAAE,MAAM,CAAC;QACnB,MAAM,EAAE,GAAG,CAAC,MAAM,CAAC;KACtB;IAED,UAAiB,OAAQ,SAAQ,KAAK,CAAC,qBAAqB,CAAC;KAAG;CACnE"}
|
|
@@ -34,8 +34,7 @@ function RemoteWriter(node, structure) {
|
|
|
34
34
|
}
|
|
35
35
|
}
|
|
36
36
|
const write = Write(...attrWrites);
|
|
37
|
-
|
|
38
|
-
WriteResult.assertSuccess(response);
|
|
37
|
+
WriteResult.assertSuccess(await node.interaction.write(write));
|
|
39
38
|
};
|
|
40
39
|
}
|
|
41
40
|
function attrsFor(cluster) {
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"version": 3,
|
|
3
3
|
"sources": ["../../../../src/storage/client/RemoteWriter.ts"],
|
|
4
|
-
"mappings": "AAAA;AAAA;AAAA;AAAA;AAAA;AAMA,SAAS,qBAAqB;AAG9B,SAAS,OAAO,mBAA6B;AAc7C,MAAM,YAAY,oBAAI,QAA4D;AAE3E,SAAS,aAAa,MAAkB,WAA0C;AACrF,SAAO,eAAe,YAAY,SAA+B;AAC7D,UAAM,aAAa,MAAuB;AAC1C,eAAW,EAAE,QAAQ,YAAY,OAAO,KAAK,SAAS;AAClD,YAAM,UAAU,UAAU,WAAW,QAAQ,OAAO,SAAS,UAAU,CAAc;AACrF,UAAI,YAAY,QAAW;AACvB,cAAM,IAAI,cAAc,+CAA+C,UAAU,EAAE;AAAA,MACvF;AACA,YAAM,QAAQ,SAAS,OAAO;AAE9B,iBAAW,MAAM,QAAQ;AACrB,cAAM,OAAO,MAAM,EAAE;AACrB,YAAI,SAAS,QAAW;AACpB,cAAI,GAAG,WAAW,IAAI,GAAG;AACrB;AAAA,UACJ;AAEA,gBAAM,IAAI,cAAc,kCAAkC,EAAE,QAAQ,UAAU,EAAE;AAAA,QACpF;AAEA,mBAAW;AAAA,UACP,MAAM,UAAU;AAAA,YACZ,UAAU;AAAA,YACV;AAAA,YACA,YAAY,CAAC,MAAM,EAAE,CAAC;AAAA,YACtB,OAAO,OAAO,EAAE;AAAA,UACpB,CAAC;AAAA,QACL;AAAA,MACJ;AAAA,IACJ;AAEA,UAAM,QAAQ,MAAM,GAAG,UAAU;AACjC,
|
|
4
|
+
"mappings": "AAAA;AAAA;AAAA;AAAA;AAAA;AAMA,SAAS,qBAAqB;AAG9B,SAAS,OAAO,mBAA6B;AAc7C,MAAM,YAAY,oBAAI,QAA4D;AAE3E,SAAS,aAAa,MAAkB,WAA0C;AACrF,SAAO,eAAe,YAAY,SAA+B;AAC7D,UAAM,aAAa,MAAuB;AAC1C,eAAW,EAAE,QAAQ,YAAY,OAAO,KAAK,SAAS;AAClD,YAAM,UAAU,UAAU,WAAW,QAAQ,OAAO,SAAS,UAAU,CAAc;AACrF,UAAI,YAAY,QAAW;AACvB,cAAM,IAAI,cAAc,+CAA+C,UAAU,EAAE;AAAA,MACvF;AACA,YAAM,QAAQ,SAAS,OAAO;AAE9B,iBAAW,MAAM,QAAQ;AACrB,cAAM,OAAO,MAAM,EAAE;AACrB,YAAI,SAAS,QAAW;AACpB,cAAI,GAAG,WAAW,IAAI,GAAG;AACrB;AAAA,UACJ;AAEA,gBAAM,IAAI,cAAc,kCAAkC,EAAE,QAAQ,UAAU,EAAE;AAAA,QACpF;AAEA,mBAAW;AAAA,UACP,MAAM,UAAU;AAAA,YACZ,UAAU;AAAA,YACV;AAAA,YACA,YAAY,CAAC,MAAM,EAAE,CAAC;AAAA,YACtB,OAAO,OAAO,EAAE;AAAA,UACpB,CAAC;AAAA,QACL;AAAA,MACJ;AAAA,IACJ;AAEA,UAAM,QAAQ,MAAM,GAAG,UAAU;AACjC,gBAAY,cAAc,MAAM,KAAK,YAAY,MAAM,KAAK,CAAC;AAAA,EACjE;AACJ;AAYA,SAAS,SAAS,SAAsB;AACpC,MAAI,QAAQ,UAAU,IAAI,OAAO;AACjC,MAAI,OAAO;AACP,WAAO;AAAA,EACX;AACA,UAAQ,OAAO,YAAY,OAAO,OAAO,QAAQ,UAAU,EAAE,IAAI,UAAQ,CAAC,KAAK,IAAI,IAAI,CAAC,CAAC;AACzF,YAAU,IAAI,SAAS,KAAK;AAC5B,SAAO;AACX;",
|
|
5
5
|
"names": []
|
|
6
6
|
}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@matter/node",
|
|
3
|
-
"version": "0.16.
|
|
3
|
+
"version": "0.16.8-alpha.0-20260125-38e62bc3e",
|
|
4
4
|
"description": "API for building Matter nodes",
|
|
5
5
|
"keywords": [
|
|
6
6
|
"iot",
|
|
@@ -42,14 +42,14 @@
|
|
|
42
42
|
"#*": "./src/*"
|
|
43
43
|
},
|
|
44
44
|
"dependencies": {
|
|
45
|
-
"@matter/general": "0.16.
|
|
46
|
-
"@matter/model": "0.16.
|
|
47
|
-
"@matter/types": "0.16.
|
|
48
|
-
"@matter/protocol": "0.16.
|
|
45
|
+
"@matter/general": "0.16.8-alpha.0-20260125-38e62bc3e",
|
|
46
|
+
"@matter/model": "0.16.8-alpha.0-20260125-38e62bc3e",
|
|
47
|
+
"@matter/types": "0.16.8-alpha.0-20260125-38e62bc3e",
|
|
48
|
+
"@matter/protocol": "0.16.8-alpha.0-20260125-38e62bc3e"
|
|
49
49
|
},
|
|
50
50
|
"devDependencies": {
|
|
51
|
-
"@matter/tools": "0.16.
|
|
52
|
-
"@matter/testing": "0.16.
|
|
51
|
+
"@matter/tools": "0.16.8-alpha.0-20260125-38e62bc3e",
|
|
52
|
+
"@matter/testing": "0.16.8-alpha.0-20260125-38e62bc3e"
|
|
53
53
|
},
|
|
54
54
|
"files": [
|
|
55
55
|
"dist/**/*",
|
|
@@ -14,7 +14,7 @@ import { Duration, Hours, isDeepEqual, Logger, MatterError, Millis, Minutes, Sec
|
|
|
14
14
|
import type { ClientNode } from "#node/ClientNode.js";
|
|
15
15
|
import { Node } from "#node/Node.js";
|
|
16
16
|
import type { ServerNode } from "#node/ServerNode.js";
|
|
17
|
-
import { Fabric, PeerAddress, Write } from "#protocol";
|
|
17
|
+
import { Fabric, PeerAddress, Write, WriteResult } from "#protocol";
|
|
18
18
|
import { EndpointNumber, FabricIndex, NodeId, VendorId } from "#types";
|
|
19
19
|
|
|
20
20
|
const logger = new Logger("OTAAnnouncements");
|
|
@@ -170,16 +170,19 @@ export class OtaAnnouncements {
|
|
|
170
170
|
) {
|
|
171
171
|
try {
|
|
172
172
|
// Fabric scoped attribute, so we just overwrite our value
|
|
173
|
-
|
|
174
|
-
|
|
175
|
-
Write
|
|
176
|
-
|
|
177
|
-
|
|
178
|
-
|
|
179
|
-
|
|
180
|
-
|
|
173
|
+
WriteResult.assertSuccess(
|
|
174
|
+
await peer.interaction.write(
|
|
175
|
+
Write(
|
|
176
|
+
Write.Attribute({
|
|
177
|
+
endpoint: otaEndpoint.number,
|
|
178
|
+
cluster: OtaSoftwareUpdateRequestor.Complete,
|
|
179
|
+
attributes: ["defaultOtaProviders"],
|
|
180
|
+
value: [consideredOtaProviderRecord],
|
|
181
|
+
}),
|
|
182
|
+
),
|
|
181
183
|
),
|
|
182
184
|
);
|
|
185
|
+
|
|
183
186
|
logger.debug(
|
|
184
187
|
`${existingOtaProviderRecord === undefined ? "Added" : "Updated"} default OTA provider for`,
|
|
185
188
|
peerAddress,
|
|
@@ -335,7 +335,9 @@ export class ThermostatBaseServer extends ThermostatBehaviorLogicBase {
|
|
|
335
335
|
|
|
336
336
|
// TODO Add support for correct Time handling, leave disabled for now
|
|
337
337
|
if (this.state.setpointHoldExpiryTimestamp === undefined) {
|
|
338
|
-
//this.
|
|
338
|
+
//this.agent.asLocalActor(() => {
|
|
339
|
+
// this.state.setpointHoldExpiryTimestamp = null;
|
|
340
|
+
//});
|
|
339
341
|
} else {
|
|
340
342
|
logger.warn(
|
|
341
343
|
"Handling for setpointHoldExpiryTimestamp is not yet implemented. To use this attribute you need to install the needed logic yourself",
|
|
@@ -405,7 +407,9 @@ export class ThermostatBaseServer extends ThermostatBehaviorLogicBase {
|
|
|
405
407
|
}
|
|
406
408
|
break;
|
|
407
409
|
}
|
|
408
|
-
this.
|
|
410
|
+
this.agent.asLocalActor(() => {
|
|
411
|
+
this.state.thermostatRunningMode = newState;
|
|
412
|
+
});
|
|
409
413
|
}
|
|
410
414
|
|
|
411
415
|
/**
|
|
@@ -1000,13 +1004,15 @@ export class ThermostatBaseServer extends ThermostatBehaviorLogicBase {
|
|
|
1000
1004
|
|
|
1001
1005
|
#handleSystemModeChange(newMode: Thermostat.SystemMode) {
|
|
1002
1006
|
if (this.state.thermostatRunningMode !== undefined && newMode !== Thermostat.SystemMode.Auto) {
|
|
1003
|
-
|
|
1004
|
-
|
|
1005
|
-
|
|
1006
|
-
|
|
1007
|
-
|
|
1008
|
-
|
|
1009
|
-
|
|
1007
|
+
this.agent.asLocalActor(() => {
|
|
1008
|
+
if (newMode === Thermostat.SystemMode.Off) {
|
|
1009
|
+
this.state.thermostatRunningMode = Thermostat.ThermostatRunningMode.Off;
|
|
1010
|
+
} else if (newMode === Thermostat.SystemMode.Heat) {
|
|
1011
|
+
this.state.thermostatRunningMode = Thermostat.ThermostatRunningMode.Heat;
|
|
1012
|
+
} else if (newMode === Thermostat.SystemMode.Cool) {
|
|
1013
|
+
this.state.thermostatRunningMode = Thermostat.ThermostatRunningMode.Cool;
|
|
1014
|
+
}
|
|
1015
|
+
});
|
|
1010
1016
|
}
|
|
1011
1017
|
}
|
|
1012
1018
|
|
|
@@ -128,7 +128,10 @@ export class ClientNodeInteraction implements Interactable<ActionContext> {
|
|
|
128
128
|
|
|
129
129
|
/**
|
|
130
130
|
* Invoke a command remotely on the node.
|
|
131
|
-
* The returned command response is returned as response chunks
|
|
131
|
+
* The returned command response is returned as response chunks (attr-status).
|
|
132
|
+
*
|
|
133
|
+
* When the number of commands exceeds the peer's MaxPathsPerInvoke limit (or 1 for older nodes),
|
|
134
|
+
* commands are split across multiple parallel exchanges automatically by ClientInteraction.
|
|
132
135
|
*/
|
|
133
136
|
async *invoke(request: ClientInvoke, context?: ActionContext): DecodedInvokeResult {
|
|
134
137
|
// For commands, we always ignore the queue because the user is responsible for managing that themselves
|