@matter/protocol 0.12.0-alpha.0-20250108-7ae2a767d → 0.12.0-alpha.0-20250112-2972cf298
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 +7 -3
- package/dist/cjs/interaction/ServerSubscription.js.map +1 -1
- package/dist/cjs/mdns/MdnsBroadcaster.d.ts +3 -3
- package/dist/cjs/mdns/MdnsBroadcaster.d.ts.map +1 -1
- package/dist/cjs/mdns/MdnsBroadcaster.js +55 -31
- package/dist/cjs/mdns/MdnsBroadcaster.js.map +1 -1
- package/dist/cjs/mdns/MdnsScanner.d.ts.map +1 -1
- package/dist/cjs/mdns/MdnsScanner.js +226 -28
- package/dist/cjs/mdns/MdnsScanner.js.map +1 -1
- package/dist/cjs/mdns/MdnsServer.d.ts +5 -1
- package/dist/cjs/mdns/MdnsServer.d.ts.map +1 -1
- package/dist/cjs/mdns/MdnsServer.js +12 -7
- package/dist/cjs/mdns/MdnsServer.js.map +1 -1
- package/dist/cjs/peer/ControllerCommissioningFlow.d.ts.map +1 -1
- package/dist/cjs/peer/ControllerCommissioningFlow.js +35 -2
- package/dist/cjs/peer/ControllerCommissioningFlow.js.map +1 -1
- package/dist/cjs/protocol/DeviceAdvertiser.d.ts.map +1 -1
- package/dist/cjs/protocol/DeviceAdvertiser.js +6 -1
- package/dist/cjs/protocol/DeviceAdvertiser.js.map +1 -1
- package/dist/cjs/protocol/DeviceCommissioner.d.ts.map +1 -1
- package/dist/cjs/protocol/DeviceCommissioner.js +5 -1
- package/dist/cjs/protocol/DeviceCommissioner.js.map +1 -1
- package/dist/cjs/protocol/ExchangeManager.js +1 -1
- package/dist/cjs/protocol/ExchangeManager.js.map +1 -1
- package/dist/esm/interaction/ServerSubscription.d.ts.map +1 -1
- package/dist/esm/interaction/ServerSubscription.js +7 -3
- package/dist/esm/interaction/ServerSubscription.js.map +1 -1
- package/dist/esm/mdns/MdnsBroadcaster.d.ts +3 -3
- package/dist/esm/mdns/MdnsBroadcaster.d.ts.map +1 -1
- package/dist/esm/mdns/MdnsBroadcaster.js +56 -31
- package/dist/esm/mdns/MdnsBroadcaster.js.map +1 -1
- package/dist/esm/mdns/MdnsScanner.d.ts.map +1 -1
- package/dist/esm/mdns/MdnsScanner.js +226 -28
- package/dist/esm/mdns/MdnsScanner.js.map +1 -1
- package/dist/esm/mdns/MdnsServer.d.ts +5 -1
- package/dist/esm/mdns/MdnsServer.d.ts.map +1 -1
- package/dist/esm/mdns/MdnsServer.js +12 -7
- package/dist/esm/mdns/MdnsServer.js.map +1 -1
- package/dist/esm/peer/ControllerCommissioningFlow.d.ts.map +1 -1
- package/dist/esm/peer/ControllerCommissioningFlow.js +36 -3
- package/dist/esm/peer/ControllerCommissioningFlow.js.map +1 -1
- package/dist/esm/protocol/DeviceAdvertiser.d.ts.map +1 -1
- package/dist/esm/protocol/DeviceAdvertiser.js +6 -1
- package/dist/esm/protocol/DeviceAdvertiser.js.map +1 -1
- package/dist/esm/protocol/DeviceCommissioner.d.ts.map +1 -1
- package/dist/esm/protocol/DeviceCommissioner.js +5 -1
- package/dist/esm/protocol/DeviceCommissioner.js.map +1 -1
- package/dist/esm/protocol/ExchangeManager.js +1 -1
- package/dist/esm/protocol/ExchangeManager.js.map +1 -1
- package/package.json +6 -6
- package/src/interaction/ServerSubscription.ts +7 -3
- package/src/mdns/MdnsBroadcaster.ts +63 -35
- package/src/mdns/MdnsScanner.ts +264 -43
- package/src/mdns/MdnsServer.ts +20 -7
- package/src/peer/ControllerCommissioningFlow.ts +48 -3
- package/src/protocol/DeviceAdvertiser.ts +7 -1
- package/src/protocol/DeviceCommissioner.ts +11 -2
- package/src/protocol/ExchangeManager.ts +1 -1
|
@@ -65,6 +65,9 @@ export class DeviceAdvertiser {
|
|
|
65
65
|
if (this.#context.fabrics.length === 0) {
|
|
66
66
|
// Last fabric got removed, so expire all announcements
|
|
67
67
|
await this.#exitOperationalMode();
|
|
68
|
+
} else {
|
|
69
|
+
// At least one fabric is still present, so re-announce
|
|
70
|
+
await this.advertise(true);
|
|
68
71
|
}
|
|
69
72
|
});
|
|
70
73
|
|
|
@@ -164,7 +167,10 @@ export class DeviceAdvertiser {
|
|
|
164
167
|
const session = this.#context.sessions.getSessionForNode(fabric.addressOf(fabric.rootNodeId));
|
|
165
168
|
if (session === undefined || !session.isSecure || session.subscriptions.size === 0) {
|
|
166
169
|
fabricsWithoutSessions++;
|
|
167
|
-
logger.debug(
|
|
170
|
+
logger.debug(
|
|
171
|
+
"Announcing",
|
|
172
|
+
Diagnostic.dict({ fabricIndex: fabric.fabricIndex, fabricId: fabric.fabricId }),
|
|
173
|
+
);
|
|
168
174
|
}
|
|
169
175
|
}
|
|
170
176
|
for (const broadcaster of this.#broadcasters) {
|
|
@@ -65,8 +65,17 @@ export class DeviceCommissioner {
|
|
|
65
65
|
|
|
66
66
|
this.#observers.on(this.#context.advertiser.timedOut, this.endCommissioning);
|
|
67
67
|
|
|
68
|
-
// If a commissioning window is open then we
|
|
69
|
-
this.#observers.on(this.#context.fabrics.events.deleted,
|
|
68
|
+
// If a commissioning window is open then we re-announce this because it was ended as fabric got added
|
|
69
|
+
this.#observers.on(this.#context.fabrics.events.deleted, async () => {
|
|
70
|
+
// If a commissioning window is open, or we removed the last fabric, then we re-announce this
|
|
71
|
+
// because it was ended as fabric got added
|
|
72
|
+
if (
|
|
73
|
+
this.#context.fabrics.length === 0 ||
|
|
74
|
+
this.#windowStatus !== AdministratorCommissioning.CommissioningWindowStatus.WindowNotOpen
|
|
75
|
+
) {
|
|
76
|
+
this.reactivateAdvertiser();
|
|
77
|
+
}
|
|
78
|
+
});
|
|
70
79
|
|
|
71
80
|
// No fabric paired yet, so announce as "ready for commissioning"
|
|
72
81
|
this.#observers.on(this.#context.advertiser.operationalModeEnded, this.allowBasicCommissioning);
|
|
@@ -352,8 +352,8 @@ export class ExchangeManager {
|
|
|
352
352
|
logger.debug(`Channel for session ${session.name} is ${channel?.name}`);
|
|
353
353
|
if (channel !== undefined) {
|
|
354
354
|
const exchange = this.initiateExchangeWithChannel(channel, SECURE_CHANNEL_PROTOCOL_ID);
|
|
355
|
-
logger.debug(`Initiated exchange ${!!exchange} to close session ${sessionName}`);
|
|
356
355
|
if (exchange !== undefined) {
|
|
356
|
+
logger.debug(`Initiated exchange ${exchange.id} to close session ${sessionName}`);
|
|
357
357
|
try {
|
|
358
358
|
const messenger = new SecureChannelMessenger(exchange);
|
|
359
359
|
await messenger.sendCloseSession();
|