roborock.devices.traits.v1.smart_wash_params

Trait for smart wash parameters.

 1"""Trait for smart wash parameters."""
 2
 3from roborock.data import SmartWashParams
 4from roborock.device_features import RoborockDockFeatures
 5from roborock.devices.traits.v1 import common
 6from roborock.roborock_typing import RoborockCommand
 7
 8
 9def _supports_smart_wash_params(dock_features: RoborockDockFeatures) -> bool:
10    return dock_features.is_washable
11
12
13class SmartWashParamsTrait(SmartWashParams, common.V1TraitMixin):
14    """Trait for smart wash parameters."""
15
16    command = RoborockCommand.GET_SMART_WASH_PARAMS
17    converter = common.DefaultConverter(SmartWashParams)
18    requires_dock_features = _supports_smart_wash_params
14class SmartWashParamsTrait(SmartWashParams, common.V1TraitMixin):
15    """Trait for smart wash parameters."""
16
17    command = RoborockCommand.GET_SMART_WASH_PARAMS
18    converter = common.DefaultConverter(SmartWashParams)
19    requires_dock_features = _supports_smart_wash_params

Trait for smart wash parameters.

command = <RoborockCommand.GET_SMART_WASH_PARAMS: 'get_smart_wash_params'>

The RoborockCommand used to fetch the trait data from the device (internal only).

converter = DefaultConverter

The converter used to parse the response from the device (internal only).

def requires_dock_features(dock_features: roborock.device_features.RoborockDockFeatures) -> bool:
10def _supports_smart_wash_params(dock_features: RoborockDockFeatures) -> bool:
11    return dock_features.is_washable