@matter/node 0.17.4 → 0.17.5-alpha.0-20260702-a2cd6f764
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/context/ActionContext.d.ts +1 -1
- package/dist/cjs/behavior/state/validation/FabricIndexSentinel.d.ts +3 -2
- package/dist/cjs/behavior/state/validation/FabricIndexSentinel.d.ts.map +1 -1
- package/dist/cjs/behavior/state/validation/FabricIndexSentinel.js.map +1 -1
- package/dist/cjs/behavior/supervision/ValueSupervisor.d.ts +3 -2
- package/dist/cjs/behavior/supervision/ValueSupervisor.d.ts.map +1 -1
- package/dist/cjs/behavior/system/network/ServerGroupNetworking.d.ts.map +1 -1
- package/dist/cjs/behavior/system/network/ServerGroupNetworking.js +13 -9
- package/dist/cjs/behavior/system/network/ServerGroupNetworking.js.map +1 -1
- package/dist/cjs/behavior/system/software-update/SoftwareUpdateManager.js +1 -1
- package/dist/cjs/behavior/system/software-update/SoftwareUpdateManager.js.map +1 -1
- package/dist/cjs/behaviors/access-control/AccessControlServer.d.ts +40 -2
- package/dist/cjs/behaviors/access-control/AccessControlServer.d.ts.map +1 -1
- package/dist/cjs/behaviors/access-control/AccessControlServer.js +102 -5
- package/dist/cjs/behaviors/access-control/AccessControlServer.js.map +1 -1
- package/dist/cjs/behaviors/ambient-context-sensing/AmbientContextSensingBehavior.d.ts +29 -0
- package/dist/cjs/behaviors/ambient-context-sensing/AmbientContextSensingBehavior.d.ts.map +1 -0
- package/dist/cjs/behaviors/ambient-context-sensing/AmbientContextSensingBehavior.js +34 -0
- package/dist/cjs/behaviors/ambient-context-sensing/AmbientContextSensingBehavior.js.map +6 -0
- package/dist/cjs/behaviors/ambient-context-sensing/AmbientContextSensingClient.d.ts +17 -0
- package/dist/cjs/behaviors/ambient-context-sensing/AmbientContextSensingClient.d.ts.map +1 -0
- package/dist/cjs/behaviors/ambient-context-sensing/AmbientContextSensingClient.js +34 -0
- package/dist/cjs/behaviors/ambient-context-sensing/AmbientContextSensingClient.js.map +6 -0
- package/dist/cjs/behaviors/ambient-context-sensing/AmbientContextSensingServer.d.ts +17 -0
- package/dist/cjs/behaviors/ambient-context-sensing/AmbientContextSensingServer.d.ts.map +1 -0
- package/dist/cjs/behaviors/ambient-context-sensing/AmbientContextSensingServer.js +32 -0
- package/dist/cjs/behaviors/ambient-context-sensing/AmbientContextSensingServer.js.map +6 -0
- package/dist/cjs/behaviors/ambient-context-sensing/index.d.ts +10 -0
- package/dist/cjs/behaviors/ambient-context-sensing/index.d.ts.map +1 -0
- package/dist/cjs/behaviors/ambient-context-sensing/index.js +26 -0
- package/dist/cjs/behaviors/ambient-context-sensing/index.js.map +6 -0
- package/dist/cjs/behaviors/basic-information/BasicInformationServer.d.ts +24 -0
- package/dist/cjs/behaviors/basic-information/BasicInformationServer.d.ts.map +1 -1
- package/dist/cjs/behaviors/basic-information/BasicInformationServer.js +44 -0
- package/dist/cjs/behaviors/basic-information/BasicInformationServer.js.map +1 -1
- package/dist/cjs/behaviors/boolean-state/BooleanStateBehavior.d.ts +3 -0
- package/dist/cjs/behaviors/boolean-state/BooleanStateBehavior.d.ts.map +1 -1
- package/dist/cjs/behaviors/boolean-state/BooleanStateBehavior.js.map +1 -1
- package/dist/cjs/behaviors/boolean-state/BooleanStateServer.d.ts +7 -3
- package/dist/cjs/behaviors/boolean-state/BooleanStateServer.d.ts.map +1 -1
- package/dist/cjs/behaviors/boolean-state/BooleanStateServer.js +6 -2
- package/dist/cjs/behaviors/boolean-state/BooleanStateServer.js.map +1 -1
- package/dist/cjs/behaviors/bridged-device-basic-information/BridgedDeviceBasicInformationServer.d.ts +23 -0
- package/dist/cjs/behaviors/bridged-device-basic-information/BridgedDeviceBasicInformationServer.d.ts.map +1 -1
- package/dist/cjs/behaviors/bridged-device-basic-information/BridgedDeviceBasicInformationServer.js +36 -0
- package/dist/cjs/behaviors/bridged-device-basic-information/BridgedDeviceBasicInformationServer.js.map +1 -1
- package/dist/cjs/behaviors/general-commissioning/ServerNodeFailsafeContext.d.ts +1 -1
- package/dist/cjs/behaviors/general-commissioning/ServerNodeFailsafeContext.js +1 -1
- package/dist/cjs/behaviors/general-diagnostics/GeneralDiagnosticsServer.d.ts +15 -1
- package/dist/cjs/behaviors/general-diagnostics/GeneralDiagnosticsServer.d.ts.map +1 -1
- package/dist/cjs/behaviors/general-diagnostics/GeneralDiagnosticsServer.js +52 -1
- package/dist/cjs/behaviors/general-diagnostics/GeneralDiagnosticsServer.js.map +1 -1
- package/dist/cjs/behaviors/group-key-management/GroupKeyManagementBehavior.d.ts +3 -0
- package/dist/cjs/behaviors/group-key-management/GroupKeyManagementBehavior.d.ts.map +1 -1
- package/dist/cjs/behaviors/group-key-management/GroupKeyManagementBehavior.js.map +1 -1
- package/dist/cjs/behaviors/group-key-management/GroupKeyManagementServer.d.ts +22 -3
- package/dist/cjs/behaviors/group-key-management/GroupKeyManagementServer.d.ts.map +1 -1
- package/dist/cjs/behaviors/group-key-management/GroupKeyManagementServer.js +80 -7
- package/dist/cjs/behaviors/group-key-management/GroupKeyManagementServer.js.map +1 -1
- package/dist/cjs/behaviors/groupcast/GroupcastBehavior.d.ts +28 -0
- package/dist/cjs/behaviors/groupcast/GroupcastBehavior.d.ts.map +1 -0
- package/dist/cjs/behaviors/groupcast/GroupcastBehavior.js +34 -0
- package/dist/cjs/behaviors/groupcast/GroupcastBehavior.js.map +6 -0
- package/dist/cjs/behaviors/groupcast/GroupcastClient.d.ts +17 -0
- package/dist/cjs/behaviors/groupcast/GroupcastClient.d.ts.map +1 -0
- package/dist/cjs/behaviors/groupcast/GroupcastClient.js +34 -0
- package/dist/cjs/behaviors/groupcast/GroupcastClient.js.map +6 -0
- package/dist/cjs/behaviors/groupcast/GroupcastInterface.d.ts +34 -0
- package/dist/cjs/behaviors/groupcast/GroupcastInterface.d.ts.map +1 -0
- package/dist/cjs/behaviors/groupcast/GroupcastInterface.js +22 -0
- package/dist/cjs/behaviors/groupcast/GroupcastInterface.js.map +6 -0
- package/dist/cjs/behaviors/groupcast/GroupcastServer.d.ts +58 -0
- package/dist/cjs/behaviors/groupcast/GroupcastServer.d.ts.map +1 -0
- package/dist/cjs/behaviors/groupcast/GroupcastServer.js +510 -0
- package/dist/cjs/behaviors/groupcast/GroupcastServer.js.map +6 -0
- package/dist/cjs/behaviors/groupcast/index.d.ts +10 -0
- package/dist/cjs/behaviors/groupcast/index.d.ts.map +1 -0
- package/dist/cjs/behaviors/groupcast/index.js +26 -0
- package/dist/cjs/behaviors/groupcast/index.js.map +6 -0
- package/dist/cjs/behaviors/groups/GroupsServer.d.ts.map +1 -1
- package/dist/cjs/behaviors/groups/GroupsServer.js +22 -0
- package/dist/cjs/behaviors/groups/GroupsServer.js.map +1 -1
- package/dist/cjs/behaviors/index.d.ts +3 -0
- package/dist/cjs/behaviors/index.d.ts.map +1 -1
- package/dist/cjs/behaviors/index.js +3 -0
- package/dist/cjs/behaviors/index.js.map +1 -1
- package/dist/cjs/behaviors/level-control/LevelControlServer.d.ts +1 -1
- package/dist/cjs/behaviors/level-control/LevelControlServer.js +1 -1
- package/dist/cjs/behaviors/occupancy-sensing/OccupancySensingServer.d.ts +2 -0
- package/dist/cjs/behaviors/occupancy-sensing/OccupancySensingServer.d.ts.map +1 -1
- package/dist/cjs/behaviors/occupancy-sensing/OccupancySensingServer.js +10 -0
- package/dist/cjs/behaviors/occupancy-sensing/OccupancySensingServer.js.map +1 -1
- package/dist/cjs/behaviors/operational-credentials/VendorIdVerification.d.ts +2 -2
- package/dist/cjs/behaviors/ota-software-update-provider/OtaSoftwareUpdateProviderServer.js +1 -1
- package/dist/cjs/behaviors/ota-software-update-provider/OtaSoftwareUpdateProviderServer.js.map +1 -1
- package/dist/cjs/behaviors/temperature-alarm/TemperatureAlarmBehavior.d.ts +29 -0
- package/dist/cjs/behaviors/temperature-alarm/TemperatureAlarmBehavior.d.ts.map +1 -0
- package/dist/cjs/behaviors/temperature-alarm/TemperatureAlarmBehavior.js +34 -0
- package/dist/cjs/behaviors/temperature-alarm/TemperatureAlarmBehavior.js.map +6 -0
- package/dist/cjs/behaviors/temperature-alarm/TemperatureAlarmClient.d.ts +17 -0
- package/dist/cjs/behaviors/temperature-alarm/TemperatureAlarmClient.d.ts.map +1 -0
- package/dist/cjs/behaviors/temperature-alarm/TemperatureAlarmClient.js +34 -0
- package/dist/cjs/behaviors/temperature-alarm/TemperatureAlarmClient.js.map +6 -0
- package/dist/cjs/behaviors/temperature-alarm/TemperatureAlarmServer.d.ts +16 -0
- package/dist/cjs/behaviors/temperature-alarm/TemperatureAlarmServer.d.ts.map +1 -0
- package/dist/cjs/behaviors/temperature-alarm/TemperatureAlarmServer.js +32 -0
- package/dist/cjs/behaviors/temperature-alarm/TemperatureAlarmServer.js.map +6 -0
- package/dist/cjs/behaviors/temperature-alarm/index.d.ts +10 -0
- package/dist/cjs/behaviors/temperature-alarm/index.d.ts.map +1 -0
- package/dist/cjs/behaviors/temperature-alarm/index.js +26 -0
- package/dist/cjs/behaviors/temperature-alarm/index.js.map +6 -0
- package/dist/cjs/behaviors/thermostat/ThermostatServer.d.ts +2 -0
- package/dist/cjs/behaviors/thermostat/ThermostatServer.d.ts.map +1 -1
- package/dist/cjs/behaviors/web-rtc-transport-requestor/WebRtcTransportRequestorServer.d.ts +63 -1
- package/dist/cjs/behaviors/web-rtc-transport-requestor/WebRtcTransportRequestorServer.d.ts.map +1 -1
- package/dist/cjs/behaviors/web-rtc-transport-requestor/WebRtcTransportRequestorServer.js +134 -0
- package/dist/cjs/behaviors/web-rtc-transport-requestor/WebRtcTransportRequestorServer.js.map +2 -2
- package/dist/cjs/devices/air-purifier.d.ts +1 -1
- package/dist/cjs/devices/air-quality-sensor.d.ts +1 -1
- package/dist/cjs/devices/audio-doorbell.d.ts +1 -1
- package/dist/cjs/devices/basic-video-player.d.ts +1 -1
- package/dist/cjs/devices/battery-storage.d.ts +1 -1
- package/dist/cjs/devices/camera-controller.d.ts +1 -1
- package/dist/cjs/devices/camera.d.ts +1 -1
- package/dist/cjs/devices/casting-video-client.d.ts +1 -1
- package/dist/cjs/devices/casting-video-player.d.ts +1 -1
- package/dist/cjs/devices/chime.d.ts +1 -1
- package/dist/cjs/devices/closure-controller.d.ts +1 -8
- package/dist/cjs/devices/closure-controller.d.ts.map +1 -1
- package/dist/cjs/devices/closure-controller.js +1 -3
- package/dist/cjs/devices/closure-controller.js.map +2 -2
- package/dist/cjs/devices/closure-panel.d.ts +1 -1
- package/dist/cjs/devices/closure.d.ts +1 -1
- package/dist/cjs/devices/color-dimmer-switch.d.ts +1 -1
- package/dist/cjs/devices/color-temperature-light.d.ts +1 -1
- package/dist/cjs/devices/contact-sensor.d.ts +1 -1
- package/dist/cjs/devices/content-app.d.ts +1 -1
- package/dist/cjs/devices/control-bridge.d.ts +1 -1
- package/dist/cjs/devices/cook-surface.d.ts +1 -1
- package/dist/cjs/devices/cooktop.d.ts +1 -1
- package/dist/cjs/devices/dimmable-light.d.ts +1 -1
- package/dist/cjs/devices/dimmable-plug-in-unit.d.ts +1 -1
- package/dist/cjs/devices/dimmer-switch.d.ts +1 -1
- package/dist/cjs/devices/dishwasher.d.ts +1 -1
- package/dist/cjs/devices/door-lock-controller.d.ts +1 -1
- package/dist/cjs/devices/door-lock.d.ts +1 -1
- package/dist/cjs/devices/doorbell.d.ts +1 -1
- package/dist/cjs/devices/electrical-energy-tariff.d.ts +1 -1
- package/dist/cjs/devices/electrical-meter.d.ts +1 -1
- package/dist/cjs/devices/electrical-utility-meter.d.ts +1 -1
- package/dist/cjs/devices/energy-evse.d.ts +1 -1
- package/dist/cjs/devices/extended-color-light.d.ts +1 -1
- package/dist/cjs/devices/extractor-hood.d.ts +1 -1
- package/dist/cjs/devices/fan.d.ts +1 -1
- package/dist/cjs/devices/floodlight-camera.d.ts +1 -1
- package/dist/cjs/devices/flow-sensor.d.ts +1 -1
- package/dist/cjs/devices/generic-switch.d.ts +1 -1
- package/dist/cjs/devices/heat-pump.d.ts +1 -1
- package/dist/cjs/devices/humidity-sensor.d.ts +1 -1
- package/dist/cjs/devices/intercom.d.ts +1 -1
- package/dist/cjs/devices/irrigation-system.d.ts +1 -1
- package/dist/cjs/devices/laundry-dryer.d.ts +1 -1
- package/dist/cjs/devices/laundry-washer.d.ts +1 -1
- package/dist/cjs/devices/light-sensor.d.ts +1 -1
- package/dist/cjs/devices/meter-reference-point.d.ts +1 -1
- package/dist/cjs/devices/microwave-oven.d.ts +1 -1
- package/dist/cjs/devices/mode-select.d.ts +1 -1
- package/dist/cjs/devices/mounted-dimmable-load-control.d.ts +1 -1
- package/dist/cjs/devices/mounted-on-off-control.d.ts +1 -1
- package/dist/cjs/devices/network-infrastructure-manager.d.ts +2 -2
- package/dist/cjs/devices/occupancy-sensor.d.ts +1 -1
- package/dist/cjs/devices/on-off-light-switch.d.ts +1 -1
- package/dist/cjs/devices/on-off-light.d.ts +1 -1
- package/dist/cjs/devices/on-off-plug-in-unit.d.ts +1 -1
- package/dist/cjs/devices/on-off-sensor.d.ts +1 -1
- package/dist/cjs/devices/oven.d.ts +1 -1
- package/dist/cjs/devices/pressure-sensor.d.ts +1 -1
- package/dist/cjs/devices/pump-controller.d.ts +1 -1
- package/dist/cjs/devices/pump.d.ts +1 -1
- package/dist/cjs/devices/rain-sensor.d.ts +14 -6
- package/dist/cjs/devices/rain-sensor.d.ts.map +1 -1
- package/dist/cjs/devices/rain-sensor.js +1 -1
- package/dist/cjs/devices/refrigerator.d.ts +11 -2
- package/dist/cjs/devices/refrigerator.d.ts.map +1 -1
- package/dist/cjs/devices/refrigerator.js +5 -2
- package/dist/cjs/devices/refrigerator.js.map +2 -2
- package/dist/cjs/devices/robotic-vacuum-cleaner.d.ts +1 -1
- package/dist/cjs/devices/room-air-conditioner.d.ts +1 -1
- package/dist/cjs/devices/smoke-co-alarm.d.ts +1 -1
- package/dist/cjs/devices/snapshot-camera.d.ts +1 -1
- package/dist/cjs/devices/soil-sensor.d.ts +1 -1
- package/dist/cjs/devices/solar-power.d.ts +1 -1
- package/dist/cjs/devices/speaker.d.ts +1 -1
- package/dist/cjs/devices/temperature-controlled-cabinet.d.ts +10 -2
- package/dist/cjs/devices/temperature-controlled-cabinet.d.ts.map +1 -1
- package/dist/cjs/devices/temperature-controlled-cabinet.js +5 -2
- package/dist/cjs/devices/temperature-controlled-cabinet.js.map +2 -2
- package/dist/cjs/devices/temperature-sensor.d.ts +1 -1
- package/dist/cjs/devices/thermostat-controller.d.ts +1 -1
- package/dist/cjs/devices/thermostat.d.ts +9 -2
- package/dist/cjs/devices/thermostat.d.ts.map +1 -1
- package/dist/cjs/devices/thermostat.js +5 -2
- package/dist/cjs/devices/thermostat.js.map +2 -2
- package/dist/cjs/devices/thread-border-router.d.ts +1 -1
- package/dist/cjs/devices/video-doorbell.d.ts +1 -1
- package/dist/cjs/devices/video-remote-control.d.ts +1 -1
- package/dist/cjs/devices/water-freeze-detector.d.ts +14 -6
- package/dist/cjs/devices/water-freeze-detector.d.ts.map +1 -1
- package/dist/cjs/devices/water-freeze-detector.js +1 -1
- package/dist/cjs/devices/water-heater.d.ts +5 -1
- package/dist/cjs/devices/water-heater.d.ts.map +1 -1
- package/dist/cjs/devices/water-leak-detector.d.ts +14 -6
- package/dist/cjs/devices/water-leak-detector.d.ts.map +1 -1
- package/dist/cjs/devices/water-leak-detector.js +1 -1
- package/dist/cjs/devices/water-valve.d.ts +1 -1
- package/dist/cjs/devices/window-covering-controller.d.ts +1 -1
- package/dist/cjs/devices/window-covering.d.ts +1 -1
- package/dist/cjs/endpoint/properties/EndpointLifecycle.d.ts +5 -0
- package/dist/cjs/endpoint/properties/EndpointLifecycle.d.ts.map +1 -1
- package/dist/cjs/endpoint/properties/EndpointLifecycle.js +8 -0
- package/dist/cjs/endpoint/properties/EndpointLifecycle.js.map +1 -1
- package/dist/cjs/endpoints/aggregator.d.ts +1 -1
- package/dist/cjs/endpoints/bridged-node.d.ts +1 -1
- package/dist/cjs/endpoints/device-energy-management.d.ts +1 -1
- package/dist/cjs/endpoints/electrical-sensor.d.ts +1 -1
- package/dist/cjs/endpoints/joint-fabric-administrator.d.ts +1 -1
- package/dist/cjs/endpoints/ota-provider.d.ts +1 -1
- package/dist/cjs/endpoints/ota-requestor.d.ts +1 -1
- package/dist/cjs/endpoints/power-source.d.ts +1 -1
- package/dist/cjs/endpoints/root.d.ts +1 -1
- package/dist/cjs/endpoints/secondary-network-interface.d.ts +1 -1
- package/dist/cjs/node/ServerNode.d.ts +1 -1
- package/dist/cjs/node/ServerNode.js +1 -1
- package/dist/cjs/node/client/Peers.d.ts.map +1 -1
- package/dist/cjs/node/client/Peers.js +12 -0
- package/dist/cjs/node/client/Peers.js.map +1 -1
- package/dist/cjs/node/integration/ProtocolService.js +1 -1
- package/dist/cjs/node/paths/AttributePath.d.ts +3 -3
- package/dist/cjs/node/paths/BasePath.d.ts +4 -4
- package/dist/cjs/node/paths/CommandPath.d.ts +1 -1
- package/dist/cjs/node/paths/EventPath.d.ts +1 -1
- package/dist/cjs/node/server/InteractionServer.d.ts +7 -0
- package/dist/cjs/node/server/InteractionServer.d.ts.map +1 -1
- package/dist/cjs/node/server/InteractionServer.js +83 -5
- package/dist/cjs/node/server/InteractionServer.js.map +1 -1
- package/dist/cjs/node/server/ServerSubscription.d.ts +1 -0
- package/dist/cjs/node/server/ServerSubscription.d.ts.map +1 -1
- package/dist/cjs/tags/ClosureCabinetTag.d.ts +1 -1
- package/dist/cjs/tags/ClosureCoveringTag.d.ts +1 -1
- package/dist/cjs/tags/ClosurePanelTag.d.ts +1 -1
- package/dist/cjs/tags/ClosureTag.d.ts +1 -1
- package/dist/cjs/tags/ClosureWindowTag.d.ts +1 -1
- package/dist/cjs/tags/CommodityTariffChronologyTag.d.ts +1 -1
- package/dist/cjs/tags/CommodityTariffCommodityTag.d.ts +1 -1
- package/dist/cjs/tags/CommodityTariffFlowTag.d.ts +1 -1
- package/dist/cjs/tags/CommonAreaNamespaceTag.d.ts +1 -1
- package/dist/cjs/tags/CommonClosureTag.d.ts +1 -1
- package/dist/cjs/tags/CommonCompassDirectionTag.d.ts +1 -1
- package/dist/cjs/tags/CommonCompassLocationTag.d.ts +1 -1
- package/dist/cjs/tags/CommonDirectionTag.d.ts +1 -1
- package/dist/cjs/tags/CommonLandmarkNamespaceTag.d.ts +1 -1
- package/dist/cjs/tags/CommonLevelTag.d.ts +1 -1
- package/dist/cjs/tags/CommonLocationTag.d.ts +1 -1
- package/dist/cjs/tags/CommonNumberTag.d.ts +1 -1
- package/dist/cjs/tags/CommonPositionTag.d.ts +1 -1
- package/dist/cjs/tags/CommonRelativePositionTag.d.ts +1 -1
- package/dist/cjs/tags/ElectricalMeasurementTag.d.ts +1 -1
- package/dist/cjs/tags/IdentifiedHumanActivityTag.d.ts +89 -0
- package/dist/cjs/tags/IdentifiedHumanActivityTag.d.ts.map +1 -0
- package/dist/cjs/tags/IdentifiedHumanActivityTag.js +75 -0
- package/dist/cjs/tags/IdentifiedHumanActivityTag.js.map +6 -0
- package/dist/cjs/tags/IdentifiedObjectTag.d.ts +123 -0
- package/dist/cjs/tags/IdentifiedObjectTag.d.ts.map +1 -0
- package/dist/cjs/tags/IdentifiedObjectTag.js +87 -0
- package/dist/cjs/tags/IdentifiedObjectTag.js.map +6 -0
- package/dist/cjs/tags/IdentifiedSoundTag.d.ts +176 -0
- package/dist/cjs/tags/IdentifiedSoundTag.d.ts.map +1 -0
- package/dist/cjs/tags/IdentifiedSoundTag.js +123 -0
- package/dist/cjs/tags/IdentifiedSoundTag.js.map +6 -0
- package/dist/cjs/tags/LaundryTag.d.ts +1 -1
- package/dist/cjs/tags/PowerSourceTag.d.ts +5 -5
- package/dist/cjs/tags/PowerSourceTag.js +4 -4
- package/dist/cjs/tags/RefrigeratorTag.d.ts +1 -1
- package/dist/cjs/tags/RoomAirConditionerTag.d.ts +1 -1
- package/dist/cjs/tags/SwitchesTag.d.ts +2 -2
- package/dist/cjs/tags/SwitchesTag.js +1 -1
- package/dist/cjs/tags/index.d.ts +3 -0
- package/dist/cjs/tags/index.d.ts.map +1 -1
- package/dist/cjs/tags/index.js +3 -0
- package/dist/cjs/tags/index.js.map +1 -1
- package/dist/esm/behavior/context/ActionContext.d.ts +1 -1
- package/dist/esm/behavior/state/validation/FabricIndexSentinel.d.ts +3 -2
- package/dist/esm/behavior/state/validation/FabricIndexSentinel.d.ts.map +1 -1
- package/dist/esm/behavior/state/validation/FabricIndexSentinel.js.map +1 -1
- package/dist/esm/behavior/supervision/ValueSupervisor.d.ts +3 -2
- package/dist/esm/behavior/supervision/ValueSupervisor.d.ts.map +1 -1
- package/dist/esm/behavior/system/network/ServerGroupNetworking.d.ts.map +1 -1
- package/dist/esm/behavior/system/network/ServerGroupNetworking.js +13 -9
- package/dist/esm/behavior/system/network/ServerGroupNetworking.js.map +1 -1
- package/dist/esm/behavior/system/software-update/SoftwareUpdateManager.js +1 -1
- package/dist/esm/behavior/system/software-update/SoftwareUpdateManager.js.map +1 -1
- package/dist/esm/behaviors/access-control/AccessControlServer.d.ts +40 -2
- package/dist/esm/behaviors/access-control/AccessControlServer.d.ts.map +1 -1
- package/dist/esm/behaviors/access-control/AccessControlServer.js +110 -6
- package/dist/esm/behaviors/access-control/AccessControlServer.js.map +1 -1
- package/dist/esm/behaviors/ambient-context-sensing/AmbientContextSensingBehavior.d.ts +29 -0
- package/dist/esm/behaviors/ambient-context-sensing/AmbientContextSensingBehavior.d.ts.map +1 -0
- package/dist/esm/behaviors/ambient-context-sensing/AmbientContextSensingBehavior.js +14 -0
- package/dist/esm/behaviors/ambient-context-sensing/AmbientContextSensingBehavior.js.map +6 -0
- package/dist/esm/behaviors/ambient-context-sensing/AmbientContextSensingClient.d.ts +17 -0
- package/dist/esm/behaviors/ambient-context-sensing/AmbientContextSensingClient.d.ts.map +1 -0
- package/dist/esm/behaviors/ambient-context-sensing/AmbientContextSensingClient.js +14 -0
- package/dist/esm/behaviors/ambient-context-sensing/AmbientContextSensingClient.js.map +6 -0
- package/dist/esm/behaviors/ambient-context-sensing/AmbientContextSensingServer.d.ts +17 -0
- package/dist/esm/behaviors/ambient-context-sensing/AmbientContextSensingServer.d.ts.map +1 -0
- package/dist/esm/behaviors/ambient-context-sensing/AmbientContextSensingServer.js +12 -0
- package/dist/esm/behaviors/ambient-context-sensing/AmbientContextSensingServer.js.map +6 -0
- package/dist/esm/behaviors/ambient-context-sensing/index.d.ts +10 -0
- package/dist/esm/behaviors/ambient-context-sensing/index.d.ts.map +1 -0
- package/dist/esm/behaviors/ambient-context-sensing/index.js +9 -0
- package/dist/esm/behaviors/ambient-context-sensing/index.js.map +6 -0
- package/dist/esm/behaviors/basic-information/BasicInformationServer.d.ts +24 -0
- package/dist/esm/behaviors/basic-information/BasicInformationServer.d.ts.map +1 -1
- package/dist/esm/behaviors/basic-information/BasicInformationServer.js +44 -0
- package/dist/esm/behaviors/basic-information/BasicInformationServer.js.map +1 -1
- package/dist/esm/behaviors/boolean-state/BooleanStateBehavior.d.ts +3 -0
- package/dist/esm/behaviors/boolean-state/BooleanStateBehavior.d.ts.map +1 -1
- package/dist/esm/behaviors/boolean-state/BooleanStateBehavior.js.map +1 -1
- package/dist/esm/behaviors/boolean-state/BooleanStateServer.d.ts +7 -3
- package/dist/esm/behaviors/boolean-state/BooleanStateServer.d.ts.map +1 -1
- package/dist/esm/behaviors/boolean-state/BooleanStateServer.js +6 -2
- package/dist/esm/behaviors/boolean-state/BooleanStateServer.js.map +1 -1
- package/dist/esm/behaviors/bridged-device-basic-information/BridgedDeviceBasicInformationServer.d.ts +23 -0
- package/dist/esm/behaviors/bridged-device-basic-information/BridgedDeviceBasicInformationServer.d.ts.map +1 -1
- package/dist/esm/behaviors/bridged-device-basic-information/BridgedDeviceBasicInformationServer.js +36 -0
- package/dist/esm/behaviors/bridged-device-basic-information/BridgedDeviceBasicInformationServer.js.map +1 -1
- package/dist/esm/behaviors/general-commissioning/ServerNodeFailsafeContext.d.ts +1 -1
- package/dist/esm/behaviors/general-commissioning/ServerNodeFailsafeContext.js +1 -1
- package/dist/esm/behaviors/general-diagnostics/GeneralDiagnosticsServer.d.ts +15 -1
- package/dist/esm/behaviors/general-diagnostics/GeneralDiagnosticsServer.d.ts.map +1 -1
- package/dist/esm/behaviors/general-diagnostics/GeneralDiagnosticsServer.js +57 -4
- package/dist/esm/behaviors/general-diagnostics/GeneralDiagnosticsServer.js.map +1 -1
- package/dist/esm/behaviors/group-key-management/GroupKeyManagementBehavior.d.ts +3 -0
- package/dist/esm/behaviors/group-key-management/GroupKeyManagementBehavior.d.ts.map +1 -1
- package/dist/esm/behaviors/group-key-management/GroupKeyManagementBehavior.js.map +1 -1
- package/dist/esm/behaviors/group-key-management/GroupKeyManagementServer.d.ts +22 -3
- package/dist/esm/behaviors/group-key-management/GroupKeyManagementServer.d.ts.map +1 -1
- package/dist/esm/behaviors/group-key-management/GroupKeyManagementServer.js +80 -7
- package/dist/esm/behaviors/group-key-management/GroupKeyManagementServer.js.map +1 -1
- package/dist/esm/behaviors/groupcast/GroupcastBehavior.d.ts +28 -0
- package/dist/esm/behaviors/groupcast/GroupcastBehavior.d.ts.map +1 -0
- package/dist/esm/behaviors/groupcast/GroupcastBehavior.js +14 -0
- package/dist/esm/behaviors/groupcast/GroupcastBehavior.js.map +6 -0
- package/dist/esm/behaviors/groupcast/GroupcastClient.d.ts +17 -0
- package/dist/esm/behaviors/groupcast/GroupcastClient.d.ts.map +1 -0
- package/dist/esm/behaviors/groupcast/GroupcastClient.js +14 -0
- package/dist/esm/behaviors/groupcast/GroupcastClient.js.map +6 -0
- package/dist/esm/behaviors/groupcast/GroupcastInterface.d.ts +34 -0
- package/dist/esm/behaviors/groupcast/GroupcastInterface.d.ts.map +1 -0
- package/dist/esm/behaviors/groupcast/GroupcastInterface.js +6 -0
- package/dist/esm/behaviors/groupcast/GroupcastInterface.js.map +6 -0
- package/dist/esm/behaviors/groupcast/GroupcastServer.d.ts +58 -0
- package/dist/esm/behaviors/groupcast/GroupcastServer.d.ts.map +1 -0
- package/dist/esm/behaviors/groupcast/GroupcastServer.js +495 -0
- package/dist/esm/behaviors/groupcast/GroupcastServer.js.map +6 -0
- package/dist/esm/behaviors/groupcast/index.d.ts +10 -0
- package/dist/esm/behaviors/groupcast/index.d.ts.map +1 -0
- package/dist/esm/behaviors/groupcast/index.js +9 -0
- package/dist/esm/behaviors/groupcast/index.js.map +6 -0
- package/dist/esm/behaviors/groups/GroupsServer.d.ts.map +1 -1
- package/dist/esm/behaviors/groups/GroupsServer.js +22 -0
- package/dist/esm/behaviors/groups/GroupsServer.js.map +1 -1
- package/dist/esm/behaviors/index.d.ts +3 -0
- package/dist/esm/behaviors/index.d.ts.map +1 -1
- package/dist/esm/behaviors/index.js +3 -0
- package/dist/esm/behaviors/index.js.map +1 -1
- package/dist/esm/behaviors/level-control/LevelControlServer.d.ts +1 -1
- package/dist/esm/behaviors/level-control/LevelControlServer.js +1 -1
- package/dist/esm/behaviors/occupancy-sensing/OccupancySensingServer.d.ts +2 -0
- package/dist/esm/behaviors/occupancy-sensing/OccupancySensingServer.d.ts.map +1 -1
- package/dist/esm/behaviors/occupancy-sensing/OccupancySensingServer.js +10 -0
- package/dist/esm/behaviors/occupancy-sensing/OccupancySensingServer.js.map +1 -1
- package/dist/esm/behaviors/operational-credentials/VendorIdVerification.d.ts +2 -2
- package/dist/esm/behaviors/ota-software-update-provider/OtaSoftwareUpdateProviderServer.js +1 -1
- package/dist/esm/behaviors/ota-software-update-provider/OtaSoftwareUpdateProviderServer.js.map +1 -1
- package/dist/esm/behaviors/temperature-alarm/TemperatureAlarmBehavior.d.ts +29 -0
- package/dist/esm/behaviors/temperature-alarm/TemperatureAlarmBehavior.d.ts.map +1 -0
- package/dist/esm/behaviors/temperature-alarm/TemperatureAlarmBehavior.js +14 -0
- package/dist/esm/behaviors/temperature-alarm/TemperatureAlarmBehavior.js.map +6 -0
- package/dist/esm/behaviors/temperature-alarm/TemperatureAlarmClient.d.ts +17 -0
- package/dist/esm/behaviors/temperature-alarm/TemperatureAlarmClient.d.ts.map +1 -0
- package/dist/esm/behaviors/temperature-alarm/TemperatureAlarmClient.js +14 -0
- package/dist/esm/behaviors/temperature-alarm/TemperatureAlarmClient.js.map +6 -0
- package/dist/esm/behaviors/temperature-alarm/TemperatureAlarmServer.d.ts +16 -0
- package/dist/esm/behaviors/temperature-alarm/TemperatureAlarmServer.d.ts.map +1 -0
- package/dist/esm/behaviors/temperature-alarm/TemperatureAlarmServer.js +12 -0
- package/dist/esm/behaviors/temperature-alarm/TemperatureAlarmServer.js.map +6 -0
- package/dist/esm/behaviors/temperature-alarm/index.d.ts +10 -0
- package/dist/esm/behaviors/temperature-alarm/index.d.ts.map +1 -0
- package/dist/esm/behaviors/temperature-alarm/index.js +9 -0
- package/dist/esm/behaviors/temperature-alarm/index.js.map +6 -0
- package/dist/esm/behaviors/thermostat/ThermostatServer.d.ts +2 -0
- package/dist/esm/behaviors/thermostat/ThermostatServer.d.ts.map +1 -1
- package/dist/esm/behaviors/web-rtc-transport-requestor/WebRtcTransportRequestorServer.d.ts +63 -1
- package/dist/esm/behaviors/web-rtc-transport-requestor/WebRtcTransportRequestorServer.d.ts.map +1 -1
- package/dist/esm/behaviors/web-rtc-transport-requestor/WebRtcTransportRequestorServer.js +134 -0
- package/dist/esm/behaviors/web-rtc-transport-requestor/WebRtcTransportRequestorServer.js.map +2 -2
- package/dist/esm/devices/air-purifier.d.ts +1 -1
- package/dist/esm/devices/air-quality-sensor.d.ts +1 -1
- package/dist/esm/devices/audio-doorbell.d.ts +1 -1
- package/dist/esm/devices/basic-video-player.d.ts +1 -1
- package/dist/esm/devices/battery-storage.d.ts +1 -1
- package/dist/esm/devices/camera-controller.d.ts +1 -1
- package/dist/esm/devices/camera.d.ts +1 -1
- package/dist/esm/devices/casting-video-client.d.ts +1 -1
- package/dist/esm/devices/casting-video-player.d.ts +1 -1
- package/dist/esm/devices/chime.d.ts +1 -1
- package/dist/esm/devices/closure-controller.d.ts +1 -8
- package/dist/esm/devices/closure-controller.d.ts.map +1 -1
- package/dist/esm/devices/closure-controller.js +1 -3
- package/dist/esm/devices/closure-controller.js.map +1 -1
- package/dist/esm/devices/closure-panel.d.ts +1 -1
- package/dist/esm/devices/closure.d.ts +1 -1
- package/dist/esm/devices/color-dimmer-switch.d.ts +1 -1
- package/dist/esm/devices/color-temperature-light.d.ts +1 -1
- package/dist/esm/devices/contact-sensor.d.ts +1 -1
- package/dist/esm/devices/content-app.d.ts +1 -1
- package/dist/esm/devices/control-bridge.d.ts +1 -1
- package/dist/esm/devices/cook-surface.d.ts +1 -1
- package/dist/esm/devices/cooktop.d.ts +1 -1
- package/dist/esm/devices/dimmable-light.d.ts +1 -1
- package/dist/esm/devices/dimmable-plug-in-unit.d.ts +1 -1
- package/dist/esm/devices/dimmer-switch.d.ts +1 -1
- package/dist/esm/devices/dishwasher.d.ts +1 -1
- package/dist/esm/devices/door-lock-controller.d.ts +1 -1
- package/dist/esm/devices/door-lock.d.ts +1 -1
- package/dist/esm/devices/doorbell.d.ts +1 -1
- package/dist/esm/devices/electrical-energy-tariff.d.ts +1 -1
- package/dist/esm/devices/electrical-meter.d.ts +1 -1
- package/dist/esm/devices/electrical-utility-meter.d.ts +1 -1
- package/dist/esm/devices/energy-evse.d.ts +1 -1
- package/dist/esm/devices/extended-color-light.d.ts +1 -1
- package/dist/esm/devices/extractor-hood.d.ts +1 -1
- package/dist/esm/devices/fan.d.ts +1 -1
- package/dist/esm/devices/floodlight-camera.d.ts +1 -1
- package/dist/esm/devices/flow-sensor.d.ts +1 -1
- package/dist/esm/devices/generic-switch.d.ts +1 -1
- package/dist/esm/devices/heat-pump.d.ts +1 -1
- package/dist/esm/devices/humidity-sensor.d.ts +1 -1
- package/dist/esm/devices/intercom.d.ts +1 -1
- package/dist/esm/devices/irrigation-system.d.ts +1 -1
- package/dist/esm/devices/laundry-dryer.d.ts +1 -1
- package/dist/esm/devices/laundry-washer.d.ts +1 -1
- package/dist/esm/devices/light-sensor.d.ts +1 -1
- package/dist/esm/devices/meter-reference-point.d.ts +1 -1
- package/dist/esm/devices/microwave-oven.d.ts +1 -1
- package/dist/esm/devices/mode-select.d.ts +1 -1
- package/dist/esm/devices/mounted-dimmable-load-control.d.ts +1 -1
- package/dist/esm/devices/mounted-on-off-control.d.ts +1 -1
- package/dist/esm/devices/network-infrastructure-manager.d.ts +2 -2
- package/dist/esm/devices/occupancy-sensor.d.ts +1 -1
- package/dist/esm/devices/on-off-light-switch.d.ts +1 -1
- package/dist/esm/devices/on-off-light.d.ts +1 -1
- package/dist/esm/devices/on-off-plug-in-unit.d.ts +1 -1
- package/dist/esm/devices/on-off-sensor.d.ts +1 -1
- package/dist/esm/devices/oven.d.ts +1 -1
- package/dist/esm/devices/pressure-sensor.d.ts +1 -1
- package/dist/esm/devices/pump-controller.d.ts +1 -1
- package/dist/esm/devices/pump.d.ts +1 -1
- package/dist/esm/devices/rain-sensor.d.ts +14 -6
- package/dist/esm/devices/rain-sensor.d.ts.map +1 -1
- package/dist/esm/devices/rain-sensor.js +1 -1
- package/dist/esm/devices/refrigerator.d.ts +11 -2
- package/dist/esm/devices/refrigerator.d.ts.map +1 -1
- package/dist/esm/devices/refrigerator.js +7 -2
- package/dist/esm/devices/refrigerator.js.map +1 -1
- package/dist/esm/devices/robotic-vacuum-cleaner.d.ts +1 -1
- package/dist/esm/devices/room-air-conditioner.d.ts +1 -1
- package/dist/esm/devices/smoke-co-alarm.d.ts +1 -1
- package/dist/esm/devices/snapshot-camera.d.ts +1 -1
- package/dist/esm/devices/soil-sensor.d.ts +1 -1
- package/dist/esm/devices/solar-power.d.ts +1 -1
- package/dist/esm/devices/speaker.d.ts +1 -1
- package/dist/esm/devices/temperature-controlled-cabinet.d.ts +10 -2
- package/dist/esm/devices/temperature-controlled-cabinet.d.ts.map +1 -1
- package/dist/esm/devices/temperature-controlled-cabinet.js +7 -2
- package/dist/esm/devices/temperature-controlled-cabinet.js.map +1 -1
- package/dist/esm/devices/temperature-sensor.d.ts +1 -1
- package/dist/esm/devices/thermostat-controller.d.ts +1 -1
- package/dist/esm/devices/thermostat.d.ts +9 -2
- package/dist/esm/devices/thermostat.d.ts.map +1 -1
- package/dist/esm/devices/thermostat.js +7 -2
- package/dist/esm/devices/thermostat.js.map +1 -1
- package/dist/esm/devices/thread-border-router.d.ts +1 -1
- package/dist/esm/devices/video-doorbell.d.ts +1 -1
- package/dist/esm/devices/video-remote-control.d.ts +1 -1
- package/dist/esm/devices/water-freeze-detector.d.ts +14 -6
- package/dist/esm/devices/water-freeze-detector.d.ts.map +1 -1
- package/dist/esm/devices/water-freeze-detector.js +1 -1
- package/dist/esm/devices/water-heater.d.ts +5 -1
- package/dist/esm/devices/water-heater.d.ts.map +1 -1
- package/dist/esm/devices/water-leak-detector.d.ts +14 -6
- package/dist/esm/devices/water-leak-detector.d.ts.map +1 -1
- package/dist/esm/devices/water-leak-detector.js +1 -1
- package/dist/esm/devices/water-valve.d.ts +1 -1
- package/dist/esm/devices/window-covering-controller.d.ts +1 -1
- package/dist/esm/devices/window-covering.d.ts +1 -1
- package/dist/esm/endpoint/properties/EndpointLifecycle.d.ts +5 -0
- package/dist/esm/endpoint/properties/EndpointLifecycle.d.ts.map +1 -1
- package/dist/esm/endpoint/properties/EndpointLifecycle.js +8 -0
- package/dist/esm/endpoint/properties/EndpointLifecycle.js.map +1 -1
- package/dist/esm/endpoints/aggregator.d.ts +1 -1
- package/dist/esm/endpoints/bridged-node.d.ts +1 -1
- package/dist/esm/endpoints/device-energy-management.d.ts +1 -1
- package/dist/esm/endpoints/electrical-sensor.d.ts +1 -1
- package/dist/esm/endpoints/joint-fabric-administrator.d.ts +1 -1
- package/dist/esm/endpoints/ota-provider.d.ts +1 -1
- package/dist/esm/endpoints/ota-requestor.d.ts +1 -1
- package/dist/esm/endpoints/power-source.d.ts +1 -1
- package/dist/esm/endpoints/root.d.ts +1 -1
- package/dist/esm/endpoints/secondary-network-interface.d.ts +1 -1
- package/dist/esm/node/ServerNode.d.ts +1 -1
- package/dist/esm/node/ServerNode.js +1 -1
- package/dist/esm/node/client/Peers.d.ts.map +1 -1
- package/dist/esm/node/client/Peers.js +12 -0
- package/dist/esm/node/client/Peers.js.map +1 -1
- package/dist/esm/node/integration/ProtocolService.js +1 -1
- package/dist/esm/node/paths/AttributePath.d.ts +3 -3
- package/dist/esm/node/paths/BasePath.d.ts +4 -4
- package/dist/esm/node/paths/CommandPath.d.ts +1 -1
- package/dist/esm/node/paths/EventPath.d.ts +1 -1
- package/dist/esm/node/server/InteractionServer.d.ts +7 -0
- package/dist/esm/node/server/InteractionServer.d.ts.map +1 -1
- package/dist/esm/node/server/InteractionServer.js +84 -5
- package/dist/esm/node/server/InteractionServer.js.map +1 -1
- package/dist/esm/node/server/ServerSubscription.d.ts +1 -0
- package/dist/esm/node/server/ServerSubscription.d.ts.map +1 -1
- package/dist/esm/tags/ClosureCabinetTag.d.ts +1 -1
- package/dist/esm/tags/ClosureCoveringTag.d.ts +1 -1
- package/dist/esm/tags/ClosurePanelTag.d.ts +1 -1
- package/dist/esm/tags/ClosureTag.d.ts +1 -1
- package/dist/esm/tags/ClosureWindowTag.d.ts +1 -1
- package/dist/esm/tags/CommodityTariffChronologyTag.d.ts +1 -1
- package/dist/esm/tags/CommodityTariffCommodityTag.d.ts +1 -1
- package/dist/esm/tags/CommodityTariffFlowTag.d.ts +1 -1
- package/dist/esm/tags/CommonAreaNamespaceTag.d.ts +1 -1
- package/dist/esm/tags/CommonClosureTag.d.ts +1 -1
- package/dist/esm/tags/CommonCompassDirectionTag.d.ts +1 -1
- package/dist/esm/tags/CommonCompassLocationTag.d.ts +1 -1
- package/dist/esm/tags/CommonDirectionTag.d.ts +1 -1
- package/dist/esm/tags/CommonLandmarkNamespaceTag.d.ts +1 -1
- package/dist/esm/tags/CommonLevelTag.d.ts +1 -1
- package/dist/esm/tags/CommonLocationTag.d.ts +1 -1
- package/dist/esm/tags/CommonNumberTag.d.ts +1 -1
- package/dist/esm/tags/CommonPositionTag.d.ts +1 -1
- package/dist/esm/tags/CommonRelativePositionTag.d.ts +1 -1
- package/dist/esm/tags/ElectricalMeasurementTag.d.ts +1 -1
- package/dist/esm/tags/IdentifiedHumanActivityTag.d.ts +89 -0
- package/dist/esm/tags/IdentifiedHumanActivityTag.d.ts.map +1 -0
- package/dist/esm/tags/IdentifiedHumanActivityTag.js +55 -0
- package/dist/esm/tags/IdentifiedHumanActivityTag.js.map +6 -0
- package/dist/esm/tags/IdentifiedObjectTag.d.ts +123 -0
- package/dist/esm/tags/IdentifiedObjectTag.d.ts.map +1 -0
- package/dist/esm/tags/IdentifiedObjectTag.js +67 -0
- package/dist/esm/tags/IdentifiedObjectTag.js.map +6 -0
- package/dist/esm/tags/IdentifiedSoundTag.d.ts +176 -0
- package/dist/esm/tags/IdentifiedSoundTag.d.ts.map +1 -0
- package/dist/esm/tags/IdentifiedSoundTag.js +103 -0
- package/dist/esm/tags/IdentifiedSoundTag.js.map +6 -0
- package/dist/esm/tags/LaundryTag.d.ts +1 -1
- package/dist/esm/tags/PowerSourceTag.d.ts +5 -5
- package/dist/esm/tags/PowerSourceTag.js +4 -4
- package/dist/esm/tags/RefrigeratorTag.d.ts +1 -1
- package/dist/esm/tags/RoomAirConditionerTag.d.ts +1 -1
- package/dist/esm/tags/SwitchesTag.d.ts +2 -2
- package/dist/esm/tags/SwitchesTag.js +1 -1
- package/dist/esm/tags/index.d.ts +3 -0
- package/dist/esm/tags/index.d.ts.map +1 -1
- package/dist/esm/tags/index.js +3 -0
- package/dist/esm/tags/index.js.map +1 -1
- package/package.json +6 -6
- package/src/behavior/context/ActionContext.ts +1 -1
- package/src/behavior/state/validation/FabricIndexSentinel.ts +3 -2
- package/src/behavior/supervision/ValueSupervisor.ts +3 -2
- package/src/behavior/system/network/ServerGroupNetworking.ts +18 -9
- package/src/behavior/system/software-update/SoftwareUpdateManager.ts +1 -1
- package/src/behaviors/access-control/AccessControlServer.ts +153 -7
- package/src/behaviors/ambient-context-sensing/AmbientContextSensingBehavior.ts +27 -0
- package/src/behaviors/ambient-context-sensing/AmbientContextSensingClient.ts +16 -0
- package/src/behaviors/ambient-context-sensing/AmbientContextSensingServer.ts +18 -0
- package/src/behaviors/ambient-context-sensing/index.ts +11 -0
- package/src/behaviors/basic-information/BasicInformationServer.ts +62 -1
- package/src/behaviors/boolean-state/BooleanStateBehavior.ts +3 -0
- package/src/behaviors/boolean-state/BooleanStateServer.ts +10 -3
- package/src/behaviors/bridged-device-basic-information/BridgedDeviceBasicInformationServer.ts +55 -1
- package/src/behaviors/general-commissioning/ServerNodeFailsafeContext.ts +1 -1
- package/src/behaviors/general-diagnostics/GeneralDiagnosticsServer.ts +61 -3
- package/src/behaviors/group-key-management/GroupKeyManagementBehavior.ts +3 -0
- package/src/behaviors/group-key-management/GroupKeyManagementServer.ts +98 -8
- package/src/behaviors/groupcast/GroupcastBehavior.ts +24 -0
- package/src/behaviors/groupcast/GroupcastClient.ts +16 -0
- package/src/behaviors/groupcast/GroupcastInterface.ts +30 -0
- package/src/behaviors/groupcast/GroupcastServer.ts +665 -0
- package/src/behaviors/groupcast/index.ts +11 -0
- package/src/behaviors/groups/GroupsServer.ts +28 -1
- package/src/behaviors/index.ts +3 -0
- package/src/behaviors/level-control/LevelControlServer.ts +1 -1
- package/src/behaviors/occupancy-sensing/OccupancySensingServer.ts +14 -2
- package/src/behaviors/operational-credentials/VendorIdVerification.ts +2 -2
- package/src/behaviors/ota-software-update-provider/OtaSoftwareUpdateProviderServer.ts +1 -1
- package/src/behaviors/scenes-management/ScenesManagementServer.ts +1 -1
- package/src/behaviors/temperature-alarm/TemperatureAlarmBehavior.ts +27 -0
- package/src/behaviors/temperature-alarm/TemperatureAlarmClient.ts +16 -0
- package/src/behaviors/temperature-alarm/TemperatureAlarmServer.ts +17 -0
- package/src/behaviors/temperature-alarm/index.ts +11 -0
- package/src/behaviors/web-rtc-transport-requestor/WebRtcTransportRequestorServer.ts +183 -3
- package/src/devices/air-purifier.ts +1 -1
- package/src/devices/air-quality-sensor.ts +1 -1
- package/src/devices/audio-doorbell.ts +1 -1
- package/src/devices/basic-video-player.ts +1 -1
- package/src/devices/battery-storage.ts +1 -1
- package/src/devices/camera-controller.ts +1 -1
- package/src/devices/camera.ts +1 -1
- package/src/devices/casting-video-client.ts +1 -1
- package/src/devices/casting-video-player.ts +1 -1
- package/src/devices/chime.ts +1 -1
- package/src/devices/closure-controller.ts +2 -10
- package/src/devices/closure-panel.ts +1 -1
- package/src/devices/closure.ts +1 -1
- package/src/devices/color-dimmer-switch.ts +1 -1
- package/src/devices/color-temperature-light.ts +1 -1
- package/src/devices/contact-sensor.ts +1 -1
- package/src/devices/content-app.ts +1 -1
- package/src/devices/control-bridge.ts +1 -1
- package/src/devices/cook-surface.ts +1 -1
- package/src/devices/cooktop.ts +1 -1
- package/src/devices/dimmable-light.ts +1 -1
- package/src/devices/dimmable-plug-in-unit.ts +1 -1
- package/src/devices/dimmer-switch.ts +1 -1
- package/src/devices/dishwasher.ts +1 -1
- package/src/devices/door-lock-controller.ts +1 -1
- package/src/devices/door-lock.ts +1 -1
- package/src/devices/doorbell.ts +1 -1
- package/src/devices/electrical-energy-tariff.ts +1 -1
- package/src/devices/electrical-meter.ts +1 -1
- package/src/devices/electrical-utility-meter.ts +1 -1
- package/src/devices/energy-evse.ts +1 -1
- package/src/devices/extended-color-light.ts +1 -1
- package/src/devices/extractor-hood.ts +1 -1
- package/src/devices/fan.ts +1 -1
- package/src/devices/floodlight-camera.ts +1 -1
- package/src/devices/flow-sensor.ts +1 -1
- package/src/devices/generic-switch.ts +1 -1
- package/src/devices/heat-pump.ts +1 -1
- package/src/devices/humidity-sensor.ts +1 -1
- package/src/devices/intercom.ts +1 -1
- package/src/devices/irrigation-system.ts +1 -1
- package/src/devices/laundry-dryer.ts +1 -1
- package/src/devices/laundry-washer.ts +1 -1
- package/src/devices/light-sensor.ts +1 -1
- package/src/devices/meter-reference-point.ts +1 -1
- package/src/devices/microwave-oven.ts +1 -1
- package/src/devices/mode-select.ts +1 -1
- package/src/devices/mounted-dimmable-load-control.ts +1 -1
- package/src/devices/mounted-on-off-control.ts +1 -1
- package/src/devices/network-infrastructure-manager.ts +2 -2
- package/src/devices/occupancy-sensor.ts +1 -1
- package/src/devices/on-off-light-switch.ts +1 -1
- package/src/devices/on-off-light.ts +1 -1
- package/src/devices/on-off-plug-in-unit.ts +1 -1
- package/src/devices/on-off-sensor.ts +1 -1
- package/src/devices/oven.ts +1 -1
- package/src/devices/pressure-sensor.ts +1 -1
- package/src/devices/pump-controller.ts +1 -1
- package/src/devices/pump.ts +1 -1
- package/src/devices/rain-sensor.ts +2 -2
- package/src/devices/refrigerator.ts +16 -3
- package/src/devices/robotic-vacuum-cleaner.ts +1 -1
- package/src/devices/room-air-conditioner.ts +1 -1
- package/src/devices/smoke-co-alarm.ts +1 -1
- package/src/devices/snapshot-camera.ts +1 -1
- package/src/devices/soil-sensor.ts +1 -1
- package/src/devices/solar-power.ts +1 -1
- package/src/devices/speaker.ts +1 -1
- package/src/devices/temperature-controlled-cabinet.ts +14 -3
- package/src/devices/temperature-sensor.ts +1 -1
- package/src/devices/thermostat-controller.ts +1 -1
- package/src/devices/thermostat.ts +14 -3
- package/src/devices/thread-border-router.ts +1 -1
- package/src/devices/video-doorbell.ts +1 -1
- package/src/devices/video-remote-control.ts +1 -1
- package/src/devices/water-freeze-detector.ts +2 -2
- package/src/devices/water-heater.ts +1 -1
- package/src/devices/water-leak-detector.ts +2 -2
- package/src/devices/water-valve.ts +1 -1
- package/src/devices/window-covering-controller.ts +1 -1
- package/src/devices/window-covering.ts +1 -1
- package/src/endpoint/properties/EndpointLifecycle.ts +9 -0
- package/src/endpoints/aggregator.ts +1 -1
- package/src/endpoints/bridged-node.ts +1 -1
- package/src/endpoints/device-energy-management.ts +1 -1
- package/src/endpoints/electrical-sensor.ts +1 -1
- package/src/endpoints/joint-fabric-administrator.ts +1 -1
- package/src/endpoints/ota-provider.ts +1 -1
- package/src/endpoints/ota-requestor.ts +1 -1
- package/src/endpoints/power-source.ts +1 -1
- package/src/endpoints/root.ts +1 -1
- package/src/endpoints/secondary-network-interface.ts +1 -1
- package/src/node/ServerNode.ts +1 -1
- package/src/node/client/Peers.ts +15 -0
- package/src/node/integration/ProtocolService.ts +1 -1
- package/src/node/paths/AttributePath.ts +3 -3
- package/src/node/paths/BasePath.ts +4 -4
- package/src/node/paths/CommandPath.ts +1 -1
- package/src/node/paths/EventPath.ts +1 -1
- package/src/node/server/InteractionServer.ts +113 -6
- package/src/tags/ClosureCabinetTag.ts +1 -1
- package/src/tags/ClosureCoveringTag.ts +1 -1
- package/src/tags/ClosurePanelTag.ts +1 -1
- package/src/tags/ClosureTag.ts +1 -1
- package/src/tags/ClosureWindowTag.ts +1 -1
- package/src/tags/CommodityTariffChronologyTag.ts +1 -1
- package/src/tags/CommodityTariffCommodityTag.ts +1 -1
- package/src/tags/CommodityTariffFlowTag.ts +1 -1
- package/src/tags/CommonAreaNamespaceTag.ts +1 -1
- package/src/tags/CommonClosureTag.ts +1 -1
- package/src/tags/CommonCompassDirectionTag.ts +1 -1
- package/src/tags/CommonCompassLocationTag.ts +1 -1
- package/src/tags/CommonDirectionTag.ts +1 -1
- package/src/tags/CommonLandmarkNamespaceTag.ts +1 -1
- package/src/tags/CommonLevelTag.ts +1 -1
- package/src/tags/CommonLocationTag.ts +1 -1
- package/src/tags/CommonNumberTag.ts +1 -1
- package/src/tags/CommonPositionTag.ts +1 -1
- package/src/tags/CommonRelativePositionTag.ts +1 -1
- package/src/tags/ElectricalMeasurementTag.ts +1 -1
- package/src/tags/IdentifiedHumanActivityTag.ts +71 -0
- package/src/tags/IdentifiedObjectTag.ts +99 -0
- package/src/tags/IdentifiedSoundTag.ts +134 -0
- package/src/tags/LaundryTag.ts +1 -1
- package/src/tags/PowerSourceTag.ts +5 -5
- package/src/tags/RefrigeratorTag.ts +1 -1
- package/src/tags/RoomAirConditionerTag.ts +1 -1
- package/src/tags/SwitchesTag.ts +2 -2
- package/src/tags/index.ts +3 -0
|
@@ -3,10 +3,14 @@
|
|
|
3
3
|
* Copyright 2022-2026 Matter.js Authors
|
|
4
4
|
* SPDX-License-Identifier: Apache-2.0
|
|
5
5
|
*/
|
|
6
|
+
import { BooleanState } from "@matter/types/clusters/boolean-state";
|
|
6
7
|
import { BooleanStateBehavior } from "./BooleanStateBehavior.js";
|
|
7
|
-
|
|
8
|
+
const Base = BooleanStateBehavior.with(BooleanState.Feature.ChangeEvent);
|
|
9
|
+
class BooleanStateServer extends Base {
|
|
8
10
|
initialize() {
|
|
9
|
-
|
|
11
|
+
if (this.features.changeEvent) {
|
|
12
|
+
this.reactTo(this.events.stateValue$Changed, this.#emitStateChange);
|
|
13
|
+
}
|
|
10
14
|
}
|
|
11
15
|
#emitStateChange(stateValue) {
|
|
12
16
|
this.events.stateChange?.emit({ stateValue }, this.context);
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"version": 3,
|
|
3
3
|
"sources": ["../../../../src/behaviors/boolean-state/BooleanStateServer.ts"],
|
|
4
|
-
"mappings": "AAAA;AAAA;AAAA;AAAA;AAAA;AAOA,SAAS,4BAA4B;
|
|
4
|
+
"mappings": "AAAA;AAAA;AAAA;AAAA;AAAA;AAOA,SAAS,oBAAoB;AAC7B,SAAS,4BAA4B;AAIrC,MAAM,OAAO,qBAAqB,KAAK,aAAa,QAAQ,WAAW;AAMhE,MAAM,2BAA2B,KAAK;AAAA,EAChC,aAA2B;AAChC,QAAI,KAAK,SAAS,aAAa;AAC3B,WAAK,QAAQ,KAAK,OAAO,oBAAoB,KAAK,gBAAgB;AAAA,IACtE;AAAA,EACJ;AAAA,EAEA,iBAAiB,YAAqB;AAClC,SAAK,OAAO,aAAa,KAAK,EAAE,WAAW,GAAG,KAAK,OAAO;AAAA,EAC9D;AACJ;",
|
|
5
5
|
"names": []
|
|
6
6
|
}
|
package/dist/esm/behaviors/bridged-device-basic-information/BridgedDeviceBasicInformationServer.d.ts
CHANGED
|
@@ -3,15 +3,38 @@
|
|
|
3
3
|
* Copyright 2022-2026 Matter.js Authors
|
|
4
4
|
* SPDX-License-Identifier: Apache-2.0
|
|
5
5
|
*/
|
|
6
|
+
import { ActionContext } from "#behavior/context/ActionContext.js";
|
|
7
|
+
import { MaybePromise } from "@matter/general";
|
|
6
8
|
import { BridgedDeviceBasicInformationBehavior } from "./BridgedDeviceBasicInformationBehavior.js";
|
|
7
9
|
/**
|
|
8
10
|
* This is the default server implementation of BridgedDeviceBasicInformationBehavior.
|
|
9
11
|
*
|
|
10
12
|
* All attributes are optional except for the "reachable" attribute.
|
|
13
|
+
*
|
|
14
|
+
* `ConfigurationVersion` is optional on bridged devices; enable it by providing an initial value when configuring the
|
|
15
|
+
* device. On a configuration change of the bridged node, bump it with {@link increaseConfigurationVersion} (which
|
|
16
|
+
* throws if not enabled); called standalone it also increments the bridge's {@link BasicInformationServer} version,
|
|
17
|
+
* since a bridged-node change is also a change of the bridge. To coalesce several bridged-node changes into a single
|
|
18
|
+
* bridge increment, drive them from {@link BasicInformationServer.increaseConfigurationVersion} and pass its `context`
|
|
19
|
+
* here.
|
|
11
20
|
*/
|
|
12
21
|
export declare class BridgedDeviceBasicInformationServer extends BridgedDeviceBasicInformationBehavior {
|
|
13
22
|
#private;
|
|
14
23
|
initialize(): Promise<void>;
|
|
24
|
+
/**
|
|
25
|
+
* Run a configuration change for this bridged node and increase its ConfigurationVersion afterwards.
|
|
26
|
+
*
|
|
27
|
+
* A bridged-node configuration change is also a configuration change of the bridge itself. When called standalone
|
|
28
|
+
* the bridge's {@link BasicInformationServer} ConfigurationVersion is increased as well.
|
|
29
|
+
*
|
|
30
|
+
* To group changes across multiple bridged nodes into a single bridge increment, drive them from
|
|
31
|
+
* {@link BasicInformationServer.increaseConfigurationVersion} and pass its callback's `context` here: the change is
|
|
32
|
+
* applied in that shared transaction and the bridge increment is left to the enclosing call.
|
|
33
|
+
*
|
|
34
|
+
* `ConfigurationVersion` is optional on bridged devices. Throws if it is not enabled on this node — provide an
|
|
35
|
+
* initial `configurationVersion` value when configuring the device before calling this.
|
|
36
|
+
*/
|
|
37
|
+
increaseConfigurationVersion<T = void>(change?: (context: ActionContext) => MaybePromise<T>, context?: ActionContext): Promise<T>;
|
|
15
38
|
static readonly schema: import("@matter/model").ClusterModel;
|
|
16
39
|
}
|
|
17
40
|
export declare namespace BridgedDeviceBasicInformationServer {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"BridgedDeviceBasicInformationServer.d.ts","sourceRoot":"","sources":["../../../../src/behaviors/bridged-device-basic-information/BridgedDeviceBasicInformationServer.ts"],"names":[],"mappings":"AAAA;;;;GAIG;
|
|
1
|
+
{"version":3,"file":"BridgedDeviceBasicInformationServer.d.ts","sourceRoot":"","sources":["../../../../src/behaviors/bridged-device-basic-information/BridgedDeviceBasicInformationServer.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO,EAAE,aAAa,EAAE,MAAM,oCAAoC,CAAC;AAKnE,OAAO,EAA+B,YAAY,EAAE,MAAM,iBAAiB,CAAC;AAC5E,OAAO,EAAE,qCAAqC,EAAE,MAAM,4CAA4C,CAAC;AAInG;;;;;;;;;;;GAWG;AACH,qBAAa,mCAAoC,SAAQ,qCAAqC;;IAC3E,UAAU,kBAgBxB;IAED;;;;;;;;;;;;OAYG;IACG,4BAA4B,CAAC,CAAC,GAAG,IAAI,EACvC,MAAM,CAAC,EAAE,CAAC,OAAO,EAAE,aAAa,KAAK,YAAY,CAAC,CAAC,CAAC,EACpD,OAAO,CAAC,EAAE,aAAa,GACxB,OAAO,CAAC,CAAC,CAAC,CA2BZ;IAED,gBAAyB,MAAM,uCAE7B;CA+BL;AAED,yBAAiB,mCAAmC,CAAC,CAAC;IAClD,MAAa,KAAM,SAAQ,qCAAqC,CAAC,KAAK;QAEzD,SAAS,UAAQ;KAC7B;CACJ"}
|
package/dist/esm/behaviors/bridged-device-basic-information/BridgedDeviceBasicInformationServer.js
CHANGED
|
@@ -6,6 +6,7 @@
|
|
|
6
6
|
import { BasicInformationServer, validateBasicInfoAttributes } from "#behaviors/basic-information";
|
|
7
7
|
import { DescriptorServer } from "#behaviors/descriptor";
|
|
8
8
|
import { AggregatorEndpoint } from "#endpoints/aggregator";
|
|
9
|
+
import { RootEndpoint } from "#endpoints/root";
|
|
9
10
|
import { ImplementationError, Logger } from "@matter/general";
|
|
10
11
|
import { BridgedDeviceBasicInformationBehavior } from "./BridgedDeviceBasicInformationBehavior.js";
|
|
11
12
|
const logger = Logger.get("BridgedDeviceBasicInformationServer");
|
|
@@ -24,6 +25,41 @@ class BridgedDeviceBasicInformationServer extends BridgedDeviceBasicInformationB
|
|
|
24
25
|
}
|
|
25
26
|
validateBasicInfoAttributes(this.state, logger);
|
|
26
27
|
}
|
|
28
|
+
/**
|
|
29
|
+
* Run a configuration change for this bridged node and increase its ConfigurationVersion afterwards.
|
|
30
|
+
*
|
|
31
|
+
* A bridged-node configuration change is also a configuration change of the bridge itself. When called standalone
|
|
32
|
+
* the bridge's {@link BasicInformationServer} ConfigurationVersion is increased as well.
|
|
33
|
+
*
|
|
34
|
+
* To group changes across multiple bridged nodes into a single bridge increment, drive them from
|
|
35
|
+
* {@link BasicInformationServer.increaseConfigurationVersion} and pass its callback's `context` here: the change is
|
|
36
|
+
* applied in that shared transaction and the bridge increment is left to the enclosing call.
|
|
37
|
+
*
|
|
38
|
+
* `ConfigurationVersion` is optional on bridged devices. Throws if it is not enabled on this node — provide an
|
|
39
|
+
* initial `configurationVersion` value when configuring the device before calling this.
|
|
40
|
+
*/
|
|
41
|
+
async increaseConfigurationVersion(change, context) {
|
|
42
|
+
if (this.state.configurationVersion === void 0) {
|
|
43
|
+
throw new ImplementationError(
|
|
44
|
+
"ConfigurationVersion is not enabled on this bridged device; set an initial configurationVersion value when configuring BridgedDeviceBasicInformation before calling increaseConfigurationVersion."
|
|
45
|
+
);
|
|
46
|
+
}
|
|
47
|
+
const result = await change?.(context ?? this.context);
|
|
48
|
+
this.state.configurationVersion = BasicInformationServer.nextConfigurationVersion(
|
|
49
|
+
this.state.configurationVersion
|
|
50
|
+
);
|
|
51
|
+
if (context === void 0) {
|
|
52
|
+
const root = this.endpoint.ownerOfType(RootEndpoint);
|
|
53
|
+
if (root !== void 0) {
|
|
54
|
+
const agent = root.agentFor(this.context);
|
|
55
|
+
const basicInformation = agent.get(BasicInformationServer);
|
|
56
|
+
await agent.context.transaction.addResources(basicInformation);
|
|
57
|
+
await agent.context.transaction.begin();
|
|
58
|
+
await basicInformation.increaseConfigurationVersion();
|
|
59
|
+
}
|
|
60
|
+
}
|
|
61
|
+
return result;
|
|
62
|
+
}
|
|
27
63
|
static schema = BasicInformationServer.enableUniqueIdPersistence(
|
|
28
64
|
BridgedDeviceBasicInformationBehavior.schema
|
|
29
65
|
);
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"version": 3,
|
|
3
3
|
"sources": ["../../../../src/behaviors/bridged-device-basic-information/BridgedDeviceBasicInformationServer.ts"],
|
|
4
|
-
"mappings": "AAAA;AAAA;AAAA;AAAA;AAAA;
|
|
4
|
+
"mappings": "AAAA;AAAA;AAAA;AAAA;AAAA;AAOA,SAAS,wBAAwB,mCAAmC;AACpE,SAAS,wBAAwB;AACjC,SAAS,0BAA0B;AACnC,SAAS,oBAAoB;AAC7B,SAAS,qBAAqB,cAA4B;AAC1D,SAAS,6CAA6C;AAEtD,MAAM,SAAS,OAAO,IAAI,qCAAqC;AAcxD,MAAM,4CAA4C,sCAAsC;AAAA,EAC3F,MAAe,aAAa;AACxB,QAAI,KAAK,SAAS,UAAU,aAAa;AACrC,YAAM,KAAK,MAAM,KAAK,gBAAgB;AACtC,YAAM,KAAK,eAAe;AAAA,IAC9B,OAAO;AACH,WAAK,QAAQ,KAAK,SAAS,UAAU,WAAW,KAAK,gBAAgB,EAAE,MAAM,KAAK,CAAC;AAAA,IACvF;AACA,SAAK,QAAQ,KAAK,OAAO,mBAAmB,KAAK,oBAAoB;AAErE,UAAM,EAAE,SAAS,IAAI,KAAK;AAE1B,QAAI,aAAa,QAAW;AACxB,WAAK,MAAM,WAAW,uBAAuB,eAAe;AAAA,IAChE;AAEA,gCAA4B,KAAK,OAAO,MAAM;AAAA,EAClD;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,EAeA,MAAM,6BACF,QACA,SACU;AACV,QAAI,KAAK,MAAM,yBAAyB,QAAW;AAC/C,YAAM,IAAI;AAAA,QACN;AAAA,MAEJ;AAAA,IACJ;AAEA,UAAM,SAAS,MAAM,SAAS,WAAW,KAAK,OAAO;AAErD,SAAK,MAAM,uBAAuB,uBAAuB;AAAA,MACrD,KAAK,MAAM;AAAA,IACf;AAGA,QAAI,YAAY,QAAW;AACvB,YAAM,OAAO,KAAK,SAAS,YAAY,YAAY;AACnD,UAAI,SAAS,QAAW;AACpB,cAAM,QAAQ,KAAK,SAAS,KAAK,OAAO;AACxC,cAAM,mBAAmB,MAAM,IAAI,sBAAsB;AACzD,cAAM,MAAM,QAAQ,YAAY,aAAa,gBAAgB;AAC7D,cAAM,MAAM,QAAQ,YAAY,MAAM;AACtC,cAAM,iBAAiB,6BAA6B;AAAA,MACxD;AAAA,IACJ;AAEA,WAAO;AAAA,EACX;AAAA,EAEA,OAAyB,SAAS,uBAAuB;AAAA,IACrD,sCAAsC;AAAA,EAC1C;AAAA;AAAA;AAAA;AAAA,EAKA,qBAAqB,WAAoB;AACrC,SAAK,OAAO,iBAAiB,KAAK,EAAE,mBAAmB,UAAU,GAAG,KAAK,OAAO;AAAA,EACpF;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,EASA,MAAM,iBAAiB;AAEnB,UAAM,QAAQ,KAAK,MAAM;AACzB,QAAI,UAAU,QAAW;AACrB,YAAM,IAAI,oBAAoB,gBAAgB,KAAK,QAAQ,gBAAgB;AAAA,IAC/E;AAGA,QAAI,CAAC,MAAM,IAAI,gBAAgB,EAAE,cAAc,mBAAmB,UAAU,GAAG;AAC3E,YAAM,IAAI,oBAAoB,gBAAgB,KAAK,QAAQ,UAAU,KAAK,uBAAuB;AAAA,IACrG;AAGA,KAAC,MAAM,KAAK,MAAM,KAAK,gBAAgB,GAAG,eAAe,aAAa;AAAA,EAC1E;AACJ;AAAA,CAEO,CAAUA,yCAAV;AAAA,EACI,MAAM,cAAc,sCAAsC,MAAM;AAAA;AAAA,IAE1D,YAAY;AAAA,EACzB;AAHO,EAAAA,qCAAM;AAAA,GADA;",
|
|
5
5
|
"names": ["BridgedDeviceBasicInformationServer"]
|
|
6
6
|
}
|
|
@@ -15,7 +15,7 @@ export declare class ServerNodeFailsafeContext extends FailsafeContext {
|
|
|
15
15
|
* Persist endpoint credentials and network configurations for restoration if commissioning does not complete.
|
|
16
16
|
*
|
|
17
17
|
* The Matter 1.2 specification makes it pretty clear that Matter supports configuration of multiple network
|
|
18
|
-
* interfaces (e.g. @see {@link MatterSpecification.
|
|
18
|
+
* interfaces (e.g. @see {@link MatterSpecification.v16.Core} § 11.9.8 and § 2.3.2).
|
|
19
19
|
* {@link NetworkCommissioningCluster} of the primary interface is on the root endpoint. However it's not clear
|
|
20
20
|
* where {@link NetworkCommissioningCluster} instances for secondary interfaces reside. To be on the safe side
|
|
21
21
|
* we just assume any endpoint may support {@link NetworkCommissioningCluster}.
|
|
@@ -23,7 +23,7 @@ class ServerNodeFailsafeContext extends FailsafeContext {
|
|
|
23
23
|
* Persist endpoint credentials and network configurations for restoration if commissioning does not complete.
|
|
24
24
|
*
|
|
25
25
|
* The Matter 1.2 specification makes it pretty clear that Matter supports configuration of multiple network
|
|
26
|
-
* interfaces (e.g. @see {@link MatterSpecification.
|
|
26
|
+
* interfaces (e.g. @see {@link MatterSpecification.v16.Core} § 11.9.8 and § 2.3.2).
|
|
27
27
|
* {@link NetworkCommissioningCluster} of the primary interface is on the root endpoint. However it's not clear
|
|
28
28
|
* where {@link NetworkCommissioningCluster} instances for secondary interfaces reside. To be on the safe side
|
|
29
29
|
* we just assume any endpoint may support {@link NetworkCommissioningCluster}.
|
|
@@ -95,7 +95,7 @@ export declare namespace GeneralDiagnosticsServer {
|
|
|
95
95
|
totalOperationalHoursCounter: Duration;
|
|
96
96
|
/** The TestEnableKey set for this device for the test commands. Default means "not enabled"." */
|
|
97
97
|
deviceTestEnableKey: Bytes;
|
|
98
|
-
[Val.properties](endpoint: Endpoint,
|
|
98
|
+
[Val.properties](endpoint: Endpoint, session: ValueSupervisor.Session): {
|
|
99
99
|
/**
|
|
100
100
|
* Report uptime
|
|
101
101
|
*
|
|
@@ -114,6 +114,20 @@ export declare namespace GeneralDiagnosticsServer {
|
|
|
114
114
|
* is not send out via subscriptions anyway.
|
|
115
115
|
*/
|
|
116
116
|
readonly totalOperationalHours: number;
|
|
117
|
+
/**
|
|
118
|
+
* Dynamically compute device load metrics (Matter 1.6, cluster rev 3) from InteractionServer counters
|
|
119
|
+
* and SessionManager. Quality "C" means changes are not pushed to subscribers; clients re-read.
|
|
120
|
+
*
|
|
121
|
+
* Returns a zeroed struct before the interaction server is online (so the attribute appears in the
|
|
122
|
+
* attributeList). Throws if the node is online but the required services are unexpectedly absent.
|
|
123
|
+
*/
|
|
124
|
+
readonly deviceLoadStatus: {
|
|
125
|
+
currentSubscriptions: number;
|
|
126
|
+
currentSubscriptionsForFabric: number;
|
|
127
|
+
totalSubscriptionsEstablished: number;
|
|
128
|
+
totalInteractionModelMessagesSent: number;
|
|
129
|
+
totalInteractionModelMessagesReceived: number;
|
|
130
|
+
};
|
|
117
131
|
};
|
|
118
132
|
}
|
|
119
133
|
const ExtensionInterface: {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"GeneralDiagnosticsServer.d.ts","sourceRoot":"","sources":["../../../../src/behaviors/general-diagnostics/GeneralDiagnosticsServer.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,0CAA0C,CAAC;AAKhF,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,uBAAuB,CAAC;
|
|
1
|
+
{"version":3,"file":"GeneralDiagnosticsServer.d.ts","sourceRoot":"","sources":["../../../../src/behaviors/general-diagnostics/GeneralDiagnosticsServer.ts"],"names":[],"mappings":"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"}
|
|
@@ -51,6 +51,7 @@ var __callDispose = (stack, error, hasError) => {
|
|
|
51
51
|
import { NetworkRuntime } from "#behavior/system/network/NetworkRuntime.js";
|
|
52
52
|
import { NetworkCommissioningServer } from "#behaviors/network-commissioning";
|
|
53
53
|
import { TimeSynchronizationBehavior } from "#behaviors/time-synchronization";
|
|
54
|
+
import { InteractionServer } from "#node/server/InteractionServer.js";
|
|
54
55
|
import {
|
|
55
56
|
Bytes,
|
|
56
57
|
Hours,
|
|
@@ -62,11 +63,13 @@ import {
|
|
|
62
63
|
Minutes,
|
|
63
64
|
Seconds,
|
|
64
65
|
Time,
|
|
65
|
-
Timespan
|
|
66
|
+
Timespan,
|
|
67
|
+
UINT16_MAX,
|
|
68
|
+
UINT32_MAX
|
|
66
69
|
} from "@matter/general";
|
|
67
70
|
import { FieldElement, Specification } from "@matter/model";
|
|
68
|
-
import { assertRemoteActor, MdnsService, Val } from "@matter/protocol";
|
|
69
|
-
import { CommandId, Status, StatusResponseError, TlvInvokeResponse, TlvOfModel } from "@matter/types";
|
|
71
|
+
import { assertRemoteActor, MdnsService, SessionManager, Val } from "@matter/protocol";
|
|
72
|
+
import { CommandId, FabricIndex, Status, StatusResponseError, TlvInvokeResponse, TlvOfModel } from "@matter/types";
|
|
70
73
|
import { GeneralDiagnostics } from "@matter/types/clusters/general-diagnostics";
|
|
71
74
|
import { GeneralDiagnosticsBehavior } from "./GeneralDiagnosticsBehavior.js";
|
|
72
75
|
const logger = Logger.get("GeneralDiagnosticsServer");
|
|
@@ -348,7 +351,7 @@ class GeneralDiagnosticsServer extends Base {
|
|
|
348
351
|
totalOperationalHoursCounter = 0;
|
|
349
352
|
/** The TestEnableKey set for this device for the test commands. Default means "not enabled"." */
|
|
350
353
|
deviceTestEnableKey = new Uint8Array(16).fill(0);
|
|
351
|
-
[Val.properties](endpoint,
|
|
354
|
+
[Val.properties](endpoint, session) {
|
|
352
355
|
return {
|
|
353
356
|
/**
|
|
354
357
|
* Report uptime
|
|
@@ -382,6 +385,56 @@ class GeneralDiagnosticsServer extends Base {
|
|
|
382
385
|
const timeAsOfLastUpdate = endpoint.stateOf(GeneralDiagnosticsServer2).totalOperationalHoursCounter;
|
|
383
386
|
const totalOperationalTime = Millis(timeAsOfLastUpdate + timeSinceLastUpdate);
|
|
384
387
|
return Hours.of(totalOperationalTime);
|
|
388
|
+
},
|
|
389
|
+
/**
|
|
390
|
+
* Dynamically compute device load metrics (Matter 1.6, cluster rev 3) from InteractionServer counters
|
|
391
|
+
* and SessionManager. Quality "C" means changes are not pushed to subscribers; clients re-read.
|
|
392
|
+
*
|
|
393
|
+
* Returns a zeroed struct before the interaction server is online (so the attribute appears in the
|
|
394
|
+
* attributeList). Throws if the node is online but the required services are unexpectedly absent.
|
|
395
|
+
*/
|
|
396
|
+
get deviceLoadStatus() {
|
|
397
|
+
const isOnline = endpoint.lifecycle.isOnline;
|
|
398
|
+
if (!endpoint.env.has(InteractionServer) || !endpoint.env.has(SessionManager)) {
|
|
399
|
+
if (isOnline) {
|
|
400
|
+
throw new StatusResponseError(
|
|
401
|
+
"DeviceLoadStatus unavailable: InteractionServer or SessionManager missing",
|
|
402
|
+
Status.Failure
|
|
403
|
+
);
|
|
404
|
+
}
|
|
405
|
+
return {
|
|
406
|
+
currentSubscriptions: 0,
|
|
407
|
+
currentSubscriptionsForFabric: 0,
|
|
408
|
+
totalSubscriptionsEstablished: 0,
|
|
409
|
+
totalInteractionModelMessagesSent: 0,
|
|
410
|
+
totalInteractionModelMessagesReceived: 0
|
|
411
|
+
};
|
|
412
|
+
}
|
|
413
|
+
const sessionManager = endpoint.env.get(SessionManager);
|
|
414
|
+
const { counters } = endpoint.env.get(InteractionServer);
|
|
415
|
+
const accessingFabric = session.fabric ?? FabricIndex.NO_FABRIC;
|
|
416
|
+
let currentSubscriptions = 0;
|
|
417
|
+
let currentSubscriptionsForFabric = 0;
|
|
418
|
+
for (const sess of sessionManager.sessions) {
|
|
419
|
+
const count = sess.subscriptions.size;
|
|
420
|
+
currentSubscriptions += count;
|
|
421
|
+
if (sess.fabric?.fabricIndex === accessingFabric) {
|
|
422
|
+
currentSubscriptionsForFabric += count;
|
|
423
|
+
}
|
|
424
|
+
}
|
|
425
|
+
return {
|
|
426
|
+
currentSubscriptions: Math.min(currentSubscriptions, UINT16_MAX),
|
|
427
|
+
currentSubscriptionsForFabric: Math.min(currentSubscriptionsForFabric, UINT16_MAX),
|
|
428
|
+
totalSubscriptionsEstablished: Math.min(counters.totalSubscriptionsEstablished, UINT32_MAX),
|
|
429
|
+
totalInteractionModelMessagesSent: Math.min(
|
|
430
|
+
counters.totalInteractionModelMessagesSent,
|
|
431
|
+
UINT32_MAX
|
|
432
|
+
),
|
|
433
|
+
totalInteractionModelMessagesReceived: Math.min(
|
|
434
|
+
counters.totalInteractionModelMessagesReceived,
|
|
435
|
+
UINT32_MAX
|
|
436
|
+
)
|
|
437
|
+
};
|
|
385
438
|
}
|
|
386
439
|
};
|
|
387
440
|
}
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"version": 3,
|
|
3
3
|
"sources": ["../../../../src/behaviors/general-diagnostics/GeneralDiagnosticsServer.ts"],
|
|
4
|
-
"mappings": ";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAOA,SAAS,sBAAsB;AAE/B,SAAS,kCAAkC;AAC3C,SAAS,mCAAmC;AAG5C;AAAA,EACI;AAAA,EAEA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EAEA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EAEA;AAAA,OACG;AACP,SAAS,cAAc,qBAAqB;AAC5C,SAAS,mBAAmB,aAAa,WAAW;
|
|
4
|
+
"mappings": "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",
|
|
5
5
|
"names": ["GeneralDiagnosticsServer"]
|
|
6
6
|
}
|
|
@@ -10,6 +10,9 @@ import { Identity } from "@matter/general";
|
|
|
10
10
|
/**
|
|
11
11
|
* GroupKeyManagementBehavior is the base class for objects that support interaction with
|
|
12
12
|
* {@link GroupKeyManagement.Cluster}.
|
|
13
|
+
*
|
|
14
|
+
* This class does not have optional features of GroupKeyManagement.Cluster enabled. You can enable additional features
|
|
15
|
+
* using GroupKeyManagementBehavior.with.
|
|
13
16
|
*/
|
|
14
17
|
export declare const GroupKeyManagementBehaviorConstructor: ClusterBehavior.Type<typeof ClusterBehavior, GroupKeyManagement, typeof GroupKeyManagement, new () => {}, Uncapitalize<string>> & {
|
|
15
18
|
readonly id: "groupKeyManagement";
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"GroupKeyManagementBehavior.d.ts","sourceRoot":"","sources":["../../../../src/behaviors/group-key-management/GroupKeyManagementBehavior.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,6CAA6C;AAE7C,OAAO,EAAE,kBAAkB,EAAE,MAAM,6CAA6C,CAAC;AACjF,OAAO,EAAE,eAAe,EAAE,MAAM,2CAA2C,CAAC;AAC5E,OAAO,EAAE,QAAQ,EAAE,MAAM,iBAAiB,CAAC;AAE3C
|
|
1
|
+
{"version":3,"file":"GroupKeyManagementBehavior.d.ts","sourceRoot":"","sources":["../../../../src/behaviors/group-key-management/GroupKeyManagementBehavior.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,6CAA6C;AAE7C,OAAO,EAAE,kBAAkB,EAAE,MAAM,6CAA6C,CAAC;AACjF,OAAO,EAAE,eAAe,EAAE,MAAM,2CAA2C,CAAC;AAC5E,OAAO,EAAE,QAAQ,EAAE,MAAM,iBAAiB,CAAC;AAE3C;;;;;;GAMG;AACH,eAAO,MAAM,qCAAqC;;CAA0C,CAAC;AAE7F,MAAM,WAAW,qCAAsC,SAAQ,QAAQ,CAAC,OAAO,qCAAqC,CAAC;CAAG;AACxH,eAAO,MAAM,0BAA0B,EAAE,qCAA6E,CAAC;AACvH,MAAM,WAAW,0BAA2B,SAAQ,YAAY,CAAC,qCAAqC,CAAC;CAAG;AAC1G,yBAAiB,0BAA0B,CAAC,CAAC;IACzC,UAAiB,KAAM,SAAQ,YAAY,CAAC,OAAO,0BAA0B,CAAC,KAAK,CAAC;KAAG;CAC1F"}
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"version": 3,
|
|
3
3
|
"sources": ["../../../../src/behaviors/group-key-management/GroupKeyManagementBehavior.ts"],
|
|
4
|
-
"mappings": "AAAA;AAAA;AAAA;AAAA;AAAA;AAQA,SAAS,0BAA0B;AACnC,SAAS,uBAAuB;
|
|
4
|
+
"mappings": "AAAA;AAAA;AAAA;AAAA;AAAA;AAQA,SAAS,0BAA0B;AACnC,SAAS,uBAAuB;AAUzB,MAAM,wCAAwC,gBAAgB,IAAI,kBAAkB;AAGpF,MAAM,6BAAoE;",
|
|
5
5
|
"names": []
|
|
6
6
|
}
|
|
@@ -6,11 +6,11 @@
|
|
|
6
6
|
import { Fabric } from "@matter/protocol";
|
|
7
7
|
import { EndpointNumber, FabricIndex, GroupId } from "@matter/types";
|
|
8
8
|
import { GroupKeyManagement } from "@matter/types/clusters/group-key-management";
|
|
9
|
-
|
|
9
|
+
declare const GroupKeyManagementBase: import("./GroupKeyManagementBehavior.js").GroupKeyManagementBehaviorConstructor;
|
|
10
10
|
/**
|
|
11
11
|
* This is the default server implementation of {@link GroupKeyManagementBehavior}.
|
|
12
12
|
*/
|
|
13
|
-
export declare class GroupKeyManagementServer extends
|
|
13
|
+
export declare class GroupKeyManagementServer extends GroupKeyManagementBase {
|
|
14
14
|
#private;
|
|
15
15
|
readonly state: GroupKeyManagementServer.State;
|
|
16
16
|
static readonly schema: import("@matter/model").ClusterModel;
|
|
@@ -24,9 +24,22 @@ export declare class GroupKeyManagementServer extends GroupKeyManagementBehavior
|
|
|
24
24
|
* Remove endpoint from the provided group, or all groups if no groupId is provided.
|
|
25
25
|
*/
|
|
26
26
|
removeEndpoint(fabric: Fabric, endpointId: EndpointNumber, groupId?: GroupId): boolean;
|
|
27
|
+
/**
|
|
28
|
+
* Returns whether a GroupKeySetId exists for a given fabric. Called by GroupcastServer to validate KeySetIDs.
|
|
29
|
+
*/
|
|
30
|
+
validateKeySetId(fabricIndex: FabricIndex, keySetId: number): boolean;
|
|
31
|
+
/**
|
|
32
|
+
* Creates a new GroupKeySet for a Groupcast group key, bypassing normal KeySetWrite validation.
|
|
33
|
+
* Used by GroupcastServer when JoinGroup or UpdateGroupKey is called with a `key` parameter.
|
|
34
|
+
* The key set uses TrustFirst policy and epochStartTime0=IPK_DEFAULT_EPOCH_START_TIME (Matter epoch zero = Jan 1, 2000).
|
|
35
|
+
*
|
|
36
|
+
* @returns true on success, throws if the key set already exists or resources are exhausted
|
|
37
|
+
*/
|
|
38
|
+
createKeySetForGroupcast(fabric: Fabric, keySetId: number, epochKey0: Uint8Array): Promise<void>;
|
|
39
|
+
setGroupcastAdopted(fabricIndex: FabricIndex, adopted: boolean): void;
|
|
27
40
|
}
|
|
28
41
|
export declare namespace GroupKeyManagementServer {
|
|
29
|
-
class State extends
|
|
42
|
+
class State extends GroupKeyManagementBase.State {
|
|
30
43
|
/**
|
|
31
44
|
* Extended state to hold and persist the group key sets for this server. This structure contains all
|
|
32
45
|
* GroupKeySet entries for all fabrics beside the fabric specific entries of the groupKeyset 0
|
|
@@ -36,6 +49,12 @@ export declare namespace GroupKeyManagementServer {
|
|
|
36
49
|
})[];
|
|
37
50
|
maxGroupKeysPerFabric: number;
|
|
38
51
|
maxGroupsPerFabric: number;
|
|
52
|
+
/**
|
|
53
|
+
* Per-fabric Groupcast adoption state (provisional Matter 1.6 GCAST feature). Only present when the Groupcast
|
|
54
|
+
* feature is enabled; the default server rejects it while provisional.
|
|
55
|
+
*/
|
|
56
|
+
groupcastAdoption?: GroupKeyManagement.GroupcastAdoption[];
|
|
39
57
|
}
|
|
40
58
|
}
|
|
59
|
+
export {};
|
|
41
60
|
//# sourceMappingURL=GroupKeyManagementServer.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"GroupKeyManagementServer.d.ts","sourceRoot":"","sources":["../../../../src/behaviors/group-key-management/GroupKeyManagementServer.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAMH,OAAO,EAEH,MAAM,EAIT,MAAM,kBAAkB,CAAC;AAC1B,OAAO,EAAE,cAAc,EAAE,WAAW,EAAE,OAAO,EAA+B,MAAM,eAAe,CAAC;AAClG,OAAO,EAAE,kBAAkB,EAAE,MAAM,6CAA6C,CAAC;
|
|
1
|
+
{"version":3,"file":"GroupKeyManagementServer.d.ts","sourceRoot":"","sources":["../../../../src/behaviors/group-key-management/GroupKeyManagementServer.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAMH,OAAO,EAEH,MAAM,EAIT,MAAM,kBAAkB,CAAC;AAC1B,OAAO,EAAE,cAAc,EAAE,WAAW,EAAE,OAAO,EAA+B,MAAM,eAAe,CAAC;AAClG,OAAO,EAAE,kBAAkB,EAAE,MAAM,6CAA6C,CAAC;AAOjF,QAAA,MAAM,sBAAsB,iFAA6B,CAAC;AAyB1D;;GAEG;AACH,qBAAa,wBAAyB,SAAQ,sBAAsB;;IAChE,SAAiB,KAAK,EAAE,wBAAwB,CAAC,KAAK,CAAC;IACvD,gBAAyB,MAAM,uCAAU;IAEhC,UAAU,SAqBlB;IA6Nc,WAAW,CAAC,EAAE,WAAW,EAAE,EAAE,kBAAkB,CAAC,kBAAkB,iBAoGhF;IAEQ,UAAU,CAAC,EAChB,aAAa,EAChB,EAAE,kBAAkB,CAAC,iBAAiB,GAAG,kBAAkB,CAAC,kBAAkB,CAmB9E;IAEQ,YAAY,CAAC,EAAE,aAAa,EAAE,EAAE,kBAAkB,CAAC,mBAAmB,QA4B9E;IAEQ,oBAAoB,IAAI,kBAAkB,CAAC,4BAA4B,CAc/E;IAED,mBAAmB,CAAC,MAAM,EAAE,MAAM,EAAE,OAAO,EAAE,OAAO,EAAE,UAAU,EAAE,cAAc,EAAE,SAAS,EAAE,MAAM,GAAG,IAAI,CAoCzG;IAED;;OAEG;IACH,cAAc,CAAC,MAAM,EAAE,MAAM,EAAE,UAAU,EAAE,cAAc,EAAE,OAAO,CAAC,EAAE,OAAO,GAAG,OAAO,CA2BrF;IAQD;;OAEG;IACH,gBAAgB,CAAC,WAAW,EAAE,WAAW,EAAE,QAAQ,EAAE,MAAM,GAAG,OAAO,CAQpE;IAED;;;;;;OAMG;IACH,wBAAwB,CAAC,MAAM,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,EAAE,SAAS,EAAE,UAAU,GAAG,OAAO,CAAC,IAAI,CAAC,CAuB/F;IAED,mBAAmB,CAAC,WAAW,EAAE,WAAW,EAAE,OAAO,EAAE,OAAO,QAW7D;CACJ;AAED,yBAAiB,wBAAwB,CAAC,CAAC;IACvC,MAAa,KAAM,SAAQ,sBAAsB,CAAC,KAAK;QACnD;;;WAGG;QACH,YAAY,EAAE,CAAC,kBAAkB,CAAC,WAAW,GAAG;YAAE,WAAW,EAAE,WAAW,CAAA;SAAE,CAAC,EAAE,CAAM;QAG5E,qBAAqB,SAAM;QAC3B,kBAAkB,SAAM;QAEjC;;;WAGG;QACK,iBAAiB,CAAC,EAAE,kBAAkB,CAAC,iBAAiB,EAAE,CAAC;KACtE;CACJ"}
|
|
@@ -16,14 +16,15 @@ import { GroupKeyManagement } from "@matter/types/clusters/group-key-management"
|
|
|
16
16
|
import { GroupKeyManagementBehavior } from "./GroupKeyManagementBehavior.js";
|
|
17
17
|
const logger = Logger.get("GroupKeyManagementServer");
|
|
18
18
|
const MAX_64BIT_TIME = BigInt("0xffffffffffffffff");
|
|
19
|
-
const
|
|
19
|
+
const GroupKeyManagementBase = GroupKeyManagementBehavior;
|
|
20
|
+
const groupKeySetStruct = GroupKeyManagementBase.schema.datatypes.require("GroupKeySetStruct");
|
|
20
21
|
const groupKeySetStructFS = groupKeySetStruct.extend(
|
|
21
22
|
{
|
|
22
23
|
name: "GroupKeySetStructFS"
|
|
23
24
|
},
|
|
24
25
|
FieldElement({ name: "FabricIndex", id: 254, type: "FabricIndex", conformance: "M" })
|
|
25
26
|
);
|
|
26
|
-
const schema =
|
|
27
|
+
const schema = GroupKeyManagementBase.schema.extend(
|
|
27
28
|
{},
|
|
28
29
|
groupKeySetStructFS,
|
|
29
30
|
FieldElement(
|
|
@@ -37,12 +38,17 @@ const schema = GroupKeyManagementBehavior.schema.extend(
|
|
|
37
38
|
FieldElement({ name: "entry", type: "GroupKeySetStructFS" })
|
|
38
39
|
)
|
|
39
40
|
);
|
|
40
|
-
class GroupKeyManagementServer extends
|
|
41
|
+
class GroupKeyManagementServer extends GroupKeyManagementBase {
|
|
41
42
|
static schema = schema;
|
|
42
43
|
initialize() {
|
|
43
44
|
if (this.features.cacheAndSync) {
|
|
44
45
|
throw new ImplementationError("The CacheAndSync feature is provisional. Do not use it.");
|
|
45
46
|
}
|
|
47
|
+
if (this.features.groupcast) {
|
|
48
|
+
throw new ImplementationError(
|
|
49
|
+
"The Groupcast feature of GroupKeyManagement is provisional in Matter 1.6. Do not enable it."
|
|
50
|
+
);
|
|
51
|
+
}
|
|
46
52
|
this.reactTo(this.events.groupKeyMap$Changing, this.#validateGroupKeyMap);
|
|
47
53
|
this.reactTo(this.events.groupTable$Changing, this.#validateGroupTable);
|
|
48
54
|
this.reactTo(this.events.groupKeyMap$Changed, this.#updateGroupKeyMap);
|
|
@@ -125,6 +131,15 @@ class GroupKeyManagementServer extends GroupKeyManagementBehavior {
|
|
|
125
131
|
}
|
|
126
132
|
}
|
|
127
133
|
#validateGroupKeyMap(groupKeyMap) {
|
|
134
|
+
if (this.features.groupcast && hasRemoteActor(this.context)) {
|
|
135
|
+
const fabricIndex = this.context.session?.fabric?.fabricIndex;
|
|
136
|
+
if (fabricIndex !== void 0 && this.#isGroupcastAdoptedForFabric(fabricIndex)) {
|
|
137
|
+
throw new StatusResponseError(
|
|
138
|
+
"GroupKeyMap is read-only when GroupcastAdoption.GroupcastAdopted is true",
|
|
139
|
+
Status.InvalidInState
|
|
140
|
+
);
|
|
141
|
+
}
|
|
142
|
+
}
|
|
128
143
|
const knownGroupKeys = /* @__PURE__ */ new Set();
|
|
129
144
|
for (const keySetId of this.state.groupKeySets) {
|
|
130
145
|
const { groupKeySetId, fabricIndex } = keySetId;
|
|
@@ -323,7 +338,7 @@ class GroupKeyManagementServer extends GroupKeyManagementBehavior {
|
|
|
323
338
|
}
|
|
324
339
|
this.state.groupKeySets.splice(existingIndex, 1);
|
|
325
340
|
this.state.groupKeyMap = this.state.groupKeyMap.filter(
|
|
326
|
-
(
|
|
341
|
+
(entry) => entry.fabricIndex !== fabricIndex || entry.groupKeySetId !== groupKeySetId
|
|
327
342
|
);
|
|
328
343
|
fabric.groups.removeGroupKeySet(groupKeySetId);
|
|
329
344
|
}
|
|
@@ -394,9 +409,68 @@ class GroupKeyManagementServer extends GroupKeyManagementBehavior {
|
|
|
394
409
|
}
|
|
395
410
|
return existing;
|
|
396
411
|
}
|
|
412
|
+
#isGroupcastAdoptedForFabric(fabricIndex) {
|
|
413
|
+
if (!this.features.groupcast) return false;
|
|
414
|
+
if (!this.state.groupcastAdoption) return false;
|
|
415
|
+
return this.state.groupcastAdoption.some((entry) => entry.fabricIndex === fabricIndex && entry.groupcastAdopted);
|
|
416
|
+
}
|
|
417
|
+
/**
|
|
418
|
+
* Returns whether a GroupKeySetId exists for a given fabric. Called by GroupcastServer to validate KeySetIDs.
|
|
419
|
+
*/
|
|
420
|
+
validateKeySetId(fabricIndex, keySetId) {
|
|
421
|
+
if (keySetId === 0) {
|
|
422
|
+
return true;
|
|
423
|
+
}
|
|
424
|
+
return this.state.groupKeySets.some(
|
|
425
|
+
(entry) => entry.fabricIndex === fabricIndex && entry.groupKeySetId === keySetId
|
|
426
|
+
);
|
|
427
|
+
}
|
|
428
|
+
/**
|
|
429
|
+
* Creates a new GroupKeySet for a Groupcast group key, bypassing normal KeySetWrite validation.
|
|
430
|
+
* Used by GroupcastServer when JoinGroup or UpdateGroupKey is called with a `key` parameter.
|
|
431
|
+
* The key set uses TrustFirst policy and epochStartTime0=IPK_DEFAULT_EPOCH_START_TIME (Matter epoch zero = Jan 1, 2000).
|
|
432
|
+
*
|
|
433
|
+
* @returns true on success, throws if the key set already exists or resources are exhausted
|
|
434
|
+
*/
|
|
435
|
+
createKeySetForGroupcast(fabric, keySetId, epochKey0) {
|
|
436
|
+
const fabricIndex = fabric.fabricIndex;
|
|
437
|
+
const keySetsOfFabric = this.state.groupKeySets.filter(({ fabricIndex: fi }) => fi === fabricIndex).length + 1;
|
|
438
|
+
if (keySetsOfFabric >= this.state.maxGroupKeysPerFabric) {
|
|
439
|
+
throw new StatusResponseError(
|
|
440
|
+
`Too many group key sets for fabric ${fabricIndex}`,
|
|
441
|
+
Status.ResourceExhausted
|
|
442
|
+
);
|
|
443
|
+
}
|
|
444
|
+
const groupKeySet = {
|
|
445
|
+
groupKeySetId: keySetId,
|
|
446
|
+
groupKeySecurityPolicy: GroupKeyManagement.GroupKeySecurityPolicy.TrustFirst,
|
|
447
|
+
epochKey0,
|
|
448
|
+
epochStartTime0: IPK_DEFAULT_EPOCH_START_TIME,
|
|
449
|
+
// Matter epoch zero
|
|
450
|
+
epochKey1: null,
|
|
451
|
+
epochStartTime1: null,
|
|
452
|
+
epochKey2: null,
|
|
453
|
+
epochStartTime2: null,
|
|
454
|
+
fabricIndex
|
|
455
|
+
};
|
|
456
|
+
this.state.groupKeySets.push(groupKeySet);
|
|
457
|
+
return fabric.groups.setFromGroupKeySet(groupKeySet);
|
|
458
|
+
}
|
|
459
|
+
setGroupcastAdopted(fabricIndex, adopted) {
|
|
460
|
+
if (!this.state.groupcastAdoption) return;
|
|
461
|
+
const existing = this.state.groupcastAdoption.findIndex((e) => e.fabricIndex === fabricIndex);
|
|
462
|
+
if (existing !== -1) {
|
|
463
|
+
this.state.groupcastAdoption[existing] = {
|
|
464
|
+
...this.state.groupcastAdoption[existing],
|
|
465
|
+
groupcastAdopted: adopted
|
|
466
|
+
};
|
|
467
|
+
} else {
|
|
468
|
+
this.state.groupcastAdoption.push({ fabricIndex, groupcastAdopted: adopted });
|
|
469
|
+
}
|
|
470
|
+
}
|
|
397
471
|
}
|
|
398
472
|
((GroupKeyManagementServer2) => {
|
|
399
|
-
class State extends
|
|
473
|
+
class State extends GroupKeyManagementBase.State {
|
|
400
474
|
/**
|
|
401
475
|
* Extended state to hold and persist the group key sets for this server. This structure contains all
|
|
402
476
|
* GroupKeySet entries for all fabrics beside the fabric specific entries of the groupKeyset 0
|
|
@@ -405,8 +479,7 @@ class GroupKeyManagementServer extends GroupKeyManagementBehavior {
|
|
|
405
479
|
// Overwrite defaults to allow more than 3 group keys and 4 groups per fabric, because we can
|
|
406
480
|
maxGroupKeysPerFabric = 20;
|
|
407
481
|
// The Minimum would be 3;
|
|
408
|
-
maxGroupsPerFabric =
|
|
409
|
-
// The Minimum would be 4;
|
|
482
|
+
maxGroupsPerFabric = 22;
|
|
410
483
|
}
|
|
411
484
|
GroupKeyManagementServer2.State = State;
|
|
412
485
|
})(GroupKeyManagementServer || (GroupKeyManagementServer = {}));
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"version": 3,
|
|
3
3
|
"sources": ["../../../../src/behaviors/group-key-management/GroupKeyManagementServer.ts"],
|
|
4
|
-
"mappings": "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",
|
|
4
|
+
"mappings": "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",
|
|
5
5
|
"names": ["groupId", "GroupKeyManagementServer"]
|
|
6
6
|
}
|