Skip to content

Commit 3770771

Browse files
committed
fix: explicitly request freeClean mode via capability action helper function
1 parent a045ce9 commit 3770771

1 file changed

Lines changed: 15 additions & 2 deletions

File tree

deebot_client/hardware/o073ti.py

Lines changed: 15 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -122,7 +122,17 @@
122122
)
123123
from deebot_client.events.auto_empty import AutoEmptyEvent
124124
from deebot_client.events.efficiency_mode import EfficiencyMode
125-
from deebot_client.models import StaticDeviceInfo
125+
from deebot_client.models import CleanMode, StaticDeviceInfo
126+
127+
128+
def _get_clean_area_command(
129+
mode: CleanMode, area: list[int | float], count: int = 1
130+
) -> CleanAreaV2:
131+
return CleanAreaV2(
132+
CleanMode.FREE_CLEAN if mode == CleanMode.SPOT_AREA else mode,
133+
area,
134+
count,
135+
)
126136

127137

128138
def get_device_info() -> StaticDeviceInfo:
@@ -137,7 +147,10 @@ def get_device_info() -> StaticDeviceInfo:
137147
battery=CapabilityEvent(BatteryEvent, [GetBattery()]),
138148
charge=CapabilityExecute(Charge),
139149
clean=CapabilityClean(
140-
action=CapabilityCleanAction(command=CleanV2, area=CleanAreaV2),
150+
action=CapabilityCleanAction(
151+
command=CleanV2,
152+
area=_get_clean_area_command,
153+
),
141154
continuous=CapabilitySetEnable(
142155
ContinuousCleaningEvent,
143156
[GetContinuousCleaning()],

0 commit comments

Comments
 (0)