@matter/protocol 0.11.9-alpha.0-20241208-09ad57f78 → 0.11.9
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/interaction/ServerSubscription.d.ts.map +1 -1
- package/dist/cjs/interaction/ServerSubscription.js +12 -6
- package/dist/cjs/interaction/ServerSubscription.js.map +1 -1
- package/dist/cjs/mdns/MdnsScanner.d.ts +2 -3
- package/dist/cjs/mdns/MdnsScanner.d.ts.map +1 -1
- package/dist/cjs/mdns/MdnsScanner.js +43 -27
- package/dist/cjs/mdns/MdnsScanner.js.map +1 -1
- package/dist/esm/interaction/ServerSubscription.d.ts.map +1 -1
- package/dist/esm/interaction/ServerSubscription.js +12 -6
- package/dist/esm/interaction/ServerSubscription.js.map +1 -1
- package/dist/esm/mdns/MdnsScanner.d.ts +2 -3
- package/dist/esm/mdns/MdnsScanner.d.ts.map +1 -1
- package/dist/esm/mdns/MdnsScanner.js +43 -27
- package/dist/esm/mdns/MdnsScanner.js.map +1 -1
- package/package.json +6 -6
- package/src/interaction/ServerSubscription.ts +15 -9
- package/src/mdns/MdnsScanner.ts +65 -42
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ServerSubscription.d.ts","sourceRoot":"","sources":["../../../src/interaction/ServerSubscription.ts"],"names":[],"mappings":"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
|
|
1
|
+
{"version":3,"file":"ServerSubscription.d.ts","sourceRoot":"","sources":["../../../src/interaction/ServerSubscription.ts"],"names":[],"mappings":"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"}
|
|
@@ -448,7 +448,11 @@ class ServerSubscription extends import_Subscription.Subscription {
|
|
|
448
448
|
}
|
|
449
449
|
attributes.push({ path, value, version, schema: attribute.schema, attribute });
|
|
450
450
|
} catch (error) {
|
|
451
|
-
|
|
451
|
+
if (import_types.StatusResponseError.is(error, import_types.StatusCode.UnsupportedAccess)) {
|
|
452
|
+
logger.error(`Permission denied reading attribute ${this.#structure.resolveAttributeName(path)}`);
|
|
453
|
+
} else {
|
|
454
|
+
logger.error(`Error reading attribute ${this.#structure.resolveAttributeName(path)}:`, error);
|
|
455
|
+
}
|
|
452
456
|
}
|
|
453
457
|
}
|
|
454
458
|
const attributeReportsPayload = attributes.map(
|
|
@@ -608,11 +612,13 @@ class ServerSubscription extends import_Subscription.Subscription {
|
|
|
608
612
|
);
|
|
609
613
|
const exchange = this.#context.initiateExchange(this.peerAddress, import_types.INTERACTION_PROTOCOL_ID);
|
|
610
614
|
if (exchange === void 0) return;
|
|
611
|
-
|
|
612
|
-
|
|
613
|
-
|
|
614
|
-
|
|
615
|
-
|
|
615
|
+
if (attributes.length) {
|
|
616
|
+
logger.debug(
|
|
617
|
+
`Subscription attribute changes for ID ${this.id}: ${attributes.map(
|
|
618
|
+
({ path, value, version }) => `${this.#structure.resolveAttributeName(path)}=${import_general.Logger.toJSON(value)} (${version})`
|
|
619
|
+
).join(", ")}`
|
|
620
|
+
);
|
|
621
|
+
}
|
|
616
622
|
const messenger = new import_InteractionMessenger.InteractionServerMessenger(exchange);
|
|
617
623
|
try {
|
|
618
624
|
if (attributes.length === 0 && events.length === 0) {
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"version": 3,
|
|
3
3
|
"sources": ["../../../src/interaction/ServerSubscription.ts"],
|
|
4
|
-
"mappings": "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",
|
|
4
|
+
"mappings": "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",
|
|
5
5
|
"names": ["ServerSubscriptionConfig", "path", "value"]
|
|
6
6
|
}
|
|
@@ -46,9 +46,8 @@ export declare class MdnsScanner implements Scanner {
|
|
|
46
46
|
findCommissionableDevicesContinuously(identifier: CommissionableDeviceIdentifiers, callback: (device: CommissionableDevice) => void, timeoutSeconds?: number, cancelSignal?: Promise<void>): Promise<CommissionableDevice[]>;
|
|
47
47
|
getDiscoveredCommissionableDevices(identifier: CommissionableDeviceIdentifiers): {
|
|
48
48
|
addresses: ServerAddressIp[];
|
|
49
|
-
|
|
50
|
-
|
|
51
|
-
ttl: number;
|
|
49
|
+
discoveredAt: undefined;
|
|
50
|
+
ttl: undefined;
|
|
52
51
|
VP?: string | undefined;
|
|
53
52
|
DT?: number | undefined;
|
|
54
53
|
DN?: string | undefined;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"MdnsScanner.d.ts","sourceRoot":"","sources":["../../../src/mdns/MdnsScanner.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO,EAEH,WAAW,EACX,UAAU,EASV,QAAQ,EAGR,OAAO,
|
|
1
|
+
{"version":3,"file":"MdnsScanner.d.ts","sourceRoot":"","sources":["../../../src/mdns/MdnsScanner.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO,EAEH,WAAW,EACX,UAAU,EASV,QAAQ,EAGR,OAAO,EACP,eAAe,EAIf,kBAAkB,EAGrB,MAAM,UAAU,CAAC;AAClB,OAAO,EAAE,MAAM,EAAY,MAAM,QAAQ,CAAC;AAC1C,OAAO,EACH,oBAAoB,EACpB,+BAA+B,EAC/B,aAAa,EACb,iBAAiB,EACjB,OAAO,EACV,MAAM,sBAAsB,CAAC;AAC9B,OAAO,EAAE,MAAM,EAAE,MAAM,qBAAqB,CAAC;AAkB7C,KAAK,4BAA4B,GAAG,eAAe,GAAG,QAAQ,CAAC;AAmB/D;;;GAGG;AACH,qBAAa,WAAY,YAAW,OAAO;;IACvC,IAAI,IAAI,gBAEP;WAEY,MAAM,CAAC,OAAO,EAAE,OAAO,EAAE,OAAO,CAAC,EAAE;QAAE,UAAU,CAAC,EAAE,OAAO,CAAC;QAAC,YAAY,CAAC,EAAE,MAAM,CAAA;KAAE;gBAkCnF,eAAe,EAAE,kBAAkB,EAAE,UAAU,CAAC,EAAE,OAAO;IAkPrE;;;OAGG;IACG,qBAAqB,CACvB,EAAE,aAAa,EAAE,EAAE,MAAM,EACzB,MAAM,EAAE,MAAM,EACd,cAAc,CAAC,EAAE,MAAM,EACvB,qBAAqB,UAAQ,GAC9B,OAAO,CAAC,iBAAiB,GAAG,SAAS,CAAC;IAyBzC,gCAAgC,CAAC,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,cAAc,UAAO;IAKtF,mCAAmC,CAAC,UAAU,EAAE,+BAA+B,EAAE,cAAc,UAAO;IAKtG,8BAA8B,CAAC,EAAE,aAAa,EAAE,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM;IAoLxE;;;;;;;OAOG;IACG,yBAAyB,CAC3B,UAAU,EAAE,+BAA+B,EAC3C,cAAc,SAAI,EAClB,qBAAqB,UAAQ,GAC9B,OAAO,CAAC,oBAAoB,EAAE,CAAC;IAkBlC;;;;;OAKG;IACG,qCAAqC,CACvC,UAAU,EAAE,+BAA+B,EAC3C,QAAQ,EAAE,CAAC,MAAM,EAAE,oBAAoB,KAAK,IAAI,EAChD,cAAc,CAAC,EAAE,MAAM,EACvB,YAAY,CAAC,EAAE,OAAO,CAAC,IAAI,CAAC,GAC7B,OAAO,CAAC,oBAAoB,EAAE,CAAC;IAwClC,kCAAkC,CAAC,UAAU,EAAE,+BAA+B;mBA5NvD,eAAe,EAAE;;;;;;;;;;;;;;;;;oBAhYxB,MAAM;YACd,MAAM;YACN,MAAM;YACN,MAAM;;IA6lBd;;OAEG;IACG,KAAK;IA8YX,MAAM,CAAC,wBAAwB,CAAC,IAAI,EAAE,aAAa;IAgBnD,MAAM,CAAC,wBAAwB,CAAC,SAAS,EAAE,GAAG,CAAC,MAAM,EAAE,4BAA4B,CAAC;CASvF"}
|
|
@@ -31,6 +31,7 @@ var import_MdnsServer = require("./MdnsServer.js");
|
|
|
31
31
|
* SPDX-License-Identifier: Apache-2.0
|
|
32
32
|
*/
|
|
33
33
|
const logger = import_general.Logger.get("MdnsScanner");
|
|
34
|
+
const MDNS_EXPIRY_GRACE_PERIOD_FACTOR = 1.05;
|
|
34
35
|
const START_ANNOUNCE_INTERVAL_SECONDS = 1.5;
|
|
35
36
|
class MdnsScanner {
|
|
36
37
|
get type() {
|
|
@@ -71,6 +72,9 @@ class MdnsScanner {
|
|
|
71
72
|
() => this.#expire()
|
|
72
73
|
).start();
|
|
73
74
|
}
|
|
75
|
+
#effectiveTTL(ttl) {
|
|
76
|
+
return Math.ceil(ttl * MDNS_EXPIRY_GRACE_PERIOD_FACTOR);
|
|
77
|
+
}
|
|
74
78
|
/**
|
|
75
79
|
* Sends out one DNS-SD query for all collected announce records and start a timer for the next query with doubled
|
|
76
80
|
* interval, maximum 60min, as per MDNS specs. The already known answers are tried to be sent in the query as long
|
|
@@ -331,7 +335,7 @@ class MdnsScanner {
|
|
|
331
335
|
} else if (Object.keys(identifier).length === 0) {
|
|
332
336
|
foundRecords.push(...storedRecords.filter(({ CM }) => CM === 1 || CM === 2));
|
|
333
337
|
}
|
|
334
|
-
return foundRecords.map((record) => {
|
|
338
|
+
return foundRecords.filter(({ addresses }) => addresses.size > 0).map((record) => {
|
|
335
339
|
return {
|
|
336
340
|
...record,
|
|
337
341
|
addresses: this.#sortServerEntries(Array.from(record.addresses.values())).map(({ ip, port }) => ({
|
|
@@ -339,7 +343,8 @@ class MdnsScanner {
|
|
|
339
343
|
port,
|
|
340
344
|
type: "udp"
|
|
341
345
|
})),
|
|
342
|
-
|
|
346
|
+
discoveredAt: void 0,
|
|
347
|
+
ttl: void 0
|
|
343
348
|
};
|
|
344
349
|
});
|
|
345
350
|
}
|
|
@@ -478,7 +483,8 @@ class MdnsScanner {
|
|
|
478
483
|
*/
|
|
479
484
|
async findCommissionableDevicesContinuously(identifier, callback, timeoutSeconds, cancelSignal) {
|
|
480
485
|
const discoveredDevices = /* @__PURE__ */ new Set();
|
|
481
|
-
const
|
|
486
|
+
const now = import_general.Time.nowMs();
|
|
487
|
+
const discoveryEndTime = timeoutSeconds ? now + timeoutSeconds * 1e3 : void 0;
|
|
482
488
|
const queryId = this.#buildCommissionableQueryIdentifier(identifier);
|
|
483
489
|
this.#setQueryRecords(queryId, this.#getCommissionableQueryRecords(identifier));
|
|
484
490
|
let canceled = false;
|
|
@@ -501,7 +507,7 @@ class MdnsScanner {
|
|
|
501
507
|
});
|
|
502
508
|
let remainingTime;
|
|
503
509
|
if (discoveryEndTime !== void 0) {
|
|
504
|
-
const remainingTime2 = Math.ceil((discoveryEndTime -
|
|
510
|
+
const remainingTime2 = Math.ceil((discoveryEndTime - now) / 1e3);
|
|
505
511
|
if (remainingTime2 <= 0) {
|
|
506
512
|
break;
|
|
507
513
|
}
|
|
@@ -570,6 +576,7 @@ class MdnsScanner {
|
|
|
570
576
|
}
|
|
571
577
|
#handleOperationalTxtRecord(record, netInterface) {
|
|
572
578
|
const { name: matterName, value, ttl } = record;
|
|
579
|
+
const discoveredAt = import_general.Time.nowMs();
|
|
573
580
|
if (ttl === 0) {
|
|
574
581
|
if (this.#operationalDeviceRecords.has(matterName)) {
|
|
575
582
|
logger.debug(
|
|
@@ -586,7 +593,7 @@ class MdnsScanner {
|
|
|
586
593
|
if (device !== void 0) {
|
|
587
594
|
device = {
|
|
588
595
|
...device,
|
|
589
|
-
discoveredAt
|
|
596
|
+
discoveredAt,
|
|
590
597
|
ttl: ttl * 1e3,
|
|
591
598
|
...txtData
|
|
592
599
|
};
|
|
@@ -598,7 +605,7 @@ class MdnsScanner {
|
|
|
598
605
|
device = {
|
|
599
606
|
deviceIdentifier: matterName,
|
|
600
607
|
addresses: /* @__PURE__ */ new Map(),
|
|
601
|
-
discoveredAt
|
|
608
|
+
discoveredAt,
|
|
602
609
|
ttl: ttl * 1e3,
|
|
603
610
|
...txtData
|
|
604
611
|
};
|
|
@@ -611,6 +618,7 @@ class MdnsScanner {
|
|
|
611
618
|
ttl,
|
|
612
619
|
value: { target, port }
|
|
613
620
|
} = record;
|
|
621
|
+
const discoveredAt = import_general.Time.nowMs();
|
|
614
622
|
if (ttl === 0) {
|
|
615
623
|
if (this.#operationalDeviceRecords.has(matterName)) {
|
|
616
624
|
logger.debug(
|
|
@@ -625,7 +633,7 @@ class MdnsScanner {
|
|
|
625
633
|
const device = this.#operationalDeviceRecords.get(matterName) ?? {
|
|
626
634
|
deviceIdentifier: matterName,
|
|
627
635
|
addresses: /* @__PURE__ */ new Map(),
|
|
628
|
-
discoveredAt
|
|
636
|
+
discoveredAt,
|
|
629
637
|
ttl: ttl * 1e3
|
|
630
638
|
};
|
|
631
639
|
const { addresses } = device;
|
|
@@ -638,9 +646,10 @@ class MdnsScanner {
|
|
|
638
646
|
addresses.delete(ip);
|
|
639
647
|
continue;
|
|
640
648
|
}
|
|
641
|
-
const
|
|
642
|
-
|
|
643
|
-
|
|
649
|
+
const address = addresses.get(ip) ?? { ip, port, type: "udp" };
|
|
650
|
+
address.discoveredAt = discoveredAt;
|
|
651
|
+
address.ttl = ttl2 * 1e3;
|
|
652
|
+
addresses.set(address.ip, address);
|
|
644
653
|
}
|
|
645
654
|
device.addresses = addresses;
|
|
646
655
|
if (!this.#operationalDeviceRecords.has(matterName)) {
|
|
@@ -682,10 +691,14 @@ class MdnsScanner {
|
|
|
682
691
|
}
|
|
683
692
|
continue;
|
|
684
693
|
}
|
|
685
|
-
const
|
|
686
|
-
if (
|
|
687
|
-
|
|
688
|
-
parsedRecord
|
|
694
|
+
const txtRecord = this.#parseCommissionableTxtRecord(record);
|
|
695
|
+
if (txtRecord === void 0) continue;
|
|
696
|
+
const instanceId = this.#extractInstanceId(name);
|
|
697
|
+
const parsedRecord = {
|
|
698
|
+
...txtRecord,
|
|
699
|
+
instanceId,
|
|
700
|
+
deviceIdentifier: instanceId
|
|
701
|
+
};
|
|
689
702
|
if (parsedRecord.D !== void 0 && parsedRecord.SD === void 0) {
|
|
690
703
|
parsedRecord.SD = parsedRecord.D >> 8 & 15;
|
|
691
704
|
}
|
|
@@ -801,37 +814,40 @@ class MdnsScanner {
|
|
|
801
814
|
#parseCommissionableTxtRecord(record) {
|
|
802
815
|
const { value, ttl } = record;
|
|
803
816
|
if (!Array.isArray(value)) return void 0;
|
|
804
|
-
const
|
|
817
|
+
const txtRecord = this.#parseTxtRecord(record);
|
|
818
|
+
if (txtRecord === void 0 || txtRecord.D === void 0 || txtRecord.CM === void 0) {
|
|
819
|
+
return void 0;
|
|
820
|
+
}
|
|
821
|
+
return {
|
|
805
822
|
addresses: /* @__PURE__ */ new Map(),
|
|
806
|
-
|
|
807
|
-
|
|
823
|
+
discoveredAt: import_general.Time.nowMs(),
|
|
824
|
+
ttl: ttl * 1e3,
|
|
825
|
+
...txtRecord
|
|
808
826
|
};
|
|
809
|
-
if (result.D === void 0 || result.CM === void 0) return void 0;
|
|
810
|
-
return result;
|
|
811
827
|
}
|
|
812
828
|
#expire() {
|
|
813
829
|
const now = import_general.Time.nowMs();
|
|
814
830
|
[...this.#operationalDeviceRecords.entries()].forEach(([recordKey, { addresses, discoveredAt, ttl }]) => {
|
|
815
|
-
const expires = discoveredAt + ttl;
|
|
816
|
-
if (now
|
|
831
|
+
const expires = discoveredAt + this.#effectiveTTL(ttl);
|
|
832
|
+
if (now <= expires) {
|
|
817
833
|
[...addresses.entries()].forEach(([key, { discoveredAt: discoveredAt2, ttl: ttl2 }]) => {
|
|
818
|
-
if (now < discoveredAt2 + ttl2) return;
|
|
834
|
+
if (now < discoveredAt2 + this.#effectiveTTL(ttl2)) return;
|
|
819
835
|
addresses.delete(key);
|
|
820
836
|
});
|
|
821
837
|
}
|
|
822
|
-
if (now
|
|
838
|
+
if (now > expires && !addresses.size) {
|
|
823
839
|
this.#operationalDeviceRecords.delete(recordKey);
|
|
824
840
|
}
|
|
825
841
|
});
|
|
826
842
|
[...this.#commissionableDeviceRecords.entries()].forEach(([recordKey, { addresses, discoveredAt, ttl }]) => {
|
|
827
|
-
const expires = discoveredAt + ttl;
|
|
828
|
-
if (now
|
|
843
|
+
const expires = discoveredAt + this.#effectiveTTL(ttl);
|
|
844
|
+
if (now <= expires) {
|
|
829
845
|
[...addresses.entries()].forEach(([key, { discoveredAt: discoveredAt2, ttl: ttl2 }]) => {
|
|
830
|
-
if (now < discoveredAt2 + ttl2) return;
|
|
846
|
+
if (now < discoveredAt2 + this.#effectiveTTL(ttl2)) return;
|
|
831
847
|
addresses.delete(key);
|
|
832
848
|
});
|
|
833
849
|
}
|
|
834
|
-
if (now
|
|
850
|
+
if (now > expires && !addresses.size) {
|
|
835
851
|
this.#commissionableDeviceRecords.delete(recordKey);
|
|
836
852
|
}
|
|
837
853
|
});
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"version": 3,
|
|
3
3
|
"sources": ["../../../src/mdns/MdnsScanner.ts"],
|
|
4
|
-
"mappings": "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",
|
|
4
|
+
"mappings": "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",
|
|
5
5
|
"names": ["queries", "answers", "remainingTime", "ttl", "queryId", "value", "discoveredAt"]
|
|
6
6
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ServerSubscription.d.ts","sourceRoot":"","sources":["../../../src/interaction/ServerSubscription.ts"],"names":[],"mappings":"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
|
|
1
|
+
{"version":3,"file":"ServerSubscription.d.ts","sourceRoot":"","sources":["../../../src/interaction/ServerSubscription.ts"],"names":[],"mappings":"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"}
|
|
@@ -438,7 +438,11 @@ class ServerSubscription extends Subscription {
|
|
|
438
438
|
}
|
|
439
439
|
attributes.push({ path, value, version, schema: attribute.schema, attribute });
|
|
440
440
|
} catch (error) {
|
|
441
|
-
|
|
441
|
+
if (StatusResponseError.is(error, StatusCode.UnsupportedAccess)) {
|
|
442
|
+
logger.error(`Permission denied reading attribute ${this.#structure.resolveAttributeName(path)}`);
|
|
443
|
+
} else {
|
|
444
|
+
logger.error(`Error reading attribute ${this.#structure.resolveAttributeName(path)}:`, error);
|
|
445
|
+
}
|
|
442
446
|
}
|
|
443
447
|
}
|
|
444
448
|
const attributeReportsPayload = attributes.map(
|
|
@@ -598,11 +602,13 @@ class ServerSubscription extends Subscription {
|
|
|
598
602
|
);
|
|
599
603
|
const exchange = this.#context.initiateExchange(this.peerAddress, INTERACTION_PROTOCOL_ID);
|
|
600
604
|
if (exchange === void 0) return;
|
|
601
|
-
|
|
602
|
-
|
|
603
|
-
|
|
604
|
-
|
|
605
|
-
|
|
605
|
+
if (attributes.length) {
|
|
606
|
+
logger.debug(
|
|
607
|
+
`Subscription attribute changes for ID ${this.id}: ${attributes.map(
|
|
608
|
+
({ path, value, version }) => `${this.#structure.resolveAttributeName(path)}=${Logger.toJSON(value)} (${version})`
|
|
609
|
+
).join(", ")}`
|
|
610
|
+
);
|
|
611
|
+
}
|
|
606
612
|
const messenger = new InteractionServerMessenger(exchange);
|
|
607
613
|
try {
|
|
608
614
|
if (attributes.length === 0 && events.length === 0) {
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"version": 3,
|
|
3
3
|
"sources": ["../../../src/interaction/ServerSubscription.ts"],
|
|
4
|
-
"mappings": "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",
|
|
4
|
+
"mappings": "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",
|
|
5
5
|
"names": ["ServerSubscriptionConfig", "path", "value"]
|
|
6
6
|
}
|
|
@@ -46,9 +46,8 @@ export declare class MdnsScanner implements Scanner {
|
|
|
46
46
|
findCommissionableDevicesContinuously(identifier: CommissionableDeviceIdentifiers, callback: (device: CommissionableDevice) => void, timeoutSeconds?: number, cancelSignal?: Promise<void>): Promise<CommissionableDevice[]>;
|
|
47
47
|
getDiscoveredCommissionableDevices(identifier: CommissionableDeviceIdentifiers): {
|
|
48
48
|
addresses: ServerAddressIp[];
|
|
49
|
-
|
|
50
|
-
|
|
51
|
-
ttl: number;
|
|
49
|
+
discoveredAt: undefined;
|
|
50
|
+
ttl: undefined;
|
|
52
51
|
VP?: string | undefined;
|
|
53
52
|
DT?: number | undefined;
|
|
54
53
|
DN?: string | undefined;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"MdnsScanner.d.ts","sourceRoot":"","sources":["../../../src/mdns/MdnsScanner.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO,EAEH,WAAW,EACX,UAAU,EASV,QAAQ,EAGR,OAAO,
|
|
1
|
+
{"version":3,"file":"MdnsScanner.d.ts","sourceRoot":"","sources":["../../../src/mdns/MdnsScanner.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO,EAEH,WAAW,EACX,UAAU,EASV,QAAQ,EAGR,OAAO,EACP,eAAe,EAIf,kBAAkB,EAGrB,MAAM,UAAU,CAAC;AAClB,OAAO,EAAE,MAAM,EAAY,MAAM,QAAQ,CAAC;AAC1C,OAAO,EACH,oBAAoB,EACpB,+BAA+B,EAC/B,aAAa,EACb,iBAAiB,EACjB,OAAO,EACV,MAAM,sBAAsB,CAAC;AAC9B,OAAO,EAAE,MAAM,EAAE,MAAM,qBAAqB,CAAC;AAkB7C,KAAK,4BAA4B,GAAG,eAAe,GAAG,QAAQ,CAAC;AAmB/D;;;GAGG;AACH,qBAAa,WAAY,YAAW,OAAO;;IACvC,IAAI,IAAI,gBAEP;WAEY,MAAM,CAAC,OAAO,EAAE,OAAO,EAAE,OAAO,CAAC,EAAE;QAAE,UAAU,CAAC,EAAE,OAAO,CAAC;QAAC,YAAY,CAAC,EAAE,MAAM,CAAA;KAAE;gBAkCnF,eAAe,EAAE,kBAAkB,EAAE,UAAU,CAAC,EAAE,OAAO;IAkPrE;;;OAGG;IACG,qBAAqB,CACvB,EAAE,aAAa,EAAE,EAAE,MAAM,EACzB,MAAM,EAAE,MAAM,EACd,cAAc,CAAC,EAAE,MAAM,EACvB,qBAAqB,UAAQ,GAC9B,OAAO,CAAC,iBAAiB,GAAG,SAAS,CAAC;IAyBzC,gCAAgC,CAAC,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,cAAc,UAAO;IAKtF,mCAAmC,CAAC,UAAU,EAAE,+BAA+B,EAAE,cAAc,UAAO;IAKtG,8BAA8B,CAAC,EAAE,aAAa,EAAE,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM;IAoLxE;;;;;;;OAOG;IACG,yBAAyB,CAC3B,UAAU,EAAE,+BAA+B,EAC3C,cAAc,SAAI,EAClB,qBAAqB,UAAQ,GAC9B,OAAO,CAAC,oBAAoB,EAAE,CAAC;IAkBlC;;;;;OAKG;IACG,qCAAqC,CACvC,UAAU,EAAE,+BAA+B,EAC3C,QAAQ,EAAE,CAAC,MAAM,EAAE,oBAAoB,KAAK,IAAI,EAChD,cAAc,CAAC,EAAE,MAAM,EACvB,YAAY,CAAC,EAAE,OAAO,CAAC,IAAI,CAAC,GAC7B,OAAO,CAAC,oBAAoB,EAAE,CAAC;IAwClC,kCAAkC,CAAC,UAAU,EAAE,+BAA+B;mBA5NvD,eAAe,EAAE;;;;;;;;;;;;;;;;;oBAhYxB,MAAM;YACd,MAAM;YACN,MAAM;YACN,MAAM;;IA6lBd;;OAEG;IACG,KAAK;IA8YX,MAAM,CAAC,wBAAwB,CAAC,IAAI,EAAE,aAAa;IAgBnD,MAAM,CAAC,wBAAwB,CAAC,SAAS,EAAE,GAAG,CAAC,MAAM,EAAE,4BAA4B,CAAC;CASvF"}
|
|
@@ -33,6 +33,7 @@ import {
|
|
|
33
33
|
} from "./MdnsConsts.js";
|
|
34
34
|
import { MDNS_BROADCAST_IPV4, MDNS_BROADCAST_IPV6, MDNS_BROADCAST_PORT } from "./MdnsServer.js";
|
|
35
35
|
const logger = Logger.get("MdnsScanner");
|
|
36
|
+
const MDNS_EXPIRY_GRACE_PERIOD_FACTOR = 1.05;
|
|
36
37
|
const START_ANNOUNCE_INTERVAL_SECONDS = 1.5;
|
|
37
38
|
class MdnsScanner {
|
|
38
39
|
get type() {
|
|
@@ -73,6 +74,9 @@ class MdnsScanner {
|
|
|
73
74
|
() => this.#expire()
|
|
74
75
|
).start();
|
|
75
76
|
}
|
|
77
|
+
#effectiveTTL(ttl) {
|
|
78
|
+
return Math.ceil(ttl * MDNS_EXPIRY_GRACE_PERIOD_FACTOR);
|
|
79
|
+
}
|
|
76
80
|
/**
|
|
77
81
|
* Sends out one DNS-SD query for all collected announce records and start a timer for the next query with doubled
|
|
78
82
|
* interval, maximum 60min, as per MDNS specs. The already known answers are tried to be sent in the query as long
|
|
@@ -333,7 +337,7 @@ class MdnsScanner {
|
|
|
333
337
|
} else if (Object.keys(identifier).length === 0) {
|
|
334
338
|
foundRecords.push(...storedRecords.filter(({ CM }) => CM === 1 || CM === 2));
|
|
335
339
|
}
|
|
336
|
-
return foundRecords.map((record) => {
|
|
340
|
+
return foundRecords.filter(({ addresses }) => addresses.size > 0).map((record) => {
|
|
337
341
|
return {
|
|
338
342
|
...record,
|
|
339
343
|
addresses: this.#sortServerEntries(Array.from(record.addresses.values())).map(({ ip, port }) => ({
|
|
@@ -341,7 +345,8 @@ class MdnsScanner {
|
|
|
341
345
|
port,
|
|
342
346
|
type: "udp"
|
|
343
347
|
})),
|
|
344
|
-
|
|
348
|
+
discoveredAt: void 0,
|
|
349
|
+
ttl: void 0
|
|
345
350
|
};
|
|
346
351
|
});
|
|
347
352
|
}
|
|
@@ -480,7 +485,8 @@ class MdnsScanner {
|
|
|
480
485
|
*/
|
|
481
486
|
async findCommissionableDevicesContinuously(identifier, callback, timeoutSeconds, cancelSignal) {
|
|
482
487
|
const discoveredDevices = /* @__PURE__ */ new Set();
|
|
483
|
-
const
|
|
488
|
+
const now = Time.nowMs();
|
|
489
|
+
const discoveryEndTime = timeoutSeconds ? now + timeoutSeconds * 1e3 : void 0;
|
|
484
490
|
const queryId = this.#buildCommissionableQueryIdentifier(identifier);
|
|
485
491
|
this.#setQueryRecords(queryId, this.#getCommissionableQueryRecords(identifier));
|
|
486
492
|
let canceled = false;
|
|
@@ -503,7 +509,7 @@ class MdnsScanner {
|
|
|
503
509
|
});
|
|
504
510
|
let remainingTime;
|
|
505
511
|
if (discoveryEndTime !== void 0) {
|
|
506
|
-
const remainingTime2 = Math.ceil((discoveryEndTime -
|
|
512
|
+
const remainingTime2 = Math.ceil((discoveryEndTime - now) / 1e3);
|
|
507
513
|
if (remainingTime2 <= 0) {
|
|
508
514
|
break;
|
|
509
515
|
}
|
|
@@ -572,6 +578,7 @@ class MdnsScanner {
|
|
|
572
578
|
}
|
|
573
579
|
#handleOperationalTxtRecord(record, netInterface) {
|
|
574
580
|
const { name: matterName, value, ttl } = record;
|
|
581
|
+
const discoveredAt = Time.nowMs();
|
|
575
582
|
if (ttl === 0) {
|
|
576
583
|
if (this.#operationalDeviceRecords.has(matterName)) {
|
|
577
584
|
logger.debug(
|
|
@@ -588,7 +595,7 @@ class MdnsScanner {
|
|
|
588
595
|
if (device !== void 0) {
|
|
589
596
|
device = {
|
|
590
597
|
...device,
|
|
591
|
-
discoveredAt
|
|
598
|
+
discoveredAt,
|
|
592
599
|
ttl: ttl * 1e3,
|
|
593
600
|
...txtData
|
|
594
601
|
};
|
|
@@ -600,7 +607,7 @@ class MdnsScanner {
|
|
|
600
607
|
device = {
|
|
601
608
|
deviceIdentifier: matterName,
|
|
602
609
|
addresses: /* @__PURE__ */ new Map(),
|
|
603
|
-
discoveredAt
|
|
610
|
+
discoveredAt,
|
|
604
611
|
ttl: ttl * 1e3,
|
|
605
612
|
...txtData
|
|
606
613
|
};
|
|
@@ -613,6 +620,7 @@ class MdnsScanner {
|
|
|
613
620
|
ttl,
|
|
614
621
|
value: { target, port }
|
|
615
622
|
} = record;
|
|
623
|
+
const discoveredAt = Time.nowMs();
|
|
616
624
|
if (ttl === 0) {
|
|
617
625
|
if (this.#operationalDeviceRecords.has(matterName)) {
|
|
618
626
|
logger.debug(
|
|
@@ -627,7 +635,7 @@ class MdnsScanner {
|
|
|
627
635
|
const device = this.#operationalDeviceRecords.get(matterName) ?? {
|
|
628
636
|
deviceIdentifier: matterName,
|
|
629
637
|
addresses: /* @__PURE__ */ new Map(),
|
|
630
|
-
discoveredAt
|
|
638
|
+
discoveredAt,
|
|
631
639
|
ttl: ttl * 1e3
|
|
632
640
|
};
|
|
633
641
|
const { addresses } = device;
|
|
@@ -640,9 +648,10 @@ class MdnsScanner {
|
|
|
640
648
|
addresses.delete(ip);
|
|
641
649
|
continue;
|
|
642
650
|
}
|
|
643
|
-
const
|
|
644
|
-
|
|
645
|
-
|
|
651
|
+
const address = addresses.get(ip) ?? { ip, port, type: "udp" };
|
|
652
|
+
address.discoveredAt = discoveredAt;
|
|
653
|
+
address.ttl = ttl2 * 1e3;
|
|
654
|
+
addresses.set(address.ip, address);
|
|
646
655
|
}
|
|
647
656
|
device.addresses = addresses;
|
|
648
657
|
if (!this.#operationalDeviceRecords.has(matterName)) {
|
|
@@ -684,10 +693,14 @@ class MdnsScanner {
|
|
|
684
693
|
}
|
|
685
694
|
continue;
|
|
686
695
|
}
|
|
687
|
-
const
|
|
688
|
-
if (
|
|
689
|
-
|
|
690
|
-
parsedRecord
|
|
696
|
+
const txtRecord = this.#parseCommissionableTxtRecord(record);
|
|
697
|
+
if (txtRecord === void 0) continue;
|
|
698
|
+
const instanceId = this.#extractInstanceId(name);
|
|
699
|
+
const parsedRecord = {
|
|
700
|
+
...txtRecord,
|
|
701
|
+
instanceId,
|
|
702
|
+
deviceIdentifier: instanceId
|
|
703
|
+
};
|
|
691
704
|
if (parsedRecord.D !== void 0 && parsedRecord.SD === void 0) {
|
|
692
705
|
parsedRecord.SD = parsedRecord.D >> 8 & 15;
|
|
693
706
|
}
|
|
@@ -803,37 +816,40 @@ class MdnsScanner {
|
|
|
803
816
|
#parseCommissionableTxtRecord(record) {
|
|
804
817
|
const { value, ttl } = record;
|
|
805
818
|
if (!Array.isArray(value)) return void 0;
|
|
806
|
-
const
|
|
819
|
+
const txtRecord = this.#parseTxtRecord(record);
|
|
820
|
+
if (txtRecord === void 0 || txtRecord.D === void 0 || txtRecord.CM === void 0) {
|
|
821
|
+
return void 0;
|
|
822
|
+
}
|
|
823
|
+
return {
|
|
807
824
|
addresses: /* @__PURE__ */ new Map(),
|
|
808
|
-
|
|
809
|
-
|
|
825
|
+
discoveredAt: Time.nowMs(),
|
|
826
|
+
ttl: ttl * 1e3,
|
|
827
|
+
...txtRecord
|
|
810
828
|
};
|
|
811
|
-
if (result.D === void 0 || result.CM === void 0) return void 0;
|
|
812
|
-
return result;
|
|
813
829
|
}
|
|
814
830
|
#expire() {
|
|
815
831
|
const now = Time.nowMs();
|
|
816
832
|
[...this.#operationalDeviceRecords.entries()].forEach(([recordKey, { addresses, discoveredAt, ttl }]) => {
|
|
817
|
-
const expires = discoveredAt + ttl;
|
|
818
|
-
if (now
|
|
833
|
+
const expires = discoveredAt + this.#effectiveTTL(ttl);
|
|
834
|
+
if (now <= expires) {
|
|
819
835
|
[...addresses.entries()].forEach(([key, { discoveredAt: discoveredAt2, ttl: ttl2 }]) => {
|
|
820
|
-
if (now < discoveredAt2 + ttl2) return;
|
|
836
|
+
if (now < discoveredAt2 + this.#effectiveTTL(ttl2)) return;
|
|
821
837
|
addresses.delete(key);
|
|
822
838
|
});
|
|
823
839
|
}
|
|
824
|
-
if (now
|
|
840
|
+
if (now > expires && !addresses.size) {
|
|
825
841
|
this.#operationalDeviceRecords.delete(recordKey);
|
|
826
842
|
}
|
|
827
843
|
});
|
|
828
844
|
[...this.#commissionableDeviceRecords.entries()].forEach(([recordKey, { addresses, discoveredAt, ttl }]) => {
|
|
829
|
-
const expires = discoveredAt + ttl;
|
|
830
|
-
if (now
|
|
845
|
+
const expires = discoveredAt + this.#effectiveTTL(ttl);
|
|
846
|
+
if (now <= expires) {
|
|
831
847
|
[...addresses.entries()].forEach(([key, { discoveredAt: discoveredAt2, ttl: ttl2 }]) => {
|
|
832
|
-
if (now < discoveredAt2 + ttl2) return;
|
|
848
|
+
if (now < discoveredAt2 + this.#effectiveTTL(ttl2)) return;
|
|
833
849
|
addresses.delete(key);
|
|
834
850
|
});
|
|
835
851
|
}
|
|
836
|
-
if (now
|
|
852
|
+
if (now > expires && !addresses.size) {
|
|
837
853
|
this.#commissionableDeviceRecords.delete(recordKey);
|
|
838
854
|
}
|
|
839
855
|
});
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"version": 3,
|
|
3
3
|
"sources": ["../../../src/mdns/MdnsScanner.ts"],
|
|
4
|
-
"mappings": "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",
|
|
4
|
+
"mappings": "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",
|
|
5
5
|
"names": ["queries", "answers", "remainingTime", "ttl", "queryId", "value", "discoveredAt"]
|
|
6
6
|
}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@matter/protocol",
|
|
3
|
-
"version": "0.11.9
|
|
3
|
+
"version": "0.11.9",
|
|
4
4
|
"description": "Low-level APIs for Matter interaction",
|
|
5
5
|
"keywords": [
|
|
6
6
|
"iot",
|
|
@@ -40,14 +40,14 @@
|
|
|
40
40
|
"#*": "./src/*"
|
|
41
41
|
},
|
|
42
42
|
"dependencies": {
|
|
43
|
-
"@matter/general": "0.11.9
|
|
44
|
-
"@matter/model": "0.11.9
|
|
45
|
-
"@matter/types": "0.11.9
|
|
43
|
+
"@matter/general": "0.11.9",
|
|
44
|
+
"@matter/model": "0.11.9",
|
|
45
|
+
"@matter/types": "0.11.9",
|
|
46
46
|
"@noble/curves": "^1.7.0"
|
|
47
47
|
},
|
|
48
48
|
"devDependencies": {
|
|
49
|
-
"@matter/tools": "0.11.9
|
|
50
|
-
"@matter/testing": "0.11.9
|
|
49
|
+
"@matter/tools": "0.11.9",
|
|
50
|
+
"@matter/testing": "0.11.9"
|
|
51
51
|
},
|
|
52
52
|
"files": [
|
|
53
53
|
"dist/**/*",
|
|
@@ -653,7 +653,11 @@ export class ServerSubscription extends Subscription {
|
|
|
653
653
|
|
|
654
654
|
attributes.push({ path, value, version, schema: attribute.schema, attribute });
|
|
655
655
|
} catch (error) {
|
|
656
|
-
|
|
656
|
+
if (StatusResponseError.is(error, StatusCode.UnsupportedAccess)) {
|
|
657
|
+
logger.error(`Permission denied reading attribute ${this.#structure.resolveAttributeName(path)}`);
|
|
658
|
+
} else {
|
|
659
|
+
logger.error(`Error reading attribute ${this.#structure.resolveAttributeName(path)}:`, error);
|
|
660
|
+
}
|
|
657
661
|
}
|
|
658
662
|
}
|
|
659
663
|
const attributeReportsPayload: AttributeReportPayload[] = attributes.map(
|
|
@@ -845,14 +849,16 @@ export class ServerSubscription extends Subscription {
|
|
|
845
849
|
);
|
|
846
850
|
const exchange = this.#context.initiateExchange(this.peerAddress, INTERACTION_PROTOCOL_ID);
|
|
847
851
|
if (exchange === undefined) return;
|
|
848
|
-
|
|
849
|
-
|
|
850
|
-
.
|
|
851
|
-
(
|
|
852
|
-
|
|
853
|
-
|
|
854
|
-
|
|
855
|
-
|
|
852
|
+
if (attributes.length) {
|
|
853
|
+
logger.debug(
|
|
854
|
+
`Subscription attribute changes for ID ${this.id}: ${attributes
|
|
855
|
+
.map(
|
|
856
|
+
({ path, value, version }) =>
|
|
857
|
+
`${this.#structure.resolveAttributeName(path)}=${Logger.toJSON(value)} (${version})`,
|
|
858
|
+
)
|
|
859
|
+
.join(", ")}`,
|
|
860
|
+
); // TODO Format path better using endpoint structure
|
|
861
|
+
}
|
|
856
862
|
const messenger = new InteractionServerMessenger(exchange);
|
|
857
863
|
|
|
858
864
|
try {
|
package/src/mdns/MdnsScanner.ts
CHANGED
|
@@ -20,7 +20,6 @@ import {
|
|
|
20
20
|
Logger,
|
|
21
21
|
MAX_MDNS_MESSAGE_SIZE,
|
|
22
22
|
Network,
|
|
23
|
-
ServerAddress,
|
|
24
23
|
ServerAddressIp,
|
|
25
24
|
SrvRecordValue,
|
|
26
25
|
Time,
|
|
@@ -53,6 +52,8 @@ import { MDNS_BROADCAST_IPV4, MDNS_BROADCAST_IPV6, MDNS_BROADCAST_PORT } from ".
|
|
|
53
52
|
|
|
54
53
|
const logger = Logger.get("MdnsScanner");
|
|
55
54
|
|
|
55
|
+
const MDNS_EXPIRY_GRACE_PERIOD_FACTOR = 1.05;
|
|
56
|
+
|
|
56
57
|
type MatterServerRecordWithExpire = ServerAddressIp & Lifespan;
|
|
57
58
|
|
|
58
59
|
type CommissionableDeviceRecordWithExpire = Omit<CommissionableDevice, "addresses"> &
|
|
@@ -126,6 +127,10 @@ export class MdnsScanner implements Scanner {
|
|
|
126
127
|
).start();
|
|
127
128
|
}
|
|
128
129
|
|
|
130
|
+
#effectiveTTL(ttl: number) {
|
|
131
|
+
return Math.ceil(ttl * MDNS_EXPIRY_GRACE_PERIOD_FACTOR);
|
|
132
|
+
}
|
|
133
|
+
|
|
129
134
|
/**
|
|
130
135
|
* Sends out one DNS-SD query for all collected announce records and start a timer for the next query with doubled
|
|
131
136
|
* interval, maximum 60min, as per MDNS specs. The already known answers are tried to be sent in the query as long
|
|
@@ -429,17 +434,20 @@ export class MdnsScanner implements Scanner {
|
|
|
429
434
|
foundRecords.push(...storedRecords.filter(({ CM }) => CM === 1 || CM === 2));
|
|
430
435
|
}
|
|
431
436
|
|
|
432
|
-
return foundRecords
|
|
433
|
-
|
|
434
|
-
|
|
435
|
-
|
|
436
|
-
|
|
437
|
-
port
|
|
438
|
-
|
|
439
|
-
|
|
440
|
-
|
|
441
|
-
|
|
442
|
-
|
|
437
|
+
return foundRecords
|
|
438
|
+
.filter(({ addresses }) => addresses.size > 0)
|
|
439
|
+
.map(record => {
|
|
440
|
+
return {
|
|
441
|
+
...record,
|
|
442
|
+
addresses: this.#sortServerEntries(Array.from(record.addresses.values())).map(({ ip, port }) => ({
|
|
443
|
+
ip,
|
|
444
|
+
port,
|
|
445
|
+
type: "udp",
|
|
446
|
+
})) as ServerAddressIp[],
|
|
447
|
+
discoveredAt: undefined,
|
|
448
|
+
ttl: undefined,
|
|
449
|
+
};
|
|
450
|
+
});
|
|
443
451
|
}
|
|
444
452
|
|
|
445
453
|
/**
|
|
@@ -617,8 +625,9 @@ export class MdnsScanner implements Scanner {
|
|
|
617
625
|
cancelSignal?: Promise<void>,
|
|
618
626
|
): Promise<CommissionableDevice[]> {
|
|
619
627
|
const discoveredDevices = new Set<string>();
|
|
628
|
+
const now = Time.nowMs();
|
|
620
629
|
|
|
621
|
-
const discoveryEndTime = timeoutSeconds ?
|
|
630
|
+
const discoveryEndTime = timeoutSeconds ? now + timeoutSeconds * 1000 : undefined;
|
|
622
631
|
const queryId = this.#buildCommissionableQueryIdentifier(identifier);
|
|
623
632
|
this.#setQueryRecords(queryId, this.#getCommissionableQueryRecords(identifier));
|
|
624
633
|
|
|
@@ -644,7 +653,7 @@ export class MdnsScanner implements Scanner {
|
|
|
644
653
|
|
|
645
654
|
let remainingTime;
|
|
646
655
|
if (discoveryEndTime !== undefined) {
|
|
647
|
-
const remainingTime = Math.ceil((discoveryEndTime -
|
|
656
|
+
const remainingTime = Math.ceil((discoveryEndTime - now) / 1000);
|
|
648
657
|
if (remainingTime <= 0) {
|
|
649
658
|
break;
|
|
650
659
|
}
|
|
@@ -736,6 +745,7 @@ export class MdnsScanner implements Scanner {
|
|
|
736
745
|
|
|
737
746
|
#handleOperationalTxtRecord(record: DnsRecord<any>, netInterface: string) {
|
|
738
747
|
const { name: matterName, value, ttl } = record as DnsRecord<string[]>;
|
|
748
|
+
const discoveredAt = Time.nowMs();
|
|
739
749
|
|
|
740
750
|
// we got an expiry info, so we can remove the record if we know it already and are done
|
|
741
751
|
if (ttl === 0) {
|
|
@@ -755,7 +765,7 @@ export class MdnsScanner implements Scanner {
|
|
|
755
765
|
if (device !== undefined) {
|
|
756
766
|
device = {
|
|
757
767
|
...device,
|
|
758
|
-
discoveredAt
|
|
768
|
+
discoveredAt,
|
|
759
769
|
ttl: ttl * 1000,
|
|
760
770
|
...txtData,
|
|
761
771
|
};
|
|
@@ -767,7 +777,7 @@ export class MdnsScanner implements Scanner {
|
|
|
767
777
|
device = {
|
|
768
778
|
deviceIdentifier: matterName,
|
|
769
779
|
addresses: new Map<string, MatterServerRecordWithExpire>(),
|
|
770
|
-
discoveredAt
|
|
780
|
+
discoveredAt,
|
|
771
781
|
ttl: ttl * 1000,
|
|
772
782
|
...txtData,
|
|
773
783
|
};
|
|
@@ -787,6 +797,7 @@ export class MdnsScanner implements Scanner {
|
|
|
787
797
|
ttl,
|
|
788
798
|
value: { target, port },
|
|
789
799
|
} = record;
|
|
800
|
+
const discoveredAt = Time.nowMs();
|
|
790
801
|
|
|
791
802
|
// we got an expiry info, so we can remove the record if we know it already and are done
|
|
792
803
|
if (ttl === 0) {
|
|
@@ -804,7 +815,7 @@ export class MdnsScanner implements Scanner {
|
|
|
804
815
|
const device = this.#operationalDeviceRecords.get(matterName) ?? {
|
|
805
816
|
deviceIdentifier: matterName,
|
|
806
817
|
addresses: new Map<string, MatterServerRecordWithExpire>(),
|
|
807
|
-
discoveredAt
|
|
818
|
+
discoveredAt,
|
|
808
819
|
ttl: ttl * 1000,
|
|
809
820
|
};
|
|
810
821
|
const { addresses } = device;
|
|
@@ -817,10 +828,11 @@ export class MdnsScanner implements Scanner {
|
|
|
817
828
|
addresses.delete(ip);
|
|
818
829
|
continue;
|
|
819
830
|
}
|
|
820
|
-
const
|
|
821
|
-
|
|
831
|
+
const address = addresses.get(ip) ?? ({ ip, port, type: "udp" } as MatterServerRecordWithExpire);
|
|
832
|
+
address.discoveredAt = discoveredAt;
|
|
833
|
+
address.ttl = ttl * 1000;
|
|
822
834
|
|
|
823
|
-
addresses.set(
|
|
835
|
+
addresses.set(address.ip, address);
|
|
824
836
|
}
|
|
825
837
|
device.addresses = addresses;
|
|
826
838
|
if (!this.#operationalDeviceRecords.has(matterName)) {
|
|
@@ -869,10 +881,14 @@ export class MdnsScanner implements Scanner {
|
|
|
869
881
|
}
|
|
870
882
|
continue;
|
|
871
883
|
}
|
|
872
|
-
const
|
|
873
|
-
if (
|
|
874
|
-
|
|
875
|
-
parsedRecord
|
|
884
|
+
const txtRecord = this.#parseCommissionableTxtRecord(record);
|
|
885
|
+
if (txtRecord === undefined) continue;
|
|
886
|
+
const instanceId = this.#extractInstanceId(name);
|
|
887
|
+
const parsedRecord = {
|
|
888
|
+
...txtRecord,
|
|
889
|
+
instanceId,
|
|
890
|
+
deviceIdentifier: instanceId,
|
|
891
|
+
} as CommissionableDeviceRecordWithExpire;
|
|
876
892
|
if (parsedRecord.D !== undefined && parsedRecord.SD === undefined) {
|
|
877
893
|
parsedRecord.SD = (parsedRecord.D >> 8) & 0x0f;
|
|
878
894
|
}
|
|
@@ -973,7 +989,7 @@ export class MdnsScanner implements Scanner {
|
|
|
973
989
|
}
|
|
974
990
|
}
|
|
975
991
|
|
|
976
|
-
#parseTxtRecord(record: DnsRecord<any>): DiscoveryData | undefined {
|
|
992
|
+
#parseTxtRecord(record: DnsRecord<any>): (DiscoveryData & { D?: number; CM?: number }) | undefined {
|
|
977
993
|
const { value } = record as DnsRecord<string[]>;
|
|
978
994
|
const result = {} as any;
|
|
979
995
|
if (Array.isArray(value)) {
|
|
@@ -1004,42 +1020,49 @@ export class MdnsScanner implements Scanner {
|
|
|
1004
1020
|
return result;
|
|
1005
1021
|
}
|
|
1006
1022
|
|
|
1007
|
-
#parseCommissionableTxtRecord(record: DnsRecord<any>): CommissionableDeviceRecordWithExpire | undefined {
|
|
1023
|
+
#parseCommissionableTxtRecord(record: DnsRecord<any>): Partial<CommissionableDeviceRecordWithExpire> | undefined {
|
|
1008
1024
|
const { value, ttl } = record as DnsRecord<string[]>;
|
|
1009
1025
|
if (!Array.isArray(value)) return undefined;
|
|
1010
|
-
const
|
|
1011
|
-
|
|
1012
|
-
|
|
1013
|
-
|
|
1014
|
-
}
|
|
1015
|
-
|
|
1016
|
-
|
|
1026
|
+
const txtRecord = this.#parseTxtRecord(record);
|
|
1027
|
+
if (txtRecord === undefined || txtRecord.D === undefined || txtRecord.CM === undefined) {
|
|
1028
|
+
// Required data fields need to be existing
|
|
1029
|
+
return undefined;
|
|
1030
|
+
}
|
|
1031
|
+
return {
|
|
1032
|
+
addresses: new Map<string, MatterServerRecordWithExpire>(),
|
|
1033
|
+
discoveredAt: Time.nowMs(),
|
|
1034
|
+
ttl: ttl * 1000,
|
|
1035
|
+
...txtRecord,
|
|
1036
|
+
};
|
|
1017
1037
|
}
|
|
1018
1038
|
|
|
1019
1039
|
#expire() {
|
|
1020
1040
|
const now = Time.nowMs();
|
|
1021
1041
|
[...this.#operationalDeviceRecords.entries()].forEach(([recordKey, { addresses, discoveredAt, ttl }]) => {
|
|
1022
|
-
const expires = discoveredAt + ttl;
|
|
1023
|
-
if (now
|
|
1042
|
+
const expires = discoveredAt + this.#effectiveTTL(ttl);
|
|
1043
|
+
if (now <= expires) {
|
|
1044
|
+
// Only check expired IPs if not device itself has expired
|
|
1024
1045
|
[...addresses.entries()].forEach(([key, { discoveredAt, ttl }]) => {
|
|
1025
|
-
if (now < discoveredAt + ttl) return;
|
|
1046
|
+
if (now < discoveredAt + this.#effectiveTTL(ttl)) return; // not expired yet
|
|
1026
1047
|
addresses.delete(key);
|
|
1027
1048
|
});
|
|
1028
1049
|
}
|
|
1029
|
-
if (now
|
|
1050
|
+
if (now > expires && !addresses.size) {
|
|
1051
|
+
// device expired and also has no adresses anymore
|
|
1030
1052
|
this.#operationalDeviceRecords.delete(recordKey);
|
|
1031
1053
|
}
|
|
1032
1054
|
});
|
|
1033
1055
|
[...this.#commissionableDeviceRecords.entries()].forEach(([recordKey, { addresses, discoveredAt, ttl }]) => {
|
|
1034
|
-
const expires = discoveredAt + ttl;
|
|
1035
|
-
if (now
|
|
1036
|
-
//
|
|
1056
|
+
const expires = discoveredAt + this.#effectiveTTL(ttl);
|
|
1057
|
+
if (now <= expires) {
|
|
1058
|
+
// Only check expired IPs if not device itself has expired
|
|
1037
1059
|
[...addresses.entries()].forEach(([key, { discoveredAt, ttl }]) => {
|
|
1038
|
-
if (now < discoveredAt + ttl) return;
|
|
1060
|
+
if (now < discoveredAt + this.#effectiveTTL(ttl)) return; // not expired yet
|
|
1039
1061
|
addresses.delete(key);
|
|
1040
1062
|
});
|
|
1041
1063
|
}
|
|
1042
|
-
if (now
|
|
1064
|
+
if (now > expires && !addresses.size) {
|
|
1065
|
+
// device expired and also has no adresses anymore
|
|
1043
1066
|
this.#commissionableDeviceRecords.delete(recordKey);
|
|
1044
1067
|
}
|
|
1045
1068
|
});
|