]> git.basschouten.com Git - openhab-addons.git/commitdiff
[miio] add DreameBot L10s Ultra (#15582)
authorMarcel <marcel@verpaalen.com>
Mon, 25 Sep 2023 12:53:42 +0000 (14:53 +0200)
committerGitHub <noreply@github.com>
Mon, 25 Sep 2023 12:53:42 +0000 (14:53 +0200)
Signed-off-by: Marcel Verpaalen <marcel@verpaalen.com>
bundles/org.openhab.binding.miio/README.md
bundles/org.openhab.binding.miio/src/main/java/org/openhab/binding/miio/internal/MiIoDevices.java
bundles/org.openhab.binding.miio/src/main/resources/OH-INF/i18n/basic.properties
bundles/org.openhab.binding.miio/src/main/resources/database/dreame.vacuum.p2259-miot.json
bundles/org.openhab.binding.miio/src/main/resources/database/dreame.vacuum.r2228o-miot.json [new file with mode: 0644]

index 7f4b94780245a02b4cff56fa683a022ecab766c8..d4fe2542bdd106f5e5d877126af0e74715eb9e78 100644 (file)
@@ -259,6 +259,7 @@ Currently the miio binding supports more than 360 different models.
 | MOVA Z500 Robot Vacuum and Mop Cleaner | miio:basic       | [dreame.vacuum.p2156o](#dreame-vacuum-p2156o) | Experimental | Experimental support. Please report back if all channels are functional. Preferably share the debug log of property refresh and command responses |
 | MOVA L600 Robot Vacuum and Mop Cleaner | miio:basic       | [dreame.vacuum.p2157](#dreame-vacuum-p2157) | Yes          |            |
 | Dreame Bot D9 Max                  | miio:basic       | [dreame.vacuum.p2259](#dreame-vacuum-p2259) | Experimental | Experimental support. Please report back if all channels are functional. Preferably share the debug log of property refresh and command responses |
+| DreameBot L10s Ultra               | miio:basic       | [dreame.vacuum.r2228o](#dreame-vacuum-r2228o) | Yes          |            |
 | HUIZUO ARIES For Bedroom           | miio:basic       | [huayi.light.ari013](#huayi-light-ari013) | Experimental | Experimental support. Please report back if all channels are functional. Preferably share the debug log of property refresh and command responses |
 | HUIZUO ARIES For Living Room       | miio:basic       | [huayi.light.aries](#huayi-light-aries) | Experimental | Experimental support. Please report back if all channels are functional. Preferably share the debug log of property refresh and command responses |
 | HUIZUO Fan Light                   | miio:basic       | [huayi.light.fanwy](#huayi-light-fanwy) | Experimental | Experimental support. Please report back if all channels are functional. Preferably share the debug log of property refresh and command responses |
@@ -1535,7 +1536,7 @@ Note, not all the values need to be in the json file, e.g. a subset of the param
 | work_mode            | Number               | Vacuum Extend - Work Mode                |            |
 | cleaning_time        | Number:Time          | Vacuum Extend - Cleaning Time            |            |
 | cleaning_area        | Number:Area          | Vacuum Extend - Cleaning Area            |            |
-| cleaning_mode        | Number               | Vacuum Extend - Cleaning Mode            | Value mapping `["0"="mode 0","1"="mode 1","2"="mode 2","3"="mode 3"]` |
+| cleaning_mode        | Number               | Vacuum Extend - Cleaning Mode            | Value mapping `["0"="Quiet","1"="Standard","2"="Medium","3"="Strong"]` |
 | mop_mode             | Number               | Vacuum Extend - Mop Mode                 | Value mapping `["1"="low water","2"="medium water","3"="high water"]` |
 | waterbox_status      | Number               | Vacuum Extend - Waterbox Status          | Value mapping `["0"="Status 0","1"="Status 1"]` |
 | task_status          | Number               | Vacuum Extend - Task Status              | Value mapping `["0"="Notask","1"="AutoClean","2"="CustomClean","3"="SelectAreanClean","4"="SpotArea"]` |
@@ -1564,6 +1565,81 @@ Note, not all the values need to be in the json file, e.g. a subset of the param
 | total_clean_times    | Number               | Clean Logs - Total Clean Times           |            |
 | total_clean_area     | Number               | Clean Logs - Total Clean Area            |            |
 
+### DreameBot L10s Ultra (<a name="dreame-vacuum-r2228o">dreame.vacuum.r2228o</a>) Channels
+
+| Channel              | Type                 | Description                              | Comment    |
+|----------------------|----------------------|------------------------------------------|------------|
+| actions              | String               | Actions                                  | Value mapping `["vacuum-start-sweep"="Vacuum Start Sweep","vacuum-stop-sweeping"="Vacuum Stop Sweeping","vacuum-start-room-sweep"="Vacuum Start Room Sweep","battery-start-charge"="Battery Start Charge","brush-cleaner-reset-brush-life"="Brush Cleaner Reset Brush Life","brush-cleaner-reset-brush-life"="Brush Cleaner Reset Brush Life","filter-reset-filter-life"="Filter Reset Filter Life","vacuum-extend-start-clean"="Vacuum Extend Start Clean","vacuum-extend-stop-clean"="Vacuum Extend Stop Clean","map-map-req"="Map Map Req","map-update-map"="Map Update Map","audio-position"="Audio Position","audio-play-sound"="Audio Play Sound","time-delete-timer"="Time Delete Timer","collect-dust-start-collect"="Collect Dust Start Collect","sensor-reset-sensor-life"="Sensor Reset Sensor Life","mop-reset-mop-life"="Mop Reset Mop Life","silver-ion-reset-silverion-life"="Silver Ion Reset Silverion Life"]` |
+| status               | Number               | Robot Cleaner - Status                   | Value mapping `["1"="Sweeping","2"="Idle","3"="Paused","4"="Error","5"="Go Charging","6"="Charging","8"="Drying","9"="Washing","7"="Mopping","10"="Go Washing","11"="Building","12"="Sweeping and Mopping","13"="Charging Completed","14"="Upgrading"]` |
+| fault                | Number               | Robot Cleaner - Device Fault             |            |
+| mode                 | Number               | Robot Cleaner - Mode                     | Value mapping `["0"="Silent","1"="Basic","2"="Strong","3"="Full Speed"]` |
+| battery_level        | Number:Dimensionless | Battery - Battery Level                  |            |
+| charging_state       | Number               | Battery - Charging State                 | Value mapping `["1"="Charging","2"="Not Charging","5"="Go Charging"]` |
+| brush_left_time      | Number:Time          | Main Cleaning Brush - Brush Left Time    |            |
+| brush_life_level     | Number:Dimensionless | Main Cleaning Brush - Brush Life Level   |            |
+| brush_left_time1     | Number:Time          | Brush Cleaner - Brush Left Time          |            |
+| brush_life_level1    | Number:Dimensionless | Brush Cleaner - Brush Life Level         |            |
+| filter_life_level    | Number:Dimensionless | Filter - Filter Life Level               |            |
+| filter_left_time     | Number:Time          | Filter - Filter Left Time                |            |
+| work_mode            | Number               | Vacuum Extend - Work Mode                |            |
+| cleaning_time        | Number:Time          | Vacuum Extend - Cleaning Time            |            |
+| cleaning_area        | Number:Area          | Vacuum Extend - Cleaning Area            |            |
+| cleaning_mode        | Number               | Vacuum Extend - Cleaning Mode            | Value mapping `["0"="Quiet","1"="Standard","2"="Medium","3"="Strong"]` |
+| mop_mode             | Number               | Vacuum Extend - Mop Mode                 | Value mapping `["1"="Low","2"="Middle","3"="Height"]` |
+| waterbox_status      | Number               | Vacuum Extend - Waterbox Status          | Value mapping `["0"="No","1"="Yes"]` |
+| task_status          | Number               | Vacuum Extend - Task Status              | Value mapping `["0"="Notask","1"="AutoClean","2"="CustomClean","3"="SelectAreanClean","4"="SpotArea"]` |
+| clean_extend_data    | String               | Vacuum Extend - Clean Extend Data        |            |
+| break_point_restart  | Number               | Vacuum Extend - Break Point Restart      | Value mapping `["0"="Close","1"="Open"]` |
+| carpet_press         | Number               | Vacuum Extend - Carpet Press             | Value mapping `["0"="Close","1"="Open"]` |
+| serial_number        | String               | Vacuum Extend - Serial Number            |            |
+| remote_state         | String               | Vacuum Extend - Remote State             |            |
+| clean_rags_tip       | Number:Time          | Vacuum Extend - Clean Rags Tip           |            |
+| keep_sweeper_time    | Number:Time          | Vacuum Extend - Keep Sweeper Time        |            |
+| faults               | String               | Vacuum Extend - Faults                   |            |
+| nation_matched       | String               | Vacuum Extend - Nation Matched           |            |
+| relocation_status    | Number               | Vacuum Extend - Relocation Status        |            |
+| laser_switch         | Number               | Vacuum Extend - Laser Switch             | Value mapping `["0"="Close","1"="Open"]` |
+| ai_switch            | Number               | Vacuum Extend - Ai Switch                |            |
+| clean_setting        | Number               | Vacuum Extend - Clean Setting            |            |
+| mop_status           | Number               | Vacuum Extend - Mop Status               |            |
+| custom_enable        | Number               | Vacuum Extend - Custom Enable            | Value mapping `["0"="Close","1"="Open"]` |
+| child_lock           | Number               | Vacuum Extend - Child Lock               | Value mapping `["0"="Close","1"="Open"]` |
+| sensitivity          | Number               | Vacuum Extend - Sensitivity              |            |
+| mop_way              | Number               | Vacuum Extend - Mop Way                  |            |
+| clean_cancel         | Number               | Vacuum Extend - Clean Cancel             |            |
+| carpet_distinguish   | Number               | Vacuum Extend - Carpet Distinguish       | Value mapping `["0"="Close","1"="Open"]` |
+| autowash_switch      | Number               | Vacuum Extend - Autowash Switch          | Value mapping `["0"="Close","1"="Open"]` |
+| warn_status          | Number               | Vacuum Extend - Warn Status              |            |
+| carpet_clean         | Number               | Vacuum Extend - Carpet Clean             |            |
+| auto_add_detergent   | Number               | Vacuum Extend - Auto Add Detergent       |            |
+| dry_time             | Number               | Vacuum Extend - Dry Time                 |            |
+| nowater_tips         | Number               | Vacuum Extend - Nowater Tips             |            |
+| enable               | Switch               | Do Not Disturb - Enable                  |            |
+| start_time           | String               | Do Not Disturb - Start Time              |            |
+| end_time             | String               | Do Not Disturb - End Time                |            |
+| frame_info           | String               | Map - Frame Info                         |            |
+| map_extend_data      | String               | Map - Map Extend Data                    |            |
+| mult_map_state       | Number               | Map - Mult Map State                     | Value mapping `["0"="Close","1"="Open"]` |
+| mult_map_info        | String               | Map - Mult Map Info                      |            |
+| volume               | Number:Dimensionless | Audio - Volume                           |            |
+| voice_packet_id      | String               | Audio - Voice Packet Id                  |            |
+| voice_change_state   | String               | Audio - Voice Change State               |            |
+| set_voice            | String               | Audio - Set Voice                        |            |
+| time_zone            | String               | Time - Time Zone                         |            |
+| timer_clean          | String               | Time - Timer Clean                       |            |
+| first_clean_time     | Number               | Clean Logs - First Clean Time            |            |
+| total_clean_time     | Number:Time          | Clean Logs - Total Clean Time            |            |
+| total_clean_times    | Number               | Clean Logs - Total Clean Times           |            |
+| total_clean_area     | Number               | Clean Logs - Total Clean Area            |            |
+| auto_collect         | Number               | Collect Dust - Auto Collect              | Value mapping `["0"="Close-auto-collect","1"="Open-auto-collect"]` |
+| clean_times          | Number               | Collect Dust - Clean Times               |            |
+| dust_enable          | Number               | Collect Dust - Dust Enable               | Value mapping `["0"="Disable","1"="Enable"]` |
+| dust_status          | Number               | Collect Dust - Dust Status               |            |
+| mop_life_level       | Number:Dimensionless | Mop - Mop Life Level                     |            |
+| mop_left_time        | Number:Time          | Mop - Mop Left Time                      |            |
+| silverion_life_time  | Number:Time          | Silver Ion - Silverion Life Time         |            |
+| silverion_life_level | Number:Dimensionless | Silver Ion - Silverion Life Level        |            |
+
 ### HUIZUO ARIES For Bedroom (<a name="huayi-light-ari013">huayi.light.ari013</a>) Channels
 
 | Channel              | Type                 | Description                              | Comment    |
@@ -7119,6 +7195,84 @@ Number total_clean_times "Clean Logs - Total Clean Times" (G_vacuum) {channel="m
 Number total_clean_area "Clean Logs - Total Clean Area" (G_vacuum) {channel="miio:basic:vacuum:total_clean_area"}
 ```
 
+### DreameBot L10s Ultra (dreame.vacuum.r2228o) item file lines
+
+note: Autogenerated example. Replace the id (vacuum) in the channel with your own. Replace `basic` with `generic` in the thing UID depending on how your thing was discovered.
+
+```
+Group G_vacuum "DreameBot L10s Ultra" <status>
+String actions "Actions" (G_vacuum) {channel="miio:basic:vacuum:actions"}
+Number status "Robot Cleaner - Status" (G_vacuum) {channel="miio:basic:vacuum:status"}
+Number fault "Robot Cleaner - Device Fault" (G_vacuum) {channel="miio:basic:vacuum:fault"}
+Number mode "Robot Cleaner - Mode" (G_vacuum) {channel="miio:basic:vacuum:mode"}
+Number:Dimensionless battery_level "Battery - Battery Level" (G_vacuum) {channel="miio:basic:vacuum:battery_level"}
+Number charging_state "Battery - Charging State" (G_vacuum) {channel="miio:basic:vacuum:charging_state"}
+Number:Time brush_left_time "Main Cleaning Brush - Brush Left Time" (G_vacuum) {channel="miio:basic:vacuum:brush_left_time"}
+Number:Dimensionless brush_life_level "Main Cleaning Brush - Brush Life Level" (G_vacuum) {channel="miio:basic:vacuum:brush_life_level"}
+Number:Time brush_left_time1 "Brush Cleaner - Brush Left Time" (G_vacuum) {channel="miio:basic:vacuum:brush_left_time1"}
+Number:Dimensionless brush_life_level1 "Brush Cleaner - Brush Life Level" (G_vacuum) {channel="miio:basic:vacuum:brush_life_level1"}
+Number:Dimensionless filter_life_level "Filter - Filter Life Level" (G_vacuum) {channel="miio:basic:vacuum:filter_life_level"}
+Number:Time filter_left_time "Filter - Filter Left Time" (G_vacuum) {channel="miio:basic:vacuum:filter_left_time"}
+Number work_mode "Vacuum Extend - Work Mode" (G_vacuum) {channel="miio:basic:vacuum:work_mode"}
+Number:Time cleaning_time "Vacuum Extend - Cleaning Time" (G_vacuum) {channel="miio:basic:vacuum:cleaning_time"}
+Number:Area cleaning_area "Vacuum Extend - Cleaning Area" (G_vacuum) {channel="miio:basic:vacuum:cleaning_area"}
+Number cleaning_mode "Vacuum Extend - Cleaning Mode" (G_vacuum) {channel="miio:basic:vacuum:cleaning_mode"}
+Number mop_mode "Vacuum Extend - Mop Mode" (G_vacuum) {channel="miio:basic:vacuum:mop_mode"}
+Number waterbox_status "Vacuum Extend - Waterbox Status" (G_vacuum) {channel="miio:basic:vacuum:waterbox_status"}
+Number task_status "Vacuum Extend - Task Status" (G_vacuum) {channel="miio:basic:vacuum:task_status"}
+String clean_extend_data "Vacuum Extend - Clean Extend Data" (G_vacuum) {channel="miio:basic:vacuum:clean_extend_data"}
+Number break_point_restart "Vacuum Extend - Break Point Restart" (G_vacuum) {channel="miio:basic:vacuum:break_point_restart"}
+Number carpet_press "Vacuum Extend - Carpet Press" (G_vacuum) {channel="miio:basic:vacuum:carpet_press"}
+String serial_number "Vacuum Extend - Serial Number" (G_vacuum) {channel="miio:basic:vacuum:serial_number"}
+String remote_state "Vacuum Extend - Remote State" (G_vacuum) {channel="miio:basic:vacuum:remote_state"}
+Number:Time clean_rags_tip "Vacuum Extend - Clean Rags Tip" (G_vacuum) {channel="miio:basic:vacuum:clean_rags_tip"}
+Number:Time keep_sweeper_time "Vacuum Extend - Keep Sweeper Time" (G_vacuum) {channel="miio:basic:vacuum:keep_sweeper_time"}
+String faults "Vacuum Extend - Faults" (G_vacuum) {channel="miio:basic:vacuum:faults"}
+String nation_matched "Vacuum Extend - Nation Matched" (G_vacuum) {channel="miio:basic:vacuum:nation_matched"}
+Number relocation_status "Vacuum Extend - Relocation Status" (G_vacuum) {channel="miio:basic:vacuum:relocation_status"}
+Number laser_switch "Vacuum Extend - Laser Switch" (G_vacuum) {channel="miio:basic:vacuum:laser_switch"}
+Number ai_switch "Vacuum Extend - Ai Switch" (G_vacuum) {channel="miio:basic:vacuum:ai_switch"}
+Number clean_setting "Vacuum Extend - Clean Setting" (G_vacuum) {channel="miio:basic:vacuum:clean_setting"}
+Number mop_status "Vacuum Extend - Mop Status" (G_vacuum) {channel="miio:basic:vacuum:mop_status"}
+Number custom_enable "Vacuum Extend - Custom Enable" (G_vacuum) {channel="miio:basic:vacuum:custom_enable"}
+Number child_lock "Vacuum Extend - Child Lock" (G_vacuum) {channel="miio:basic:vacuum:child_lock"}
+Number sensitivity "Vacuum Extend - Sensitivity" (G_vacuum) {channel="miio:basic:vacuum:sensitivity"}
+Number mop_way "Vacuum Extend - Mop Way" (G_vacuum) {channel="miio:basic:vacuum:mop_way"}
+Number clean_cancel "Vacuum Extend - Clean Cancel" (G_vacuum) {channel="miio:basic:vacuum:clean_cancel"}
+Number carpet_distinguish "Vacuum Extend - Carpet Distinguish" (G_vacuum) {channel="miio:basic:vacuum:carpet_distinguish"}
+Number autowash_switch "Vacuum Extend - Autowash Switch" (G_vacuum) {channel="miio:basic:vacuum:autowash_switch"}
+Number warn_status "Vacuum Extend - Warn Status" (G_vacuum) {channel="miio:basic:vacuum:warn_status"}
+Number carpet_clean "Vacuum Extend - Carpet Clean" (G_vacuum) {channel="miio:basic:vacuum:carpet_clean"}
+Number auto_add_detergent "Vacuum Extend - Auto Add Detergent" (G_vacuum) {channel="miio:basic:vacuum:auto_add_detergent"}
+Number dry_time "Vacuum Extend - Dry Time" (G_vacuum) {channel="miio:basic:vacuum:dry_time"}
+Number nowater_tips "Vacuum Extend - Nowater Tips" (G_vacuum) {channel="miio:basic:vacuum:nowater_tips"}
+Switch enable "Do Not Disturb - Enable" (G_vacuum) {channel="miio:basic:vacuum:enable"}
+String start_time "Do Not Disturb - Start Time" (G_vacuum) {channel="miio:basic:vacuum:start_time"}
+String end_time "Do Not Disturb - End Time" (G_vacuum) {channel="miio:basic:vacuum:end_time"}
+String frame_info "Map - Frame Info" (G_vacuum) {channel="miio:basic:vacuum:frame_info"}
+String map_extend_data "Map - Map Extend Data" (G_vacuum) {channel="miio:basic:vacuum:map_extend_data"}
+Number mult_map_state "Map - Mult Map State" (G_vacuum) {channel="miio:basic:vacuum:mult_map_state"}
+String mult_map_info "Map - Mult Map Info" (G_vacuum) {channel="miio:basic:vacuum:mult_map_info"}
+Number:Dimensionless volume "Audio - Volume" (G_vacuum) {channel="miio:basic:vacuum:volume"}
+String voice_packet_id "Audio - Voice Packet Id" (G_vacuum) {channel="miio:basic:vacuum:voice_packet_id"}
+String voice_change_state "Audio - Voice Change State" (G_vacuum) {channel="miio:basic:vacuum:voice_change_state"}
+String set_voice "Audio - Set Voice" (G_vacuum) {channel="miio:basic:vacuum:set_voice"}
+String time_zone "Time - Time Zone" (G_vacuum) {channel="miio:basic:vacuum:time_zone"}
+String timer_clean "Time - Timer Clean" (G_vacuum) {channel="miio:basic:vacuum:timer_clean"}
+Number first_clean_time "Clean Logs - First Clean Time" (G_vacuum) {channel="miio:basic:vacuum:first_clean_time"}
+Number:Time total_clean_time "Clean Logs - Total Clean Time" (G_vacuum) {channel="miio:basic:vacuum:total_clean_time"}
+Number total_clean_times "Clean Logs - Total Clean Times" (G_vacuum) {channel="miio:basic:vacuum:total_clean_times"}
+Number total_clean_area "Clean Logs - Total Clean Area" (G_vacuum) {channel="miio:basic:vacuum:total_clean_area"}
+Number auto_collect "Collect Dust - Auto Collect" (G_vacuum) {channel="miio:basic:vacuum:auto_collect"}
+Number clean_times "Collect Dust - Clean Times" (G_vacuum) {channel="miio:basic:vacuum:clean_times"}
+Number dust_enable "Collect Dust - Dust Enable" (G_vacuum) {channel="miio:basic:vacuum:dust_enable"}
+Number dust_status "Collect Dust - Dust Status" (G_vacuum) {channel="miio:basic:vacuum:dust_status"}
+Number:Dimensionless mop_life_level "Mop - Mop Life Level" (G_vacuum) {channel="miio:basic:vacuum:mop_life_level"}
+Number:Time mop_left_time "Mop - Mop Left Time" (G_vacuum) {channel="miio:basic:vacuum:mop_left_time"}
+Number:Time silverion_life_time "Silver Ion - Silverion Life Time" (G_vacuum) {channel="miio:basic:vacuum:silverion_life_time"}
+Number:Dimensionless silverion_life_level "Silver Ion - Silverion Life Level" (G_vacuum) {channel="miio:basic:vacuum:silverion_life_level"}
+```
+
 ### HUIZUO ARIES For Bedroom (huayi.light.ari013) item file lines
 
 note: Autogenerated example. Replace the id (light) in the channel with your own. Replace `basic` with `generic` in the thing UID depending on how your thing was discovered.
index a838787d43783cda133f00e1d95a1718faa6e50a..430938f2a61c901227f85fc2e1dcd8396b488429 100644 (file)
@@ -74,6 +74,7 @@ public enum MiIoDevices {
     DREAME_VACUUM_P2156O("dreame.vacuum.p2156o", "MOVA Z500 Robot Vacuum and Mop Cleaner", THING_TYPE_BASIC),
     DREAME_VACUUM_P2157("dreame.vacuum.p2157", "MOVA L600 Robot Vacuum and Mop Cleaner", THING_TYPE_BASIC),
     DREAME_VACUUM_P2259("dreame.vacuum.p2259", "Dreame Bot D9 Max", THING_TYPE_BASIC),
+    DREAME_VACUUM_R2228O("dreame.vacuum.r2228o", "DreameBot L10s Ultra", THING_TYPE_BASIC),
     HUAYI_LIGHT_ARI013("huayi.light.ari013", "HUIZUO ARIES For Bedroom", THING_TYPE_BASIC),
     HUAYI_LIGHT_ARIES("huayi.light.aries", "HUIZUO ARIES For Living Room", THING_TYPE_BASIC),
     HUAYI_LIGHT_FANWY("huayi.light.fanwy", "HUIZUO Fan Light", THING_TYPE_BASIC),
index 1d50ee6fefae2a7c3198dfb130b38864f18b393a..1126d11afcaaff1c7e7b8e22cb8b60c93c2b6323 100644 (file)
@@ -51,6 +51,7 @@ thing.dreame.vacuum.p2041o = Mi Robot Vacuum-Mop 2 Pro+
 thing.dreame.vacuum.p2156o = MOVA Z500 Robot Vacuum and Mop Cleaner
 thing.dreame.vacuum.p2157 = MOVA L600 Robot Vacuum and Mop Cleaner
 thing.dreame.vacuum.p2259 = Dreame Bot D9 Max
+thing.dreame.vacuum.r2228o = DreameBot L10s Ultra
 thing.huayi.light.ari013 = HUIZUO ARIES For Bedroom
 thing.huayi.light.aries = HUIZUO ARIES For Living Room
 thing.huayi.light.fanwy = HUIZUO Fan Light
@@ -925,6 +926,76 @@ ch.dreame.vacuum.p2259-miot.voice_packet_id = Audio - Voice Packet Id
 ch.dreame.vacuum.p2259-miot.volume = Audio - Volume
 ch.dreame.vacuum.p2259-miot.waterbox_status = Vacuum Extend - Waterbox Status
 ch.dreame.vacuum.p2259-miot.work_mode = Vacuum Extend - Work Mode
+ch.dreame.vacuum.r2228o-miot.actions = Actions
+ch.dreame.vacuum.r2228o-miot.ai_switch = Vacuum Extend - Ai Switch
+ch.dreame.vacuum.r2228o-miot.auto_add_detergent = Vacuum Extend - Auto Add Detergent
+ch.dreame.vacuum.r2228o-miot.auto_collect = Collect Dust - Auto Collect
+ch.dreame.vacuum.r2228o-miot.autowash_switch = Vacuum Extend - Autowash Switch
+ch.dreame.vacuum.r2228o-miot.battery_level = Battery - Battery Level
+ch.dreame.vacuum.r2228o-miot.break_point_restart = Vacuum Extend - Break Point Restart
+ch.dreame.vacuum.r2228o-miot.brush_left_time = Main Cleaning Brush - Brush Left Time
+ch.dreame.vacuum.r2228o-miot.brush_left_time1 = Brush Cleaner - Brush Left Time
+ch.dreame.vacuum.r2228o-miot.brush_life_level = Main Cleaning Brush - Brush Life Level
+ch.dreame.vacuum.r2228o-miot.brush_life_level1 = Brush Cleaner - Brush Life Level
+ch.dreame.vacuum.r2228o-miot.carpet_clean = Vacuum Extend - Carpet Clean
+ch.dreame.vacuum.r2228o-miot.carpet_distinguish = Vacuum Extend - Carpet Distinguish
+ch.dreame.vacuum.r2228o-miot.carpet_press = Vacuum Extend - Carpet Press
+ch.dreame.vacuum.r2228o-miot.charging_state = Battery - Charging State
+ch.dreame.vacuum.r2228o-miot.child_lock = Vacuum Extend - Child Lock
+ch.dreame.vacuum.r2228o-miot.clean_cancel = Vacuum Extend - Clean Cancel
+ch.dreame.vacuum.r2228o-miot.clean_extend_data = Vacuum Extend - Clean Extend Data
+ch.dreame.vacuum.r2228o-miot.clean_rags_tip = Vacuum Extend - Clean Rags Tip
+ch.dreame.vacuum.r2228o-miot.clean_setting = Vacuum Extend - Clean Setting
+ch.dreame.vacuum.r2228o-miot.clean_times = Collect Dust - Clean Times
+ch.dreame.vacuum.r2228o-miot.cleaning_area = Vacuum Extend - Cleaning Area
+ch.dreame.vacuum.r2228o-miot.cleaning_mode = Vacuum Extend - Cleaning Mode
+ch.dreame.vacuum.r2228o-miot.cleaning_time = Vacuum Extend - Cleaning Time
+ch.dreame.vacuum.r2228o-miot.custom_enable = Vacuum Extend - Custom Enable
+ch.dreame.vacuum.r2228o-miot.dry_time = Vacuum Extend - Dry Time
+ch.dreame.vacuum.r2228o-miot.dust_enable = Collect Dust - Dust Enable
+ch.dreame.vacuum.r2228o-miot.dust_status = Collect Dust - Dust Status
+ch.dreame.vacuum.r2228o-miot.enable = Do Not Disturb - Enable
+ch.dreame.vacuum.r2228o-miot.end_time = Do Not Disturb - End Time
+ch.dreame.vacuum.r2228o-miot.fault = Robot Cleaner - Device Fault
+ch.dreame.vacuum.r2228o-miot.faults = Vacuum Extend - Faults
+ch.dreame.vacuum.r2228o-miot.filter_left_time = Filter - Filter Left Time
+ch.dreame.vacuum.r2228o-miot.filter_life_level = Filter - Filter Life Level
+ch.dreame.vacuum.r2228o-miot.first_clean_time = Clean Logs - First Clean Time
+ch.dreame.vacuum.r2228o-miot.frame_info = Map - Frame Info
+ch.dreame.vacuum.r2228o-miot.keep_sweeper_time = Vacuum Extend - Keep Sweeper Time
+ch.dreame.vacuum.r2228o-miot.laser_switch = Vacuum Extend - Laser Switch
+ch.dreame.vacuum.r2228o-miot.map_extend_data = Map - Map Extend Data
+ch.dreame.vacuum.r2228o-miot.mode = Robot Cleaner - Mode
+ch.dreame.vacuum.r2228o-miot.mop_left_time = Mop - Mop Left Time
+ch.dreame.vacuum.r2228o-miot.mop_life_level = Mop - Mop Life Level
+ch.dreame.vacuum.r2228o-miot.mop_mode = Vacuum Extend - Mop Mode
+ch.dreame.vacuum.r2228o-miot.mop_status = Vacuum Extend - Mop Status
+ch.dreame.vacuum.r2228o-miot.mop_way = Vacuum Extend - Mop Way
+ch.dreame.vacuum.r2228o-miot.mult_map_info = Map - Mult Map Info
+ch.dreame.vacuum.r2228o-miot.mult_map_state = Map - Mult Map State
+ch.dreame.vacuum.r2228o-miot.nation_matched = Vacuum Extend - Nation Matched
+ch.dreame.vacuum.r2228o-miot.nowater_tips = Vacuum Extend - Nowater Tips
+ch.dreame.vacuum.r2228o-miot.relocation_status = Vacuum Extend - Relocation Status
+ch.dreame.vacuum.r2228o-miot.remote_state = Vacuum Extend - Remote State
+ch.dreame.vacuum.r2228o-miot.sensitivity = Vacuum Extend - Sensitivity
+ch.dreame.vacuum.r2228o-miot.serial_number = Vacuum Extend - Serial Number
+ch.dreame.vacuum.r2228o-miot.set_voice = Audio - Set Voice
+ch.dreame.vacuum.r2228o-miot.silverion_life_level = Silver Ion - Silverion Life Level
+ch.dreame.vacuum.r2228o-miot.silverion_life_time = Silver Ion - Silverion Life Time
+ch.dreame.vacuum.r2228o-miot.start_time = Do Not Disturb - Start Time
+ch.dreame.vacuum.r2228o-miot.status = Robot Cleaner - Status
+ch.dreame.vacuum.r2228o-miot.task_status = Vacuum Extend - Task Status
+ch.dreame.vacuum.r2228o-miot.time_zone = Time - Time Zone
+ch.dreame.vacuum.r2228o-miot.timer_clean = Time - Timer Clean
+ch.dreame.vacuum.r2228o-miot.total_clean_area = Clean Logs - Total Clean Area
+ch.dreame.vacuum.r2228o-miot.total_clean_time = Clean Logs - Total Clean Time
+ch.dreame.vacuum.r2228o-miot.total_clean_times = Clean Logs - Total Clean Times
+ch.dreame.vacuum.r2228o-miot.voice_change_state = Audio - Voice Change State
+ch.dreame.vacuum.r2228o-miot.voice_packet_id = Audio - Voice Packet Id
+ch.dreame.vacuum.r2228o-miot.volume = Audio - Volume
+ch.dreame.vacuum.r2228o-miot.warn_status = Vacuum Extend - Warn Status
+ch.dreame.vacuum.r2228o-miot.waterbox_status = Vacuum Extend - Waterbox Status
+ch.dreame.vacuum.r2228o-miot.work_mode = Vacuum Extend - Work Mode
 ch.huayi.light.fanwy-miot.brightness = Light - Brightness
 ch.huayi.light.fanwy-miot.color-temperature = Light - Color Temperature
 ch.huayi.light.fanwy-miot.fan-level = Fan - Fan Level
@@ -2685,10 +2756,10 @@ option.dreame.vacuum.p2259-miot.carpet_press-1 = On
 option.dreame.vacuum.p2259-miot.charging_state-1 = Charging
 option.dreame.vacuum.p2259-miot.charging_state-2 = Not Charging
 option.dreame.vacuum.p2259-miot.charging_state-5 = Go Charging
-option.dreame.vacuum.p2259-miot.cleaning_mode-0 = mode 0
-option.dreame.vacuum.p2259-miot.cleaning_mode-1 = mode 1
-option.dreame.vacuum.p2259-miot.cleaning_mode-2 = mode 2
-option.dreame.vacuum.p2259-miot.cleaning_mode-3 = mode 3
+option.dreame.vacuum.p2259-miot.cleaning_mode-0 = Quiet
+option.dreame.vacuum.p2259-miot.cleaning_mode-1 = Standard
+option.dreame.vacuum.p2259-miot.cleaning_mode-2 = Medium
+option.dreame.vacuum.p2259-miot.cleaning_mode-3 = Strong
 option.dreame.vacuum.p2259-miot.fault-0 = No Error
 option.dreame.vacuum.p2259-miot.fault-1 = Drop
 option.dreame.vacuum.p2259-miot.fault-10 = Waterbox Empty
@@ -2741,6 +2812,78 @@ option.dreame.vacuum.p2259-miot.task_status-3 = SelectAreanClean
 option.dreame.vacuum.p2259-miot.task_status-4 = SpotArea
 option.dreame.vacuum.p2259-miot.waterbox_status-0 = Status 0
 option.dreame.vacuum.p2259-miot.waterbox_status-1 = Status 1
+option.dreame.vacuum.r2228o-miot.actions-audio-play-sound = Audio Play Sound
+option.dreame.vacuum.r2228o-miot.actions-audio-position = Audio Position
+option.dreame.vacuum.r2228o-miot.actions-battery-start-charge = Battery Start Charge
+option.dreame.vacuum.r2228o-miot.actions-brush-cleaner-reset-brush-life = Brush Cleaner Reset Brush Life
+option.dreame.vacuum.r2228o-miot.actions-collect-dust-start-collect = Collect Dust Start Collect
+option.dreame.vacuum.r2228o-miot.actions-filter-reset-filter-life = Filter Reset Filter Life
+option.dreame.vacuum.r2228o-miot.actions-map-map-req = Map Map Req
+option.dreame.vacuum.r2228o-miot.actions-map-update-map = Map Update Map
+option.dreame.vacuum.r2228o-miot.actions-mop-reset-mop-life = Mop Reset Mop Life
+option.dreame.vacuum.r2228o-miot.actions-sensor-reset-sensor-life = Sensor Reset Sensor Life
+option.dreame.vacuum.r2228o-miot.actions-silver-ion-reset-silverion-life = Silver Ion Reset Silverion Life
+option.dreame.vacuum.r2228o-miot.actions-time-delete-timer = Time Delete Timer
+option.dreame.vacuum.r2228o-miot.actions-vacuum-extend-start-clean = Vacuum Extend Start Clean
+option.dreame.vacuum.r2228o-miot.actions-vacuum-extend-stop-clean = Vacuum Extend Stop Clean
+option.dreame.vacuum.r2228o-miot.actions-vacuum-start-room-sweep = Vacuum Start Room Sweep
+option.dreame.vacuum.r2228o-miot.actions-vacuum-start-sweep = Vacuum Start Sweep
+option.dreame.vacuum.r2228o-miot.actions-vacuum-stop-sweeping = Vacuum Stop Sweeping
+option.dreame.vacuum.r2228o-miot.auto_collect-0 = Close-auto-collect
+option.dreame.vacuum.r2228o-miot.auto_collect-1 = Open-auto-collect
+option.dreame.vacuum.r2228o-miot.autowash_switch-0 = Close
+option.dreame.vacuum.r2228o-miot.autowash_switch-1 = Open
+option.dreame.vacuum.r2228o-miot.break_point_restart-0 = Close
+option.dreame.vacuum.r2228o-miot.break_point_restart-1 = Open
+option.dreame.vacuum.r2228o-miot.carpet_distinguish-0 = Close
+option.dreame.vacuum.r2228o-miot.carpet_distinguish-1 = Open
+option.dreame.vacuum.r2228o-miot.carpet_press-0 = Close
+option.dreame.vacuum.r2228o-miot.carpet_press-1 = Open
+option.dreame.vacuum.r2228o-miot.charging_state-1 = Charging
+option.dreame.vacuum.r2228o-miot.charging_state-2 = Not Charging
+option.dreame.vacuum.r2228o-miot.charging_state-5 = Go Charging
+option.dreame.vacuum.r2228o-miot.child_lock-0 = Close
+option.dreame.vacuum.r2228o-miot.child_lock-1 = Open
+option.dreame.vacuum.r2228o-miot.cleaning_mode-0 = Quiet
+option.dreame.vacuum.r2228o-miot.cleaning_mode-1 = Standard
+option.dreame.vacuum.r2228o-miot.cleaning_mode-2 = Medium
+option.dreame.vacuum.r2228o-miot.cleaning_mode-3 = Strong
+option.dreame.vacuum.r2228o-miot.custom_enable-0 = Close
+option.dreame.vacuum.r2228o-miot.custom_enable-1 = Open
+option.dreame.vacuum.r2228o-miot.dust_enable-0 = Disable
+option.dreame.vacuum.r2228o-miot.dust_enable-1 = Enable
+option.dreame.vacuum.r2228o-miot.laser_switch-0 = Close
+option.dreame.vacuum.r2228o-miot.laser_switch-1 = Open
+option.dreame.vacuum.r2228o-miot.mode-0 = Silent
+option.dreame.vacuum.r2228o-miot.mode-1 = Basic
+option.dreame.vacuum.r2228o-miot.mode-2 = Strong
+option.dreame.vacuum.r2228o-miot.mode-3 = Full Speed
+option.dreame.vacuum.r2228o-miot.mop_mode-1 = Low
+option.dreame.vacuum.r2228o-miot.mop_mode-2 = Middle
+option.dreame.vacuum.r2228o-miot.mop_mode-3 = Height
+option.dreame.vacuum.r2228o-miot.mult_map_state-0 = Close
+option.dreame.vacuum.r2228o-miot.mult_map_state-1 = Open
+option.dreame.vacuum.r2228o-miot.status-1 = Sweeping
+option.dreame.vacuum.r2228o-miot.status-10 = Go Washing
+option.dreame.vacuum.r2228o-miot.status-11 = Building
+option.dreame.vacuum.r2228o-miot.status-12 = Sweeping and Mopping
+option.dreame.vacuum.r2228o-miot.status-13 = Charging Completed
+option.dreame.vacuum.r2228o-miot.status-14 = Upgrading
+option.dreame.vacuum.r2228o-miot.status-2 = Idle
+option.dreame.vacuum.r2228o-miot.status-3 = Paused
+option.dreame.vacuum.r2228o-miot.status-4 = Error
+option.dreame.vacuum.r2228o-miot.status-5 = Go Charging
+option.dreame.vacuum.r2228o-miot.status-6 = Charging
+option.dreame.vacuum.r2228o-miot.status-7 = Mopping
+option.dreame.vacuum.r2228o-miot.status-8 = Drying
+option.dreame.vacuum.r2228o-miot.status-9 = Washing
+option.dreame.vacuum.r2228o-miot.task_status-0 = Notask
+option.dreame.vacuum.r2228o-miot.task_status-1 = AutoClean
+option.dreame.vacuum.r2228o-miot.task_status-2 = CustomClean
+option.dreame.vacuum.r2228o-miot.task_status-3 = SelectAreanClean
+option.dreame.vacuum.r2228o-miot.task_status-4 = SpotArea
+option.dreame.vacuum.r2228o-miot.waterbox_status-0 = No
+option.dreame.vacuum.r2228o-miot.waterbox_status-1 = Yes
 option.huayi.light.fanwy-miot.mode-1 = Normal Wind
 option.huayi.light.fanwy-miot.mode-2 = Natural Wind
 option.huayi.light.fanwy2-miot.mode-0 = Basic
index 24b75c8b1f32edd87325efdb6005d4e37d78e133..a446d162cf3bd993c39ac388384e238ca7699b7a 100644 (file)
                                        "options": [
                                                {
                                                        "value": "0",
-                                                       "label": "mode 0"
+                                                       "label": "Quiet"
                                                },
                                                {
                                                        "value": "1",
-                                                       "label": "mode 1"
+                                                       "label": "Standard"
                                                },
                                                {
                                                        "value": "2",
-                                                       "label": "mode 2"
+                                                       "label": "Medium"
                                                },
                                                {
                                                        "value": "3",
-                                                       "label": "mode 3"
+                                                       "label": "Strong"
                                                }
                                        ]
                                },
                                                "parameterType": "STRING"
                                        }
                                ],
-                               "readmeComment": "Value mapping `[\"0\"\u003d\"mode 0\",\"1\"\u003d\"mode 1\",\"2\"\u003d\"mode 2\",\"3\"\u003d\"mode 3\"]`"
+                               "readmeComment": "Value mapping `[\"0\"\u003d\"Quiet\",\"1\"\u003d\"Standard\",\"2\"\u003d\"Medium\",\"3\"\u003d\"Strong\"]`"
                        },
                        {
                                "property": "mop-mode",
diff --git a/bundles/org.openhab.binding.miio/src/main/resources/database/dreame.vacuum.r2228o-miot.json b/bundles/org.openhab.binding.miio/src/main/resources/database/dreame.vacuum.r2228o-miot.json
new file mode 100644 (file)
index 0000000..ec4cd6a
--- /dev/null
@@ -0,0 +1,1798 @@
+{
+       "deviceMapping": {
+               "id": [
+                       "dreame.vacuum.r2228o"
+               ],
+               "propertyMethod": "get_properties",
+               "maxProperties": 1,
+               "channels": [
+                       {
+                               "property": "",
+                               "friendlyName": "Actions",
+                               "channel": "actions",
+                               "type": "String",
+                               "stateDescription": {
+                                       "options": [
+                                               {
+                                                       "value": "vacuum-start-sweep",
+                                                       "label": "Vacuum Start Sweep"
+                                               },
+                                               {
+                                                       "value": "vacuum-stop-sweeping",
+                                                       "label": "Vacuum Stop Sweeping"
+                                               },
+                                               {
+                                                       "value": "vacuum-start-room-sweep",
+                                                       "label": "Vacuum Start Room Sweep"
+                                               },
+                                               {
+                                                       "value": "battery-start-charge",
+                                                       "label": "Battery Start Charge"
+                                               },
+                                               {
+                                                       "value": "brush-cleaner-reset-brush-life",
+                                                       "label": "Brush Cleaner Reset Brush Life"
+                                               },
+                                               {
+                                                       "value": "brush-cleaner-reset-brush-life",
+                                                       "label": "Brush Cleaner Reset Brush Life"
+                                               },
+                                               {
+                                                       "value": "filter-reset-filter-life",
+                                                       "label": "Filter Reset Filter Life"
+                                               },
+                                               {
+                                                       "value": "vacuum-extend-start-clean",
+                                                       "label": "Vacuum Extend Start Clean"
+                                               },
+                                               {
+                                                       "value": "vacuum-extend-stop-clean",
+                                                       "label": "Vacuum Extend Stop Clean"
+                                               },
+                                               {
+                                                       "value": "map-map-req",
+                                                       "label": "Map Map Req"
+                                               },
+                                               {
+                                                       "value": "map-update-map",
+                                                       "label": "Map Update Map"
+                                               },
+                                               {
+                                                       "value": "audio-position",
+                                                       "label": "Audio Position"
+                                               },
+                                               {
+                                                       "value": "audio-play-sound",
+                                                       "label": "Audio Play Sound"
+                                               },
+                                               {
+                                                       "value": "time-delete-timer",
+                                                       "label": "Time Delete Timer"
+                                               },
+                                               {
+                                                       "value": "collect-dust-start-collect",
+                                                       "label": "Collect Dust Start Collect"
+                                               },
+                                               {
+                                                       "value": "sensor-reset-sensor-life",
+                                                       "label": "Sensor Reset Sensor Life"
+                                               },
+                                               {
+                                                       "value": "mop-reset-mop-life",
+                                                       "label": "Mop Reset Mop Life"
+                                               },
+                                               {
+                                                       "value": "silver-ion-reset-silverion-life",
+                                                       "label": "Silver Ion Reset Silverion Life"
+                                               }
+                                       ]
+                               },
+                               "refresh": false,
+                               "actions": [
+                                       {
+                                               "command": "action",
+                                               "parameterType": "EMPTY",
+                                               "siid": 2,
+                                               "aiid": 1,
+                                               "condition": {
+                                                       "name": "matchValue",
+                                                       "parameters": [
+                                                               {
+                                                                       "matchValue": "vacuum-start-sweep"
+                                                               }
+                                                       ]
+                                               }
+                                       },
+                                       {
+                                               "command": "action",
+                                               "parameterType": "EMPTY",
+                                               "siid": 2,
+                                               "aiid": 2,
+                                               "condition": {
+                                                       "name": "matchValue",
+                                                       "parameters": [
+                                                               {
+                                                                       "matchValue": "vacuum-stop-sweeping"
+                                                               }
+                                                       ]
+                                               }
+                                       },
+                                       {
+                                               "command": "action",
+                                               "parameterType": "NUMBER",
+                                               "parameters": [
+                                                       4.0
+                                               ],
+                                               "siid": 2,
+                                               "aiid": 3,
+                                               "condition": {
+                                                       "name": "matchValue",
+                                                       "parameters": [
+                                                               {
+                                                                       "matchValue": "vacuum-start-room-sweep"
+                                                               }
+                                                       ]
+                                               }
+                                       },
+                                       {
+                                               "command": "action",
+                                               "parameterType": "EMPTY",
+                                               "siid": 3,
+                                               "aiid": 1,
+                                               "condition": {
+                                                       "name": "matchValue",
+                                                       "parameters": [
+                                                               {
+                                                                       "matchValue": "battery-start-charge"
+                                                               }
+                                                       ]
+                                               }
+                                       },
+                                       {
+                                               "command": "action",
+                                               "parameterType": "EMPTY",
+                                               "siid": 9,
+                                               "aiid": 1,
+                                               "condition": {
+                                                       "name": "matchValue",
+                                                       "parameters": [
+                                                               {
+                                                                       "matchValue": "brush-cleaner-reset-brush-life"
+                                                               }
+                                                       ]
+                                               }
+                                       },
+                                       {
+                                               "command": "action",
+                                               "parameterType": "EMPTY",
+                                               "siid": 10,
+                                               "aiid": 1,
+                                               "condition": {
+                                                       "name": "matchValue",
+                                                       "parameters": [
+                                                               {
+                                                                       "matchValue": "brush-cleaner-reset-brush-life"
+                                                               }
+                                                       ]
+                                               }
+                                       },
+                                       {
+                                               "command": "action",
+                                               "parameterType": "EMPTY",
+                                               "siid": 11,
+                                               "aiid": 1,
+                                               "condition": {
+                                                       "name": "matchValue",
+                                                       "parameters": [
+                                                               {
+                                                                       "matchValue": "filter-reset-filter-life"
+                                                               }
+                                                       ]
+                                               }
+                                       },
+                                       {
+                                               "command": "action",
+                                               "parameterType": "NUMBER",
+                                               "parameters": [
+                                                       10,
+                                                       1.0
+                                               ],
+                                               "siid": 4,
+                                               "aiid": 1,
+                                               "condition": {
+                                                       "name": "matchValue",
+                                                       "parameters": [
+                                                               {
+                                                                       "matchValue": "vacuum-extend-start-clean"
+                                                               }
+                                                       ]
+                                               }
+                                       },
+                                       {
+                                               "command": "action",
+                                               "parameterType": "EMPTY",
+                                               "siid": 4,
+                                               "aiid": 2,
+                                               "condition": {
+                                                       "name": "matchValue",
+                                                       "parameters": [
+                                                               {
+                                                                       "matchValue": "vacuum-extend-stop-clean"
+                                                               }
+                                                       ]
+                                               }
+                                       },
+                                       {
+                                               "command": "action",
+                                               "parameterType": "NUMBER",
+                                               "parameters": [
+                                                       2.0
+                                               ],
+                                               "siid": 6,
+                                               "aiid": 1,
+                                               "condition": {
+                                                       "name": "matchValue",
+                                                       "parameters": [
+                                                               {
+                                                                       "matchValue": "map-map-req"
+                                                               }
+                                                       ]
+                                               }
+                                       },
+                                       {
+                                               "command": "action",
+                                               "parameterType": "NUMBER",
+                                               "parameters": [
+                                                       4.0
+                                               ],
+                                               "siid": 6,
+                                               "aiid": 2,
+                                               "condition": {
+                                                       "name": "matchValue",
+                                                       "parameters": [
+                                                               {
+                                                                       "matchValue": "map-update-map"
+                                                               }
+                                                       ]
+                                               }
+                                       },
+                                       {
+                                               "command": "action",
+                                               "parameterType": "EMPTY",
+                                               "siid": 7,
+                                               "aiid": 1,
+                                               "condition": {
+                                                       "name": "matchValue",
+                                                       "parameters": [
+                                                               {
+                                                                       "matchValue": "audio-position"
+                                                               }
+                                                       ]
+                                               }
+                                       },
+                                       {
+                                               "command": "action",
+                                               "parameterType": "EMPTY",
+                                               "siid": 7,
+                                               "aiid": 2,
+                                               "condition": {
+                                                       "name": "matchValue",
+                                                       "parameters": [
+                                                               {
+                                                                       "matchValue": "audio-play-sound"
+                                                               }
+                                                       ]
+                                               }
+                                       },
+                                       {
+                                               "command": "action",
+                                               "parameterType": "NUMBER",
+                                               "parameters": [
+                                                       3.0
+                                               ],
+                                               "siid": 8,
+                                               "aiid": 1,
+                                               "condition": {
+                                                       "name": "matchValue",
+                                                       "parameters": [
+                                                               {
+                                                                       "matchValue": "time-delete-timer"
+                                                               }
+                                                       ]
+                                               }
+                                       },
+                                       {
+                                               "command": "action",
+                                               "parameterType": "EMPTY",
+                                               "siid": 15,
+                                               "aiid": 1,
+                                               "condition": {
+                                                       "name": "matchValue",
+                                                       "parameters": [
+                                                               {
+                                                                       "matchValue": "collect-dust-start-collect"
+                                                               }
+                                                       ]
+                                               }
+                                       },
+                                       {
+                                               "command": "action",
+                                               "parameterType": "EMPTY",
+                                               "siid": 16,
+                                               "aiid": 1,
+                                               "condition": {
+                                                       "name": "matchValue",
+                                                       "parameters": [
+                                                               {
+                                                                       "matchValue": "sensor-reset-sensor-life"
+                                                               }
+                                                       ]
+                                               }
+                                       },
+                                       {
+                                               "command": "action",
+                                               "parameterType": "EMPTY",
+                                               "siid": 18,
+                                               "aiid": 1,
+                                               "condition": {
+                                                       "name": "matchValue",
+                                                       "parameters": [
+                                                               {
+                                                                       "matchValue": "mop-reset-mop-life"
+                                                               }
+                                                       ]
+                                               }
+                                       },
+                                       {
+                                               "command": "action",
+                                               "parameterType": "EMPTY",
+                                               "siid": 19,
+                                               "aiid": 1,
+                                               "condition": {
+                                                       "name": "matchValue",
+                                                       "parameters": [
+                                                               {
+                                                                       "matchValue": "silver-ion-reset-silverion-life"
+                                                               }
+                                                       ]
+                                               }
+                                       }
+                               ],
+                               "readmeComment": "Value mapping `[\"vacuum-start-sweep\"\u003d\"Vacuum Start Sweep\",\"vacuum-stop-sweeping\"\u003d\"Vacuum Stop Sweeping\",\"vacuum-start-room-sweep\"\u003d\"Vacuum Start Room Sweep\",\"battery-start-charge\"\u003d\"Battery Start Charge\",\"brush-cleaner-reset-brush-life\"\u003d\"Brush Cleaner Reset Brush Life\",\"brush-cleaner-reset-brush-life\"\u003d\"Brush Cleaner Reset Brush Life\",\"filter-reset-filter-life\"\u003d\"Filter Reset Filter Life\",\"vacuum-extend-start-clean\"\u003d\"Vacuum Extend Start Clean\",\"vacuum-extend-stop-clean\"\u003d\"Vacuum Extend Stop Clean\",\"map-map-req\"\u003d\"Map Map Req\",\"map-update-map\"\u003d\"Map Update Map\",\"audio-position\"\u003d\"Audio Position\",\"audio-play-sound\"\u003d\"Audio Play Sound\",\"time-delete-timer\"\u003d\"Time Delete Timer\",\"collect-dust-start-collect\"\u003d\"Collect Dust Start Collect\",\"sensor-reset-sensor-life\"\u003d\"Sensor Reset Sensor Life\",\"mop-reset-mop-life\"\u003d\"Mop Reset Mop Life\",\"silver-ion-reset-silverion-life\"\u003d\"Silver Ion Reset Silverion Life\"]`"
+                       },
+                       {
+                               "property": "status",
+                               "siid": 2,
+                               "piid": 1,
+                               "friendlyName": "Robot Cleaner - Status",
+                               "channel": "status",
+                               "type": "Number",
+                               "stateDescription": {
+                                       "readOnly": true,
+                                       "options": [
+                                               {
+                                                       "value": "1",
+                                                       "label": "Sweeping"
+                                               },
+                                               {
+                                                       "value": "2",
+                                                       "label": "Idle"
+                                               },
+                                               {
+                                                       "value": "3",
+                                                       "label": "Paused"
+                                               },
+                                               {
+                                                       "value": "4",
+                                                       "label": "Error"
+                                               },
+                                               {
+                                                       "value": "5",
+                                                       "label": "Go Charging"
+                                               },
+                                               {
+                                                       "value": "6",
+                                                       "label": "Charging"
+                                               },
+                                               {
+                                                       "value": "8",
+                                                       "label": "Drying"
+                                               },
+                                               {
+                                                       "value": "9",
+                                                       "label": "Washing"
+                                               },
+                                               {
+                                                       "value": "7",
+                                                       "label": "Mopping"
+                                               },
+                                               {
+                                                       "value": "10",
+                                                       "label": "Go Washing"
+                                               },
+                                               {
+                                                       "value": "11",
+                                                       "label": "Building"
+                                               },
+                                               {
+                                                       "value": "12",
+                                                       "label": "Sweeping and Mopping"
+                                               },
+                                               {
+                                                       "value": "13",
+                                                       "label": "Charging Completed"
+                                               },
+                                               {
+                                                       "value": "14",
+                                                       "label": "Upgrading"
+                                               }
+                                       ]
+                               },
+                               "refresh": true,
+                               "actions": [],
+                               "readmeComment": "Value mapping `[\"1\"\u003d\"Sweeping\",\"2\"\u003d\"Idle\",\"3\"\u003d\"Paused\",\"4\"\u003d\"Error\",\"5\"\u003d\"Go Charging\",\"6\"\u003d\"Charging\",\"8\"\u003d\"Drying\",\"9\"\u003d\"Washing\",\"7\"\u003d\"Mopping\",\"10\"\u003d\"Go Washing\",\"11\"\u003d\"Building\",\"12\"\u003d\"Sweeping and Mopping\",\"13\"\u003d\"Charging Completed\",\"14\"\u003d\"Upgrading\"]`"
+                       },
+                       {
+                               "property": "fault",
+                               "siid": 2,
+                               "piid": 2,
+                               "friendlyName": "Robot Cleaner - Device Fault",
+                               "channel": "fault",
+                               "type": "Number",
+                               "stateDescription": {
+                                       "minimum": 0,
+                                       "maximum": 100,
+                                       "step": 1,
+                                       "pattern": "%.0f",
+                                       "readOnly": true
+                               },
+                               "refresh": true,
+                               "actions": []
+                       },
+                       {
+                               "property": "mode",
+                               "siid": 2,
+                               "piid": 3,
+                               "friendlyName": "Robot Cleaner - Mode",
+                               "channel": "mode",
+                               "type": "Number",
+                               "stateDescription": {
+                                       "options": [
+                                               {
+                                                       "value": "0",
+                                                       "label": "Silent"
+                                               },
+                                               {
+                                                       "value": "1",
+                                                       "label": "Basic"
+                                               },
+                                               {
+                                                       "value": "2",
+                                                       "label": "Strong"
+                                               },
+                                               {
+                                                       "value": "3",
+                                                       "label": "Full Speed"
+                                               }
+                                       ]
+                               },
+                               "refresh": true,
+                               "actions": [
+                                       {
+                                               "command": "set_properties",
+                                               "parameterType": "NUMBER"
+                                       }
+                               ],
+                               "readmeComment": "Value mapping `[\"0\"\u003d\"Silent\",\"1\"\u003d\"Basic\",\"2\"\u003d\"Strong\",\"3\"\u003d\"Full Speed\"]`"
+                       },
+                       {
+                               "property": "battery-level",
+                               "siid": 3,
+                               "piid": 1,
+                               "friendlyName": "Battery - Battery Level",
+                               "channel": "battery_level",
+                               "type": "Number:Dimensionless",
+                               "unit": "percentage",
+                               "stateDescription": {
+                                       "minimum": 0,
+                                       "maximum": 100,
+                                       "step": 1,
+                                       "pattern": "%.0f %unit%",
+                                       "readOnly": true
+                               },
+                               "refresh": true,
+                               "actions": []
+                       },
+                       {
+                               "property": "charging-state",
+                               "siid": 3,
+                               "piid": 2,
+                               "friendlyName": "Battery - Charging State",
+                               "channel": "charging_state",
+                               "type": "Number",
+                               "stateDescription": {
+                                       "readOnly": true,
+                                       "options": [
+                                               {
+                                                       "value": "1",
+                                                       "label": "Charging"
+                                               },
+                                               {
+                                                       "value": "2",
+                                                       "label": "Not Charging"
+                                               },
+                                               {
+                                                       "value": "5",
+                                                       "label": "Go Charging"
+                                               }
+                                       ]
+                               },
+                               "refresh": true,
+                               "actions": [],
+                               "readmeComment": "Value mapping `[\"1\"\u003d\"Charging\",\"2\"\u003d\"Not Charging\",\"5\"\u003d\"Go Charging\"]`"
+                       },
+                       {
+                               "property": "brush-left-time",
+                               "siid": 9,
+                               "piid": 1,
+                               "friendlyName": "Main Cleaning Brush - Brush Left Time",
+                               "channel": "brush_left_time",
+                               "type": "Number:Time",
+                               "unit": "hours",
+                               "stateDescription": {
+                                       "minimum": 0,
+                                       "maximum": 10000,
+                                       "step": 1,
+                                       "pattern": "%.0f %unit%",
+                                       "readOnly": true
+                               },
+                               "refresh": true,
+                               "actions": []
+                       },
+                       {
+                               "property": "brush-life-level",
+                               "siid": 9,
+                               "piid": 2,
+                               "friendlyName": "Main Cleaning Brush - Brush Life Level",
+                               "channel": "brush_life_level",
+                               "type": "Number:Dimensionless",
+                               "unit": "percentage",
+                               "stateDescription": {
+                                       "minimum": 0,
+                                       "maximum": 100,
+                                       "step": 1,
+                                       "pattern": "%.0f %unit%",
+                                       "readOnly": true
+                               },
+                               "refresh": true,
+                               "actions": []
+                       },
+                       {
+                               "property": "brush-left-time1",
+                               "siid": 10,
+                               "piid": 1,
+                               "friendlyName": "Brush Cleaner - Brush Left Time",
+                               "channel": "brush_left_time1",
+                               "type": "Number:Time",
+                               "unit": "hours",
+                               "stateDescription": {
+                                       "minimum": 0,
+                                       "maximum": 10000,
+                                       "step": 1,
+                                       "pattern": "%.0f %unit%",
+                                       "readOnly": true
+                               },
+                               "refresh": true,
+                               "actions": []
+                       },
+                       {
+                               "property": "brush-life-level1",
+                               "siid": 10,
+                               "piid": 2,
+                               "friendlyName": "Brush Cleaner - Brush Life Level",
+                               "channel": "brush_life_level1",
+                               "type": "Number:Dimensionless",
+                               "unit": "percentage",
+                               "stateDescription": {
+                                       "minimum": 0,
+                                       "maximum": 100,
+                                       "step": 1,
+                                       "pattern": "%.0f %unit%",
+                                       "readOnly": true
+                               },
+                               "refresh": true,
+                               "actions": []
+                       },
+                       {
+                               "property": "filter-life-level",
+                               "siid": 11,
+                               "piid": 1,
+                               "friendlyName": "Filter - Filter Life Level",
+                               "channel": "filter_life_level",
+                               "type": "Number:Dimensionless",
+                               "unit": "percentage",
+                               "stateDescription": {
+                                       "minimum": 0,
+                                       "maximum": 100,
+                                       "step": 1,
+                                       "pattern": "%.0f %unit%",
+                                       "readOnly": true
+                               },
+                               "refresh": true,
+                               "actions": []
+                       },
+                       {
+                               "property": "filter-left-time",
+                               "siid": 11,
+                               "piid": 2,
+                               "friendlyName": "Filter - Filter Left Time",
+                               "channel": "filter_left_time",
+                               "type": "Number:Time",
+                               "unit": "hours",
+                               "stateDescription": {
+                                       "minimum": 0,
+                                       "maximum": 1000,
+                                       "step": 1,
+                                       "pattern": "%.0f %unit%",
+                                       "readOnly": true
+                               },
+                               "refresh": true,
+                               "actions": []
+                       },
+                       {
+                               "property": "work-mode",
+                               "siid": 4,
+                               "piid": 1,
+                               "friendlyName": "Vacuum Extend - Work Mode",
+                               "channel": "work_mode",
+                               "type": "Number",
+                               "stateDescription": {
+                                       "minimum": 0,
+                                       "maximum": 50,
+                                       "step": 1,
+                                       "pattern": "%.0f",
+                                       "readOnly": true
+                               },
+                               "refresh": true,
+                               "actions": []
+                       },
+                       {
+                               "property": "cleaning-time",
+                               "siid": 4,
+                               "piid": 2,
+                               "friendlyName": "Vacuum Extend - Cleaning Time",
+                               "channel": "cleaning_time",
+                               "type": "Number:Time",
+                               "unit": "minutes",
+                               "stateDescription": {
+                                       "minimum": 0,
+                                       "maximum": 32767,
+                                       "step": 1,
+                                       "pattern": "%.0f %unit%",
+                                       "readOnly": true
+                               },
+                               "refresh": true,
+                               "actions": []
+                       },
+                       {
+                               "property": "cleaning-area",
+                               "siid": 4,
+                               "piid": 3,
+                               "friendlyName": "Vacuum Extend - Cleaning Area",
+                               "channel": "cleaning_area",
+                               "type": "Number:Area",
+                               "unit": "square_meter",
+                               "stateDescription": {
+                                       "minimum": 0,
+                                       "maximum": 32767,
+                                       "step": 1,
+                                       "pattern": "%.1f %unit%",
+                                       "readOnly": true
+                               },
+                               "refresh": true,
+                               "actions": []
+                       },
+                       {
+                               "property": "cleaning-mode",
+                               "siid": 4,
+                               "piid": 4,
+                               "friendlyName": "Vacuum Extend - Cleaning Mode",
+                               "channel": "cleaning_mode",
+                               "type": "Number",
+                               "stateDescription": {
+                                       "options": [
+                                               {
+                                                       "value": "0",
+                                                       "label": "Quiet"
+                                               },
+                                               {
+                                                       "value": "1",
+                                                       "label": "Standard"
+                                               },
+                                               {
+                                                       "value": "2",
+                                                       "label": "Medium"
+                                               },
+                                               {
+                                                       "value": "3",
+                                                       "label": "Strong"
+                                               }
+                                       ]
+                               },
+                               "refresh": true,
+                               "actions": [
+                                       {
+                                               "command": "set_properties",
+                                               "parameterType": "STRING"
+                                       }
+                               ],
+                               "readmeComment": "Value mapping `[\"0\"\u003d\"Quiet\",\"1\"\u003d\"Standard\",\"2\"\u003d\"Medium\",\"3\"\u003d\"Strong\"]`"
+                       },
+                       {
+                               "property": "mop-mode",
+                               "siid": 4,
+                               "piid": 5,
+                               "friendlyName": "Vacuum Extend - Mop Mode",
+                               "channel": "mop_mode",
+                               "type": "Number",
+                               "stateDescription": {
+                                       "options": [
+                                               {
+                                                       "value": "1",
+                                                       "label": "Low"
+                                               },
+                                               {
+                                                       "value": "2",
+                                                       "label": "Middle"
+                                               },
+                                               {
+                                                       "value": "3",
+                                                       "label": "Height"
+                                               }
+                                       ]
+                               },
+                               "refresh": true,
+                               "actions": [
+                                       {
+                                               "command": "set_properties",
+                                               "parameterType": "STRING"
+                                       }
+                               ],
+                               "readmeComment": "Value mapping `[\"1\"\u003d\"Low\",\"2\"\u003d\"Middle\",\"3\"\u003d\"Height\"]`"
+                       },
+                       {
+                               "property": "waterbox-status",
+                               "siid": 4,
+                               "piid": 6,
+                               "friendlyName": "Vacuum Extend - Waterbox Status",
+                               "channel": "waterbox_status",
+                               "type": "Number",
+                               "stateDescription": {
+                                       "readOnly": true,
+                                       "options": [
+                                               {
+                                                       "value": "0",
+                                                       "label": "No"
+                                               },
+                                               {
+                                                       "value": "1",
+                                                       "label": "Yes"
+                                               }
+                                       ]
+                               },
+                               "refresh": true,
+                               "actions": [],
+                               "readmeComment": "Value mapping `[\"0\"\u003d\"No\",\"1\"\u003d\"Yes\"]`"
+                       },
+                       {
+                               "property": "task-status",
+                               "siid": 4,
+                               "piid": 7,
+                               "friendlyName": "Vacuum Extend - Task Status",
+                               "channel": "task_status",
+                               "type": "Number",
+                               "stateDescription": {
+                                       "readOnly": true,
+                                       "options": [
+                                               {
+                                                       "value": "0",
+                                                       "label": "Notask"
+                                               },
+                                               {
+                                                       "value": "1",
+                                                       "label": "AutoClean"
+                                               },
+                                               {
+                                                       "value": "2",
+                                                       "label": "CustomClean"
+                                               },
+                                               {
+                                                       "value": "3",
+                                                       "label": "SelectAreanClean"
+                                               },
+                                               {
+                                                       "value": "4",
+                                                       "label": "SpotArea"
+                                               }
+                                       ]
+                               },
+                               "refresh": true,
+                               "actions": [],
+                               "readmeComment": "Value mapping `[\"0\"\u003d\"Notask\",\"1\"\u003d\"AutoClean\",\"2\"\u003d\"CustomClean\",\"3\"\u003d\"SelectAreanClean\",\"4\"\u003d\"SpotArea\"]`"
+                       },
+                       {
+                               "property": "clean-extend-data",
+                               "siid": 4,
+                               "piid": 10,
+                               "friendlyName": "Vacuum Extend - Clean Extend Data",
+                               "channel": "clean_extend_data",
+                               "type": "String",
+                               "refresh": false,
+                               "actions": [
+                                       {
+                                               "command": "set_properties",
+                                               "parameterType": "STRING"
+                                       }
+                               ]
+                       },
+                       {
+                               "property": "break-point-restart",
+                               "siid": 4,
+                               "piid": 11,
+                               "friendlyName": "Vacuum Extend - Break Point Restart",
+                               "channel": "break_point_restart",
+                               "type": "Number",
+                               "stateDescription": {
+                                       "options": [
+                                               {
+                                                       "value": "0",
+                                                       "label": "Close"
+                                               },
+                                               {
+                                                       "value": "1",
+                                                       "label": "Open"
+                                               }
+                                       ]
+                               },
+                               "refresh": true,
+                               "actions": [
+                                       {
+                                               "command": "set_properties",
+                                               "parameterType": "NUMBER"
+                                       }
+                               ],
+                               "readmeComment": "Value mapping `[\"0\"\u003d\"Close\",\"1\"\u003d\"Open\"]`"
+                       },
+                       {
+                               "property": "carpet-press",
+                               "siid": 4,
+                               "piid": 12,
+                               "friendlyName": "Vacuum Extend - Carpet Press",
+                               "channel": "carpet_press",
+                               "type": "Number",
+                               "stateDescription": {
+                                       "options": [
+                                               {
+                                                       "value": "0",
+                                                       "label": "Close"
+                                               },
+                                               {
+                                                       "value": "1",
+                                                       "label": "Open"
+                                               }
+                                       ]
+                               },
+                               "refresh": true,
+                               "actions": [
+                                       {
+                                               "command": "set_properties",
+                                               "parameterType": "NUMBER"
+                                       }
+                               ],
+                               "readmeComment": "Value mapping `[\"0\"\u003d\"Close\",\"1\"\u003d\"Open\"]`"
+                       },
+                       {
+                               "property": "serial-number",
+                               "siid": 4,
+                               "piid": 14,
+                               "friendlyName": "Vacuum Extend - Serial Number",
+                               "channel": "serial_number",
+                               "type": "String",
+                               "stateDescription": {
+                                       "readOnly": true
+                               },
+                               "refresh": true,
+                               "actions": []
+                       },
+                       {
+                               "property": "remote-state",
+                               "siid": 4,
+                               "piid": 15,
+                               "friendlyName": "Vacuum Extend - Remote State",
+                               "channel": "remote_state",
+                               "type": "String",
+                               "refresh": false,
+                               "actions": [
+                                       {
+                                               "command": "set_properties",
+                                               "parameterType": "STRING"
+                                       }
+                               ]
+                       },
+                       {
+                               "property": "clean-rags-tip",
+                               "siid": 4,
+                               "piid": 16,
+                               "friendlyName": "Vacuum Extend - Clean Rags Tip",
+                               "channel": "clean_rags_tip",
+                               "type": "Number:Time",
+                               "unit": "minutes",
+                               "stateDescription": {
+                                       "minimum": 0,
+                                       "maximum": 120,
+                                       "step": 1,
+                                       "pattern": "%.0f %unit%"
+                               },
+                               "refresh": true,
+                               "actions": [
+                                       {
+                                               "command": "set_properties",
+                                               "parameterType": "STRING"
+                                       }
+                               ]
+                       },
+                       {
+                               "property": "keep-sweeper-time",
+                               "siid": 4,
+                               "piid": 17,
+                               "friendlyName": "Vacuum Extend - Keep Sweeper Time",
+                               "channel": "keep_sweeper_time",
+                               "type": "Number:Time",
+                               "unit": "minutes",
+                               "stateDescription": {
+                                       "minimum": -1,
+                                       "maximum": 1000000,
+                                       "step": 1,
+                                       "pattern": "%.0f %unit%",
+                                       "readOnly": true
+                               },
+                               "refresh": true,
+                               "actions": []
+                       },
+                       {
+                               "property": "faults",
+                               "siid": 4,
+                               "piid": 18,
+                               "friendlyName": "Vacuum Extend - Faults",
+                               "channel": "faults",
+                               "type": "String",
+                               "stateDescription": {
+                                       "readOnly": true
+                               },
+                               "refresh": true,
+                               "actions": []
+                       },
+                       {
+                               "property": "nation-matched",
+                               "siid": 4,
+                               "piid": 19,
+                               "friendlyName": "Vacuum Extend - Nation Matched",
+                               "channel": "nation_matched",
+                               "type": "String",
+                               "stateDescription": {
+                                       "readOnly": true
+                               },
+                               "refresh": true,
+                               "actions": []
+                       },
+                       {
+                               "property": "relocation-status",
+                               "siid": 4,
+                               "piid": 20,
+                               "friendlyName": "Vacuum Extend - Relocation Status",
+                               "channel": "relocation_status",
+                               "type": "Number",
+                               "stateDescription": {
+                                       "minimum": 0,
+                                       "maximum": 100000,
+                                       "step": 1,
+                                       "pattern": "%.0f",
+                                       "readOnly": true
+                               },
+                               "refresh": true,
+                               "actions": []
+                       },
+                       {
+                               "property": "laser-switch",
+                               "siid": 4,
+                               "piid": 21,
+                               "friendlyName": "Vacuum Extend - Laser Switch",
+                               "channel": "laser_switch",
+                               "type": "Number",
+                               "stateDescription": {
+                                       "options": [
+                                               {
+                                                       "value": "0",
+                                                       "label": "Close"
+                                               },
+                                               {
+                                                       "value": "1",
+                                                       "label": "Open"
+                                               }
+                                       ]
+                               },
+                               "refresh": true,
+                               "actions": [
+                                       {
+                                               "command": "set_properties",
+                                               "parameterType": "STRING"
+                                       }
+                               ],
+                               "readmeComment": "Value mapping `[\"0\"\u003d\"Close\",\"1\"\u003d\"Open\"]`"
+                       },
+                       {
+                               "property": "ai-switch",
+                               "siid": 4,
+                               "piid": 22,
+                               "friendlyName": "Vacuum Extend - Ai Switch",
+                               "channel": "ai_switch",
+                               "type": "Number",
+                               "stateDescription": {
+                                       "minimum": 0,
+                                       "maximum": 1.0E+9,
+                                       "step": 1,
+                                       "pattern": "%.0f"
+                               },
+                               "refresh": true,
+                               "actions": [
+                                       {
+                                               "command": "set_properties",
+                                               "parameterType": "STRING"
+                                       }
+                               ]
+                       },
+                       {
+                               "property": "clean-setting",
+                               "siid": 4,
+                               "piid": 23,
+                               "friendlyName": "Vacuum Extend - Clean Setting",
+                               "channel": "clean_setting",
+                               "type": "Number",
+                               "stateDescription": {
+                                       "minimum": 0,
+                                       "maximum": 999999999,
+                                       "step": 1,
+                                       "pattern": "%.0f"
+                               },
+                               "refresh": true,
+                               "actions": [
+                                       {
+                                               "command": "set_properties",
+                                               "parameterType": "STRING"
+                                       }
+                               ]
+                       },
+                       {
+                               "property": "mop-status",
+                               "siid": 4,
+                               "piid": 25,
+                               "friendlyName": "Vacuum Extend - Mop Status",
+                               "channel": "mop_status",
+                               "type": "Number",
+                               "stateDescription": {
+                                       "minimum": 0,
+                                       "maximum": 255,
+                                       "step": 1,
+                                       "pattern": "%.0f",
+                                       "readOnly": true
+                               },
+                               "refresh": true,
+                               "actions": []
+                       },
+                       {
+                               "property": "custom-enable",
+                               "siid": 4,
+                               "piid": 26,
+                               "friendlyName": "Vacuum Extend - Custom Enable",
+                               "channel": "custom_enable",
+                               "type": "Number",
+                               "stateDescription": {
+                                       "options": [
+                                               {
+                                                       "value": "0",
+                                                       "label": "Close"
+                                               },
+                                               {
+                                                       "value": "1",
+                                                       "label": "Open"
+                                               }
+                                       ]
+                               },
+                               "refresh": true,
+                               "actions": [
+                                       {
+                                               "command": "set_properties",
+                                               "parameterType": "STRING"
+                                       }
+                               ],
+                               "readmeComment": "Value mapping `[\"0\"\u003d\"Close\",\"1\"\u003d\"Open\"]`"
+                       },
+                       {
+                               "property": "child-lock",
+                               "siid": 4,
+                               "piid": 27,
+                               "friendlyName": "Vacuum Extend - Child Lock",
+                               "channel": "child_lock",
+                               "type": "Number",
+                               "stateDescription": {
+                                       "options": [
+                                               {
+                                                       "value": "0",
+                                                       "label": "Close"
+                                               },
+                                               {
+                                                       "value": "1",
+                                                       "label": "Open"
+                                               }
+                                       ]
+                               },
+                               "refresh": true,
+                               "actions": [
+                                       {
+                                               "command": "set_properties",
+                                               "parameterType": "STRING"
+                                       }
+                               ],
+                               "readmeComment": "Value mapping `[\"0\"\u003d\"Close\",\"1\"\u003d\"Open\"]`"
+                       },
+                       {
+                               "property": "sensitivity",
+                               "siid": 4,
+                               "piid": 28,
+                               "friendlyName": "Vacuum Extend - Sensitivity",
+                               "channel": "sensitivity",
+                               "type": "Number",
+                               "stateDescription": {
+                                       "minimum": 0,
+                                       "maximum": 255,
+                                       "step": 1,
+                                       "pattern": "%.0f"
+                               },
+                               "refresh": true,
+                               "actions": [
+                                       {
+                                               "command": "set_properties",
+                                               "parameterType": "STRING"
+                                       }
+                               ]
+                       },
+                       {
+                               "property": "mop-way",
+                               "siid": 4,
+                               "piid": 29,
+                               "friendlyName": "Vacuum Extend - Mop Way",
+                               "channel": "mop_way",
+                               "type": "Number",
+                               "stateDescription": {
+                                       "minimum": 0,
+                                       "maximum": 255,
+                                       "step": 1,
+                                       "pattern": "%.0f"
+                               },
+                               "refresh": true,
+                               "actions": [
+                                       {
+                                               "command": "set_properties",
+                                               "parameterType": "STRING"
+                                       }
+                               ]
+                       },
+                       {
+                               "property": "clean-cancel",
+                               "siid": 4,
+                               "piid": 30,
+                               "friendlyName": "Vacuum Extend - Clean Cancel",
+                               "channel": "clean_cancel",
+                               "type": "Number",
+                               "stateDescription": {
+                                       "minimum": 0,
+                                       "maximum": 255,
+                                       "step": 1,
+                                       "pattern": "%.0f",
+                                       "readOnly": true
+                               },
+                               "refresh": true,
+                               "actions": []
+                       },
+                       {
+                               "property": "carpet-distinguish",
+                               "siid": 4,
+                               "piid": 33,
+                               "friendlyName": "Vacuum Extend - Carpet Distinguish",
+                               "channel": "carpet_distinguish",
+                               "type": "Number",
+                               "stateDescription": {
+                                       "options": [
+                                               {
+                                                       "value": "0",
+                                                       "label": "Close"
+                                               },
+                                               {
+                                                       "value": "1",
+                                                       "label": "Open"
+                                               }
+                                       ]
+                               },
+                               "refresh": true,
+                               "actions": [
+                                       {
+                                               "command": "set_properties",
+                                               "parameterType": "STRING"
+                                       }
+                               ],
+                               "readmeComment": "Value mapping `[\"0\"\u003d\"Close\",\"1\"\u003d\"Open\"]`"
+                       },
+                       {
+                               "property": "autowash-switch",
+                               "siid": 4,
+                               "piid": 34,
+                               "friendlyName": "Vacuum Extend - Autowash Switch",
+                               "channel": "autowash_switch",
+                               "type": "Number",
+                               "stateDescription": {
+                                       "options": [
+                                               {
+                                                       "value": "0",
+                                                       "label": "Close"
+                                               },
+                                               {
+                                                       "value": "1",
+                                                       "label": "Open"
+                                               }
+                                       ]
+                               },
+                               "refresh": true,
+                               "actions": [
+                                       {
+                                               "command": "set_properties",
+                                               "parameterType": "STRING"
+                                       }
+                               ],
+                               "readmeComment": "Value mapping `[\"0\"\u003d\"Close\",\"1\"\u003d\"Open\"]`"
+                       },
+                       {
+                               "property": "warn-status",
+                               "siid": 4,
+                               "piid": 35,
+                               "friendlyName": "Vacuum Extend - Warn Status",
+                               "channel": "warn_status",
+                               "type": "Number",
+                               "stateDescription": {
+                                       "minimum": 0,
+                                       "maximum": 255,
+                                       "step": 1,
+                                       "pattern": "%.0f",
+                                       "readOnly": true
+                               },
+                               "refresh": true,
+                               "actions": []
+                       },
+                       {
+                               "property": "carpet-clean",
+                               "siid": 4,
+                               "piid": 36,
+                               "friendlyName": "Vacuum Extend - Carpet Clean",
+                               "channel": "carpet_clean",
+                               "type": "Number",
+                               "stateDescription": {
+                                       "minimum": 0,
+                                       "maximum": 255,
+                                       "step": 1,
+                                       "pattern": "%.0f"
+                               },
+                               "refresh": true,
+                               "actions": [
+                                       {
+                                               "command": "set_properties",
+                                               "parameterType": "STRING"
+                                       }
+                               ]
+                       },
+                       {
+                               "property": "auto-add-detergent",
+                               "siid": 4,
+                               "piid": 37,
+                               "friendlyName": "Vacuum Extend - Auto Add Detergent",
+                               "channel": "auto_add_detergent",
+                               "type": "Number",
+                               "stateDescription": {
+                                       "minimum": 0,
+                                       "maximum": 255,
+                                       "step": 1,
+                                       "pattern": "%.0f"
+                               },
+                               "refresh": true,
+                               "actions": [
+                                       {
+                                               "command": "set_properties",
+                                               "parameterType": "STRING"
+                                       }
+                               ]
+                       },
+                       {
+                               "property": "dry-time",
+                               "siid": 4,
+                               "piid": 40,
+                               "friendlyName": "Vacuum Extend - Dry Time",
+                               "channel": "dry_time",
+                               "type": "Number",
+                               "stateDescription": {
+                                       "minimum": 0,
+                                       "maximum": 255,
+                                       "step": 1,
+                                       "pattern": "%.0f"
+                               },
+                               "refresh": true,
+                               "actions": [
+                                       {
+                                               "command": "set_properties",
+                                               "parameterType": "STRING"
+                                       }
+                               ]
+                       },
+                       {
+                               "property": "nowater-tips",
+                               "siid": 4,
+                               "piid": 41,
+                               "friendlyName": "Vacuum Extend - Nowater Tips",
+                               "channel": "nowater_tips",
+                               "type": "Number",
+                               "stateDescription": {
+                                       "minimum": 0,
+                                       "maximum": 255,
+                                       "step": 1,
+                                       "pattern": "%.0f",
+                                       "readOnly": true
+                               },
+                               "refresh": true,
+                               "actions": []
+                       },
+                       {
+                               "property": "enable",
+                               "siid": 5,
+                               "piid": 1,
+                               "friendlyName": "Do Not Disturb - Enable",
+                               "channel": "enable",
+                               "type": "Switch",
+                               "refresh": true,
+                               "actions": [
+                                       {
+                                               "command": "set_properties",
+                                               "parameterType": "ONOFFBOOL"
+                                       }
+                               ]
+                       },
+                       {
+                               "property": "start-time",
+                               "siid": 5,
+                               "piid": 2,
+                               "friendlyName": "Do Not Disturb - Start Time",
+                               "channel": "start_time",
+                               "type": "String",
+                               "refresh": true,
+                               "actions": [
+                                       {
+                                               "command": "set_properties",
+                                               "parameterType": "STRING"
+                                       }
+                               ]
+                       },
+                       {
+                               "property": "end-time",
+                               "siid": 5,
+                               "piid": 3,
+                               "friendlyName": "Do Not Disturb - End Time",
+                               "channel": "end_time",
+                               "type": "String",
+                               "refresh": true,
+                               "actions": [
+                                       {
+                                               "command": "set_properties",
+                                               "parameterType": "STRING"
+                                       }
+                               ]
+                       },
+                       {
+                               "property": "frame-info",
+                               "siid": 6,
+                               "piid": 2,
+                               "friendlyName": "Map - Frame Info",
+                               "channel": "frame_info",
+                               "type": "String",
+                               "refresh": false,
+                               "actions": [
+                                       {
+                                               "command": "set_properties",
+                                               "parameterType": "STRING"
+                                       }
+                               ]
+                       },
+                       {
+                               "property": "map-extend-data",
+                               "siid": 6,
+                               "piid": 4,
+                               "friendlyName": "Map - Map Extend Data",
+                               "channel": "map_extend_data",
+                               "type": "String",
+                               "refresh": false,
+                               "actions": [
+                                       {
+                                               "command": "set_properties",
+                                               "parameterType": "STRING"
+                                       }
+                               ]
+                       },
+                       {
+                               "property": "mult-map-state",
+                               "siid": 6,
+                               "piid": 7,
+                               "friendlyName": "Map - Mult Map State",
+                               "channel": "mult_map_state",
+                               "type": "Number",
+                               "stateDescription": {
+                                       "options": [
+                                               {
+                                                       "value": "0",
+                                                       "label": "Close"
+                                               },
+                                               {
+                                                       "value": "1",
+                                                       "label": "Open"
+                                               }
+                                       ]
+                               },
+                               "refresh": true,
+                               "actions": [
+                                       {
+                                               "command": "set_properties",
+                                               "parameterType": "NUMBER"
+                                       }
+                               ],
+                               "readmeComment": "Value mapping `[\"0\"\u003d\"Close\",\"1\"\u003d\"Open\"]`"
+                       },
+                       {
+                               "property": "mult-map-info",
+                               "siid": 6,
+                               "piid": 8,
+                               "friendlyName": "Map - Mult Map Info",
+                               "channel": "mult_map_info",
+                               "type": "String",
+                               "stateDescription": {
+                                       "readOnly": true
+                               },
+                               "refresh": true,
+                               "actions": []
+                       },
+                       {
+                               "property": "volume",
+                               "siid": 7,
+                               "piid": 1,
+                               "friendlyName": "Audio - Volume",
+                               "channel": "volume",
+                               "type": "Number:Dimensionless",
+                               "unit": "PERCENT",
+                               "stateDescription": {
+                                       "minimum": 0,
+                                       "maximum": 100,
+                                       "step": 1,
+                                       "pattern": "%.0f"
+                               },
+                               "refresh": true,
+                               "actions": [
+                                       {
+                                               "command": "set_properties",
+                                               "parameterType": "NUMBER"
+                                       }
+                               ]
+                       },
+                       {
+                               "property": "voice-packet-id",
+                               "siid": 7,
+                               "piid": 2,
+                               "friendlyName": "Audio - Voice Packet Id",
+                               "channel": "voice_packet_id",
+                               "type": "String",
+                               "stateDescription": {
+                                       "readOnly": true
+                               },
+                               "refresh": true,
+                               "actions": []
+                       },
+                       {
+                               "property": "voice-change-state",
+                               "siid": 7,
+                               "piid": 3,
+                               "friendlyName": "Audio - Voice Change State",
+                               "channel": "voice_change_state",
+                               "type": "String",
+                               "stateDescription": {
+                                       "readOnly": true
+                               },
+                               "refresh": true,
+                               "actions": []
+                       },
+                       {
+                               "property": "set-voice",
+                               "siid": 7,
+                               "piid": 4,
+                               "friendlyName": "Audio - Set Voice",
+                               "channel": "set_voice",
+                               "type": "String",
+                               "refresh": false,
+                               "actions": [
+                                       {
+                                               "command": "set_properties",
+                                               "parameterType": "STRING"
+                                       }
+                               ]
+                       },
+                       {
+                               "property": "time-zone",
+                               "siid": 8,
+                               "piid": 1,
+                               "friendlyName": "Time - Time Zone",
+                               "channel": "time_zone",
+                               "type": "String",
+                               "stateDescription": {
+                                       "readOnly": true
+                               },
+                               "refresh": true,
+                               "actions": []
+                       },
+                       {
+                               "property": "timer-clean",
+                               "siid": 8,
+                               "piid": 2,
+                               "friendlyName": "Time - Timer Clean",
+                               "channel": "timer_clean",
+                               "type": "String",
+                               "refresh": true,
+                               "actions": [
+                                       {
+                                               "command": "set_properties",
+                                               "parameterType": "STRING"
+                                       }
+                               ]
+                       },
+                       {
+                               "property": "first-clean-time",
+                               "siid": 12,
+                               "piid": 1,
+                               "friendlyName": "Clean Logs - First Clean Time",
+                               "channel": "first_clean_time",
+                               "type": "Number",
+                               "stateDescription": {
+                                       "minimum": 0,
+                                       "step": 1,
+                                       "pattern": "%.0f",
+                                       "readOnly": true
+                               },
+                               "refresh": true,
+                               "actions": []
+                       },
+                       {
+                               "property": "total-clean-time",
+                               "siid": 12,
+                               "piid": 2,
+                               "friendlyName": "Clean Logs - Total Clean Time",
+                               "channel": "total_clean_time",
+                               "type": "Number:Time",
+                               "unit": "minutes",
+                               "stateDescription": {
+                                       "minimum": 0,
+                                       "step": 1,
+                                       "pattern": "%.0f %unit%",
+                                       "readOnly": true
+                               },
+                               "refresh": true,
+                               "actions": []
+                       },
+                       {
+                               "property": "total-clean-times",
+                               "siid": 12,
+                               "piid": 3,
+                               "friendlyName": "Clean Logs - Total Clean Times",
+                               "channel": "total_clean_times",
+                               "type": "Number",
+                               "stateDescription": {
+                                       "minimum": 0,
+                                       "step": 1,
+                                       "pattern": "%.0f",
+                                       "readOnly": true
+                               },
+                               "refresh": true,
+                               "actions": []
+                       },
+                       {
+                               "property": "total-clean-area",
+                               "siid": 12,
+                               "piid": 4,
+                               "friendlyName": "Clean Logs - Total Clean Area",
+                               "channel": "total_clean_area",
+                               "type": "Number",
+                               "stateDescription": {
+                                       "minimum": 0,
+                                       "maximum": -1,
+                                       "step": 1,
+                                       "pattern": "%.0f",
+                                       "readOnly": true
+                               },
+                               "refresh": true,
+                               "actions": []
+                       },
+                       {
+                               "property": "auto-collect",
+                               "siid": 15,
+                               "piid": 1,
+                               "friendlyName": "Collect Dust - Auto Collect",
+                               "channel": "auto_collect",
+                               "type": "Number",
+                               "stateDescription": {
+                                       "options": [
+                                               {
+                                                       "value": "0",
+                                                       "label": "Close-auto-collect"
+                                               },
+                                               {
+                                                       "value": "1",
+                                                       "label": "Open-auto-collect"
+                                               }
+                                       ]
+                               },
+                               "refresh": true,
+                               "actions": [
+                                       {
+                                               "command": "set_properties",
+                                               "parameterType": "STRING"
+                                       }
+                               ],
+                               "readmeComment": "Value mapping `[\"0\"\u003d\"Close-auto-collect\",\"1\"\u003d\"Open-auto-collect\"]`"
+                       },
+                       {
+                               "property": "clean-times",
+                               "siid": 15,
+                               "piid": 2,
+                               "friendlyName": "Collect Dust - Clean Times",
+                               "channel": "clean_times",
+                               "type": "Number",
+                               "stateDescription": {
+                                       "minimum": 1,
+                                       "maximum": 1000000,
+                                       "step": 1,
+                                       "pattern": "%.0f"
+                               },
+                               "refresh": true,
+                               "actions": [
+                                       {
+                                               "command": "set_properties",
+                                               "parameterType": "STRING"
+                                       }
+                               ]
+                       },
+                       {
+                               "property": "dust-enable",
+                               "siid": 15,
+                               "piid": 3,
+                               "friendlyName": "Collect Dust - Dust Enable",
+                               "channel": "dust_enable",
+                               "type": "Number",
+                               "stateDescription": {
+                                       "readOnly": true,
+                                       "options": [
+                                               {
+                                                       "value": "0",
+                                                       "label": "Disable"
+                                               },
+                                               {
+                                                       "value": "1",
+                                                       "label": "Enable"
+                                               }
+                                       ]
+                               },
+                               "refresh": true,
+                               "actions": [],
+                               "readmeComment": "Value mapping `[\"0\"\u003d\"Disable\",\"1\"\u003d\"Enable\"]`"
+                       },
+                       {
+                               "property": "dust-status",
+                               "siid": 15,
+                               "piid": 5,
+                               "friendlyName": "Collect Dust - Dust Status",
+                               "channel": "dust_status",
+                               "type": "Number",
+                               "stateDescription": {
+                                       "minimum": 0,
+                                       "maximum": 100,
+                                       "step": 1,
+                                       "pattern": "%.0f",
+                                       "readOnly": true
+                               },
+                               "refresh": true,
+                               "actions": []
+                       },
+                       {
+                               "property": "mop-life-level",
+                               "siid": 18,
+                               "piid": 1,
+                               "friendlyName": "Mop - Mop Life Level",
+                               "channel": "mop_life_level",
+                               "type": "Number:Dimensionless",
+                               "unit": "percentage",
+                               "stateDescription": {
+                                       "minimum": 0,
+                                       "maximum": 100,
+                                       "step": 1,
+                                       "pattern": "%.0f %unit%",
+                                       "readOnly": true
+                               },
+                               "refresh": true,
+                               "actions": []
+                       },
+                       {
+                               "property": "mop-left-time",
+                               "siid": 18,
+                               "piid": 2,
+                               "friendlyName": "Mop - Mop Left Time",
+                               "channel": "mop_left_time",
+                               "type": "Number:Time",
+                               "unit": "hours",
+                               "stateDescription": {
+                                       "minimum": 0,
+                                       "maximum": 10000,
+                                       "step": 1,
+                                       "pattern": "%.0f %unit%",
+                                       "readOnly": true
+                               },
+                               "refresh": true,
+                               "actions": []
+                       },
+                       {
+                               "property": "silverion-life-time",
+                               "siid": 19,
+                               "piid": 1,
+                               "friendlyName": "Silver Ion - Silverion Life Time",
+                               "channel": "silverion_life_time",
+                               "type": "Number:Time",
+                               "unit": "days",
+                               "stateDescription": {
+                                       "minimum": 0,
+                                       "maximum": 10000,
+                                       "step": 1,
+                                       "pattern": "%.0f %unit%",
+                                       "readOnly": true
+                               },
+                               "refresh": true,
+                               "actions": []
+                       },
+                       {
+                               "property": "silverion-life-level",
+                               "siid": 19,
+                               "piid": 2,
+                               "friendlyName": "Silver Ion - Silverion Life Level",
+                               "channel": "silverion_life_level",
+                               "type": "Number:Dimensionless",
+                               "unit": "percentage",
+                               "stateDescription": {
+                                       "minimum": 0,
+                                       "maximum": 100,
+                                       "step": 1,
+                                       "pattern": "%.0f %unit%",
+                                       "readOnly": true
+                               },
+                               "refresh": true,
+                               "actions": []
+                       }
+               ],
+               "experimental": false
+       }
+}