Skip to content

Commit

Permalink
feat(vendor.roborock): Implement RoborockMappingPassCapability
Browse files Browse the repository at this point in the history
  • Loading branch information
Hypfer committed Jan 5, 2023
1 parent 2798fed commit 8374951
Show file tree
Hide file tree
Showing 5 changed files with 23 additions and 1 deletion.
4 changes: 4 additions & 0 deletions backend/lib/robots/roborock/RoborockS5MaxValetudoRobot.js
Expand Up @@ -56,6 +56,10 @@ class RoborockS5MaxValetudoRobot extends RoborockValetudoRobot {
})
}));

this.registerCapability(new capabilities.RoborockMappingPassCapability({
robot: this
}));

const quirkFactory = new RoborockQuirkFactory({
robot: this
});
Expand Down
3 changes: 2 additions & 1 deletion backend/lib/robots/roborock/RoborockS7ValetudoRobot.js
Expand Up @@ -45,7 +45,8 @@ class RoborockS7ValetudoRobot extends RoborockGen4ValetudoRobot {
[
capabilities.RoborockAutoEmptyDockAutoEmptyControlCapability,
capabilities.RoborockAutoEmptyDockManualTriggerCapability,
capabilities.RoborockKeyLockCapability
capabilities.RoborockKeyLockCapability,
capabilities.RoborockMappingPassCapability
].forEach(capability => {
this.registerCapability(new capability({robot: this}));
});
Expand Down
4 changes: 4 additions & 0 deletions backend/lib/robots/roborock/RoborockValetudoRobot.js
Expand Up @@ -620,6 +620,10 @@ const STATUS_MAP = {
value: stateAttrs.StatusStateAttribute.VALUE.CLEANING,
flag: stateAttrs.StatusStateAttribute.FLAG.SEGMENT
},
29: {
value: stateAttrs.StatusStateAttribute.VALUE.MOVING,
flag: stateAttrs.StatusStateAttribute.FLAG.MAPPING
},
100: {
value: stateAttrs.StatusStateAttribute.VALUE.DOCKED
},
Expand Down
@@ -0,0 +1,12 @@
const MappingPassCapability = require("../../../core/capabilities/MappingPassCapability");

/**
* @extends MappingPassCapability<import("../RoborockValetudoRobot")>
*/
class RoborockMappingPassCapability extends MappingPassCapability {
async startMapping() {
await this.robot.sendCommand("app_start_build_map", [], {});
}
}

module.exports = RoborockMappingPassCapability;
1 change: 1 addition & 0 deletions backend/lib/robots/roborock/capabilities/index.js
Expand Up @@ -18,6 +18,7 @@ module.exports = {
RoborockMapSegmentSimpleCapability: require("./RoborockMapSegmentSimpleCapability"),
RoborockMapSegmentationCapability: require("./RoborockMapSegmentationCapability"),
RoborockMapSnapshotCapability: require("./RoborockMapSnapshotCapability"),
RoborockMappingPassCapability: require("./RoborockMappingPassCapability"),
RoborockMultiMapMapResetCapability: require("./RoborockMultiMapMapResetCapability"),
RoborockMultiMapPersistentMapControlCapability: require("./RoborockMultiMapPersistentMapControlCapability"),
RoborockPersistentMapControlCapability: require("./RoborockPersistentMapControlCapability"),
Expand Down

0 comments on commit 8374951

Please sign in to comment.