diff --git a/bundles/org.openhab.binding.miio/README.md b/bundles/org.openhab.binding.miio/README.md index 6a718537c63..13a7bc5be7d 100644 --- a/bundles/org.openhab.binding.miio/README.md +++ b/bundles/org.openhab.binding.miio/README.md @@ -283,7 +283,8 @@ Currently the miio binding supports more than 360 different models. | HUIZUO ZIWEI Ceiling Lamp | miio:basic | [huayi.light.zw131](#huayi-light-zw131) | Experimental | Experimental support. Please report back if all channels are functional. Preferably share the debug log of property refresh and command responses | | MiJia Rice Cooker | miio:unsupported | hunmi.cooker.normal3 | No | | | Jinxing Smart Air Conditioner | miio:unsupported | idelan.aircondition.v1 | No | | -| Xiaomi Robot Vacuum-Mop 2S | miio:basic | [ijai.vacuum.v19](#ijai-vacuum-v19) | Yes | | +| Mi Robot Vacuum-Mop 2 Pro | miio:basic | [ijai.vacuum.v3](#ijai-vacuum-v3) | Yes | Example command for room cleaning `xiaomi_robot_execute.sendCommand('action{"siid":7,"aiid":3,"in":[{"piid":24,"value":"11,12,etc room ids"},{"piid":25,"value":0},{"piid":26,"value":1}]}')` | +| Xiaomi Robot Vacuum-Mop 2S | miio:basic | [ijai.vacuum.v19](#ijai-vacuum-v19) | Yes | Example command for room cleaning `xiaomi_robot_execute.sendCommand('action{"siid":7,"aiid":3,"in":[{"piid":24,"value":"11,12,etc room ids"},{"piid":25,"value":0},{"piid":26,"value":1}]}')` | | IKEA E27 white spectrum opal | miio:lumi | [ikea.light.led1545g12](#ikea-light-led1545g12) | Experimental | Needs to have the Xiaomi gateway configured in the binding as bridge.
Experimental support. Please report back if all channels are functional. Preferably share the debug log of property refresh and command responses | | IKEA E27 white spectrum clear | miio:lumi | [ikea.light.led1546g12](#ikea-light-led1546g12) | Experimental | Needs to have the Xiaomi gateway configured in the binding as bridge.
Experimental support. Please report back if all channels are functional. Preferably share the debug log of property refresh and command responses | | IKEA E14 white spectrum | miio:lumi | [ikea.light.led1536g5](#ikea-light-led1536g5) | Experimental | Needs to have the Xiaomi gateway configured in the binding as bridge.
Experimental support. Please report back if all channels are functional. Preferably share the debug log of property refresh and command responses | @@ -1841,6 +1842,74 @@ Note, not all the values need to be in the json file, e.g. a subset of the param | brightness | Dimmer | Light - Brightness | | | color-temperature | Number:Temperature | Light - Color Temperature | | +### Mi Robot Vacuum-Mop 2 Pro (ijai.vacuum.v3) Channels + +| Channel | Type | Description | Comment | +|----------------------|----------------------|------------------------------------------|------------| +| actions | String | Robot Cleaner - Actions | Value mapping `["vacuum-start-sweep"="Start","vacuum-start-sweep-mop"="Start Sweep+Mop","vacuum-start-only-sweep"="Start Sweep","vacuum-start-only-mop"="Start Only Mop","vacuum-start-mop"="Start Mop","vacuum-start-room-sweep"="Room Sweep","battery-start-charge"="Start Charge"]` | +| advanced_actions | String | Robot Cleaner - Advanced Actions | Value mapping `["sweep-reset-consumable"="Reset Consumable","sweep-set-calibration"="Set Calibration","sweep-set-room-clean"="Set Room Clean","sweep-set-preference-clean"="Set Preference Clean","sweep-get-preference-clean"="Get Preference Clean","sweep-set-preference-type"="Set Preference Type","sweep-set-go-charging"="Set Go Charging","sweep-erase-preference"="Erase Preference","sweep-set-preference-ii"="Set Preference Ii","sweep-get-preference-ii"="Get Preference Ii","order-add"="Order Add","order-del"="Order Del","order-get"="Order Get","order-add-ii"="Order Add Ii","order-get-map-order-count"="Order Get Map Order Count","point-zone-start-point-clean"="Point Zone Start Point Clean","point-zone-pause-point-clean"="Point Zone Pause Point Clean","point-zone-start-zone-clean"="Point Zone Start Zone Clean","point-zone-pause-zone-clean"="Point Zone Pause Zone Clean","point-zone-set-virtual-wall"="Point Zone Set Virtual Wall","point-zone-set-zone-point"="Point Zone Set Zone Point","point-zone-start-point-clean-ii"="Point Zone Start Point Clean Ii","map-get-map-list"="Map Get Map List","map-upload-by-mapid"="Map Upload By Mapid","map-set-cur-map"="Map Set Cur Map","map-del-map"="Map Del Map","map-rename-map"="Map Rename Map","map-upload-by-maptype"="Map Upload By Maptype","map-rename-room"="Map Rename Room","map-arrange-room"="Map Arrange Room","map-split-room"="Map Split Room","map-reset-map"="Map Reset Map","map-build-new-map"="Map Build New Map","map-get-cur-path"="Map Get Cur Path","map-get-map-room-list"="Map Get Map Room List","map-upload-by-mapid-ii"="Map Upload By Mapid Ii","map-upload-by-maptype-ii"="Map Upload By Maptype Ii","map-reset-map-ii"="Map Reset Map Ii","map-build-map-ii"="Map Build Map Ii","map-set-mijia-room-list"="Map Set Mijia Room List","disturb-set-notdisturb"="Disturb Set Notdisturb","language-download-voice"="Language Download Voice","language-get-download-status"="Language Get Download Status"]` | +| status | Number | Robot Cleaner - Status | Value mapping `["0"="Sleep","1"="Idle","2"="Paused","3"="Go Charging","4"="Charging","5"="Sweeping","6"="Sweeping and Mopping","7"="Mopping","8"="Upgrading"]` | +| fault | Number | Robot Cleaner - Device Fault | | +| mode | Number | Robot Cleaner - Mode | Value mapping `["0"="Sweep","1"="Sweep And Mop","2"="Mop"]` | +| sweep_type | Number | Robot Cleaner - Sweep Type | Value mapping `["0"="Global","1"="Mop","2"="Edge","3"="Area","4"="Point","5"="Remote","6"="Explore","7"="Room","8"="Floor"]` | +| on | String | Robot Cleaner - Switch Status | | +| battery_level | Number:Dimensionless | Battery - Battery Level | | +| alarm | Switch | Alarm | | +| volume | Number:Dimensionless | Locating Volume | | +| repeat_state | Switch | Sweep - Repeat State | | +| door_state | Number | Sweep - Door State | Value mapping `["0"="None","1"="DustBox","2"="WaterBox","3"="TwoInOne"]` | +| cloth_state | Contact | Sweep - Cloth State | | +| suction_state | Number | Robot Cleaner - Power | Value mapping `["0"="Slient","1"="Standard","2"="Medium","3"="Turbo"]` | +| water_state | Number | Sweep - Water State | Value mapping `["0"="Low","1"="Mid","2"="High"]` | +| mop_route | Number | Sweep - Mop Route | Value mapping `["0"="S","1"="Y"]` | +| side_brush_life | Number:Dimensionless | Sweep - Side Brush Life | | +| side_brush_hours | Number:Time | Sweep - Side Brush Hours | | +| main_brush_life | Number:Dimensionless | Sweep - Main Brush Life | | +| main_brush_hours | Number:Time | Sweep - Main Brush Hours | | +| hypa_life | Number:Dimensionless | Sweep - Hypa Life | | +| hypa_hours | Number:Time | Sweep - Hypa Hours | | +| mop_life | Number:Dimensionless | Sweep - Mop Life | | +| mop_hours | Number:Time | Sweep - Mop Hours | | +| direction | Number | Sweep - Direction | Value mapping `["1"="Forward","2"="Left","3"="Right","4"="Back","5"="Stop","10"="Exit"]` | +| time_zone | Number | Sweep - Time Zone | | +| cur_lang | String | Sweep - Cur Lang | | +| cleaning_time | Number:Time | Sweep - Cleaning Time | | +| cleaning_area | Number | Sweep - Cleaning Area | | +| multi_prop_vacuum | String | Sweep - Multi Prop Vacuum | | +| tank_shake | Switch | Sweep - Tank Shake | | +| shake_shift | Number | Sweep - Shake Shift | Value mapping `["1"="Low","2"="Mid","3"="High"]` | +| order_id | Number | Order - Order Id | | +| enable | Switch | Order - Enable | | +| day | Number:Time | Order - Day | | +| hour | Number:Time | Order - Hour | | +| minute | Number:Time | Order - Minute | | +| repeat | Switch | Order - Repeat | | +| clean_way | Number | Order - Clean Way | Value mapping `["0"="Sweep","1"="Sweep Mop","2"="Mop"]` | +| suction | Number | Order - Suction | Value mapping `["0"="Slient","1"="Normal","2"="Medium","3"="Turbo"]` | +| water | Number | Order - Water | Value mapping `["0"="Low","1"="Mid","2"="High"]` | +| twice_clean | Switch | Order - Twice Clean | | +| mapid | Number | Order - Mapid | | +| room_count | Number | Order - Room Count | | +| room_data | String | Order - Room Data | | +| time_zone1 | Number | Order - Time Zone | | +| all_enable_count | String | Order - All Enable Count | | +| zone_points | String | Point Zone - Zone Points | | +| restrict_points | String | Point Zone - Restrict Points | | +| target_point | String | Point Zone - Target Point | | +| remember_state | Switch | Map - Remember State | | +| cur_map_id | Number | Map - Cur Map Id | | +| map_num | Number | Map - Map Num | | +| cur_cleaning_path | String | Map - Cur Cleaning Path | | +| build_map | Number | Map - Build Map | Value mapping `["0"="None","1"="Build","2"="Clean"]` | +| has_new_map | Number | Map - Has New Map | Value mapping `["0"="Without Map To Save","1"="Wait To Rename Map"]` | +| map_uploads | Number | Map - Map Uploads | Value mapping `["0"="Upload","1"="Do Not Upload"]` | +| dnd_enable | Contact | Disturb - Dnd Enable | | +| dnd_start_hour | Number:Time | Disturb - Dnd Start Hour | | +| dnd_start_minute | Number:Time | Disturb - Dnd Start Minute | | +| dnd_end_hour | Number:Time | Disturb - Dnd End Hour | | +| dnd_end_minute | Number:Time | Disturb - Dnd End Minute | | +| multi_prop_dnd | String | Disturb - Multi Prop Dnd | | + ### Xiaomi Robot Vacuum-Mop 2S (ijai.vacuum.v19) Channels | Channel | Type | Description | Comment | @@ -7559,6 +7628,77 @@ Dimmer brightness "Light - Brightness" (G_light) {channel="miio:basic:light:brig Number:Temperature color_temperature "Light - Color Temperature" (G_light) {channel="miio:basic:light:color-temperature"} ``` +### Mi Robot Vacuum-Mop 2 Pro (ijai.vacuum.v3) 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 "Mi Robot Vacuum-Mop 2 Pro" +String actions "Robot Cleaner - Actions" (G_vacuum) {channel="miio:basic:vacuum:actions"} +String advanced_actions "Robot Cleaner - Advanced Actions" (G_vacuum) {channel="miio:basic:vacuum:advanced_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 sweep_type "Robot Cleaner - Sweep Type" (G_vacuum) {channel="miio:basic:vacuum:sweep_type"} +String on "Robot Cleaner - Switch Status" (G_vacuum) {channel="miio:basic:vacuum:on"} +Number:Dimensionless battery_level "Battery - Battery Level" (G_vacuum) {channel="miio:basic:vacuum:battery_level"} +Switch alarm "Alarm" (G_vacuum) {channel="miio:basic:vacuum:alarm"} +Number:Dimensionless volume "Locating Volume" (G_vacuum) {channel="miio:basic:vacuum:volume"} +Switch repeat_state "Sweep - Repeat State" (G_vacuum) {channel="miio:basic:vacuum:repeat_state"} +Number door_state "Sweep - Door State" (G_vacuum) {channel="miio:basic:vacuum:door_state"} +Contact cloth_state "Sweep - Cloth State" (G_vacuum) {channel="miio:basic:vacuum:cloth_state"} +Number suction_state "Robot Cleaner - Power" (G_vacuum) {channel="miio:basic:vacuum:suction_state"} +Number water_state "Sweep - Water State" (G_vacuum) {channel="miio:basic:vacuum:water_state"} +Number mop_route "Sweep - Mop Route" (G_vacuum) {channel="miio:basic:vacuum:mop_route"} +Number:Dimensionless side_brush_life "Sweep - Side Brush Life" (G_vacuum) {channel="miio:basic:vacuum:side_brush_life"} +Number:Time side_brush_hours "Sweep - Side Brush Hours" (G_vacuum) {channel="miio:basic:vacuum:side_brush_hours"} +Number:Dimensionless main_brush_life "Sweep - Main Brush Life" (G_vacuum) {channel="miio:basic:vacuum:main_brush_life"} +Number:Time main_brush_hours "Sweep - Main Brush Hours" (G_vacuum) {channel="miio:basic:vacuum:main_brush_hours"} +Number:Dimensionless hypa_life "Sweep - Hypa Life" (G_vacuum) {channel="miio:basic:vacuum:hypa_life"} +Number:Time hypa_hours "Sweep - Hypa Hours" (G_vacuum) {channel="miio:basic:vacuum:hypa_hours"} +Number:Dimensionless mop_life "Sweep - Mop Life" (G_vacuum) {channel="miio:basic:vacuum:mop_life"} +Number:Time mop_hours "Sweep - Mop Hours" (G_vacuum) {channel="miio:basic:vacuum:mop_hours"} +Number direction "Sweep - Direction" (G_vacuum) {channel="miio:basic:vacuum:direction"} +Number time_zone "Sweep - Time Zone" (G_vacuum) {channel="miio:basic:vacuum:time_zone"} +String cur_lang "Sweep - Cur Lang" (G_vacuum) {channel="miio:basic:vacuum:cur_lang"} +Number:Time cleaning_time "Sweep - Cleaning Time" (G_vacuum) {channel="miio:basic:vacuum:cleaning_time"} +Number cleaning_area "Sweep - Cleaning Area" (G_vacuum) {channel="miio:basic:vacuum:cleaning_area"} +String multi_prop_vacuum "Sweep - Multi Prop Vacuum" (G_vacuum) {channel="miio:basic:vacuum:multi_prop_vacuum"} +Switch tank_shake "Sweep - Tank Shake" (G_vacuum) {channel="miio:basic:vacuum:tank_shake"} +Number shake_shift "Sweep - Shake Shift" (G_vacuum) {channel="miio:basic:vacuum:shake_shift"} +Number order_id "Order - Order Id" (G_vacuum) {channel="miio:basic:vacuum:order_id"} +Switch enable "Order - Enable" (G_vacuum) {channel="miio:basic:vacuum:enable"} +Number:Time day "Order - Day" (G_vacuum) {channel="miio:basic:vacuum:day"} +Number:Time hour "Order - Hour" (G_vacuum) {channel="miio:basic:vacuum:hour"} +Number:Time minute "Order - Minute" (G_vacuum) {channel="miio:basic:vacuum:minute"} +Switch repeat "Order - Repeat" (G_vacuum) {channel="miio:basic:vacuum:repeat"} +Number clean_way "Order - Clean Way" (G_vacuum) {channel="miio:basic:vacuum:clean_way"} +Number suction "Order - Suction" (G_vacuum) {channel="miio:basic:vacuum:suction"} +Number water "Order - Water" (G_vacuum) {channel="miio:basic:vacuum:water"} +Switch twice_clean "Order - Twice Clean" (G_vacuum) {channel="miio:basic:vacuum:twice_clean"} +Number mapid "Order - Mapid" (G_vacuum) {channel="miio:basic:vacuum:mapid"} +Number room_count "Order - Room Count" (G_vacuum) {channel="miio:basic:vacuum:room_count"} +String room_data "Order - Room Data" (G_vacuum) {channel="miio:basic:vacuum:room_data"} +Number time_zone1 "Order - Time Zone" (G_vacuum) {channel="miio:basic:vacuum:time_zone1"} +String all_enable_count "Order - All Enable Count" (G_vacuum) {channel="miio:basic:vacuum:all_enable_count"} +String zone_points "Point Zone - Zone Points" (G_vacuum) {channel="miio:basic:vacuum:zone_points"} +String restrict_points "Point Zone - Restrict Points" (G_vacuum) {channel="miio:basic:vacuum:restrict_points"} +String target_point "Point Zone - Target Point" (G_vacuum) {channel="miio:basic:vacuum:target_point"} +Switch remember_state "Map - Remember State" (G_vacuum) {channel="miio:basic:vacuum:remember_state"} +Number cur_map_id "Map - Cur Map Id" (G_vacuum) {channel="miio:basic:vacuum:cur_map_id"} +Number map_num "Map - Map Num" (G_vacuum) {channel="miio:basic:vacuum:map_num"} +String cur_cleaning_path "Map - Cur Cleaning Path" (G_vacuum) {channel="miio:basic:vacuum:cur_cleaning_path"} +Number build_map "Map - Build Map" (G_vacuum) {channel="miio:basic:vacuum:build_map"} +Number has_new_map "Map - Has New Map" (G_vacuum) {channel="miio:basic:vacuum:has_new_map"} +Number map_uploads "Map - Map Uploads" (G_vacuum) {channel="miio:basic:vacuum:map_uploads"} +Contact dnd_enable "Disturb - Dnd Enable" (G_vacuum) {channel="miio:basic:vacuum:dnd_enable"} +Number:Time dnd_start_hour "Disturb - Dnd Start Hour" (G_vacuum) {channel="miio:basic:vacuum:dnd_start_hour"} +Number:Time dnd_start_minute "Disturb - Dnd Start Minute" (G_vacuum) {channel="miio:basic:vacuum:dnd_start_minute"} +Number:Time dnd_end_hour "Disturb - Dnd End Hour" (G_vacuum) {channel="miio:basic:vacuum:dnd_end_hour"} +Number:Time dnd_end_minute "Disturb - Dnd End Minute" (G_vacuum) {channel="miio:basic:vacuum:dnd_end_minute"} +String multi_prop_dnd "Disturb - Multi Prop Dnd" (G_vacuum) {channel="miio:basic:vacuum:multi_prop_dnd"} +``` + ### Xiaomi Robot Vacuum-Mop 2S (ijai.vacuum.v19) 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. diff --git a/bundles/org.openhab.binding.miio/src/main/java/org/openhab/binding/miio/internal/MiIoDevices.java b/bundles/org.openhab.binding.miio/src/main/java/org/openhab/binding/miio/internal/MiIoDevices.java index 313ba416d4e..705e5b3496e 100644 --- a/bundles/org.openhab.binding.miio/src/main/java/org/openhab/binding/miio/internal/MiIoDevices.java +++ b/bundles/org.openhab.binding.miio/src/main/java/org/openhab/binding/miio/internal/MiIoDevices.java @@ -98,6 +98,7 @@ public enum MiIoDevices { HUAYI_LIGHT_ZW131("huayi.light.zw131", "HUIZUO ZIWEI Ceiling Lamp", THING_TYPE_BASIC), HUNMI_COOKER_NORMAL3("hunmi.cooker.normal3", "MiJia Rice Cooker", THING_TYPE_UNSUPPORTED), IDELAN_AIRCONDITION_V1("idelan.aircondition.v1", "Jinxing Smart Air Conditioner", THING_TYPE_UNSUPPORTED), + IJAI_VACUUM_V3("ijai.vacuum.v3", "Mi Robot Vacuum-Mop 2 Pro", THING_TYPE_BASIC), IJAI_VACUUM_V19("ijai.vacuum.v19", "Xiaomi Robot Vacuum-Mop 2S", THING_TYPE_BASIC), IKEA_LIGHT_LED1545G12("ikea.light.led1545g12", "IKEA E27 white spectrum opal", THING_TYPE_LUMI), IKEA_LIGHT_LED1546G12("ikea.light.led1546g12", "IKEA E27 white spectrum clear", THING_TYPE_LUMI), diff --git a/bundles/org.openhab.binding.miio/src/main/resources/OH-INF/i18n/basic.properties b/bundles/org.openhab.binding.miio/src/main/resources/OH-INF/i18n/basic.properties index 70dc4449bd8..d760210c493 100644 --- a/bundles/org.openhab.binding.miio/src/main/resources/OH-INF/i18n/basic.properties +++ b/bundles/org.openhab.binding.miio/src/main/resources/OH-INF/i18n/basic.properties @@ -75,6 +75,7 @@ thing.huayi.light.wyheat = HUIZUO Heating Lamp thing.huayi.light.zw131 = HUIZUO ZIWEI Ceiling Lamp thing.hunmi.cooker.normal3 = MiJia Rice Cooker thing.idelan.aircondition.v1 = Jinxing Smart Air Conditioner +thing.ijai.vacuum.v3 = Mi Robot Vacuum-Mop 2 Pro thing.ijai.vacuum.v19 = Xiaomi Robot Vacuum-Mop 2S thing.ikea.light.led1545g12 = IKEA E27 white spectrum opal thing.ikea.light.led1546g12 = IKEA E27 white spectrum clear @@ -1115,6 +1116,69 @@ ch.ijai.vacuum.v19-miot.volume = Robot Cleaner - Locate Volume ch.ijai.vacuum.v19-miot.water = Order - Water ch.ijai.vacuum.v19-miot.water_state = Sweep - Water State ch.ijai.vacuum.v19-miot.zone_points = Point Zone - Zone Points +ch.ijai.vacuum.v3-miot.actions = Robot Cleaner - Actions +ch.ijai.vacuum.v3-miot.advanced_actions = Robot Cleaner - Advanced Actions +ch.ijai.vacuum.v3-miot.alarm = Alarm +ch.ijai.vacuum.v3-miot.all_enable_count = Order - All Enable Count +ch.ijai.vacuum.v3-miot.battery_level = Battery - Battery Level +ch.ijai.vacuum.v3-miot.build_map = Map - Build Map +ch.ijai.vacuum.v3-miot.clean_way = Order - Clean Way +ch.ijai.vacuum.v3-miot.cleaning_area = Sweep - Cleaning Area +ch.ijai.vacuum.v3-miot.cleaning_time = Sweep - Cleaning Time +ch.ijai.vacuum.v3-miot.cloth_state = Sweep - Cloth State +ch.ijai.vacuum.v3-miot.cur_cleaning_path = Map - Cur Cleaning Path +ch.ijai.vacuum.v3-miot.cur_lang = Sweep - Cur Lang +ch.ijai.vacuum.v3-miot.cur_map_id = Map - Cur Map Id +ch.ijai.vacuum.v3-miot.day = Order - Day +ch.ijai.vacuum.v3-miot.direction = Sweep - Direction +ch.ijai.vacuum.v3-miot.dnd_enable = Disturb - Dnd Enable +ch.ijai.vacuum.v3-miot.dnd_end_hour = Disturb - Dnd End Hour +ch.ijai.vacuum.v3-miot.dnd_end_minute = Disturb - Dnd End Minute +ch.ijai.vacuum.v3-miot.dnd_start_hour = Disturb - Dnd Start Hour +ch.ijai.vacuum.v3-miot.dnd_start_minute = Disturb - Dnd Start Minute +ch.ijai.vacuum.v3-miot.door_state = Sweep - Door State +ch.ijai.vacuum.v3-miot.enable = Order - Enable +ch.ijai.vacuum.v3-miot.fault = Robot Cleaner - Device Fault +ch.ijai.vacuum.v3-miot.has_new_map = Map - Has New Map +ch.ijai.vacuum.v3-miot.hour = Order - Hour +ch.ijai.vacuum.v3-miot.hypa_hours = Sweep - Hypa Hours +ch.ijai.vacuum.v3-miot.hypa_life = Sweep - Hypa Life +ch.ijai.vacuum.v3-miot.main_brush_hours = Sweep - Main Brush Hours +ch.ijai.vacuum.v3-miot.main_brush_life = Sweep - Main Brush Life +ch.ijai.vacuum.v3-miot.map_num = Map - Map Num +ch.ijai.vacuum.v3-miot.map_uploads = Map - Map Uploads +ch.ijai.vacuum.v3-miot.mapid = Order - Mapid +ch.ijai.vacuum.v3-miot.minute = Order - Minute +ch.ijai.vacuum.v3-miot.mode = Robot Cleaner - Mode +ch.ijai.vacuum.v3-miot.mop_hours = Sweep - Mop Hours +ch.ijai.vacuum.v3-miot.mop_life = Sweep - Mop Life +ch.ijai.vacuum.v3-miot.mop_route = Sweep - Mop Route +ch.ijai.vacuum.v3-miot.multi_prop_dnd = Disturb - Multi Prop Dnd +ch.ijai.vacuum.v3-miot.multi_prop_vacuum = Sweep - Multi Prop Vacuum +ch.ijai.vacuum.v3-miot.on = Robot Cleaner - Switch Status +ch.ijai.vacuum.v3-miot.order_id = Order - Order Id +ch.ijai.vacuum.v3-miot.remember_state = Map - Remember State +ch.ijai.vacuum.v3-miot.repeat = Order - Repeat +ch.ijai.vacuum.v3-miot.repeat_state = Sweep - Repeat State +ch.ijai.vacuum.v3-miot.restrict_points = Point Zone - Restrict Points +ch.ijai.vacuum.v3-miot.room_count = Order - Room Count +ch.ijai.vacuum.v3-miot.room_data = Order - Room Data +ch.ijai.vacuum.v3-miot.shake_shift = Sweep - Shake Shift +ch.ijai.vacuum.v3-miot.side_brush_hours = Sweep - Side Brush Hours +ch.ijai.vacuum.v3-miot.side_brush_life = Sweep - Side Brush Life +ch.ijai.vacuum.v3-miot.status = Robot Cleaner - Status +ch.ijai.vacuum.v3-miot.suction = Order - Suction +ch.ijai.vacuum.v3-miot.suction_state = Robot Cleaner - Power +ch.ijai.vacuum.v3-miot.sweep_type = Robot Cleaner - Sweep Type +ch.ijai.vacuum.v3-miot.tank_shake = Sweep - Tank Shake +ch.ijai.vacuum.v3-miot.target_point = Point Zone - Target Point +ch.ijai.vacuum.v3-miot.time_zone = Sweep - Time Zone +ch.ijai.vacuum.v3-miot.time_zone1 = Order - Time Zone +ch.ijai.vacuum.v3-miot.twice_clean = Order - Twice Clean +ch.ijai.vacuum.v3-miot.volume = Locating Volume +ch.ijai.vacuum.v3-miot.water = Order - Water +ch.ijai.vacuum.v3-miot.water_state = Sweep - Water State +ch.ijai.vacuum.v3-miot.zone_points = Point Zone - Zone Points ch.lumi.curtain.hagl05-miot.adjust_value = Motor_controller - Adjust_value ch.lumi.curtain.hagl05-miot.current-position = Curtain - Current Position ch.lumi.curtain.hagl05-miot.en_night_tip_light = Curtain_cfg - En_night_tip_light @@ -3030,6 +3094,116 @@ option.ijai.vacuum.v19-miot.water-2 = High option.ijai.vacuum.v19-miot.water_state-0 = Low option.ijai.vacuum.v19-miot.water_state-1 = Mid option.ijai.vacuum.v19-miot.water_state-2 = High +option.ijai.vacuum.v3-miot.actions-battery-start-charge = Start Charge +option.ijai.vacuum.v3-miot.actions-vacuum-start-mop = Start Mop +option.ijai.vacuum.v3-miot.actions-vacuum-start-only-mop = Start Only Mop +option.ijai.vacuum.v3-miot.actions-vacuum-start-only-sweep = Start Sweep +option.ijai.vacuum.v3-miot.actions-vacuum-start-room-sweep = Room Sweep +option.ijai.vacuum.v3-miot.actions-vacuum-start-sweep = Start +option.ijai.vacuum.v3-miot.actions-vacuum-start-sweep-mop = Start Sweep+Mop +option.ijai.vacuum.v3-miot.advanced_actions-disturb-set-notdisturb = Disturb Set Notdisturb +option.ijai.vacuum.v3-miot.advanced_actions-language-download-voice = Language Download Voice +option.ijai.vacuum.v3-miot.advanced_actions-language-get-download-status = Language Get Download Status +option.ijai.vacuum.v3-miot.advanced_actions-map-arrange-room = Map Arrange Room +option.ijai.vacuum.v3-miot.advanced_actions-map-build-map-ii = Map Build Map Ii +option.ijai.vacuum.v3-miot.advanced_actions-map-build-new-map = Map Build New Map +option.ijai.vacuum.v3-miot.advanced_actions-map-del-map = Map Del Map +option.ijai.vacuum.v3-miot.advanced_actions-map-get-cur-path = Map Get Cur Path +option.ijai.vacuum.v3-miot.advanced_actions-map-get-map-list = Map Get Map List +option.ijai.vacuum.v3-miot.advanced_actions-map-get-map-room-list = Map Get Map Room List +option.ijai.vacuum.v3-miot.advanced_actions-map-rename-map = Map Rename Map +option.ijai.vacuum.v3-miot.advanced_actions-map-rename-room = Map Rename Room +option.ijai.vacuum.v3-miot.advanced_actions-map-reset-map = Map Reset Map +option.ijai.vacuum.v3-miot.advanced_actions-map-reset-map-ii = Map Reset Map Ii +option.ijai.vacuum.v3-miot.advanced_actions-map-set-cur-map = Map Set Cur Map +option.ijai.vacuum.v3-miot.advanced_actions-map-set-mijia-room-list = Map Set Mijia Room List +option.ijai.vacuum.v3-miot.advanced_actions-map-split-room = Map Split Room +option.ijai.vacuum.v3-miot.advanced_actions-map-upload-by-mapid = Map Upload By Mapid +option.ijai.vacuum.v3-miot.advanced_actions-map-upload-by-mapid-ii = Map Upload By Mapid Ii +option.ijai.vacuum.v3-miot.advanced_actions-map-upload-by-maptype = Map Upload By Maptype +option.ijai.vacuum.v3-miot.advanced_actions-map-upload-by-maptype-ii = Map Upload By Maptype Ii +option.ijai.vacuum.v3-miot.advanced_actions-order-add = Order Add +option.ijai.vacuum.v3-miot.advanced_actions-order-add-ii = Order Add Ii +option.ijai.vacuum.v3-miot.advanced_actions-order-del = Order Del +option.ijai.vacuum.v3-miot.advanced_actions-order-get = Order Get +option.ijai.vacuum.v3-miot.advanced_actions-order-get-map-order-count = Order Get Map Order Count +option.ijai.vacuum.v3-miot.advanced_actions-point-zone-pause-point-clean = Point Zone Pause Point Clean +option.ijai.vacuum.v3-miot.advanced_actions-point-zone-pause-zone-clean = Point Zone Pause Zone Clean +option.ijai.vacuum.v3-miot.advanced_actions-point-zone-set-virtual-wall = Point Zone Set Virtual Wall +option.ijai.vacuum.v3-miot.advanced_actions-point-zone-set-zone-point = Point Zone Set Zone Point +option.ijai.vacuum.v3-miot.advanced_actions-point-zone-start-point-clean = Point Zone Start Point Clean +option.ijai.vacuum.v3-miot.advanced_actions-point-zone-start-point-clean-ii = Point Zone Start Point Clean Ii +option.ijai.vacuum.v3-miot.advanced_actions-point-zone-start-zone-clean = Point Zone Start Zone Clean +option.ijai.vacuum.v3-miot.advanced_actions-sweep-erase-preference = Erase Preference +option.ijai.vacuum.v3-miot.advanced_actions-sweep-get-preference-clean = Get Preference Clean +option.ijai.vacuum.v3-miot.advanced_actions-sweep-get-preference-ii = Get Preference Ii +option.ijai.vacuum.v3-miot.advanced_actions-sweep-reset-consumable = Reset Consumable +option.ijai.vacuum.v3-miot.advanced_actions-sweep-set-calibration = Set Calibration +option.ijai.vacuum.v3-miot.advanced_actions-sweep-set-go-charging = Set Go Charging +option.ijai.vacuum.v3-miot.advanced_actions-sweep-set-preference-clean = Set Preference Clean +option.ijai.vacuum.v3-miot.advanced_actions-sweep-set-preference-ii = Set Preference Ii +option.ijai.vacuum.v3-miot.advanced_actions-sweep-set-preference-type = Set Preference Type +option.ijai.vacuum.v3-miot.advanced_actions-sweep-set-room-clean = Set Room Clean +option.ijai.vacuum.v3-miot.build_map-0 = None +option.ijai.vacuum.v3-miot.build_map-1 = Build +option.ijai.vacuum.v3-miot.build_map-2 = Clean +option.ijai.vacuum.v3-miot.clean_way-0 = Sweep +option.ijai.vacuum.v3-miot.clean_way-1 = Sweep Mop +option.ijai.vacuum.v3-miot.clean_way-2 = Mop +option.ijai.vacuum.v3-miot.direction-1 = Forward +option.ijai.vacuum.v3-miot.direction-10 = Exit +option.ijai.vacuum.v3-miot.direction-2 = Left +option.ijai.vacuum.v3-miot.direction-3 = Right +option.ijai.vacuum.v3-miot.direction-4 = Back +option.ijai.vacuum.v3-miot.direction-5 = Stop +option.ijai.vacuum.v3-miot.door_state-0 = None +option.ijai.vacuum.v3-miot.door_state-1 = DustBox +option.ijai.vacuum.v3-miot.door_state-2 = WaterBox +option.ijai.vacuum.v3-miot.door_state-3 = TwoInOne +option.ijai.vacuum.v3-miot.has_new_map-0 = Without Map To Save +option.ijai.vacuum.v3-miot.has_new_map-1 = Wait To Rename Map +option.ijai.vacuum.v3-miot.map_uploads-0 = Upload +option.ijai.vacuum.v3-miot.map_uploads-1 = Do Not Upload +option.ijai.vacuum.v3-miot.mode-0 = Sweep +option.ijai.vacuum.v3-miot.mode-1 = Sweep And Mop +option.ijai.vacuum.v3-miot.mode-2 = Mop +option.ijai.vacuum.v3-miot.mop_route-0 = S +option.ijai.vacuum.v3-miot.mop_route-1 = Y +option.ijai.vacuum.v3-miot.shake_shift-1 = Low +option.ijai.vacuum.v3-miot.shake_shift-2 = Mid +option.ijai.vacuum.v3-miot.shake_shift-3 = High +option.ijai.vacuum.v3-miot.status-0 = Sleep +option.ijai.vacuum.v3-miot.status-1 = Idle +option.ijai.vacuum.v3-miot.status-2 = Paused +option.ijai.vacuum.v3-miot.status-3 = Go Charging +option.ijai.vacuum.v3-miot.status-4 = Charging +option.ijai.vacuum.v3-miot.status-5 = Sweeping +option.ijai.vacuum.v3-miot.status-6 = Sweeping and Mopping +option.ijai.vacuum.v3-miot.status-7 = Mopping +option.ijai.vacuum.v3-miot.status-8 = Upgrading +option.ijai.vacuum.v3-miot.suction-0 = Slient +option.ijai.vacuum.v3-miot.suction-1 = Normal +option.ijai.vacuum.v3-miot.suction-2 = Medium +option.ijai.vacuum.v3-miot.suction-3 = Turbo +option.ijai.vacuum.v3-miot.suction_state-0 = Slient +option.ijai.vacuum.v3-miot.suction_state-1 = Standard +option.ijai.vacuum.v3-miot.suction_state-2 = Medium +option.ijai.vacuum.v3-miot.suction_state-3 = Turbo +option.ijai.vacuum.v3-miot.sweep_type-0 = Global +option.ijai.vacuum.v3-miot.sweep_type-1 = Mop +option.ijai.vacuum.v3-miot.sweep_type-2 = Edge +option.ijai.vacuum.v3-miot.sweep_type-3 = Area +option.ijai.vacuum.v3-miot.sweep_type-4 = Point +option.ijai.vacuum.v3-miot.sweep_type-5 = Remote +option.ijai.vacuum.v3-miot.sweep_type-6 = Explore +option.ijai.vacuum.v3-miot.sweep_type-7 = Room +option.ijai.vacuum.v3-miot.sweep_type-8 = Floor +option.ijai.vacuum.v3-miot.water-0 = Low +option.ijai.vacuum.v3-miot.water-1 = Mid +option.ijai.vacuum.v3-miot.water-2 = High +option.ijai.vacuum.v3-miot.water_state-0 = Low +option.ijai.vacuum.v3-miot.water_state-1 = Mid +option.ijai.vacuum.v3-miot.water_state-2 = High option.lumi.curtain.hagl05-miot.en_night_tip_light-0 = Disable option.lumi.curtain.hagl05-miot.en_night_tip_light-1 = Enable option.lumi.curtain.hagl05-miot.fault-0 = No faults diff --git a/bundles/org.openhab.binding.miio/src/main/resources/database/ijai.vacuum.v19-miot.json b/bundles/org.openhab.binding.miio/src/main/resources/database/ijai.vacuum.v19-miot.json index 741db7239c3..4b858217a89 100644 --- a/bundles/org.openhab.binding.miio/src/main/resources/database/ijai.vacuum.v19-miot.json +++ b/bundles/org.openhab.binding.miio/src/main/resources/database/ijai.vacuum.v19-miot.json @@ -1350,6 +1350,7 @@ "friendlyName": "Robot Cleaner - Locate Volume", "channel": "volume", "type": "Number:Dimensionless", + "unit": "percentage", "stateDescription": { "minimum": 0, "maximum": 10, @@ -2490,6 +2491,7 @@ "actions": [] } ], + "readmeComment": "Example command for room cleaning `xiaomi_robot_execute.sendCommand(\u0027action{\"siid\":7,\"aiid\":3,\"in\":[{\"piid\":24,\"value\":\"11,12,etc room ids\"},{\"piid\":25,\"value\":0},{\"piid\":26,\"value\":1}]}\u0027)`", "experimental": false } } diff --git a/bundles/org.openhab.binding.miio/src/main/resources/database/ijai.vacuum.v3-miot.json b/bundles/org.openhab.binding.miio/src/main/resources/database/ijai.vacuum.v3-miot.json new file mode 100644 index 00000000000..fd7efc71cc0 --- /dev/null +++ b/bundles/org.openhab.binding.miio/src/main/resources/database/ijai.vacuum.v3-miot.json @@ -0,0 +1,2396 @@ +{ + "deviceMapping": { + "id": [ + "ijai.vacuum.v3" + ], + "propertyMethod": "get_properties", + "maxProperties": 4, + "channels": [ + { + "property": "", + "friendlyName": "Robot Cleaner - Actions", + "channel": "actions", + "type": "String", + "stateDescription": { + "options": [ + { + "value": "vacuum-start-sweep", + "label": "Start" + }, + { + "value": "vacuum-start-sweep-mop", + "label": "Start Sweep+Mop" + }, + { + "value": "vacuum-start-only-sweep", + "label": "Start Sweep" + }, + { + "value": "vacuum-start-only-mop", + "label": "Start Only Mop" + }, + { + "value": "vacuum-start-mop", + "label": "Start Mop" + }, + { + "value": "vacuum-start-room-sweep", + "label": "Room Sweep" + }, + { + "value": "battery-start-charge", + "label": "Start Charge" + } + ] + }, + "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": "EMPTY", + "siid": 2, + "aiid": 3, + "condition": { + "name": "matchValue", + "parameters": [ + { + "matchValue": "vacuum-start-only-sweep" + } + ] + } + }, + { + "command": "action", + "parameterType": "EMPTY", + "siid": 2, + "aiid": 5, + "condition": { + "name": "matchValue", + "parameters": [ + { + "matchValue": "vacuum-start-sweep-mop" + } + ] + } + }, + { + "command": "action", + "parameterType": "EMPTY", + "siid": 2, + "aiid": 6, + "condition": { + "name": "matchValue", + "parameters": [ + { + "matchValue": "vacuum-start-mop" + } + ] + } + }, + { + "command": "action", + "parameterType": "UNKNOWN", + "parameters": [ + 10.0 + ], + "siid": 2, + "aiid": 7, + "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" + } + ] + } + } + ], + "readmeComment": "Value mapping `[\"vacuum-start-sweep\"\u003d\"Start\",\"vacuum-start-sweep-mop\"\u003d\"Start Sweep+Mop\",\"vacuum-start-only-sweep\"\u003d\"Start Sweep\",\"vacuum-start-only-mop\"\u003d\"Start Only Mop\",\"vacuum-start-mop\"\u003d\"Start Mop\",\"vacuum-start-room-sweep\"\u003d\"Room Sweep\",\"battery-start-charge\"\u003d\"Start Charge\"]`" + }, + { + "property": "", + "friendlyName": "Robot Cleaner - Advanced Actions", + "channel": "advanced_actions", + "type": "String", + "stateDescription": { + "options": [ + { + "value": "sweep-reset-consumable", + "label": "Reset Consumable" + }, + { + "value": "sweep-set-calibration", + "label": "Set Calibration" + }, + { + "value": "sweep-set-room-clean", + "label": "Set Room Clean" + }, + { + "value": "sweep-set-preference-clean", + "label": "Set Preference Clean" + }, + { + "value": "sweep-get-preference-clean", + "label": "Get Preference Clean" + }, + { + "value": "sweep-set-preference-type", + "label": "Set Preference Type" + }, + { + "value": "sweep-set-go-charging", + "label": "Set Go Charging" + }, + { + "value": "sweep-erase-preference", + "label": "Erase Preference" + }, + { + "value": "sweep-set-preference-ii", + "label": "Set Preference Ii" + }, + { + "value": "sweep-get-preference-ii", + "label": "Get Preference Ii" + }, + { + "value": "order-add", + "label": "Order Add" + }, + { + "value": "order-del", + "label": "Order Del" + }, + { + "value": "order-get", + "label": "Order Get" + }, + { + "value": "order-add-ii", + "label": "Order Add Ii" + }, + { + "value": "order-get-map-order-count", + "label": "Order Get Map Order Count" + }, + { + "value": "point-zone-start-point-clean", + "label": "Point Zone Start Point Clean" + }, + { + "value": "point-zone-pause-point-clean", + "label": "Point Zone Pause Point Clean" + }, + { + "value": "point-zone-start-zone-clean", + "label": "Point Zone Start Zone Clean" + }, + { + "value": "point-zone-pause-zone-clean", + "label": "Point Zone Pause Zone Clean" + }, + { + "value": "point-zone-set-virtual-wall", + "label": "Point Zone Set Virtual Wall" + }, + { + "value": "point-zone-set-zone-point", + "label": "Point Zone Set Zone Point" + }, + { + "value": "point-zone-start-point-clean-ii", + "label": "Point Zone Start Point Clean Ii" + }, + { + "value": "map-get-map-list", + "label": "Map Get Map List" + }, + { + "value": "map-upload-by-mapid", + "label": "Map Upload By Mapid" + }, + { + "value": "map-set-cur-map", + "label": "Map Set Cur Map" + }, + { + "value": "map-del-map", + "label": "Map Del Map" + }, + { + "value": "map-rename-map", + "label": "Map Rename Map" + }, + { + "value": "map-upload-by-maptype", + "label": "Map Upload By Maptype" + }, + { + "value": "map-rename-room", + "label": "Map Rename Room" + }, + { + "value": "map-arrange-room", + "label": "Map Arrange Room" + }, + { + "value": "map-split-room", + "label": "Map Split Room" + }, + { + "value": "map-reset-map", + "label": "Map Reset Map" + }, + { + "value": "map-build-new-map", + "label": "Map Build New Map" + }, + { + "value": "map-get-cur-path", + "label": "Map Get Cur Path" + }, + { + "value": "map-get-map-room-list", + "label": "Map Get Map Room List" + }, + { + "value": "map-upload-by-mapid-ii", + "label": "Map Upload By Mapid Ii" + }, + { + "value": "map-upload-by-maptype-ii", + "label": "Map Upload By Maptype Ii" + }, + { + "value": "map-reset-map-ii", + "label": "Map Reset Map Ii" + }, + { + "value": "map-build-map-ii", + "label": "Map Build Map Ii" + }, + { + "value": "map-set-mijia-room-list", + "label": "Map Set Mijia Room List" + }, + { + "value": "disturb-set-notdisturb", + "label": "Disturb Set Notdisturb" + }, + { + "value": "language-download-voice", + "label": "Language Download Voice" + }, + { + "value": "language-get-download-status", + "label": "Language Get Download Status" + } + ] + }, + "refresh": false, + "actions": [ + { + "command": "action", + "parameterType": "UNKNOWN", + "parameters": [ + 17.0 + ], + "siid": 7, + "aiid": 1, + "condition": { + "name": "matchValue", + "parameters": [ + { + "matchValue": "sweep-reset-consumable" + } + ] + } + }, + { + "command": "action", + "parameterType": "EMPTY", + "siid": 7, + "aiid": 2, + "condition": { + "name": "matchValue", + "parameters": [ + { + "matchValue": "sweep-set-calibration" + } + ] + } + }, + { + "command": "action", + "parameterType": "UNKNOWN", + "parameters": [ + 24, + 25, + 26.0 + ], + "siid": 7, + "aiid": 3, + "condition": { + "name": "matchValue", + "parameters": [ + { + "matchValue": "sweep-set-room-clean" + } + ] + } + }, + { + "command": "action", + "parameterType": "UNKNOWN", + "parameters": [ + 34, + 33.0 + ], + "siid": 7, + "aiid": 4, + "condition": { + "name": "matchValue", + "parameters": [ + { + "matchValue": "sweep-set-preference-clean" + } + ] + } + }, + { + "command": "action", + "parameterType": "UNKNOWN", + "parameters": [ + 33.0 + ], + "siid": 7, + "aiid": 5, + "condition": { + "name": "matchValue", + "parameters": [ + { + "matchValue": "sweep-get-preference-clean" + } + ] + } + }, + { + "command": "action", + "parameterType": "UNKNOWN", + "parameters": [ + 38.0 + ], + "siid": 7, + "aiid": 6, + "condition": { + "name": "matchValue", + "parameters": [ + { + "matchValue": "sweep-set-preference-type" + } + ] + } + }, + { + "command": "action", + "parameterType": "UNKNOWN", + "parameters": [ + 43.0 + ], + "siid": 7, + "aiid": 7, + "condition": { + "name": "matchValue", + "parameters": [ + { + "matchValue": "sweep-set-go-charging" + } + ] + } + }, + { + "command": "action", + "parameterType": "UNKNOWN", + "parameters": [ + 24, + 33, + 38.0 + ], + "siid": 7, + "aiid": 8, + "condition": { + "name": "matchValue", + "parameters": [ + { + "matchValue": "sweep-erase-preference" + } + ] + } + }, + { + "command": "action", + "parameterType": "UNKNOWN", + "parameters": [ + 34, + 33.0 + ], + "siid": 7, + "aiid": 9, + "condition": { + "name": "matchValue", + "parameters": [ + { + "matchValue": "sweep-set-preference-ii" + } + ] + } + }, + { + "command": "action", + "parameterType": "UNKNOWN", + "parameters": [ + 33.0 + ], + "siid": 7, + "aiid": 10, + "condition": { + "name": "matchValue", + "parameters": [ + { + "matchValue": "sweep-get-preference-ii" + } + ] + } + }, + { + "command": "action", + "parameterType": "UNKNOWN", + "parameters": [ + 1, + 2, + 3, + 4, + 5, + 6, + 11, + 14, + 12, + 16.0 + ], + "siid": 8, + "aiid": 1, + "condition": { + "name": "matchValue", + "parameters": [ + { + "matchValue": "order-add" + } + ] + } + }, + { + "command": "action", + "parameterType": "UNKNOWN", + "parameters": [ + 1.0 + ], + "siid": 8, + "aiid": 2, + "condition": { + "name": "matchValue", + "parameters": [ + { + "matchValue": "order-del" + } + ] + } + }, + { + "command": "action", + "parameterType": "EMPTY", + "siid": 8, + "aiid": 3, + "condition": { + "name": "matchValue", + "parameters": [ + { + "matchValue": "order-get" + } + ] + } + }, + { + "command": "action", + "parameterType": "UNKNOWN", + "parameters": [ + 1, + 2, + 3, + 4, + 5, + 6, + 11, + 12, + 14, + 16, + 17, + 19.0 + ], + "siid": 8, + "aiid": 4, + "condition": { + "name": "matchValue", + "parameters": [ + { + "matchValue": "order-add-ii" + } + ] + } + }, + { + "command": "action", + "parameterType": "UNKNOWN", + "parameters": [ + 11.0 + ], + "siid": 8, + "aiid": 5, + "condition": { + "name": "matchValue", + "parameters": [ + { + "matchValue": "order-get-map-order-count" + } + ] + } + }, + { + "command": "action", + "parameterType": "EMPTY", + "siid": 9, + "aiid": 1, + "condition": { + "name": "matchValue", + "parameters": [ + { + "matchValue": "point-zone-start-point-clean" + } + ] + } + }, + { + "command": "action", + "parameterType": "UNKNOWN", + "parameters": [ + 4.0 + ], + "siid": 9, + "aiid": 2, + "condition": { + "name": "matchValue", + "parameters": [ + { + "matchValue": "point-zone-pause-point-clean" + } + ] + } + }, + { + "command": "action", + "parameterType": "EMPTY", + "siid": 9, + "aiid": 3, + "condition": { + "name": "matchValue", + "parameters": [ + { + "matchValue": "point-zone-start-zone-clean" + } + ] + } + }, + { + "command": "action", + "parameterType": "UNKNOWN", + "parameters": [ + 4.0 + ], + "siid": 9, + "aiid": 4, + "condition": { + "name": "matchValue", + "parameters": [ + { + "matchValue": "point-zone-pause-zone-clean" + } + ] + } + }, + { + "command": "action", + "parameterType": "UNKNOWN", + "parameters": [ + 3.0 + ], + "siid": 9, + "aiid": 6, + "condition": { + "name": "matchValue", + "parameters": [ + { + "matchValue": "point-zone-set-virtual-wall" + } + ] + } + }, + { + "command": "action", + "parameterType": "UNKNOWN", + "parameters": [ + 2.0 + ], + "siid": 9, + "aiid": 8, + "condition": { + "name": "matchValue", + "parameters": [ + { + "matchValue": "point-zone-set-zone-point" + } + ] + } + }, + { + "command": "action", + "parameterType": "UNKNOWN", + "parameters": [ + 5.0 + ], + "siid": 9, + "aiid": 9, + "condition": { + "name": "matchValue", + "parameters": [ + { + "matchValue": "point-zone-start-point-clean-ii" + } + ] + } + }, + { + "command": "action", + "parameterType": "EMPTY", + "siid": 10, + "aiid": 1, + "condition": { + "name": "matchValue", + "parameters": [ + { + "matchValue": "map-get-map-list" + } + ] + } + }, + { + "command": "action", + "parameterType": "UNKNOWN", + "parameters": [ + 6.0 + ], + "siid": 10, + "aiid": 2, + "condition": { + "name": "matchValue", + "parameters": [ + { + "matchValue": "map-upload-by-mapid" + } + ] + } + }, + { + "command": "action", + "parameterType": "UNKNOWN", + "parameters": [ + 6.0 + ], + "siid": 10, + "aiid": 3, + "condition": { + "name": "matchValue", + "parameters": [ + { + "matchValue": "map-set-cur-map" + } + ] + } + }, + { + "command": "action", + "parameterType": "UNKNOWN", + "parameters": [ + 6.0 + ], + "siid": 10, + "aiid": 4, + "condition": { + "name": "matchValue", + "parameters": [ + { + "matchValue": "map-del-map" + } + ] + } + }, + { + "command": "action", + "parameterType": "UNKNOWN", + "parameters": [ + 6, + 8.0 + ], + "siid": 10, + "aiid": 5, + "condition": { + "name": "matchValue", + "parameters": [ + { + "matchValue": "map-rename-map" + } + ] + } + }, + { + "command": "action", + "parameterType": "UNKNOWN", + "parameters": [ + 7.0 + ], + "siid": 10, + "aiid": 6, + "condition": { + "name": "matchValue", + "parameters": [ + { + "matchValue": "map-upload-by-maptype" + } + ] + } + }, + { + "command": "action", + "parameterType": "UNKNOWN", + "parameters": [ + 6, + 9, + 10.0 + ], + "siid": 10, + "aiid": 7, + "condition": { + "name": "matchValue", + "parameters": [ + { + "matchValue": "map-rename-room" + } + ] + } + }, + { + "command": "action", + "parameterType": "UNKNOWN", + "parameters": [ + 6, + 11, + 13.0 + ], + "siid": 10, + "aiid": 8, + "condition": { + "name": "matchValue", + "parameters": [ + { + "matchValue": "map-arrange-room" + } + ] + } + }, + { + "command": "action", + "parameterType": "UNKNOWN", + "parameters": [ + 6, + 9, + 12, + 13.0 + ], + "siid": 10, + "aiid": 9, + "condition": { + "name": "matchValue", + "parameters": [ + { + "matchValue": "map-split-room" + } + ] + } + }, + { + "command": "action", + "parameterType": "EMPTY", + "siid": 10, + "aiid": 10, + "condition": { + "name": "matchValue", + "parameters": [ + { + "matchValue": "map-reset-map" + } + ] + } + }, + { + "command": "action", + "parameterType": "UNKNOWN", + "parameters": [ + 14.0 + ], + "siid": 10, + "aiid": 11, + "condition": { + "name": "matchValue", + "parameters": [ + { + "matchValue": "map-build-new-map" + } + ] + } + }, + { + "command": "action", + "parameterType": "UNKNOWN", + "parameters": [ + 15, + 16.0 + ], + "siid": 10, + "aiid": 12, + "condition": { + "name": "matchValue", + "parameters": [ + { + "matchValue": "map-get-cur-path" + } + ] + } + }, + { + "command": "action", + "parameterType": "UNKNOWN", + "parameters": [ + 2.0 + ], + "siid": 10, + "aiid": 13, + "condition": { + "name": "matchValue", + "parameters": [ + { + "matchValue": "map-get-map-room-list" + } + ] + } + }, + { + "command": "action", + "parameterType": "UNKNOWN", + "parameters": [ + 6.0 + ], + "siid": 10, + "aiid": 14, + "condition": { + "name": "matchValue", + "parameters": [ + { + "matchValue": "map-upload-by-mapid-ii" + } + ] + } + }, + { + "command": "action", + "parameterType": "UNKNOWN", + "parameters": [ + 7.0 + ], + "siid": 10, + "aiid": 15, + "condition": { + "name": "matchValue", + "parameters": [ + { + "matchValue": "map-upload-by-maptype-ii" + } + ] + } + }, + { + "command": "action", + "parameterType": "EMPTY", + "siid": 10, + "aiid": 16, + "condition": { + "name": "matchValue", + "parameters": [ + { + "matchValue": "map-reset-map-ii" + } + ] + } + }, + { + "command": "action", + "parameterType": "UNKNOWN", + "parameters": [ + 14.0 + ], + "siid": 10, + "aiid": 17, + "condition": { + "name": "matchValue", + "parameters": [ + { + "matchValue": "map-build-map-ii" + } + ] + } + }, + { + "command": "action", + "parameterType": "UNKNOWN", + "parameters": [ + 6, + 22.0 + ], + "siid": 10, + "aiid": 18, + "condition": { + "name": "matchValue", + "parameters": [ + { + "matchValue": "map-set-mijia-room-list" + } + ] + } + }, + { + "command": "action", + "parameterType": "UNKNOWN", + "parameters": [ + 1, + 2, + 3, + 4, + 5, + 6.0 + ], + "siid": 12, + "aiid": 1, + "condition": { + "name": "matchValue", + "parameters": [ + { + "matchValue": "disturb-set-notdisturb" + } + ] + } + }, + { + "command": "action", + "parameterType": "UNKNOWN", + "parameters": [ + 1, + 5, + 6.0 + ], + "siid": 14, + "aiid": 1, + "condition": { + "name": "matchValue", + "parameters": [ + { + "matchValue": "language-download-voice" + } + ] + } + }, + { + "command": "action", + "parameterType": "EMPTY", + "siid": 14, + "aiid": 2, + "condition": { + "name": "matchValue", + "parameters": [ + { + "matchValue": "language-get-download-status" + } + ] + } + } + ], + "readmeComment": "Value mapping `[\"sweep-reset-consumable\"\u003d\"Reset Consumable\",\"sweep-set-calibration\"\u003d\"Set Calibration\",\"sweep-set-room-clean\"\u003d\"Set Room Clean\",\"sweep-set-preference-clean\"\u003d\"Set Preference Clean\",\"sweep-get-preference-clean\"\u003d\"Get Preference Clean\",\"sweep-set-preference-type\"\u003d\"Set Preference Type\",\"sweep-set-go-charging\"\u003d\"Set Go Charging\",\"sweep-erase-preference\"\u003d\"Erase Preference\",\"sweep-set-preference-ii\"\u003d\"Set Preference Ii\",\"sweep-get-preference-ii\"\u003d\"Get Preference Ii\",\"order-add\"\u003d\"Order Add\",\"order-del\"\u003d\"Order Del\",\"order-get\"\u003d\"Order Get\",\"order-add-ii\"\u003d\"Order Add Ii\",\"order-get-map-order-count\"\u003d\"Order Get Map Order Count\",\"point-zone-start-point-clean\"\u003d\"Point Zone Start Point Clean\",\"point-zone-pause-point-clean\"\u003d\"Point Zone Pause Point Clean\",\"point-zone-start-zone-clean\"\u003d\"Point Zone Start Zone Clean\",\"point-zone-pause-zone-clean\"\u003d\"Point Zone Pause Zone Clean\",\"point-zone-set-virtual-wall\"\u003d\"Point Zone Set Virtual Wall\",\"point-zone-set-zone-point\"\u003d\"Point Zone Set Zone Point\",\"point-zone-start-point-clean-ii\"\u003d\"Point Zone Start Point Clean Ii\",\"map-get-map-list\"\u003d\"Map Get Map List\",\"map-upload-by-mapid\"\u003d\"Map Upload By Mapid\",\"map-set-cur-map\"\u003d\"Map Set Cur Map\",\"map-del-map\"\u003d\"Map Del Map\",\"map-rename-map\"\u003d\"Map Rename Map\",\"map-upload-by-maptype\"\u003d\"Map Upload By Maptype\",\"map-rename-room\"\u003d\"Map Rename Room\",\"map-arrange-room\"\u003d\"Map Arrange Room\",\"map-split-room\"\u003d\"Map Split Room\",\"map-reset-map\"\u003d\"Map Reset Map\",\"map-build-new-map\"\u003d\"Map Build New Map\",\"map-get-cur-path\"\u003d\"Map Get Cur Path\",\"map-get-map-room-list\"\u003d\"Map Get Map Room List\",\"map-upload-by-mapid-ii\"\u003d\"Map Upload By Mapid Ii\",\"map-upload-by-maptype-ii\"\u003d\"Map Upload By Maptype Ii\",\"map-reset-map-ii\"\u003d\"Map Reset Map Ii\",\"map-build-map-ii\"\u003d\"Map Build Map Ii\",\"map-set-mijia-room-list\"\u003d\"Map Set Mijia Room List\",\"disturb-set-notdisturb\"\u003d\"Disturb Set Notdisturb\",\"language-download-voice\"\u003d\"Language Download Voice\",\"language-get-download-status\"\u003d\"Language Get Download Status\"]`" + }, + { + "property": "status", + "siid": 2, + "piid": 1, + "friendlyName": "Robot Cleaner - Status", + "channel": "status", + "type": "Number", + "stateDescription": { + "readOnly": true, + "options": [ + { + "value": "0", + "label": "Sleep" + }, + { + "value": "1", + "label": "Idle" + }, + { + "value": "2", + "label": "Paused" + }, + { + "value": "3", + "label": "Go Charging" + }, + { + "value": "4", + "label": "Charging" + }, + { + "value": "5", + "label": "Sweeping" + }, + { + "value": "6", + "label": "Sweeping and Mopping" + }, + { + "value": "7", + "label": "Mopping" + }, + { + "value": "8", + "label": "Upgrading" + } + ] + }, + "refresh": true, + "actions": [], + "readmeComment": "Value mapping `[\"0\"\u003d\"Sleep\",\"1\"\u003d\"Idle\",\"2\"\u003d\"Paused\",\"3\"\u003d\"Go Charging\",\"4\"\u003d\"Charging\",\"5\"\u003d\"Sweeping\",\"6\"\u003d\"Sweeping and Mopping\",\"7\"\u003d\"Mopping\",\"8\"\u003d\"Upgrading\"]`" + }, + { + "property": "fault", + "siid": 2, + "piid": 2, + "friendlyName": "Robot Cleaner - Device Fault", + "channel": "fault", + "type": "Number", + "stateDescription": { + "minimum": 0, + "maximum": 3000, + "step": 1, + "pattern": "%.0f", + "readOnly": true + }, + "refresh": true, + "actions": [] + }, + { + "property": "mode", + "siid": 2, + "piid": 4, + "friendlyName": "Robot Cleaner - Mode", + "channel": "mode", + "type": "Number", + "stateDescription": { + "options": [ + { + "value": "0", + "label": "Sweep" + }, + { + "value": "1", + "label": "Sweep And Mop" + }, + { + "value": "2", + "label": "Mop" + } + ] + }, + "refresh": true, + "actions": [ + { + "command": "set_properties", + "parameterType": "NUMBER" + } + ], + "readmeComment": "Value mapping `[\"0\"\u003d\"Sweep\",\"1\"\u003d\"Sweep And Mop\",\"2\"\u003d\"Mop\"]`" + }, + { + "property": "sweep-type", + "siid": 2, + "piid": 8, + "friendlyName": "Robot Cleaner - Sweep Type", + "channel": "sweep_type", + "type": "Number", + "stateDescription": { + "options": [ + { + "value": "0", + "label": "Global" + }, + { + "value": "1", + "label": "Mop" + }, + { + "value": "2", + "label": "Edge" + }, + { + "value": "3", + "label": "Area" + }, + { + "value": "4", + "label": "Point" + }, + { + "value": "5", + "label": "Remote" + }, + { + "value": "6", + "label": "Explore" + }, + { + "value": "7", + "label": "Room" + }, + { + "value": "8", + "label": "Floor" + } + ] + }, + "refresh": true, + "actions": [ + { + "command": "set_properties", + "parameterType": "NUMBER" + } + ], + "readmeComment": "Value mapping `[\"0\"\u003d\"Global\",\"1\"\u003d\"Mop\",\"2\"\u003d\"Edge\",\"3\"\u003d\"Area\",\"4\"\u003d\"Point\",\"5\"\u003d\"Remote\",\"6\"\u003d\"Explore\",\"7\"\u003d\"Room\",\"8\"\u003d\"Floor\"]`" + }, + { + "property": "on", + "siid": 2, + "piid": 9, + "friendlyName": "Robot Cleaner - Switch Status", + "channel": "on", + "type": "String", + "refresh": true, + "actions": [ + { + "command": "set_properties", + "parameterType": "STRING" + } + ] + }, + { + "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": "alarm", + "siid": 4, + "piid": 1, + "friendlyName": "Alarm", + "channel": "alarm", + "type": "Switch", + "refresh": true, + "actions": [ + { + "command": "set_properties", + "parameterType": "ONOFFBOOL" + } + ] + }, + { + "property": "volume", + "siid": 4, + "piid": 2, + "friendlyName": "Locating Volume", + "channel": "volume", + "type": "Number:Dimensionless", + "unit": "percentage", + "stateDescription": { + "minimum": 0, + "maximum": 10, + "step": 1, + "pattern": "%.0f" + }, + "refresh": true, + "actions": [ + { + "command": "set_properties", + "parameterType": "NUMBER" + } + ] + }, + { + "property": "repeat-state", + "siid": 7, + "piid": 1, + "friendlyName": "Sweep - Repeat State", + "channel": "repeat_state", + "type": "Switch", + "refresh": true, + "actions": [ + { + "command": "set_properties", + "parameterType": "ONOFFNUMBER" + } + ] + }, + { + "property": "door-state", + "siid": 7, + "piid": 3, + "friendlyName": "Sweep - Door State", + "channel": "door_state", + "type": "Number", + "stateDescription": { + "readOnly": true, + "options": [ + { + "value": "0", + "label": "None" + }, + { + "value": "1", + "label": "DustBox" + }, + { + "value": "2", + "label": "WaterBox" + }, + { + "value": "3", + "label": "TwoInOne" + } + ] + }, + "refresh": true, + "actions": [], + "readmeComment": "Value mapping `[\"0\"\u003d\"None\",\"1\"\u003d\"DustBox\",\"2\"\u003d\"WaterBox\",\"3\"\u003d\"TwoInOne\"]`" + }, + { + "property": "cloth-state", + "siid": 7, + "piid": 4, + "friendlyName": "Sweep - Cloth State", + "channel": "cloth_state", + "type": "Contact", + "stateDescription": { + "readOnly": true + }, + "refresh": true, + "actions": [] + }, + { + "property": "suction-state", + "siid": 7, + "piid": 5, + "friendlyName": "Robot Cleaner - Power", + "channel": "suction_state", + "type": "Number", + "stateDescription": { + "options": [ + { + "value": "0", + "label": "Slient" + }, + { + "value": "1", + "label": "Standard" + }, + { + "value": "2", + "label": "Medium" + }, + { + "value": "3", + "label": "Turbo" + } + ] + }, + "refresh": true, + "actions": [ + { + "command": "set_properties", + "parameterType": "NUMBER" + } + ], + "readmeComment": "Value mapping `[\"0\"\u003d\"Slient\",\"1\"\u003d\"Standard\",\"2\"\u003d\"Medium\",\"3\"\u003d\"Turbo\"]`" + }, + { + "property": "water-state", + "siid": 7, + "piid": 6, + "friendlyName": "Sweep - Water State", + "channel": "water_state", + "type": "Number", + "stateDescription": { + "options": [ + { + "value": "0", + "label": "Low" + }, + { + "value": "1", + "label": "Mid" + }, + { + "value": "2", + "label": "High" + } + ] + }, + "refresh": true, + "actions": [ + { + "command": "set_properties", + "parameterType": "NUMBER" + } + ], + "readmeComment": "Value mapping `[\"0\"\u003d\"Low\",\"1\"\u003d\"Mid\",\"2\"\u003d\"High\"]`" + }, + { + "property": "mop-route", + "siid": 7, + "piid": 7, + "friendlyName": "Sweep - Mop Route", + "channel": "mop_route", + "type": "Number", + "stateDescription": { + "options": [ + { + "value": "0", + "label": "S" + }, + { + "value": "1", + "label": "Y" + } + ] + }, + "refresh": true, + "actions": [ + { + "command": "set_properties", + "parameterType": "NUMBER" + } + ], + "readmeComment": "Value mapping `[\"0\"\u003d\"S\",\"1\"\u003d\"Y\"]`" + }, + { + "property": "side-brush-life", + "siid": 7, + "piid": 8, + "friendlyName": "Sweep - Side Brush Life", + "channel": "side_brush_life", + "type": "Number:Dimensionless", + "unit": "percentage", + "stateDescription": { + "minimum": 0, + "maximum": 100, + "step": 1, + "pattern": "%.0f %unit%", + "readOnly": true + }, + "refresh": true, + "actions": [] + }, + { + "property": "side-brush-hours", + "siid": 7, + "piid": 9, + "friendlyName": "Sweep - Side Brush Hours", + "channel": "side_brush_hours", + "type": "Number:Time", + "unit": "hours", + "stateDescription": { + "minimum": 0, + "maximum": 180, + "step": 1, + "pattern": "%.0f %unit%", + "readOnly": true + }, + "refresh": true, + "actions": [] + }, + { + "property": "main-brush-life", + "siid": 7, + "piid": 10, + "friendlyName": "Sweep - Main Brush Life", + "channel": "main_brush_life", + "type": "Number:Dimensionless", + "unit": "percentage", + "stateDescription": { + "minimum": 0, + "maximum": 100, + "step": 1, + "pattern": "%.0f %unit%", + "readOnly": true + }, + "refresh": true, + "actions": [] + }, + { + "property": "main-brush-hours", + "siid": 7, + "piid": 11, + "friendlyName": "Sweep - Main Brush Hours", + "channel": "main_brush_hours", + "type": "Number:Time", + "unit": "hours", + "stateDescription": { + "minimum": 0, + "maximum": 360, + "step": 1, + "pattern": "%.0f %unit%", + "readOnly": true + }, + "refresh": true, + "actions": [] + }, + { + "property": "hypa-life", + "siid": 7, + "piid": 12, + "friendlyName": "Sweep - Hypa Life", + "channel": "hypa_life", + "type": "Number:Dimensionless", + "unit": "percentage", + "stateDescription": { + "minimum": 0, + "maximum": 100, + "step": 1, + "pattern": "%.0f %unit%", + "readOnly": true + }, + "refresh": true, + "actions": [] + }, + { + "property": "hypa-hours", + "siid": 7, + "piid": 13, + "friendlyName": "Sweep - Hypa Hours", + "channel": "hypa_hours", + "type": "Number:Time", + "unit": "hours", + "stateDescription": { + "minimum": 0, + "maximum": 180, + "step": 1, + "pattern": "%.0f %unit%", + "readOnly": true + }, + "refresh": true, + "actions": [] + }, + { + "property": "mop-life", + "siid": 7, + "piid": 14, + "friendlyName": "Sweep - Mop Life", + "channel": "mop_life", + "type": "Number:Dimensionless", + "unit": "percentage", + "stateDescription": { + "minimum": 0, + "maximum": 100, + "step": 1, + "pattern": "%.0f %unit%", + "readOnly": true + }, + "refresh": true, + "actions": [] + }, + { + "property": "mop-hours", + "siid": 7, + "piid": 15, + "friendlyName": "Sweep - Mop Hours", + "channel": "mop_hours", + "type": "Number:Time", + "unit": "hours", + "stateDescription": { + "minimum": 0, + "maximum": 180, + "step": 1, + "pattern": "%.0f %unit%", + "readOnly": true + }, + "refresh": true, + "actions": [] + }, + { + "property": "direction", + "siid": 7, + "piid": 16, + "friendlyName": "Sweep - Direction", + "channel": "direction", + "type": "Number", + "stateDescription": { + "options": [ + { + "value": "1", + "label": "Forward" + }, + { + "value": "2", + "label": "Left" + }, + { + "value": "3", + "label": "Right" + }, + { + "value": "4", + "label": "Back" + }, + { + "value": "5", + "label": "Stop" + }, + { + "value": "10", + "label": "Exit" + } + ] + }, + "refresh": false, + "actions": [ + { + "command": "set_properties", + "parameterType": "NUMBER" + } + ], + "readmeComment": "Value mapping `[\"1\"\u003d\"Forward\",\"2\"\u003d\"Left\",\"3\"\u003d\"Right\",\"4\"\u003d\"Back\",\"5\"\u003d\"Stop\",\"10\"\u003d\"Exit\"]`" + }, + { + "property": "time-zone", + "siid": 7, + "piid": 20, + "friendlyName": "Sweep - Time Zone", + "channel": "time_zone", + "type": "Number", + "stateDescription": { + "step": 1, + "pattern": "%.0f" + }, + "refresh": true, + "actions": [ + { + "command": "set_properties", + "parameterType": "NUMBER" + } + ] + }, + { + "property": "cur-lang", + "siid": 7, + "piid": 21, + "friendlyName": "Sweep - Cur Lang", + "channel": "cur_lang", + "type": "String", + "refresh": true, + "actions": [ + { + "command": "set_properties", + "parameterType": "STRING" + } + ] + }, + { + "property": "cleaning-time", + "siid": 7, + "piid": 22, + "friendlyName": "Sweep - Cleaning Time", + "channel": "cleaning_time", + "type": "Number:Time", + "unit": "minutes", + "stateDescription": { + "minimum": 0, + "maximum": 120, + "step": 1, + "pattern": "%.0f %unit%", + "readOnly": true + }, + "refresh": true, + "actions": [] + }, + { + "property": "cleaning-area", + "siid": 7, + "piid": 23, + "friendlyName": "Sweep - Cleaning Area", + "channel": "cleaning_area", + "type": "Number", + "stateDescription": { + "minimum": 0, + "maximum": 1200, + "step": 1, + "pattern": "%.0f", + "readOnly": true + }, + "refresh": true, + "actions": [] + }, + { + "property": "multi-prop-vacuum", + "siid": 7, + "piid": 45, + "friendlyName": "Sweep - Multi Prop Vacuum", + "channel": "multi_prop_vacuum", + "type": "String", + "stateDescription": { + "readOnly": true + }, + "refresh": true, + "actions": [] + }, + { + "property": "tank-shake", + "siid": 7, + "piid": 48, + "friendlyName": "Sweep - Tank Shake", + "channel": "tank_shake", + "type": "Switch", + "refresh": true, + "actions": [ + { + "command": "set_properties", + "parameterType": "ONOFFNUMBER" + } + ] + }, + { + "property": "shake-shift", + "siid": 7, + "piid": 50, + "friendlyName": "Sweep - Shake Shift", + "channel": "shake_shift", + "type": "Number", + "stateDescription": { + "options": [ + { + "value": "1", + "label": "Low" + }, + { + "value": "2", + "label": "Mid" + }, + { + "value": "3", + "label": "High" + } + ] + }, + "refresh": true, + "actions": [ + { + "command": "set_properties", + "parameterType": "NUMBER" + } + ], + "readmeComment": "Value mapping `[\"1\"\u003d\"Low\",\"2\"\u003d\"Mid\",\"3\"\u003d\"High\"]`" + }, + { + "property": "order-id", + "siid": 8, + "piid": 1, + "friendlyName": "Order - Order Id", + "channel": "order_id", + "type": "Number", + "stateDescription": { + "minimum": 0, + "maximum": 100, + "step": 1, + "pattern": "%.0f" + }, + "refresh": false, + "actions": [ + { + "command": "set_properties", + "parameterType": "NUMBER" + } + ] + }, + { + "property": "enable", + "siid": 8, + "piid": 2, + "friendlyName": "Order - Enable", + "channel": "enable", + "type": "Switch", + "refresh": false, + "actions": [ + { + "command": "set_properties", + "parameterType": "ONOFFNUMBER" + } + ] + }, + { + "property": "day", + "siid": 8, + "piid": 3, + "friendlyName": "Order - Day", + "channel": "day", + "type": "Number:Time", + "unit": "days", + "stateDescription": { + "minimum": 0, + "maximum": 255, + "step": 1, + "pattern": "%.0f %unit%" + }, + "refresh": false, + "actions": [ + { + "command": "set_properties", + "parameterType": "NUMBER" + } + ] + }, + { + "property": "hour", + "siid": 8, + "piid": 4, + "friendlyName": "Order - Hour", + "channel": "hour", + "type": "Number:Time", + "unit": "hours", + "stateDescription": { + "minimum": 0, + "maximum": 23, + "step": 1, + "pattern": "%.0f %unit%" + }, + "refresh": false, + "actions": [ + { + "command": "set_properties", + "parameterType": "NUMBER" + } + ] + }, + { + "property": "minute", + "siid": 8, + "piid": 5, + "friendlyName": "Order - Minute", + "channel": "minute", + "type": "Number:Time", + "unit": "minutes", + "stateDescription": { + "minimum": 0, + "maximum": 59, + "step": 1, + "pattern": "%.0f %unit%" + }, + "refresh": false, + "actions": [ + { + "command": "set_properties", + "parameterType": "NUMBER" + } + ] + }, + { + "property": "repeat", + "siid": 8, + "piid": 6, + "friendlyName": "Order - Repeat", + "channel": "repeat", + "type": "Switch", + "refresh": false, + "actions": [ + { + "command": "set_properties", + "parameterType": "ONOFFNUMBER" + } + ] + }, + { + "property": "clean-way", + "siid": 8, + "piid": 7, + "friendlyName": "Order - Clean Way", + "channel": "clean_way", + "type": "Number", + "stateDescription": { + "options": [ + { + "value": "0", + "label": "Sweep" + }, + { + "value": "1", + "label": "Sweep Mop" + }, + { + "value": "2", + "label": "Mop" + } + ] + }, + "refresh": false, + "actions": [ + { + "command": "set_properties", + "parameterType": "NUMBER" + } + ], + "readmeComment": "Value mapping `[\"0\"\u003d\"Sweep\",\"1\"\u003d\"Sweep Mop\",\"2\"\u003d\"Mop\"]`" + }, + { + "property": "suction", + "siid": 8, + "piid": 8, + "friendlyName": "Order - Suction", + "channel": "suction", + "type": "Number", + "stateDescription": { + "options": [ + { + "value": "0", + "label": "Slient" + }, + { + "value": "1", + "label": "Normal" + }, + { + "value": "2", + "label": "Medium" + }, + { + "value": "3", + "label": "Turbo" + } + ] + }, + "refresh": false, + "actions": [ + { + "command": "set_properties", + "parameterType": "NUMBER" + } + ], + "readmeComment": "Value mapping `[\"0\"\u003d\"Slient\",\"1\"\u003d\"Normal\",\"2\"\u003d\"Medium\",\"3\"\u003d\"Turbo\"]`" + }, + { + "property": "water", + "siid": 8, + "piid": 9, + "friendlyName": "Order - Water", + "channel": "water", + "type": "Number", + "stateDescription": { + "options": [ + { + "value": "0", + "label": "Low" + }, + { + "value": "1", + "label": "Mid" + }, + { + "value": "2", + "label": "High" + } + ] + }, + "refresh": false, + "actions": [ + { + "command": "set_properties", + "parameterType": "NUMBER" + } + ], + "readmeComment": "Value mapping `[\"0\"\u003d\"Low\",\"1\"\u003d\"Mid\",\"2\"\u003d\"High\"]`" + }, + { + "property": "twice-clean", + "siid": 8, + "piid": 10, + "friendlyName": "Order - Twice Clean", + "channel": "twice_clean", + "type": "Switch", + "refresh": false, + "actions": [ + { + "command": "set_properties", + "parameterType": "ONOFFNUMBER" + } + ] + }, + { + "property": "mapid", + "siid": 8, + "piid": 11, + "friendlyName": "Order - Mapid", + "channel": "mapid", + "type": "Number", + "stateDescription": { + "minimum": 0, + "step": 1, + "pattern": "%.0f" + }, + "refresh": false, + "actions": [ + { + "command": "set_properties", + "parameterType": "STRING" + } + ] + }, + { + "property": "room-count", + "siid": 8, + "piid": 12, + "friendlyName": "Order - Room Count", + "channel": "room_count", + "type": "Number", + "stateDescription": { + "minimum": 0, + "maximum": 64, + "step": 1, + "pattern": "%.0f" + }, + "refresh": false, + "actions": [ + { + "command": "set_properties", + "parameterType": "NUMBER" + } + ] + }, + { + "property": "room-data", + "siid": 8, + "piid": 13, + "friendlyName": "Order - Room Data", + "channel": "room_data", + "type": "String", + "refresh": false, + "actions": [ + { + "command": "set_properties", + "parameterType": "STRING" + } + ] + }, + { + "property": "time-zone1", + "siid": 8, + "piid": 14, + "friendlyName": "Order - Time Zone", + "channel": "time_zone1", + "type": "Number", + "stateDescription": { + "step": 1, + "pattern": "%.0f" + }, + "refresh": false, + "actions": [ + { + "command": "set_properties", + "parameterType": "NUMBER" + } + ] + }, + { + "property": "all-enable-count", + "siid": 8, + "piid": 18, + "friendlyName": "Order - All Enable Count", + "channel": "all_enable_count", + "type": "String", + "stateDescription": { + "readOnly": true + }, + "refresh": true, + "actions": [] + }, + { + "property": "zone-points", + "siid": 9, + "piid": 2, + "friendlyName": "Point Zone - Zone Points", + "channel": "zone_points", + "type": "String", + "refresh": false, + "actions": [ + { + "command": "set_properties", + "parameterType": "STRING" + } + ] + }, + { + "property": "restrict-points", + "siid": 9, + "piid": 3, + "friendlyName": "Point Zone - Restrict Points", + "channel": "restrict_points", + "type": "String", + "refresh": false, + "actions": [ + { + "command": "set_properties", + "parameterType": "STRING" + } + ] + }, + { + "property": "target-point", + "siid": 9, + "piid": 5, + "friendlyName": "Point Zone - Target Point", + "channel": "target_point", + "type": "String", + "refresh": false, + "actions": [ + { + "command": "set_properties", + "parameterType": "STRING" + } + ] + }, + { + "property": "remember-state", + "siid": 10, + "piid": 1, + "friendlyName": "Map - Remember State", + "channel": "remember_state", + "type": "Switch", + "refresh": false, + "actions": [ + { + "command": "set_properties", + "parameterType": "ONOFFNUMBER" + } + ] + }, + { + "property": "cur-map-id", + "siid": 10, + "piid": 2, + "friendlyName": "Map - Cur Map Id", + "channel": "cur_map_id", + "type": "Number", + "stateDescription": { + "minimum": 0, + "step": 1, + "pattern": "%.0f", + "readOnly": true + }, + "refresh": false, + "actions": [] + }, + { + "property": "map-num", + "siid": 10, + "piid": 3, + "friendlyName": "Map - Map Num", + "channel": "map_num", + "type": "Number", + "stateDescription": { + "minimum": 0, + "maximum": 5, + "step": 1, + "pattern": "%.0f", + "readOnly": true + }, + "refresh": false, + "actions": [] + }, + { + "property": "cur-cleaning-path", + "siid": 10, + "piid": 5, + "friendlyName": "Map - Cur Cleaning Path", + "channel": "cur_cleaning_path", + "type": "String", + "stateDescription": { + "readOnly": true + }, + "refresh": false, + "actions": [] + }, + { + "property": "build-map", + "siid": 10, + "piid": 14, + "friendlyName": "Map - Build Map", + "channel": "build_map", + "type": "Number", + "stateDescription": { + "readOnly": true, + "options": [ + { + "value": "0", + "label": "None" + }, + { + "value": "1", + "label": "Build" + }, + { + "value": "2", + "label": "Clean" + } + ] + }, + "refresh": true, + "actions": [], + "readmeComment": "Value mapping `[\"0\"\u003d\"None\",\"1\"\u003d\"Build\",\"2\"\u003d\"Clean\"]`" + }, + { + "property": "has-new-map", + "siid": 10, + "piid": 19, + "friendlyName": "Map - Has New Map", + "channel": "has_new_map", + "type": "Number", + "stateDescription": { + "readOnly": true, + "options": [ + { + "value": "0", + "label": "Without Map To Save" + }, + { + "value": "1", + "label": "Wait To Rename Map" + } + ] + }, + "refresh": true, + "actions": [], + "readmeComment": "Value mapping `[\"0\"\u003d\"Without Map To Save\",\"1\"\u003d\"Wait To Rename Map\"]`" + }, + { + "property": "map-uploads", + "siid": 10, + "piid": 23, + "friendlyName": "Map - Map Uploads", + "channel": "map_uploads", + "type": "Number", + "stateDescription": { + "options": [ + { + "value": "0", + "label": "Upload" + }, + { + "value": "1", + "label": "Do Not Upload" + } + ] + }, + "refresh": false, + "actions": [ + { + "command": "set_properties", + "parameterType": "NUMBER" + } + ], + "readmeComment": "Value mapping `[\"0\"\u003d\"Upload\",\"1\"\u003d\"Do Not Upload\"]`" + }, + { + "property": "dnd-enable", + "siid": 12, + "piid": 1, + "friendlyName": "Disturb - Dnd Enable", + "channel": "dnd_enable", + "type": "Contact", + "stateDescription": { + "readOnly": true + }, + "refresh": true, + "actions": [] + }, + { + "property": "dnd-start-hour", + "siid": 12, + "piid": 2, + "friendlyName": "Disturb - Dnd Start Hour", + "channel": "dnd_start_hour", + "type": "Number:Time", + "unit": "hours", + "stateDescription": { + "minimum": 0, + "maximum": 23, + "step": 1, + "pattern": "%.0f %unit%", + "readOnly": true + }, + "refresh": true, + "actions": [] + }, + { + "property": "dnd-start-minute", + "siid": 12, + "piid": 3, + "friendlyName": "Disturb - Dnd Start Minute", + "channel": "dnd_start_minute", + "type": "Number:Time", + "unit": "minutes", + "stateDescription": { + "minimum": 0, + "maximum": 59, + "step": 1, + "pattern": "%.0f %unit%", + "readOnly": true + }, + "refresh": true, + "actions": [] + }, + { + "property": "dnd-end-hour", + "siid": 12, + "piid": 4, + "friendlyName": "Disturb - Dnd End Hour", + "channel": "dnd_end_hour", + "type": "Number:Time", + "unit": "hours", + "stateDescription": { + "minimum": 0, + "maximum": 23, + "step": 1, + "pattern": "%.0f %unit%", + "readOnly": true + }, + "refresh": true, + "actions": [] + }, + { + "property": "dnd-end-minute", + "siid": 12, + "piid": 5, + "friendlyName": "Disturb - Dnd End Minute", + "channel": "dnd_end_minute", + "type": "Number:Time", + "unit": "minutes", + "stateDescription": { + "minimum": 0, + "maximum": 59, + "step": 1, + "pattern": "%.0f %unit%", + "readOnly": true + }, + "refresh": true, + "actions": [] + }, + { + "property": "multi-prop-dnd", + "siid": 12, + "piid": 7, + "friendlyName": "Disturb - Multi Prop Dnd", + "channel": "multi_prop_dnd", + "type": "String", + "stateDescription": { + "readOnly": true + }, + "refresh": true, + "actions": [] + } + ], + "readmeComment": "Example command for room cleaning `xiaomi_robot_execute.sendCommand(\u0027action{\"siid\":7,\"aiid\":3,\"in\":[{\"piid\":24,\"value\":\"11,12,etc room ids\"},{\"piid\":25,\"value\":0},{\"piid\":26,\"value\":1}]}\u0027)`", + "experimental": false + } +}