diff --git a/data_model/device_types/Aggregator.xml b/data_model/device_types/Aggregator.xml new file mode 100644 index 00000000000000..3f70f3d78ccb4b --- /dev/null +++ b/data_model/device_types/Aggregator.xml @@ -0,0 +1,73 @@ + + + + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/data_model/clusters/Mode_LaundryWasher.xml b/data_model/device_types/AirPurifier.xml similarity index 75% rename from data_model/clusters/Mode_LaundryWasher.xml rename to data_model/device_types/AirPurifier.xml index 96190a4009850c..9793cd1d36b215 100644 --- a/data_model/clusters/Mode_LaundryWasher.xml +++ b/data_model/device_types/AirPurifier.xml @@ -55,37 +55,27 @@ Connectivity Standards Alliance 508 Second Street, Suite 206 Davis, CA 95616, USA --> - + - + - - - - - - - - - - - - - - - - - + + + + - - + + + + + + + + + + + - - - - - - - - - \ No newline at end of file + + + \ No newline at end of file diff --git a/data_model/device_types/AirQualitySensor.xml b/data_model/device_types/AirQualitySensor.xml new file mode 100644 index 00000000000000..0c96fbd60515b7 --- /dev/null +++ b/data_model/device_types/AirQualitySensor.xml @@ -0,0 +1,108 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/data_model/device_types/BaseDeviceType.xml b/data_model/device_types/BaseDeviceType.xml new file mode 100644 index 00000000000000..22cec956aa6061 --- /dev/null +++ b/data_model/device_types/BaseDeviceType.xml @@ -0,0 +1,65 @@ + + + + + + + + + + \ No newline at end of file diff --git a/data_model/device_types/BasicVideoPlayer.xml b/data_model/device_types/BasicVideoPlayer.xml new file mode 100644 index 00000000000000..f6b86091004bfe --- /dev/null +++ b/data_model/device_types/BasicVideoPlayer.xml @@ -0,0 +1,98 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/data_model/device_types/BooleanSensor.xml b/data_model/device_types/BooleanSensor.xml new file mode 100644 index 00000000000000..185fdc47176813 --- /dev/null +++ b/data_model/device_types/BooleanSensor.xml @@ -0,0 +1,72 @@ + + + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/data_model/device_types/BridgedNode.xml b/data_model/device_types/BridgedNode.xml new file mode 100644 index 00000000000000..a383ed2b541d6b --- /dev/null +++ b/data_model/device_types/BridgedNode.xml @@ -0,0 +1,84 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/data_model/device_types/CastingVideoClient.xml b/data_model/device_types/CastingVideoClient.xml new file mode 100644 index 00000000000000..06ef2b5492f337 --- /dev/null +++ b/data_model/device_types/CastingVideoClient.xml @@ -0,0 +1,109 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/data_model/device_types/CastingVideoPlayer.xml b/data_model/device_types/CastingVideoPlayer.xml new file mode 100644 index 00000000000000..fd26bb675cbdf6 --- /dev/null +++ b/data_model/device_types/CastingVideoPlayer.xml @@ -0,0 +1,117 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/data_model/device_types/ColorDimmerSwitch.xml b/data_model/device_types/ColorDimmerSwitch.xml new file mode 100644 index 00000000000000..dcd2ac18b1a912 --- /dev/null +++ b/data_model/device_types/ColorDimmerSwitch.xml @@ -0,0 +1,92 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/data_model/device_types/ColorTemperatureLight.xml b/data_model/device_types/ColorTemperatureLight.xml new file mode 100644 index 00000000000000..5897f0ee0b796a --- /dev/null +++ b/data_model/device_types/ColorTemperatureLight.xml @@ -0,0 +1,148 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/data_model/device_types/ContactSensor.xml b/data_model/device_types/ContactSensor.xml new file mode 100644 index 00000000000000..e8a7c3f343a9f4 --- /dev/null +++ b/data_model/device_types/ContactSensor.xml @@ -0,0 +1,72 @@ + + + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/data_model/device_types/ContentApp.xml b/data_model/device_types/ContentApp.xml new file mode 100644 index 00000000000000..8f927c48f44a35 --- /dev/null +++ b/data_model/device_types/ContentApp.xml @@ -0,0 +1,96 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/data_model/device_types/ControlBridge.xml b/data_model/device_types/ControlBridge.xml new file mode 100644 index 00000000000000..6ed528c0122d96 --- /dev/null +++ b/data_model/device_types/ControlBridge.xml @@ -0,0 +1,99 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/data_model/device_types/CookSurface.xml b/data_model/device_types/CookSurface.xml new file mode 100644 index 00000000000000..34f5556234a6e5 --- /dev/null +++ b/data_model/device_types/CookSurface.xml @@ -0,0 +1,72 @@ + + + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/data_model/device_types/Cooktop.xml b/data_model/device_types/Cooktop.xml new file mode 100644 index 00000000000000..8288f38c8a87ba --- /dev/null +++ b/data_model/device_types/Cooktop.xml @@ -0,0 +1,80 @@ + + + + + + + + + + + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/data_model/device_types/DimmableLight.xml b/data_model/device_types/DimmableLight.xml new file mode 100644 index 00000000000000..39f193f53e7553 --- /dev/null +++ b/data_model/device_types/DimmableLight.xml @@ -0,0 +1,145 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/data_model/device_types/DimmablePlug-InUnit.xml b/data_model/device_types/DimmablePlug-InUnit.xml new file mode 100644 index 00000000000000..c262abf3741d7e --- /dev/null +++ b/data_model/device_types/DimmablePlug-InUnit.xml @@ -0,0 +1,142 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/data_model/device_types/DimmerSwitch.xml b/data_model/device_types/DimmerSwitch.xml new file mode 100644 index 00000000000000..a3bae868a2498b --- /dev/null +++ b/data_model/device_types/DimmerSwitch.xml @@ -0,0 +1,89 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/data_model/device_types/Dishwasher.xml b/data_model/device_types/Dishwasher.xml new file mode 100644 index 00000000000000..429e96c149abe9 --- /dev/null +++ b/data_model/device_types/Dishwasher.xml @@ -0,0 +1,99 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/data_model/device_types/DoorLock.xml b/data_model/device_types/DoorLock.xml new file mode 100644 index 00000000000000..d31aaad30d8d98 --- /dev/null +++ b/data_model/device_types/DoorLock.xml @@ -0,0 +1,190 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/data_model/device_types/DoorLockController.xml b/data_model/device_types/DoorLockController.xml new file mode 100644 index 00000000000000..4f4efb3ea90d1c --- /dev/null +++ b/data_model/device_types/DoorLockController.xml @@ -0,0 +1,99 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/data_model/device_types/EVSE.xml b/data_model/device_types/EVSE.xml new file mode 100644 index 00000000000000..b5e57c83aa3ac1 --- /dev/null +++ b/data_model/device_types/EVSE.xml @@ -0,0 +1,106 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/data_model/device_types/EnergyTariff.xml b/data_model/device_types/EnergyTariff.xml new file mode 100644 index 00000000000000..9e6e0b4c12ab36 --- /dev/null +++ b/data_model/device_types/EnergyTariff.xml @@ -0,0 +1,64 @@ + + + + + + + + + \ No newline at end of file diff --git a/data_model/device_types/EnergyTariffCalendar.xml b/data_model/device_types/EnergyTariffCalendar.xml new file mode 100644 index 00000000000000..3dca889b777e66 --- /dev/null +++ b/data_model/device_types/EnergyTariffCalendar.xml @@ -0,0 +1,64 @@ + + + + + + + + + \ No newline at end of file diff --git a/data_model/device_types/ExtendedColorLight.xml b/data_model/device_types/ExtendedColorLight.xml new file mode 100644 index 00000000000000..4120226176e7a1 --- /dev/null +++ b/data_model/device_types/ExtendedColorLight.xml @@ -0,0 +1,160 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/data_model/device_types/ExtractorHood.xml b/data_model/device_types/ExtractorHood.xml new file mode 100644 index 00000000000000..5fdbc7c84a1583 --- /dev/null +++ b/data_model/device_types/ExtractorHood.xml @@ -0,0 +1,89 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/data_model/device_types/Fan.xml b/data_model/device_types/Fan.xml new file mode 100644 index 00000000000000..49538ec32097b6 --- /dev/null +++ b/data_model/device_types/Fan.xml @@ -0,0 +1,85 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/data_model/device_types/FlowSensor.xml b/data_model/device_types/FlowSensor.xml new file mode 100644 index 00000000000000..8c604586481536 --- /dev/null +++ b/data_model/device_types/FlowSensor.xml @@ -0,0 +1,79 @@ + + + + + + + + + + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/data_model/device_types/GenericSwitch.xml b/data_model/device_types/GenericSwitch.xml new file mode 100644 index 00000000000000..7e13a7e18223ab --- /dev/null +++ b/data_model/device_types/GenericSwitch.xml @@ -0,0 +1,74 @@ + + + + + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/data_model/device_types/HeatingCoolingUnit.xml b/data_model/device_types/HeatingCoolingUnit.xml new file mode 100644 index 00000000000000..244ff14b0a15fa --- /dev/null +++ b/data_model/device_types/HeatingCoolingUnit.xml @@ -0,0 +1,95 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/data_model/device_types/HumiditySensor.xml b/data_model/device_types/HumiditySensor.xml new file mode 100644 index 00000000000000..d59ed7caf43abe --- /dev/null +++ b/data_model/device_types/HumiditySensor.xml @@ -0,0 +1,79 @@ + + + + + + + + + + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/data_model/device_types/LaundryDryer.xml b/data_model/device_types/LaundryDryer.xml new file mode 100644 index 00000000000000..a7d365f22e14fe --- /dev/null +++ b/data_model/device_types/LaundryDryer.xml @@ -0,0 +1,99 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/data_model/device_types/LaundryWasher.xml b/data_model/device_types/LaundryWasher.xml new file mode 100644 index 00000000000000..07cd62a605fc9c --- /dev/null +++ b/data_model/device_types/LaundryWasher.xml @@ -0,0 +1,99 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/data_model/device_types/LightSensor.xml b/data_model/device_types/LightSensor.xml new file mode 100644 index 00000000000000..618901b398b5f8 --- /dev/null +++ b/data_model/device_types/LightSensor.xml @@ -0,0 +1,80 @@ + + + + + + + + + + + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/data_model/device_types/MicrowaveOven.xml b/data_model/device_types/MicrowaveOven.xml new file mode 100644 index 00000000000000..8e77925b4131fc --- /dev/null +++ b/data_model/device_types/MicrowaveOven.xml @@ -0,0 +1,92 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/data_model/device_types/ModeSelectDeviceType.xml b/data_model/device_types/ModeSelectDeviceType.xml new file mode 100644 index 00000000000000..748dc1bae2f0a3 --- /dev/null +++ b/data_model/device_types/ModeSelectDeviceType.xml @@ -0,0 +1,70 @@ + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/data_model/device_types/NetworkInfraIntro.xml b/data_model/device_types/NetworkInfraIntro.xml new file mode 100644 index 00000000000000..22d91b6f459c6d --- /dev/null +++ b/data_model/device_types/NetworkInfraIntro.xml @@ -0,0 +1,58 @@ + + + \ No newline at end of file diff --git a/data_model/device_types/NetworkInfraManager.xml b/data_model/device_types/NetworkInfraManager.xml new file mode 100644 index 00000000000000..750a97f22cad86 --- /dev/null +++ b/data_model/device_types/NetworkInfraManager.xml @@ -0,0 +1,69 @@ + + + + + + + + + + + + + + \ No newline at end of file diff --git a/data_model/device_types/OccupancySensor.xml b/data_model/device_types/OccupancySensor.xml new file mode 100644 index 00000000000000..bef470cc1c9ec6 --- /dev/null +++ b/data_model/device_types/OccupancySensor.xml @@ -0,0 +1,80 @@ + + + + + + + + + + + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/data_model/device_types/OnOffLight.xml b/data_model/device_types/OnOffLight.xml new file mode 100644 index 00000000000000..1ce39e8545c84a --- /dev/null +++ b/data_model/device_types/OnOffLight.xml @@ -0,0 +1,145 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/data_model/device_types/OnOffLightSwitch.xml b/data_model/device_types/OnOffLightSwitch.xml new file mode 100644 index 00000000000000..c2c324c8ee5d2a --- /dev/null +++ b/data_model/device_types/OnOffLightSwitch.xml @@ -0,0 +1,86 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/data_model/device_types/OnOffPlug-inUnit.xml b/data_model/device_types/OnOffPlug-inUnit.xml new file mode 100644 index 00000000000000..1847119e49426c --- /dev/null +++ b/data_model/device_types/OnOffPlug-inUnit.xml @@ -0,0 +1,145 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/data_model/device_types/OnOffSensor.xml b/data_model/device_types/OnOffSensor.xml new file mode 100644 index 00000000000000..d2c6553fc1140c --- /dev/null +++ b/data_model/device_types/OnOffSensor.xml @@ -0,0 +1,93 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/data_model/device_types/OtaProvider.xml b/data_model/device_types/OtaProvider.xml new file mode 100644 index 00000000000000..28c4e3c70b88e9 --- /dev/null +++ b/data_model/device_types/OtaProvider.xml @@ -0,0 +1,72 @@ + + + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/data_model/device_types/OtaRequestor.xml b/data_model/device_types/OtaRequestor.xml new file mode 100644 index 00000000000000..7f5a8ca11c58c8 --- /dev/null +++ b/data_model/device_types/OtaRequestor.xml @@ -0,0 +1,72 @@ + + + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/data_model/device_types/Oven.xml b/data_model/device_types/Oven.xml new file mode 100644 index 00000000000000..5a13b0ec9ba053 --- /dev/null +++ b/data_model/device_types/Oven.xml @@ -0,0 +1,69 @@ + + + + + + + + + + + + + + \ No newline at end of file diff --git a/data_model/device_types/PowerSource.xml b/data_model/device_types/PowerSource.xml new file mode 100644 index 00000000000000..05aaa56f88cf92 --- /dev/null +++ b/data_model/device_types/PowerSource.xml @@ -0,0 +1,75 @@ + + + + + + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/data_model/device_types/PressureSensor.xml b/data_model/device_types/PressureSensor.xml new file mode 100644 index 00000000000000..f472daaf4e39ff --- /dev/null +++ b/data_model/device_types/PressureSensor.xml @@ -0,0 +1,79 @@ + + + + + + + + + + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/data_model/device_types/Pump.xml b/data_model/device_types/Pump.xml new file mode 100644 index 00000000000000..6f1b1f39aae53c --- /dev/null +++ b/data_model/device_types/Pump.xml @@ -0,0 +1,110 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/data_model/device_types/PumpController.xml b/data_model/device_types/PumpController.xml new file mode 100644 index 00000000000000..070e3a5912942b --- /dev/null +++ b/data_model/device_types/PumpController.xml @@ -0,0 +1,103 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/data_model/device_types/Refrigerator.xml b/data_model/device_types/Refrigerator.xml new file mode 100644 index 00000000000000..19a9b568872e4a --- /dev/null +++ b/data_model/device_types/Refrigerator.xml @@ -0,0 +1,85 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/data_model/device_types/RoboticVacuumCleaner.xml b/data_model/device_types/RoboticVacuumCleaner.xml new file mode 100644 index 00000000000000..4e02b17d772606 --- /dev/null +++ b/data_model/device_types/RoboticVacuumCleaner.xml @@ -0,0 +1,107 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/data_model/device_types/RoomAirConditioner.xml b/data_model/device_types/RoomAirConditioner.xml new file mode 100644 index 00000000000000..86240698da6789 --- /dev/null +++ b/data_model/device_types/RoomAirConditioner.xml @@ -0,0 +1,98 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/data_model/device_types/RootNodeDeviceType.xml b/data_model/device_types/RootNodeDeviceType.xml new file mode 100644 index 00000000000000..f4792a2e1f5a96 --- /dev/null +++ b/data_model/device_types/RootNodeDeviceType.xml @@ -0,0 +1,164 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/data_model/device_types/SmokeCOAlarm.xml b/data_model/device_types/SmokeCOAlarm.xml new file mode 100644 index 00000000000000..5888e8148f0927 --- /dev/null +++ b/data_model/device_types/SmokeCOAlarm.xml @@ -0,0 +1,84 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/data_model/device_types/Speaker.xml b/data_model/device_types/Speaker.xml new file mode 100644 index 00000000000000..f8bc0ab150036e --- /dev/null +++ b/data_model/device_types/Speaker.xml @@ -0,0 +1,73 @@ + + + + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/data_model/device_types/TemperatureControlledCabinet.xml b/data_model/device_types/TemperatureControlledCabinet.xml new file mode 100644 index 00000000000000..93c09339a65a75 --- /dev/null +++ b/data_model/device_types/TemperatureControlledCabinet.xml @@ -0,0 +1,106 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/data_model/device_types/TemperatureSensor.xml b/data_model/device_types/TemperatureSensor.xml new file mode 100644 index 00000000000000..19d3fef781c717 --- /dev/null +++ b/data_model/device_types/TemperatureSensor.xml @@ -0,0 +1,79 @@ + + + + + + + + + + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/data_model/device_types/Thermostat.xml b/data_model/device_types/Thermostat.xml new file mode 100644 index 00000000000000..ebc43e7dbf7203 --- /dev/null +++ b/data_model/device_types/Thermostat.xml @@ -0,0 +1,157 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/data_model/device_types/ThreadBorderRouter.xml b/data_model/device_types/ThreadBorderRouter.xml new file mode 100644 index 00000000000000..5a069e57e93243 --- /dev/null +++ b/data_model/device_types/ThreadBorderRouter.xml @@ -0,0 +1,80 @@ + + + + + + + + + + + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/data_model/device_types/ThreePhasePowerSource.xml b/data_model/device_types/ThreePhasePowerSource.xml new file mode 100644 index 00000000000000..3a3d5a018223b4 --- /dev/null +++ b/data_model/device_types/ThreePhasePowerSource.xml @@ -0,0 +1,77 @@ + + + + + + + + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/data_model/device_types/Valve.xml b/data_model/device_types/Valve.xml new file mode 100644 index 00000000000000..4ce864b01ab246 --- /dev/null +++ b/data_model/device_types/Valve.xml @@ -0,0 +1,72 @@ + + + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/data_model/device_types/VideoRemoteControl.xml b/data_model/device_types/VideoRemoteControl.xml new file mode 100644 index 00000000000000..c86fb3ba437a55 --- /dev/null +++ b/data_model/device_types/VideoRemoteControl.xml @@ -0,0 +1,106 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/data_model/device_types/WaterHeater.xml b/data_model/device_types/WaterHeater.xml new file mode 100644 index 00000000000000..2f2f7fae235e1b --- /dev/null +++ b/data_model/device_types/WaterHeater.xml @@ -0,0 +1,100 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/data_model/device_types/WaterLeakDetector.xml b/data_model/device_types/WaterLeakDetector.xml new file mode 100644 index 00000000000000..596a9cebb2ac04 --- /dev/null +++ b/data_model/device_types/WaterLeakDetector.xml @@ -0,0 +1,80 @@ + + + + + + + + + + + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/data_model/device_types/WindowCovering.xml b/data_model/device_types/WindowCovering.xml new file mode 100644 index 00000000000000..83f03a2a04e5ed --- /dev/null +++ b/data_model/device_types/WindowCovering.xml @@ -0,0 +1,124 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/data_model/device_types/WindowCoveringController.xml b/data_model/device_types/WindowCoveringController.xml new file mode 100644 index 00000000000000..c79d5a2279f6a8 --- /dev/null +++ b/data_model/device_types/WindowCoveringController.xml @@ -0,0 +1,101 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/data_model/scraper_version b/data_model/scraper_version new file mode 100644 index 00000000000000..26aaba0e86632e --- /dev/null +++ b/data_model/scraper_version @@ -0,0 +1 @@ +1.2.0 diff --git a/scripts/spec_xml/generate_spec_xml.py b/scripts/spec_xml/generate_spec_xml.py index 1b3a767aa1c242..d0b2635bcf3398 100755 --- a/scripts/spec_xml/generate_spec_xml.py +++ b/scripts/spec_xml/generate_spec_xml.py @@ -16,6 +16,7 @@ import glob import os +import re import subprocess import click @@ -24,6 +25,11 @@ DEFAULT_OUTPUT_DIR = os.path.abspath(os.path.join(DEFAULT_CHIP_ROOT, 'data_model')) +def get_xml_path(filename, output_dir): + xml = os.path.basename(filename).replace('.adoc', '.xml') + return os.path.abspath(os.path.join(output_dir, xml)) + + @click.command() @click.option( '--scraper', @@ -45,8 +51,14 @@ is_flag=True, help='Flag for dry run') def main(scraper, spec_root, output_dir, dry_run): - # TODO: Add scrapers for device types + # Clusters need to be scraped first because the cluster directory is passed to the device type directory + scrape_clusters(scraper, spec_root, output_dir, dry_run) + scrape_device_types(scraper, spec_root, output_dir, dry_run) + if not dry_run: + dump_versions(scraper, spec_root, output_dir) + +def scrape_clusters(scraper, spec_root, output_dir, dry_run): src_dir = os.path.abspath(os.path.join(spec_root, 'src')) sdm_clusters_dir = os.path.abspath(os.path.join(src_dir, 'service_device_management')) app_clusters_dir = os.path.abspath(os.path.join(src_dir, 'app_clusters')) @@ -65,8 +77,7 @@ def main(scraper, spec_root, output_dir, dry_run): os.makedirs(clusters_output_dir) def scrape_cluster(filename: str) -> None: - xml = os.path.basename(filename).replace('.adoc', '.xml') - xml_path = os.path.abspath(os.path.join(clusters_output_dir, xml)) + xml_path = get_xml_path(filename, clusters_output_dir) cmd = [scraper, 'cluster', filename, xml_path, '-nd'] if dry_run: print(cmd) @@ -86,13 +97,44 @@ def scrape_all_clusters(dir: str, exclude_list: list[str] = []) -> None: filename = f'{dm_clusters_dir}/{f}' scrape_cluster(filename) - # Put the current spec sha into the cluster dir + +def scrape_device_types(scraper, spec_root, output_dir, dry_run): + device_type_dir = os.path.abspath(os.path.join(spec_root, 'src', 'device_types')) + device_types_output_dir = os.path.abspath(os.path.join(output_dir, 'device_types')) + clusters_output_dir = os.path.abspath(os.path.join(output_dir, 'clusters')) + + if not os.path.exists(device_types_output_dir): + os.makedirs(device_types_output_dir) + + def scrape_device_type(filename: str) -> None: + xml_path = get_xml_path(filename, device_types_output_dir) + cmd = [scraper, 'devicetype', '-c', clusters_output_dir, '-nd', filename, xml_path] + if dry_run: + print(cmd) + else: + print(' '.join(cmd)) + subprocess.run(cmd) + + exclude_list = [r"section_*"] + for filename in glob.glob(f'{device_type_dir}/*.adoc'): + for exclude in exclude_list: + if not re.match(exclude, os.path.basename(filename)): + scrape_device_type(filename) + + +def dump_versions(scraper, spec_root, output_dir): sha_file = os.path.abspath(os.path.join(output_dir, 'spec_sha')) out = subprocess.run(['git', 'rev-parse', 'HEAD'], capture_output=True, encoding="utf8", cwd=spec_root) sha = out.stdout with open(sha_file, 'wt', encoding='utf8') as output: output.write(sha) + scraper_file = os.path.abspath(os.path.join(output_dir, 'scraper_version')) + out = subprocess.run([scraper, '--version'], capture_output=True, encoding="utf8") + version = out.stdout + with open(scraper_file, "wt", encoding='utf8') as output: + output.write(version) + if __name__ == '__main__': main()