UNPKG

matterbridge-roborock-vacuum-plugin

Version:
28 lines 979 B
import protobuf from 'protobufjs'; import { ROBOROCK_PROTO_STR } from './roborockProto.js'; export class B01MapParser { robotMapType; constructor() { const root = protobuf.parse(ROBOROCK_PROTO_STR).root; this.robotMapType = root.lookupType('SCMap.RobotMap'); } parseRooms(buffer) { const decoded = this.robotMapType.decode(buffer); const roomDataInfo = decoded.roomDataInfo; if (!roomDataInfo || roomDataInfo.length === 0) { return { rooms: [] }; } const rooms = roomDataInfo.map((r) => { const namePost = r.roomNamePost; return { roomId: r.roomId, roomName: r.roomName || '', roomTypeId: r.roomTypeId, colorId: r.colorId, labelPos: namePost ? { x: namePost.x, y: namePost.y } : undefined, }; }); return { rooms }; } } //# sourceMappingURL=b01MapParser.js.map