matterbridge-roborock-vacuum-plugin
Version:
Matterbridge Roborock Vacuum Plugin
30 lines • 945 B
JavaScript
export class RoomMap {
roomMappings;
constructor(roomMappings) {
this.roomMappings = roomMappings;
}
get hasRooms() {
return this.roomMappings.length > 0;
}
get rooms() {
return this.roomMappings;
}
getRooms(map_info, enableMultipleMap = false) {
const mapid = map_info[0]?.id ?? 0;
return enableMultipleMap
? this.roomMappings
: this.roomMappings.filter((room) => room.iot_map_id === undefined || room.iot_map_id === mapid);
}
static async fromMapInfo(vacuum, context) {
if (!context.roborockService) {
context.log.error('Roborock service not initialized');
return;
}
await context.roborockService.getMapInfo(vacuum.duid);
await context.roborockService.getRoomMap(vacuum.duid, -1);
}
static empty() {
return new RoomMap([]);
}
}
//# sourceMappingURL=RoomMap.js.map