import { parseDeviceInfo, parseEd713Radar, parseEd719Radar, parseStateCode } from './commonParser' import { DEVICE_PROFILE } from '../protocols/profiles' export { parseDeviceInfo, parseStateCode } /** * 雷达数据统一解析入口: * 优先按已识别 profile 解析,未知时再根据签名字节推断。 */ export function parseRadarData(payload, profileId = DEVICE_PROFILE.UNKNOWN) { if (profileId === DEVICE_PROFILE.ED713) { return parseEd713Radar(payload) } if (profileId === DEVICE_PROFILE.ED719) { return parseEd719Radar(payload) } const bytes = payload instanceof Uint8Array ? payload : new Uint8Array(payload) if (bytes[3] === 0x7C) { return parseEd713Radar(bytes) } if (bytes[3] === 0x67) { return parseEd719Radar(bytes) } return { type: 'UNKNOWN', valid: false, reason: 'UNKNOWN_SIGNATURE', raw: bytes } }