UNPKG

iobroker.roborock

Version:
63 lines (59 loc) 1.79 kB
import { DeviceModelConfig, FeatureDependencies, RegisterModel } from "../baseDeviceFeatures"; import { Feature } from "../features.enum"; import { BASE_FAN, BASE_MOP, BASE_WATER, V1VacuumFeatures, VacuumProfile } from "./v1VacuumFeatures"; // Roborock Saros 20 / Saros 20X (a288) const PROFILE_A288: VacuumProfile = { name: "Roborock Saros 20 (a288)", features: { maxSuctionValue: 110, hasSmartPlan: true }, mappings: { fan_power: { ...BASE_FAN, 110: "Max+" }, water_box_mode: { ...BASE_WATER, 209: "Ultra" }, mop_mode: { ...BASE_MOP, 306: "Intense/Smart" } }, cleanMotorModePresets: { '{"fan_power":110,"mop_mode":306,"water_box_mode":209}': "SmartPlan", '{"fan_power":102,"mop_mode":300,"water_box_mode":200}': "Vacuum", '{"fan_power":105,"mop_mode":300,"water_box_mode":202}': "Mop", '{"fan_power":102,"mop_mode":300,"water_box_mode":202}': "Vac & Mop" } }; const a288Config: DeviceModelConfig = { staticFeatures: [ Feature.InWarmup, Feature.CleanPercent, Feature.ExtraTime, Feature.RobotStatus, Feature.CommonStatus, Feature.SwitchStatus, Feature.ExitDock, Feature.ChargeStatus, Feature.MapFlag, Feature.CleaningInfo, Feature.TaskId, Feature.DockStatus, Feature.LastCleanTime, Feature.AutoEmptyDock, Feature.MopWash, Feature.MopDry, Feature.LiveVideo, Feature.Camera, Feature.MopForbidden, Feature.AvoidCarpet, Feature.WaterBox, Feature.SmartPlan, Feature.FanMaxPlus, Feature.SmartModeCommand, Feature.CleanRepeat, Feature.CleanedArea, Feature.GetPhoto ] }; @RegisterModel("roborock.vacuum.a288") export class A288Features extends V1VacuumFeatures { constructor(dependencies: FeatureDependencies, duid: string) { super(dependencies, duid, "roborock.vacuum.a288", a288Config, PROFILE_A288); } }