@matter/model 0.13.0-alpha.0-20250318-c1aa38b08 → 0.13.0-alpha.0-20250323-770919c6a
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/aspects/Quality.d.ts +45 -5
- package/dist/cjs/aspects/Quality.d.ts.map +1 -1
- package/dist/cjs/aspects/Quality.js.map +1 -1
- package/dist/cjs/elements/BaseElement.d.ts +14 -5
- package/dist/cjs/elements/BaseElement.d.ts.map +1 -1
- package/dist/cjs/elements/BaseElement.js.map +1 -1
- package/dist/cjs/elements/ValueElement.d.ts +1 -1
- package/dist/cjs/logic/DefaultValue.js +1 -1
- package/dist/cjs/logic/ModelVariantTraversal.d.ts.map +1 -1
- package/dist/cjs/logic/ModelVariantTraversal.js +18 -8
- package/dist/cjs/logic/ModelVariantTraversal.js.map +1 -1
- package/dist/cjs/logic/Scope.d.ts.map +1 -1
- package/dist/cjs/logic/Scope.js +7 -3
- package/dist/cjs/logic/Scope.js.map +1 -1
- package/dist/cjs/models/AttributeModel.d.ts +1 -0
- package/dist/cjs/models/AttributeModel.d.ts.map +1 -1
- package/dist/cjs/models/CommandModel.d.ts +1 -0
- package/dist/cjs/models/CommandModel.d.ts.map +1 -1
- package/dist/cjs/models/EventModel.d.ts +1 -0
- package/dist/cjs/models/EventModel.d.ts.map +1 -1
- package/dist/cjs/models/Model.d.ts +4 -0
- package/dist/cjs/models/Model.d.ts.map +1 -1
- package/dist/cjs/models/Model.js +1 -0
- package/dist/cjs/models/Model.js.map +1 -1
- package/dist/cjs/standard/elements/AccessControl.d.ts.map +1 -1
- package/dist/cjs/standard/elements/AccessControl.js +1 -1
- package/dist/cjs/standard/elements/AccessControl.js.map +1 -1
- package/dist/cjs/standard/elements/Actions.js +1 -1
- package/dist/cjs/standard/elements/AlarmBase.js +4 -4
- package/dist/cjs/standard/elements/ApplicationLauncher.d.ts.map +1 -1
- package/dist/cjs/standard/elements/ApplicationLauncher.js.map +1 -1
- package/dist/cjs/standard/elements/BatteryStorageDT.d.ts.map +1 -1
- package/dist/cjs/standard/elements/BatteryStorageDT.js.map +1 -1
- package/dist/cjs/standard/elements/BridgedDeviceBasicInformation.d.ts.map +1 -1
- package/dist/cjs/standard/elements/ColorControl.d.ts.map +1 -1
- package/dist/cjs/standard/elements/ColorControl.js +38 -42
- package/dist/cjs/standard/elements/ColorControl.js.map +1 -1
- package/dist/cjs/standard/elements/ColorDimmerSwitchDT.d.ts.map +1 -1
- package/dist/cjs/standard/elements/ColorTemperatureLightDT.d.ts.map +1 -1
- package/dist/cjs/standard/elements/CommissionerControl.js +1 -1
- package/dist/cjs/standard/elements/ContentAppObserver.js +1 -1
- package/dist/cjs/standard/elements/ContentLauncher.d.ts.map +1 -1
- package/dist/cjs/standard/elements/ContentLauncher.js.map +1 -1
- package/dist/cjs/standard/elements/DeviceEnergyManagement.d.ts.map +1 -1
- package/dist/cjs/standard/elements/DeviceEnergyManagement.js +1 -1
- package/dist/cjs/standard/elements/DeviceEnergyManagement.js.map +1 -1
- package/dist/cjs/standard/elements/DimmableLightDT.d.ts.map +1 -1
- package/dist/cjs/standard/elements/DimmablePlugInUnitDT.d.ts.map +1 -1
- package/dist/cjs/standard/elements/DimmerSwitchDT.d.ts.map +1 -1
- package/dist/cjs/standard/elements/DoorLock.d.ts.map +1 -1
- package/dist/cjs/standard/elements/DoorLock.js +29 -14
- package/dist/cjs/standard/elements/DoorLock.js.map +1 -1
- package/dist/cjs/standard/elements/EcosystemInformation.d.ts.map +1 -1
- package/dist/cjs/standard/elements/EcosystemInformation.js +36 -1
- package/dist/cjs/standard/elements/EcosystemInformation.js.map +2 -2
- package/dist/cjs/standard/elements/EnergyEvse.d.ts.map +1 -1
- package/dist/cjs/standard/elements/EnergyEvse.js +1 -1
- package/dist/cjs/standard/elements/EnergyEvse.js.map +1 -1
- package/dist/cjs/standard/elements/EthernetNetworkDiagnostics.d.ts.map +1 -1
- package/dist/cjs/standard/elements/EthernetNetworkDiagnostics.js.map +1 -1
- package/dist/cjs/standard/elements/ExtendedColorLightDT.d.ts.map +1 -1
- package/dist/cjs/standard/elements/FixedLabel.d.ts.map +1 -1
- package/dist/cjs/standard/elements/FixedLabel.js +1 -1
- package/dist/cjs/standard/elements/FixedLabel.js.map +1 -1
- package/dist/cjs/standard/elements/GeneralCommissioning.d.ts.map +1 -1
- package/dist/cjs/standard/elements/GeneralCommissioning.js +7 -7
- package/dist/cjs/standard/elements/GeneralCommissioning.js.map +1 -1
- package/dist/cjs/standard/elements/GeneralDiagnostics.d.ts.map +1 -1
- package/dist/cjs/standard/elements/GeneralDiagnostics.js.map +1 -1
- package/dist/cjs/standard/elements/GroupKeyManagement.d.ts.map +1 -1
- package/dist/cjs/standard/elements/GroupKeyManagement.js +2 -3
- package/dist/cjs/standard/elements/GroupKeyManagement.js.map +1 -1
- package/dist/cjs/standard/elements/Groups.d.ts.map +1 -1
- package/dist/cjs/standard/elements/Groups.js.map +1 -1
- package/dist/cjs/standard/elements/LevelControl.d.ts.map +1 -1
- package/dist/cjs/standard/elements/LevelControl.js +8 -8
- package/dist/cjs/standard/elements/LevelControl.js.map +1 -1
- package/dist/cjs/standard/elements/MediaPlayback.d.ts.map +1 -1
- package/dist/cjs/standard/elements/MediaPlayback.js +1 -1
- package/dist/cjs/standard/elements/MediaPlayback.js.map +1 -1
- package/dist/cjs/standard/elements/ModeBase.js +1 -1
- package/dist/cjs/standard/elements/MountedDimmableLoadControlDT.d.ts.map +1 -1
- package/dist/cjs/standard/elements/MountedOnOffControlDT.d.ts.map +1 -1
- package/dist/cjs/standard/elements/NetworkCommissioning.d.ts.map +1 -1
- package/dist/cjs/standard/elements/NetworkCommissioning.js +2 -2
- package/dist/cjs/standard/elements/NetworkCommissioning.js.map +1 -1
- package/dist/cjs/standard/elements/NetworkInfrastructureManagerDT.d.ts.map +1 -1
- package/dist/cjs/standard/elements/OnOff.js +1 -1
- package/dist/cjs/standard/elements/OnOffPlugInUnitDT.d.ts.map +1 -1
- package/dist/cjs/standard/elements/OperationalCredentials.d.ts.map +1 -1
- package/dist/cjs/standard/elements/OperationalCredentials.js +3 -3
- package/dist/cjs/standard/elements/OperationalCredentials.js.map +1 -1
- package/dist/cjs/standard/elements/OperationalState.js +1 -1
- package/dist/cjs/standard/elements/OtaSoftwareUpdateProvider.js +6 -6
- package/dist/cjs/standard/elements/OtaSoftwareUpdateRequestor.d.ts.map +1 -1
- package/dist/cjs/standard/elements/OtaSoftwareUpdateRequestor.js.map +1 -1
- package/dist/cjs/standard/elements/OvenCavityOperationalState.d.ts.map +1 -1
- package/dist/cjs/standard/elements/PowerSource.d.ts.map +1 -1
- package/dist/cjs/standard/elements/PowerSource.js.map +1 -1
- package/dist/cjs/standard/elements/PumpConfigurationAndControl.d.ts.map +1 -1
- package/dist/cjs/standard/elements/PumpConfigurationAndControl.js.map +1 -1
- package/dist/cjs/standard/elements/PumpDT.d.ts.map +1 -1
- package/dist/cjs/standard/elements/RefrigeratorAndTemperatureControlledCabinetMode.d.ts.map +1 -1
- package/dist/cjs/standard/elements/ScenesManagement.js +3 -3
- package/dist/cjs/standard/elements/ScenesManagement.js.map +1 -1
- package/dist/cjs/standard/elements/ServiceArea.js +4 -3
- package/dist/cjs/standard/elements/ServiceArea.js.map +1 -1
- package/dist/cjs/standard/elements/SmokeCoAlarm.d.ts.map +1 -1
- package/dist/cjs/standard/elements/SmokeCoAlarm.js.map +1 -1
- package/dist/cjs/standard/elements/Switch.js +2 -2
- package/dist/cjs/standard/elements/Thermostat.d.ts.map +1 -1
- package/dist/cjs/standard/elements/Thermostat.js +13 -8
- package/dist/cjs/standard/elements/Thermostat.js.map +1 -1
- package/dist/cjs/standard/elements/ThreadNetworkDiagnostics.d.ts.map +1 -1
- package/dist/cjs/standard/elements/ThreadNetworkDiagnostics.js.map +1 -1
- package/dist/cjs/standard/elements/TimeFormatLocalization.d.ts.map +1 -1
- package/dist/cjs/standard/elements/TimeFormatLocalization.js.map +1 -1
- package/dist/cjs/standard/elements/TimeSynchronization.d.ts.map +1 -1
- package/dist/cjs/standard/elements/TimeSynchronization.js.map +1 -1
- package/dist/cjs/standard/elements/ValveConfigurationAndControl.d.ts.map +1 -1
- package/dist/cjs/standard/elements/ValveConfigurationAndControl.js.map +1 -1
- package/dist/cjs/standard/elements/WaterValveDT.d.ts.map +1 -1
- package/dist/cjs/standard/elements/WiFiNetworkManagement.d.ts.map +1 -1
- package/dist/cjs/standard/elements/WiFiNetworkManagement.js +12 -8
- package/dist/cjs/standard/elements/WiFiNetworkManagement.js.map +2 -2
- package/dist/cjs/standard/elements/WildcardPathFlagsBitmap.js +1 -1
- package/dist/cjs/standard/elements/WildcardPathFlagsBitmap.js.map +1 -1
- package/dist/cjs/standard/elements/enum16.d.ts.map +1 -1
- package/dist/cjs/standard/elements/enum8.d.ts.map +1 -1
- package/dist/cjs/standard/elements/epoch-us.js +1 -1
- package/dist/cjs/standard/elements/ipv6pre.js +1 -1
- package/dist/cjs/standard/elements/namespace.d.ts.map +1 -1
- package/dist/cjs/standard/elements/struct.js +1 -1
- package/dist/esm/aspects/Quality.d.ts +45 -5
- package/dist/esm/aspects/Quality.d.ts.map +1 -1
- package/dist/esm/aspects/Quality.js.map +1 -1
- package/dist/esm/elements/BaseElement.d.ts +14 -5
- package/dist/esm/elements/BaseElement.d.ts.map +1 -1
- package/dist/esm/elements/BaseElement.js.map +1 -1
- package/dist/esm/elements/ValueElement.d.ts +1 -1
- package/dist/esm/logic/DefaultValue.js +1 -1
- package/dist/esm/logic/ModelVariantTraversal.d.ts.map +1 -1
- package/dist/esm/logic/ModelVariantTraversal.js +18 -8
- package/dist/esm/logic/ModelVariantTraversal.js.map +1 -1
- package/dist/esm/logic/Scope.d.ts.map +1 -1
- package/dist/esm/logic/Scope.js +7 -3
- package/dist/esm/logic/Scope.js.map +1 -1
- package/dist/esm/models/AttributeModel.d.ts +1 -0
- package/dist/esm/models/AttributeModel.d.ts.map +1 -1
- package/dist/esm/models/CommandModel.d.ts +1 -0
- package/dist/esm/models/CommandModel.d.ts.map +1 -1
- package/dist/esm/models/EventModel.d.ts +1 -0
- package/dist/esm/models/EventModel.d.ts.map +1 -1
- package/dist/esm/models/Model.d.ts +4 -0
- package/dist/esm/models/Model.d.ts.map +1 -1
- package/dist/esm/models/Model.js +1 -0
- package/dist/esm/models/Model.js.map +1 -1
- package/dist/esm/standard/elements/AccessControl.d.ts.map +1 -1
- package/dist/esm/standard/elements/AccessControl.js +1 -1
- package/dist/esm/standard/elements/AccessControl.js.map +1 -1
- package/dist/esm/standard/elements/Actions.js +1 -1
- package/dist/esm/standard/elements/AlarmBase.js +4 -4
- package/dist/esm/standard/elements/ApplicationLauncher.d.ts.map +1 -1
- package/dist/esm/standard/elements/ApplicationLauncher.js.map +1 -1
- package/dist/esm/standard/elements/BatteryStorageDT.d.ts.map +1 -1
- package/dist/esm/standard/elements/BatteryStorageDT.js.map +1 -1
- package/dist/esm/standard/elements/BridgedDeviceBasicInformation.d.ts.map +1 -1
- package/dist/esm/standard/elements/ColorControl.d.ts.map +1 -1
- package/dist/esm/standard/elements/ColorControl.js +38 -42
- package/dist/esm/standard/elements/ColorControl.js.map +1 -1
- package/dist/esm/standard/elements/ColorDimmerSwitchDT.d.ts.map +1 -1
- package/dist/esm/standard/elements/ColorTemperatureLightDT.d.ts.map +1 -1
- package/dist/esm/standard/elements/CommissionerControl.js +1 -1
- package/dist/esm/standard/elements/ContentAppObserver.js +1 -1
- package/dist/esm/standard/elements/ContentLauncher.d.ts.map +1 -1
- package/dist/esm/standard/elements/ContentLauncher.js.map +1 -1
- package/dist/esm/standard/elements/DeviceEnergyManagement.d.ts.map +1 -1
- package/dist/esm/standard/elements/DeviceEnergyManagement.js +1 -1
- package/dist/esm/standard/elements/DeviceEnergyManagement.js.map +1 -1
- package/dist/esm/standard/elements/DimmableLightDT.d.ts.map +1 -1
- package/dist/esm/standard/elements/DimmablePlugInUnitDT.d.ts.map +1 -1
- package/dist/esm/standard/elements/DimmerSwitchDT.d.ts.map +1 -1
- package/dist/esm/standard/elements/DoorLock.d.ts.map +1 -1
- package/dist/esm/standard/elements/DoorLock.js +29 -14
- package/dist/esm/standard/elements/DoorLock.js.map +1 -1
- package/dist/esm/standard/elements/EcosystemInformation.d.ts.map +1 -1
- package/dist/esm/standard/elements/EcosystemInformation.js +38 -3
- package/dist/esm/standard/elements/EcosystemInformation.js.map +1 -1
- package/dist/esm/standard/elements/EnergyEvse.d.ts.map +1 -1
- package/dist/esm/standard/elements/EnergyEvse.js +1 -1
- package/dist/esm/standard/elements/EnergyEvse.js.map +1 -1
- package/dist/esm/standard/elements/EthernetNetworkDiagnostics.d.ts.map +1 -1
- package/dist/esm/standard/elements/EthernetNetworkDiagnostics.js.map +1 -1
- package/dist/esm/standard/elements/ExtendedColorLightDT.d.ts.map +1 -1
- package/dist/esm/standard/elements/FixedLabel.d.ts.map +1 -1
- package/dist/esm/standard/elements/FixedLabel.js +1 -1
- package/dist/esm/standard/elements/FixedLabel.js.map +1 -1
- package/dist/esm/standard/elements/GeneralCommissioning.d.ts.map +1 -1
- package/dist/esm/standard/elements/GeneralCommissioning.js +7 -7
- package/dist/esm/standard/elements/GeneralCommissioning.js.map +1 -1
- package/dist/esm/standard/elements/GeneralDiagnostics.d.ts.map +1 -1
- package/dist/esm/standard/elements/GeneralDiagnostics.js.map +1 -1
- package/dist/esm/standard/elements/GroupKeyManagement.d.ts.map +1 -1
- package/dist/esm/standard/elements/GroupKeyManagement.js +2 -3
- package/dist/esm/standard/elements/GroupKeyManagement.js.map +1 -1
- package/dist/esm/standard/elements/Groups.d.ts.map +1 -1
- package/dist/esm/standard/elements/Groups.js.map +1 -1
- package/dist/esm/standard/elements/LevelControl.d.ts.map +1 -1
- package/dist/esm/standard/elements/LevelControl.js +8 -8
- package/dist/esm/standard/elements/LevelControl.js.map +1 -1
- package/dist/esm/standard/elements/MediaPlayback.d.ts.map +1 -1
- package/dist/esm/standard/elements/MediaPlayback.js +1 -1
- package/dist/esm/standard/elements/MediaPlayback.js.map +1 -1
- package/dist/esm/standard/elements/ModeBase.js +1 -1
- package/dist/esm/standard/elements/MountedDimmableLoadControlDT.d.ts.map +1 -1
- package/dist/esm/standard/elements/MountedOnOffControlDT.d.ts.map +1 -1
- package/dist/esm/standard/elements/NetworkCommissioning.d.ts.map +1 -1
- package/dist/esm/standard/elements/NetworkCommissioning.js +2 -2
- package/dist/esm/standard/elements/NetworkCommissioning.js.map +1 -1
- package/dist/esm/standard/elements/NetworkInfrastructureManagerDT.d.ts.map +1 -1
- package/dist/esm/standard/elements/OnOff.js +1 -1
- package/dist/esm/standard/elements/OnOffPlugInUnitDT.d.ts.map +1 -1
- package/dist/esm/standard/elements/OperationalCredentials.d.ts.map +1 -1
- package/dist/esm/standard/elements/OperationalCredentials.js +3 -3
- package/dist/esm/standard/elements/OperationalCredentials.js.map +1 -1
- package/dist/esm/standard/elements/OperationalState.js +1 -1
- package/dist/esm/standard/elements/OtaSoftwareUpdateProvider.js +6 -6
- package/dist/esm/standard/elements/OtaSoftwareUpdateRequestor.d.ts.map +1 -1
- package/dist/esm/standard/elements/OtaSoftwareUpdateRequestor.js.map +1 -1
- package/dist/esm/standard/elements/OvenCavityOperationalState.d.ts.map +1 -1
- package/dist/esm/standard/elements/PowerSource.d.ts.map +1 -1
- package/dist/esm/standard/elements/PowerSource.js.map +1 -1
- package/dist/esm/standard/elements/PumpConfigurationAndControl.d.ts.map +1 -1
- package/dist/esm/standard/elements/PumpConfigurationAndControl.js.map +1 -1
- package/dist/esm/standard/elements/PumpDT.d.ts.map +1 -1
- package/dist/esm/standard/elements/RefrigeratorAndTemperatureControlledCabinetMode.d.ts.map +1 -1
- package/dist/esm/standard/elements/ScenesManagement.js +3 -3
- package/dist/esm/standard/elements/ScenesManagement.js.map +1 -1
- package/dist/esm/standard/elements/ServiceArea.js +4 -3
- package/dist/esm/standard/elements/ServiceArea.js.map +1 -1
- package/dist/esm/standard/elements/SmokeCoAlarm.d.ts.map +1 -1
- package/dist/esm/standard/elements/SmokeCoAlarm.js.map +1 -1
- package/dist/esm/standard/elements/Switch.js +2 -2
- package/dist/esm/standard/elements/Thermostat.d.ts.map +1 -1
- package/dist/esm/standard/elements/Thermostat.js +13 -8
- package/dist/esm/standard/elements/Thermostat.js.map +1 -1
- package/dist/esm/standard/elements/ThreadNetworkDiagnostics.d.ts.map +1 -1
- package/dist/esm/standard/elements/ThreadNetworkDiagnostics.js.map +1 -1
- package/dist/esm/standard/elements/TimeFormatLocalization.d.ts.map +1 -1
- package/dist/esm/standard/elements/TimeFormatLocalization.js.map +1 -1
- package/dist/esm/standard/elements/TimeSynchronization.d.ts.map +1 -1
- package/dist/esm/standard/elements/TimeSynchronization.js.map +1 -1
- package/dist/esm/standard/elements/ValveConfigurationAndControl.d.ts.map +1 -1
- package/dist/esm/standard/elements/ValveConfigurationAndControl.js.map +1 -1
- package/dist/esm/standard/elements/WaterValveDT.d.ts.map +1 -1
- package/dist/esm/standard/elements/WiFiNetworkManagement.d.ts.map +1 -1
- package/dist/esm/standard/elements/WiFiNetworkManagement.js +14 -9
- package/dist/esm/standard/elements/WiFiNetworkManagement.js.map +1 -1
- package/dist/esm/standard/elements/WildcardPathFlagsBitmap.js +1 -1
- package/dist/esm/standard/elements/WildcardPathFlagsBitmap.js.map +1 -1
- package/dist/esm/standard/elements/enum16.d.ts.map +1 -1
- package/dist/esm/standard/elements/enum8.d.ts.map +1 -1
- package/dist/esm/standard/elements/epoch-us.js +1 -1
- package/dist/esm/standard/elements/ipv6pre.js +1 -1
- package/dist/esm/standard/elements/namespace.d.ts.map +1 -1
- package/dist/esm/standard/elements/struct.js +1 -1
- package/package.json +4 -4
- package/src/aspects/Quality.ts +56 -5
- package/src/elements/BaseElement.ts +16 -5
- package/src/elements/ValueElement.ts +1 -1
- package/src/logic/DefaultValue.ts +1 -1
- package/src/logic/ModelVariantTraversal.ts +22 -8
- package/src/logic/Scope.ts +7 -3
- package/src/models/Model.ts +4 -0
- package/src/standard/elements/AcceptedCommandList.ts +2 -2
- package/src/standard/elements/AccessControl.ts +71 -73
- package/src/standard/elements/AccountLogin.ts +11 -11
- package/src/standard/elements/Actions.ts +36 -36
- package/src/standard/elements/AdministratorCommissioning.ts +21 -21
- package/src/standard/elements/AggregatorDT.ts +2 -2
- package/src/standard/elements/AlarmBase.ts +18 -18
- package/src/standard/elements/ApplicationBasic.ts +7 -7
- package/src/standard/elements/ApplicationLauncher.ts +6 -7
- package/src/standard/elements/AudioOutput.ts +4 -4
- package/src/standard/elements/BallastConfiguration.ts +6 -6
- package/src/standard/elements/BasicInformation.ts +43 -43
- package/src/standard/elements/BasicVideoPlayerDT.ts +3 -3
- package/src/standard/elements/BatteryStorageDT.ts +2 -5
- package/src/standard/elements/Binding.ts +3 -3
- package/src/standard/elements/BooleanStateConfiguration.ts +4 -4
- package/src/standard/elements/BridgedDeviceBasicInformation.ts +22 -22
- package/src/standard/elements/CastingVideoClientDT.ts +2 -2
- package/src/standard/elements/Channel.ts +32 -32
- package/src/standard/elements/ColorControl.ts +92 -93
- package/src/standard/elements/ColorDimmerSwitchDT.ts +1 -1
- package/src/standard/elements/ColorTemperatureLightDT.ts +1 -1
- package/src/standard/elements/CommissionerControl.ts +16 -16
- package/src/standard/elements/ContentAppObserver.ts +7 -7
- package/src/standard/elements/ContentControl.ts +39 -39
- package/src/standard/elements/ContentLauncher.ts +38 -40
- package/src/standard/elements/DeviceEnergyManagement.ts +108 -111
- package/src/standard/elements/DeviceEnergyManagementMode.ts +4 -4
- package/src/standard/elements/DiagnosticLogs.ts +24 -24
- package/src/standard/elements/DimmableLightDT.ts +1 -1
- package/src/standard/elements/DimmablePlugInUnitDT.ts +4 -4
- package/src/standard/elements/DimmerSwitchDT.ts +3 -3
- package/src/standard/elements/DishwasherMode.ts +2 -2
- package/src/standard/elements/DoorLock.ts +164 -154
- package/src/standard/elements/DoorLockDT.ts +2 -2
- package/src/standard/elements/EcosystemInformation.ts +67 -27
- package/src/standard/elements/ElectricalEnergyMeasurement.ts +18 -18
- package/src/standard/elements/ElectricalMeasurementNS.ts +2 -2
- package/src/standard/elements/ElectricalPowerMeasurement.ts +18 -18
- package/src/standard/elements/EnergyEvse.ts +58 -64
- package/src/standard/elements/EnergyEvseMode.ts +8 -8
- package/src/standard/elements/EthernetNetworkDiagnostics.ts +14 -15
- package/src/standard/elements/ExtendedColorLightDT.ts +3 -3
- package/src/standard/elements/ExtractorHoodDT.ts +2 -2
- package/src/standard/elements/FanControl.ts +14 -14
- package/src/standard/elements/FanDT.ts +2 -2
- package/src/standard/elements/FeatureMap.ts +5 -5
- package/src/standard/elements/FixedLabel.ts +4 -5
- package/src/standard/elements/GeneralCommissioning.ts +79 -80
- package/src/standard/elements/GeneralDiagnostics.ts +17 -18
- package/src/standard/elements/GeneratedCommandList.ts +2 -2
- package/src/standard/elements/GroupKeyManagement.ts +29 -30
- package/src/standard/elements/Groups.ts +13 -14
- package/src/standard/elements/IcdManagement.ts +32 -32
- package/src/standard/elements/Identify.ts +7 -7
- package/src/standard/elements/JointFabricDatastoreCluster.ts +12 -12
- package/src/standard/elements/KeypadInput.ts +9 -9
- package/src/standard/elements/LaundryWasherControls.ts +2 -2
- package/src/standard/elements/LaundryWasherMode.ts +2 -2
- package/src/standard/elements/LevelControl.ts +31 -32
- package/src/standard/elements/LightSensorDT.ts +2 -2
- package/src/standard/elements/LocalizationConfiguration.ts +2 -2
- package/src/standard/elements/MeasurementAccuracyRangeStruct.ts +10 -10
- package/src/standard/elements/MeasurementAccuracyStruct.ts +4 -4
- package/src/standard/elements/MediaPlayback.ts +42 -44
- package/src/standard/elements/Messages.ts +18 -18
- package/src/standard/elements/MicrowaveOvenControl.ts +16 -16
- package/src/standard/elements/ModeBase.ts +21 -21
- package/src/standard/elements/ModeSelect.ts +12 -12
- package/src/standard/elements/MountedDimmableLoadControlDT.ts +4 -4
- package/src/standard/elements/MountedOnOffControlDT.ts +1 -1
- package/src/standard/elements/NetworkCommissioning.ts +68 -69
- package/src/standard/elements/NetworkInfrastructureManagerDT.ts +1 -1
- package/src/standard/elements/OccupancySensing.ts +23 -23
- package/src/standard/elements/OnOff.ts +17 -17
- package/src/standard/elements/OnOffPlugInUnitDT.ts +1 -1
- package/src/standard/elements/OnOffSensorDT.ts +2 -2
- package/src/standard/elements/OperationalCredentials.ts +86 -88
- package/src/standard/elements/OperationalState.ts +31 -31
- package/src/standard/elements/OtaSoftwareUpdateProvider.ts +48 -48
- package/src/standard/elements/OtaSoftwareUpdateRequestor.ts +31 -32
- package/src/standard/elements/OvenCavityOperationalState.ts +1 -1
- package/src/standard/elements/OvenMode.ts +2 -2
- package/src/standard/elements/PositionNS.ts +2 -2
- package/src/standard/elements/PowerSource.ts +37 -38
- package/src/standard/elements/PowerSourceConfiguration.ts +4 -4
- package/src/standard/elements/PowerSourceNS.ts +2 -2
- package/src/standard/elements/ProxyConfiguration.ts +2 -2
- package/src/standard/elements/ProxyDiscovery.ts +5 -5
- package/src/standard/elements/PumpConfigurationAndControl.ts +27 -28
- package/src/standard/elements/PumpDT.ts +1 -1
- package/src/standard/elements/RefrigeratorAlarm.ts +2 -2
- package/src/standard/elements/RefrigeratorAndTemperatureControlledCabinetMode.ts +1 -1
- package/src/standard/elements/RefrigeratorNS.ts +2 -2
- package/src/standard/elements/RelativePositionNS.ts +4 -4
- package/src/standard/elements/ResourceMonitoring.ts +4 -4
- package/src/standard/elements/RoomAirConditionerDT.ts +2 -2
- package/src/standard/elements/RootNodeDT.ts +3 -3
- package/src/standard/elements/RvcOperationalState.ts +4 -4
- package/src/standard/elements/RvcRunMode.ts +6 -6
- package/src/standard/elements/ScenesManagement.ts +34 -34
- package/src/standard/elements/SecondaryNetworkInterfaceDT.ts +2 -2
- package/src/standard/elements/ServiceArea.ts +69 -69
- package/src/standard/elements/SmokeCoAlarm.ts +19 -20
- package/src/standard/elements/SmokeCoAlarmDT.ts +2 -2
- package/src/standard/elements/SoftwareDiagnostics.ts +13 -13
- package/src/standard/elements/SpeakerDT.ts +2 -2
- package/src/standard/elements/Switch.ts +21 -21
- package/src/standard/elements/TemperatureControl.ts +5 -5
- package/src/standard/elements/TemperatureMeasurement.ts +2 -2
- package/src/standard/elements/Thermostat.ts +124 -120
- package/src/standard/elements/ThermostatUserInterfaceConfiguration.ts +6 -6
- package/src/standard/elements/ThreadBorderRouterManagement.ts +10 -10
- package/src/standard/elements/ThreadNetworkDiagnostics.ts +50 -51
- package/src/standard/elements/ThreadNetworkDirectory.ts +11 -11
- package/src/standard/elements/TimeFormatLocalization.ts +6 -7
- package/src/standard/elements/TimeSynchronization.ts +27 -28
- package/src/standard/elements/UnitLocalization.ts +2 -2
- package/src/standard/elements/ValveConfigurationAndControl.ts +9 -10
- package/src/standard/elements/WakeOnLan.ts +11 -11
- package/src/standard/elements/WaterHeaterManagement.ts +17 -17
- package/src/standard/elements/WaterHeaterMode.ts +4 -4
- package/src/standard/elements/WaterValveDT.ts +1 -1
- package/src/standard/elements/WiFiNetworkDiagnostics.ts +13 -13
- package/src/standard/elements/WiFiNetworkManagement.ts +21 -16
- package/src/standard/elements/WildcardPathFlagsBitmap.ts +1 -1
- package/src/standard/elements/WindowCovering.ts +19 -19
- package/src/standard/elements/attrib-id.ts +2 -2
- package/src/standard/elements/enum16.ts +1 -1
- package/src/standard/elements/enum8.ts +1 -1
- package/src/standard/elements/epoch-us.ts +9 -9
- package/src/standard/elements/hwadr.ts +2 -2
- package/src/standard/elements/ipv6pre.ts +3 -3
- package/src/standard/elements/locationdesc.ts +10 -10
- package/src/standard/elements/namespace.ts +1 -1
- package/src/standard/elements/semtag.ts +5 -5
- package/src/standard/elements/string.ts +2 -2
- package/src/standard/elements/struct.ts +9 -9
|
@@ -32,8 +32,8 @@ export const OperationalCredentials = Cluster(
|
|
|
32
32
|
|
|
33
33
|
details: "This attribute contains all NOCs applicable to this Node, encoded as a read-only list of NOCStruct." +
|
|
34
34
|
"\n" +
|
|
35
|
-
"Operational Certificates shall be added through the AddNOC command, and shall be removed through " +
|
|
36
|
-
"
|
|
35
|
+
"Operational Certificates shall be added through the AddNOC command, and shall be removed through the " +
|
|
36
|
+
"RemoveFabric command." +
|
|
37
37
|
"\n" +
|
|
38
38
|
"Upon Factory Data Reset, this attribute shall be set to a default value of an empty list." +
|
|
39
39
|
"\n" +
|
|
@@ -50,8 +50,8 @@ export const OperationalCredentials = Cluster(
|
|
|
50
50
|
name: "Fabrics", id: 0x1, type: "list", access: "R F V", conformance: "M",
|
|
51
51
|
constraint: "max supportedFabrics", quality: "N",
|
|
52
52
|
|
|
53
|
-
details: "This attribute describes all fabrics to which this Node is commissioned, encoded as a read-only " +
|
|
54
|
-
"
|
|
53
|
+
details: "This attribute describes all fabrics to which this Node is commissioned, encoded as a read-only list " +
|
|
54
|
+
"of FabricDescriptorStruct. This information may be computed directly from the NOCs attribute." +
|
|
55
55
|
"\n" +
|
|
56
56
|
"Upon Factory Data Reset, this attribute shall be set to a default value of an empty list." +
|
|
57
57
|
"\n" +
|
|
@@ -129,9 +129,9 @@ export const OperationalCredentials = Cluster(
|
|
|
129
129
|
name: "AttestationRequest", id: 0x0, access: "A", conformance: "M", direction: "request",
|
|
130
130
|
response: "AttestationResponse",
|
|
131
131
|
details: "This command shall be generated to request the Attestation Information, in the form of an " +
|
|
132
|
-
"AttestationResponse Command. If the AttestationNonce that is provided in the command is malformed, " +
|
|
133
|
-
"
|
|
134
|
-
"
|
|
132
|
+
"AttestationResponse Command. If the AttestationNonce that is provided in the command is malformed, a " +
|
|
133
|
+
"recipient shall fail the command with a Status Code of INVALID_COMMAND. The AttestationNonce field " +
|
|
134
|
+
"shall be used in the computation of the Attestation Information.",
|
|
135
135
|
xref: { document: "core", section: "11.18.6.1" }
|
|
136
136
|
},
|
|
137
137
|
|
|
@@ -171,8 +171,8 @@ export const OperationalCredentials = Cluster(
|
|
|
171
171
|
{
|
|
172
172
|
name: "CertificateChainRequest", id: 0x2, access: "A", conformance: "M", direction: "request",
|
|
173
173
|
response: "CertificateChainResponse",
|
|
174
|
-
details: "If the CertificateType is not a valid value per CertificateChainTypeEnum then the command shall " +
|
|
175
|
-
"
|
|
174
|
+
details: "If the CertificateType is not a valid value per CertificateChainTypeEnum then the command shall fail " +
|
|
175
|
+
"with a Status Code of INVALID_COMMAND.",
|
|
176
176
|
xref: { document: "core", section: "11.18.6.3" }
|
|
177
177
|
},
|
|
178
178
|
|
|
@@ -211,9 +211,9 @@ export const OperationalCredentials = Cluster(
|
|
|
211
211
|
"forbidden over PASE sessions." +
|
|
212
212
|
"\n" +
|
|
213
213
|
"If the IsForUpdateNOC field is present and set to true, the internal state of the CSR associated " +
|
|
214
|
-
"keypair shall be tagged as being for a subsequent UpdateNOC, otherwise the internal state of the " +
|
|
215
|
-
"
|
|
216
|
-
"
|
|
214
|
+
"keypair shall be tagged as being for a subsequent UpdateNOC, otherwise the internal state of the CSR " +
|
|
215
|
+
"shall be tagged as being for a subsequent AddNOC. See AddNOC and UpdateNOC for details about the " +
|
|
216
|
+
"processing." +
|
|
217
217
|
"\n" +
|
|
218
218
|
"If this command is received without an armed fail-safe context (see ArmFailSafe), then this command " +
|
|
219
219
|
"shall fail with a FAILSAFE_REQUIRED status code sent back to the initiator." +
|
|
@@ -287,9 +287,9 @@ export const OperationalCredentials = Cluster(
|
|
|
287
287
|
Field({
|
|
288
288
|
name: "IpkValue", id: 0x2, type: "octstr", conformance: "M", constraint: "16",
|
|
289
289
|
|
|
290
|
-
details: "This field shall contain the value of the Epoch Key for the Identity Protection Key (IPK) to set " +
|
|
291
|
-
"
|
|
292
|
-
"
|
|
290
|
+
details: "This field shall contain the value of the Epoch Key for the Identity Protection Key (IPK) to set for " +
|
|
291
|
+
"the Fabric which is to be added. This is needed to bootstrap a necessary configuration value for " +
|
|
292
|
+
"subsequent CASE to succeed. See Section 4.14.2.6.1, “Identity Protection Key (IPK)” for details." +
|
|
293
293
|
"\n" +
|
|
294
294
|
"The IPK shall be provided as an octet string of length CRYPTO_SYMMETRIC_KEY_LENGTH_BYTES." +
|
|
295
295
|
"\n" +
|
|
@@ -313,8 +313,8 @@ export const OperationalCredentials = Cluster(
|
|
|
313
313
|
"\n" +
|
|
314
314
|
"NOTE" +
|
|
315
315
|
"\n" +
|
|
316
|
-
"Unless such an Access Control Entry is added atomically as described here, there would be no way " +
|
|
317
|
-
"
|
|
316
|
+
"Unless such an Access Control Entry is added atomically as described here, there would be no way for " +
|
|
317
|
+
"the caller on its given Fabric to eventually add another Access Control Entry for CASE " +
|
|
318
318
|
"authentication mode, to enable the new Administrator to administer the device, since the Fabric " +
|
|
319
319
|
"Scoping of the Access Control List prevents the current Node from being able to write new entries " +
|
|
320
320
|
"scoped to that Fabric, if the session is established from CASE. While a session established from " +
|
|
@@ -354,10 +354,10 @@ export const OperationalCredentials = Cluster(
|
|
|
354
354
|
"FabricID> pair already present on the device, then the device shall process the error by responding " +
|
|
355
355
|
"with a StatusCode of FabricConflict as described in Section 11.18.6.7.2, “Handling Errors”." +
|
|
356
356
|
"\n" +
|
|
357
|
-
"If the device already has the CommissionedFabrics attribute equal to the SupportedFabrics " +
|
|
358
|
-
"
|
|
359
|
-
"
|
|
360
|
-
"
|
|
357
|
+
"If the device already has the CommissionedFabrics attribute equal to the SupportedFabrics attribute, " +
|
|
358
|
+
"then the device’s operational credentials table is considered full and the device shall process the " +
|
|
359
|
+
"error by responding with a StatusCode of TableFull as described in Section 11.18.6.7.2, “Handling " +
|
|
360
|
+
"Errors”." +
|
|
361
361
|
"\n" +
|
|
362
362
|
"If the CaseAdminSubject field is not a valid ACL subject in the context of AuthMode set to CASE, " +
|
|
363
363
|
"such as not being in either the Operational or CASE Authenticated Tag range, then the device shall " +
|
|
@@ -367,22 +367,21 @@ export const OperationalCredentials = Cluster(
|
|
|
367
367
|
"Otherwise, the command is considered an addition of credentials, also known as \"joining a fabric\", " +
|
|
368
368
|
"and the following shall apply:" +
|
|
369
369
|
"\n" +
|
|
370
|
-
" 1. A new FabricIndex shall be allocated, taking the next valid fabric-index value in " +
|
|
371
|
-
"
|
|
372
|
-
"
|
|
373
|
-
" fabric-idx fields." +
|
|
370
|
+
" 1. A new FabricIndex shall be allocated, taking the next valid fabric-index value in monotonically " +
|
|
371
|
+
" incrementing order, wrapping around from 254 (0xFE) to 1, since value 0 is reserved and using " +
|
|
372
|
+
" 255 (0xFF) would prevent cluster specifications from using nullable fabric-idx fields." +
|
|
374
373
|
"\n" +
|
|
375
|
-
" 2. An entry within the Fabrics attribute table shall be added, reflecting the matter-fabric-id " +
|
|
376
|
-
"
|
|
377
|
-
"
|
|
374
|
+
" 2. An entry within the Fabrics attribute table shall be added, reflecting the matter-fabric-id RDN " +
|
|
375
|
+
" within the NOC’s subject, along with the public key of the trusted root of the chain and the " +
|
|
376
|
+
" AdminVendorID field." +
|
|
378
377
|
"\n" +
|
|
379
378
|
" 3. The operational key pair associated with the incoming NOC from the NOCValue, and generated by " +
|
|
380
379
|
" the prior CSRRequest command, shall be recorded for subsequent use during CASE within the " +
|
|
381
380
|
" fail-safe timer period (see Section 5.5, “Commissioning Flows”)." +
|
|
382
381
|
"\n" +
|
|
383
382
|
" 4. The incoming NOCValue and ICACValue (if present) shall be stored under the FabricIndex " +
|
|
384
|
-
" associated with the new Fabric Scope, along with the RootCACertificate provided with the " +
|
|
385
|
-
"
|
|
383
|
+
" associated with the new Fabric Scope, along with the RootCACertificate provided with the prior " +
|
|
384
|
+
" successful AddTrustedRootCertificate command invoked in the same fail-safe period." +
|
|
386
385
|
"\n" +
|
|
387
386
|
" a. Implementation of certificate chain storage may separate or otherwise encode the components " +
|
|
388
387
|
" of the array in implementation-specific ways, as long as they follow the correct format when " +
|
|
@@ -401,24 +400,23 @@ export const OperationalCredentials = Cluster(
|
|
|
401
400
|
" that is currently invoking the AddNOC command, within another of the Fabrics of which it is a " +
|
|
402
401
|
" member." +
|
|
403
402
|
"\n" +
|
|
404
|
-
" a. If the Managed Device Feature is implemented by the ACL cluster, then one or more ARL " +
|
|
405
|
-
"
|
|
403
|
+
" a. If the Managed Device Feature is implemented by the ACL cluster, then one or more ARL entries " +
|
|
404
|
+
" with the new FabricIndex may be added to the ARL attribute." +
|
|
406
405
|
"\n" +
|
|
407
|
-
" 8. The incoming IPKValue shall be stored in the Fabric-scoped slot within the Group Key " +
|
|
408
|
-
"
|
|
406
|
+
" 8. The incoming IPKValue shall be stored in the Fabric-scoped slot within the Group Key Management " +
|
|
407
|
+
" cluster (see KeySetWrite), for subsequent use during CASE." +
|
|
409
408
|
"\n" +
|
|
410
|
-
" 9. The Fabric Index associated with the armed fail-safe context (see ArmFailSafe) shall be " +
|
|
411
|
-
"
|
|
409
|
+
" 9. The Fabric Index associated with the armed fail-safe context (see ArmFailSafe) shall be updated " +
|
|
410
|
+
" to match the Fabric Index just allocated." +
|
|
412
411
|
"\n" +
|
|
413
412
|
" 10. If the current secure session was established with PASE, the receiver shall:" +
|
|
414
413
|
"\n" +
|
|
415
|
-
" a. Augment the secure session context with the FabricIndex generated above, such that " +
|
|
416
|
-
"
|
|
414
|
+
" a. Augment the secure session context with the FabricIndex generated above, such that subsequent " +
|
|
415
|
+
" interactions have the proper accessing fabric." +
|
|
417
416
|
"\n" +
|
|
418
|
-
" 11. If the current secure session was established with CASE, subsequent configuration of the " +
|
|
419
|
-
"
|
|
420
|
-
"
|
|
421
|
-
" argument." +
|
|
417
|
+
" 11. If the current secure session was established with CASE, subsequent configuration of the newly " +
|
|
418
|
+
" installed Fabric requires the opening of a new CASE session from the Administrator from the " +
|
|
419
|
+
" Fabric just installed. This Administrator is the one listed in the CaseAdminSubject argument." +
|
|
422
420
|
"\n" +
|
|
423
421
|
"Thereafter, the Node shall respond with an NOCResponse with a StatusCode of OK and a FabricIndex " +
|
|
424
422
|
"field matching the FabricIndex under which the new Node Operational Certificate (NOC) is scoped.",
|
|
@@ -451,8 +449,8 @@ export const OperationalCredentials = Cluster(
|
|
|
451
449
|
"then this command shall fail with a CONSTRAINT_ERROR status code sent back to the initiator." +
|
|
452
450
|
"\n" +
|
|
453
451
|
"If a prior AddTrustedRootCertificate command was successfully invoked within the fail-safe timer " +
|
|
454
|
-
"period, then this command shall fail with a CONSTRAINT_ERROR status code sent back to the " +
|
|
455
|
-
"
|
|
452
|
+
"period, then this command shall fail with a CONSTRAINT_ERROR status code sent back to the initiator, " +
|
|
453
|
+
"since the only valid following logical operation is invoking the AddNOC command." +
|
|
456
454
|
"\n" +
|
|
457
455
|
"If the prior CSRRequest state that preceded UpdateNOC had the IsForUpdateNOC field indicated as " +
|
|
458
456
|
"false, then this command shall fail with a CONSTRAINT_ERROR status code sent back to the initiator." +
|
|
@@ -473,8 +471,8 @@ export const OperationalCredentials = Cluster(
|
|
|
473
471
|
" to match the incoming NOCValue and ICACValue (if present), such that the Node’s Operational " +
|
|
474
472
|
" Identifier within the Fabric immediately changes." +
|
|
475
473
|
"\n" +
|
|
476
|
-
" a. The operational key pair associated with the incoming NOC from the NOCValue, and generated " +
|
|
477
|
-
"
|
|
474
|
+
" a. The operational key pair associated with the incoming NOC from the NOCValue, and generated by " +
|
|
475
|
+
" the prior CSRRequest command, shall be committed to permanent storage, for subsequent use " +
|
|
478
476
|
" during CASE." +
|
|
479
477
|
"\n" +
|
|
480
478
|
" b. The operational discovery service record shall immediately reflect the new Operational " +
|
|
@@ -482,9 +480,9 @@ export const OperationalCredentials = Cluster(
|
|
|
482
480
|
"\n" +
|
|
483
481
|
" c. All internal data reflecting the prior operational identifier of the Node within the Fabric " +
|
|
484
482
|
" shall be revoked and removed, to an outcome equivalent to the disappearance of the prior " +
|
|
485
|
-
" Node, except for the ongoing CASE session context, which shall temporarily remain valid " +
|
|
486
|
-
"
|
|
487
|
-
"
|
|
483
|
+
" Node, except for the ongoing CASE session context, which shall temporarily remain valid until " +
|
|
484
|
+
" the NOCResponse has been successfully delivered or until the next transport-layer error, so " +
|
|
485
|
+
" that the response can be received by the Administrator invoking the command." +
|
|
488
486
|
"\n" +
|
|
489
487
|
"Thereafter, the Node shall respond with an NOCResponse with a StatusCode of OK and a FabricIndex " +
|
|
490
488
|
"field matching the FabricIndex under which the updated NOC is scoped.",
|
|
@@ -532,8 +530,8 @@ export const OperationalCredentials = Cluster(
|
|
|
532
530
|
Field({
|
|
533
531
|
name: "DebugText", id: 0x2, type: "string", conformance: "O", constraint: "max 128",
|
|
534
532
|
details: "This field may contain debugging textual information from the cluster implementation, which SHOULD " +
|
|
535
|
-
"NOT be presented to user interfaces in any way. Its purpose is to help developers in " +
|
|
536
|
-
"
|
|
533
|
+
"NOT be presented to user interfaces in any way. Its purpose is to help developers in troubleshooting " +
|
|
534
|
+
"errors and the contents may go into logs or crash reports.",
|
|
537
535
|
xref: { document: "core", section: "11.18.6.10.3" }
|
|
538
536
|
})
|
|
539
537
|
),
|
|
@@ -544,17 +542,17 @@ export const OperationalCredentials = Cluster(
|
|
|
544
542
|
response: "NocResponse",
|
|
545
543
|
|
|
546
544
|
details: "This command shall be used by an Administrator to set the user-visible Label field for a given " +
|
|
547
|
-
"Fabric, as reflected by entries in the Fabrics attribute. An Administrator shall use this command " +
|
|
548
|
-
"
|
|
549
|
-
"
|
|
545
|
+
"Fabric, as reflected by entries in the Fabrics attribute. An Administrator shall use this command to " +
|
|
546
|
+
"set the Label to a string (possibly selected by the user themselves) that the user can recognize and " +
|
|
547
|
+
"relate to this Administrator" +
|
|
550
548
|
"\n" +
|
|
551
549
|
" • during the commissioning process, and" +
|
|
552
550
|
"\n" +
|
|
553
551
|
" • whenever the user chooses to update this string." +
|
|
554
552
|
"\n" +
|
|
555
|
-
"The Label field, along with the VendorID field in the same entry of the Fabrics attribute, SHOULD " +
|
|
556
|
-
"
|
|
557
|
-
"
|
|
553
|
+
"The Label field, along with the VendorID field in the same entry of the Fabrics attribute, SHOULD be " +
|
|
554
|
+
"used by Administrators to provide additional per-fabric context when operations such as RemoveFabric " +
|
|
555
|
+
"are considered or used.",
|
|
558
556
|
|
|
559
557
|
xref: { document: "core", section: "11.18.6.11" }
|
|
560
558
|
},
|
|
@@ -574,8 +572,8 @@ export const OperationalCredentials = Cluster(
|
|
|
574
572
|
"Label argument provided. Following the update, an NOCResponse with a StatusCode of OK shall be " +
|
|
575
573
|
"returned." +
|
|
576
574
|
"\n" +
|
|
577
|
-
"If the command was invoked within a fail-safe context after a successful UpdateNOC command, then " +
|
|
578
|
-
"
|
|
575
|
+
"If the command was invoked within a fail-safe context after a successful UpdateNOC command, then the " +
|
|
576
|
+
"label update shall apply to the pending update state that will be reverted if fail-safe expires " +
|
|
579
577
|
"prior to a CommissioningComplete command. In other words, label updates apply to the state of the " +
|
|
580
578
|
"Fabrics Attribute as currently visible, even for an existing fabric currently in process of being " +
|
|
581
579
|
"updated.",
|
|
@@ -600,14 +598,14 @@ export const OperationalCredentials = Cluster(
|
|
|
600
598
|
"WARNING" +
|
|
601
599
|
"\n" +
|
|
602
600
|
"This command, if referring to an already existing Fabric not under the control of the invoking " +
|
|
603
|
-
"Administrator, shall ONLY be invoked after obtaining some form of explicit user consent through " +
|
|
604
|
-
"
|
|
605
|
-
"
|
|
606
|
-
"
|
|
607
|
-
"
|
|
601
|
+
"Administrator, shall ONLY be invoked after obtaining some form of explicit user consent through some " +
|
|
602
|
+
"method executed by the Administrator or Commissioner. This method of obtaining consent SHOULD employ " +
|
|
603
|
+
"as much data as possible about the existing Fabric associations within the Fabrics list, so that " +
|
|
604
|
+
"likelihood is as small as possible of a user removing a Fabric unwittingly. If a method exists for " +
|
|
605
|
+
"an Administrator or Commissioner to convey Fabric Removal to an entity related to that Fabric, " +
|
|
608
606
|
"whether in-band or out-of-band, then this method SHOULD be used to notify the other Administrative " +
|
|
609
|
-
"Domain’s party of the removal. Otherwise, users may only observe the removal of a Fabric " +
|
|
610
|
-
"
|
|
607
|
+
"Domain’s party of the removal. Otherwise, users may only observe the removal of a Fabric association " +
|
|
608
|
+
"as persistently failing attempts to reach a Node operationally.",
|
|
611
609
|
|
|
612
610
|
xref: { document: "core", section: "11.18.6.12" }
|
|
613
611
|
},
|
|
@@ -632,10 +630,10 @@ export const OperationalCredentials = Cluster(
|
|
|
632
630
|
" bindings, scenes, group keys, operational certificates, etc. All Trusted Roots shall also be " +
|
|
633
631
|
" removed. If a time synchronization cluster is present on the Node, the TrustedTimeSource and " +
|
|
634
632
|
" DefaultNtp shall be set to null. Any Matter related data including logs, secure sessions, " +
|
|
635
|
-
" exchanges and interaction model constructs shall also be removed. Since this operation " +
|
|
636
|
-
"
|
|
637
|
-
"
|
|
638
|
-
"
|
|
633
|
+
" exchanges and interaction model constructs shall also be removed. Since this operation involves " +
|
|
634
|
+
" the removal of the secure session data that may underpin the current set of exchanges, the Node " +
|
|
635
|
+
" invoking the command SHOULD NOT expect a response before terminating its secure session with " +
|
|
636
|
+
" the target." +
|
|
639
637
|
"\n" +
|
|
640
638
|
" 2. If the FabricIndex does not equal the accessing fabric index, then the device shall begin the " +
|
|
641
639
|
" process of irrevocably deleting all associated Fabric-Scoped data, including Access Control " +
|
|
@@ -643,20 +641,20 @@ export const OperationalCredentials = Cluster(
|
|
|
643
641
|
" remaining Trusted Roots no longer referenced by any operational certificate shall also be " +
|
|
644
642
|
" removed. If a time synchronization cluster is present on the Node, and the TrustedTimeSource " +
|
|
645
643
|
" FabricIndex matches the given FabricIndex, the TrustedTimeSource shall be set to null. All " +
|
|
646
|
-
" secure sessions, exchanges and interaction model constructs related to the Operational " +
|
|
647
|
-
"
|
|
648
|
-
"
|
|
644
|
+
" secure sessions, exchanges and interaction model constructs related to the Operational Identity " +
|
|
645
|
+
" under the given Fabric shall also be removed. Following the removal, an NOCResponse with a " +
|
|
646
|
+
" StatusCode of OK shall be returned." +
|
|
649
647
|
"\n" +
|
|
650
648
|
" 3. If the FabricIndex equals the accessing fabric index, then the device shall begin the process " +
|
|
651
649
|
" of irrevocably deleting all associated Fabric-Scoped data, including Access Control Entries, " +
|
|
652
650
|
" Access Restriction Entries, bindings, group keys, operational certificates, etc. Any remaining " +
|
|
653
651
|
" Trusted Roots no longer referenced by any operational certificate shall also be removed. If a " +
|
|
654
652
|
" time synchronization cluster is present on the Node, and the TrustedTimeSource FabricIndex " +
|
|
655
|
-
" matches the given FabricIndex, the TrustedTimeSource shall be set to null. All secure " +
|
|
656
|
-
"
|
|
657
|
-
"
|
|
658
|
-
"
|
|
659
|
-
"
|
|
653
|
+
" matches the given FabricIndex, the TrustedTimeSource shall be set to null. All secure sessions, " +
|
|
654
|
+
" exchanges and interaction model constructs related to the Operational Identity under the given " +
|
|
655
|
+
" Fabric shall also be removed. Since this operation involves the removal of the secure session " +
|
|
656
|
+
" data that may underpin the current set of exchanges, the Node invoking the command SHOULD NOT " +
|
|
657
|
+
" expect a response before terminating its secure session with the target.",
|
|
660
658
|
|
|
661
659
|
xref: { document: "core", section: "11.18.6.12.1" }
|
|
662
660
|
})
|
|
@@ -680,8 +678,8 @@ export const OperationalCredentials = Cluster(
|
|
|
680
678
|
"If a prior AddTrustedRootCertificate command was successfully invoked within the fail-safe timer " +
|
|
681
679
|
"period, which would cause the new invocation to add a second root certificate within a given fail-" +
|
|
682
680
|
"\n" +
|
|
683
|
-
"safe timer period, then this command shall fail with a CONSTRAINT_ERROR status code sent back to " +
|
|
684
|
-
"
|
|
681
|
+
"safe timer period, then this command shall fail with a CONSTRAINT_ERROR status code sent back to the " +
|
|
682
|
+
"initiator." +
|
|
685
683
|
"\n" +
|
|
686
684
|
"If a prior UpdateNOC or AddNOC command was successfully executed within the fail-safe timer period, " +
|
|
687
685
|
"then this command shall fail with a CONSTRAINT_ERROR status code sent back to the initiator." +
|
|
@@ -703,8 +701,8 @@ export const OperationalCredentials = Cluster(
|
|
|
703
701
|
Datatype(
|
|
704
702
|
{
|
|
705
703
|
name: "CertificateChainTypeEnum", type: "enum8",
|
|
706
|
-
details: "This enumeration is used by the CertificateChainRequest command to convey which certificate from " +
|
|
707
|
-
"
|
|
704
|
+
details: "This enumeration is used by the CertificateChainRequest command to convey which certificate from the " +
|
|
705
|
+
"device attestation certificate chain to transmit back to the client.",
|
|
708
706
|
xref: { document: "core", section: "11.18.4.2" }
|
|
709
707
|
},
|
|
710
708
|
|
|
@@ -753,8 +751,8 @@ export const OperationalCredentials = Cluster(
|
|
|
753
751
|
details: "This encodes a fabric sensitive NOC chain, underpinning a commissioned Operational Identity for a " +
|
|
754
752
|
"given Node." +
|
|
755
753
|
"\n" +
|
|
756
|
-
"Note that the Trusted Root CA Certificate is not included in this structure. The roots are " +
|
|
757
|
-
"
|
|
754
|
+
"Note that the Trusted Root CA Certificate is not included in this structure. The roots are available " +
|
|
755
|
+
"in the TrustedRootCertificates attribute of the Node Operational Credentials cluster.",
|
|
758
756
|
xref: { document: "core", section: "11.18.4.4" }
|
|
759
757
|
},
|
|
760
758
|
|
|
@@ -788,8 +786,8 @@ export const OperationalCredentials = Cluster(
|
|
|
788
786
|
name: "RootPublicKey", id: 0x1, type: "octstr", access: "F", conformance: "M", constraint: "65",
|
|
789
787
|
details: "This field shall contain the public key for the trusted root that scopes the fabric referenced by " +
|
|
790
788
|
"FabricIndex and its associated operational credential (see Section 6.4.5.3, “Trusted Root CA " +
|
|
791
|
-
"Certificates”). The format for the key shall be the same as that used in the ec-pub-key field of " +
|
|
792
|
-
"
|
|
789
|
+
"Certificates”). The format for the key shall be the same as that used in the ec-pub-key field of the " +
|
|
790
|
+
"Matter Certificate Encoding for the root in the operational certificate chain.",
|
|
793
791
|
xref: { document: "core", section: "11.18.4.5.1" }
|
|
794
792
|
}),
|
|
795
793
|
|
|
@@ -811,8 +809,8 @@ export const OperationalCredentials = Cluster(
|
|
|
811
809
|
Field({
|
|
812
810
|
name: "FabricId", id: 0x3, type: "fabric-id", access: "F", conformance: "M",
|
|
813
811
|
details: "This field shall contain the FabricID allocated to the fabric referenced by FabricIndex. This field " +
|
|
814
|
-
"shall match the value found in the matter-fabric-id field from the operational certificate " +
|
|
815
|
-
"
|
|
812
|
+
"shall match the value found in the matter-fabric-id field from the operational certificate providing " +
|
|
813
|
+
"the operational identity under this Fabric.",
|
|
816
814
|
xref: { document: "core", section: "11.18.4.5.3" }
|
|
817
815
|
}),
|
|
818
816
|
|
|
@@ -23,20 +23,20 @@ export const OperationalState = Cluster(
|
|
|
23
23
|
details: "This cluster supports remotely monitoring and, where supported, changing the operational state of " +
|
|
24
24
|
"any device where a state machine is a part of the operation." +
|
|
25
25
|
"\n" +
|
|
26
|
-
"This cluster defines common states, scoped to this cluster (e.g. Stopped, Running, Paused, Error). " +
|
|
27
|
-
"
|
|
28
|
-
"
|
|
29
|
-
"
|
|
26
|
+
"This cluster defines common states, scoped to this cluster (e.g. Stopped, Running, Paused, Error). A " +
|
|
27
|
+
"derived cluster specification may define more states scoped to the derivation. Manufacturer specific " +
|
|
28
|
+
"states are supported in this cluster and any derived clusters thereof. When defined in a derived " +
|
|
29
|
+
"instance, such states are scoped to the derivation." +
|
|
30
30
|
"\n" +
|
|
31
31
|
"Actual state transitions are dependent on both the implementation, and the requirements that may " +
|
|
32
32
|
"additionally be imposed by a derived cluster." +
|
|
33
33
|
"\n" +
|
|
34
|
-
"An implementation that supports remotely starting its operation can make use of this cluster’s " +
|
|
35
|
-
"
|
|
36
|
-
"
|
|
37
|
-
"
|
|
38
|
-
"
|
|
39
|
-
"
|
|
34
|
+
"An implementation that supports remotely starting its operation can make use of this cluster’s Start " +
|
|
35
|
+
"command to do so. A device that supports remote pause or stop of its currently selected operation " +
|
|
36
|
+
"can similarly make use of this cluster’s Pause and Stop commands to do so. The ability to remotely " +
|
|
37
|
+
"pause or stop is independent of how the operation was started (for example, an operation started by " +
|
|
38
|
+
"using a manual button press can be stopped by using a Stop command if the device supports remotely " +
|
|
39
|
+
"stopping the operation)." +
|
|
40
40
|
"\n" +
|
|
41
41
|
"Additionally, this cluster provides events for monitoring the operational state of the device.",
|
|
42
42
|
|
|
@@ -51,9 +51,9 @@ export const OperationalState = Cluster(
|
|
|
51
51
|
constraint: "max 32[max 64]", quality: "X",
|
|
52
52
|
|
|
53
53
|
details: "Indicates a list of names of different phases that the device can go through for the selected " +
|
|
54
|
-
"function or mode. The list may not be in sequence order. For example in a washing machine this " +
|
|
55
|
-
"
|
|
56
|
-
"
|
|
54
|
+
"function or mode. The list may not be in sequence order. For example in a washing machine this could " +
|
|
55
|
+
"include items such as \"pre-soak\", \"rinse\", and \"spin\". These phases are manufacturer specific and " +
|
|
56
|
+
"may change when a different function or mode is selected." +
|
|
57
57
|
"\n" +
|
|
58
58
|
"A null value indicates that the device does not present phases during its operation. When this " +
|
|
59
59
|
"attribute’s value is null, the CurrentPhase attribute shall also be set to null.",
|
|
@@ -175,8 +175,8 @@ export const OperationalState = Cluster(
|
|
|
175
175
|
"wash cycle in a Washing Machine." +
|
|
176
176
|
"\n" +
|
|
177
177
|
"It is highly recommended that appliances device types employing the Operational State cluster " +
|
|
178
|
-
"support this event, even if it is optional. This assists clients in executing automations or " +
|
|
179
|
-
"
|
|
178
|
+
"support this event, even if it is optional. This assists clients in executing automations or issuing " +
|
|
179
|
+
"notifications at critical points in the device operation cycles." +
|
|
180
180
|
"\n" +
|
|
181
181
|
"This event shall contain the following fields:",
|
|
182
182
|
|
|
@@ -241,8 +241,8 @@ export const OperationalState = Cluster(
|
|
|
241
241
|
" • For manufacturer-specific states, by the manufacturer." +
|
|
242
242
|
"\n" +
|
|
243
243
|
"A device that is unable to honor the Pause command for whatever reason shall respond with an " +
|
|
244
|
-
"OperationalCommandResponse command with an ErrorStateID of CommandInvalidInState but take no " +
|
|
245
|
-
"
|
|
244
|
+
"OperationalCommandResponse command with an ErrorStateID of CommandInvalidInState but take no further " +
|
|
245
|
+
"action." +
|
|
246
246
|
"\n" +
|
|
247
247
|
"Otherwise, on success:" +
|
|
248
248
|
"\n" +
|
|
@@ -273,8 +273,8 @@ export const OperationalState = Cluster(
|
|
|
273
273
|
"OperationalCommandResponse command with an ErrorStateID of NoError but take no further action." +
|
|
274
274
|
"\n" +
|
|
275
275
|
"A device that is unable to honor the Stop command for whatever reason shall respond with an " +
|
|
276
|
-
"OperationalCommandResponse command with an ErrorStateID of CommandInvalidInState but take no " +
|
|
277
|
-
"
|
|
276
|
+
"OperationalCommandResponse command with an ErrorStateID of CommandInvalidInState but take no further " +
|
|
277
|
+
"action." +
|
|
278
278
|
"\n" +
|
|
279
279
|
"Otherwise, on success:" +
|
|
280
280
|
"\n" +
|
|
@@ -295,17 +295,17 @@ export const OperationalState = Cluster(
|
|
|
295
295
|
"\n" +
|
|
296
296
|
"On receipt of this command, the device shall start its operation if it is safe to do so and the " +
|
|
297
297
|
"device is in an operational state from which it can be started. There may be either regulatory or " +
|
|
298
|
-
"manufacturer-imposed safety and security requirements that first necessitate some specific action " +
|
|
299
|
-
"
|
|
300
|
-
"
|
|
301
|
-
"
|
|
298
|
+
"manufacturer-imposed safety and security requirements that first necessitate some specific action at " +
|
|
299
|
+
"the device before a Start command can be honored. In such instances, a device shall respond with a " +
|
|
300
|
+
"status code of CommandInvalidInState if a Start command is received prior to the required on- device " +
|
|
301
|
+
"action." +
|
|
302
302
|
"\n" +
|
|
303
303
|
"If this command is received when already in the Running state the device shall respond with an " +
|
|
304
304
|
"OperationalCommandResponse command with an ErrorStateID of NoError but take no further action." +
|
|
305
305
|
"\n" +
|
|
306
306
|
"A device that is unable to honor the Start command for whatever reason shall respond with an " +
|
|
307
|
-
"OperationalCommandResponse command with an ErrorStateID of UnableToStartOrResume but take no " +
|
|
308
|
-
"
|
|
307
|
+
"OperationalCommandResponse command with an ErrorStateID of UnableToStartOrResume but take no further " +
|
|
308
|
+
"action." +
|
|
309
309
|
"\n" +
|
|
310
310
|
"Otherwise, on success:" +
|
|
311
311
|
"\n" +
|
|
@@ -348,13 +348,13 @@ export const OperationalState = Cluster(
|
|
|
348
348
|
"### Table 4. Resume Compatibility" +
|
|
349
349
|
"\n" +
|
|
350
350
|
"A device that is unable to honor the Resume command for any other reason shall respond with an " +
|
|
351
|
-
"OperationalCommandResponse command with an ErrorStateID of UnableToStartOrResume but take no " +
|
|
352
|
-
"
|
|
351
|
+
"OperationalCommandResponse command with an ErrorStateID of UnableToStartOrResume but take no further " +
|
|
352
|
+
"action." +
|
|
353
353
|
"\n" +
|
|
354
354
|
"Otherwise, on success:" +
|
|
355
355
|
"\n" +
|
|
356
|
-
" • The OperationalState attribute shall be set to the most recent non-Error operational state " +
|
|
357
|
-
"
|
|
356
|
+
" • The OperationalState attribute shall be set to the most recent non-Error operational state prior " +
|
|
357
|
+
" to entering the Paused state." +
|
|
358
358
|
"\n" +
|
|
359
359
|
" • The device shall respond with an OperationalCommandResponse command with an ErrorStateID of " +
|
|
360
360
|
" NoError.",
|
|
@@ -401,8 +401,8 @@ export const OperationalState = Cluster(
|
|
|
401
401
|
"semantics as the general states defined below." +
|
|
402
402
|
"\n" +
|
|
403
403
|
"A manufacturer-specific state definition shall NOT duplicate the general state definitions or " +
|
|
404
|
-
"derived cluster state definitions. That is, a manufacturer-defined state defined for this cluster " +
|
|
405
|
-
"
|
|
404
|
+
"derived cluster state definitions. That is, a manufacturer-defined state defined for this cluster or " +
|
|
405
|
+
"a derived cluster thereof cannot define a state with the same semantics as the general states " +
|
|
406
406
|
"defined below or states defined in a derived cluster. Such manufacturer-specific state definitions " +
|
|
407
407
|
"shall be scoped in the context of the Vendor ID present in the Basic Information cluster." +
|
|
408
408
|
"\n" +
|