
## General - Working Mode

### Function Introduction
Used to control different cleaning modes of the robot vacuum.

### DP Protocol
 **DP Code** | **Required** | **Function Point Name** | **Data Type**  | **Data Transmission Type**   | **Remarks**               
-------------|----------|-----------|-----------|--------------|----------------------
 mode  | Required       | Working Mode      | Enum (Enum) | Read/Write (rw) | --

**Enum Values**

- smart: Automatic cleaning mode / Whole-house cleaning mode
- zone: Zone cleaning mode / Rectangular cleaning mode 
- pose: Spot cleaning mode / Point cleaning mode 
- part: Partial cleaning mode 
- select_room: Selected area cleaning mode 

### Device Interaction Process
The flowchart illustrates a normal interaction process for the point cleaning mode. Special cases, such as device malfunctions or device repositioning, are not included in the flowchart. The overall process is similar to the whole-house intelligent cleaning process in [General - Cleaning Switch], which can be compared for reference.

```mermaid
sequenceDiagram
 rect rgb(191, 223, 255)
note right of Panel: Start point cleaning.
    Panel->>Panel: Switch to point cleaning mode, display point cleaning frame on the map, support gesture movement of the cleaning frame
    Panel->>Device: Notify device to update to point mode/mode: pose
    Panel->>Device: Send the coordinates of the cleaning frame to the device /command_trans: ***
    Panel->>Device: Start device/switch_go: true
    Device-->>Panel: Respond to panel mode DP point update/mode: pose
    Device-->>Panel: Respond to panel command_trans DP point update/command_trans: ***
    Device-->>Panel: Respond to panel switch_go DP point update/switch_go: true
    Device-->>Panel: Report status DP to update machine status 
    Device-->>Panel: Periodically report map data  
    Device-->>Panel: Periodically report path data
end

rect rgb(200, 150, 255)
note right of Panel: Stop cleaning task.
  Panel->>Device: Stop device/switch_go: false
  Device-->>Panel: Respond to panel switch_go DP point update/switch_go: false
  Device-->>Panel: Report status DP to update machine status 
  Device-->>Panel: After each task ends, reset the cleaning mode to whole-house mode/mode: smart
end
```

### Notes
Except for the whole-house cleaning mode, the other cleaning modes require some interaction with the map. Additionally, when issuing cleaning tasks, the map-related cleaning frame data needs to be sent to the device through the command_trans raw type DP. For specific protocol formats, please contact your project manager or submit a support ticket for confirmation.