# Setup and Run ## Prerequisites - Java 17 (JDK) - Maven 3.9+ - MQTT broker reachable at `localhost:1883` - Windows environment for bundled PowerShell/BAT process scripts Optional: - Python (for MQTT simulator startup) - Unreal + Pixel Streaming environment (if enabled in config) ## Build ```powershell mvn clean compile ``` ## Run (CLI) ```powershell mvn org.codehaus.mojo:exec-maven-plugin:3.5.0:java -Dexec.mainClass=vassistent.App ``` ## Run (IDE) Run the class: - `vassistent.App` ## MQTT Payload Format Publish payloads to configured topic (default `PREDICTION`) in this format: ```json { "valid": true, "_id": 1, "prediction": 0 } ``` Rules: - `valid` must be `true` - `_id` must exist - `prediction` must be `0` or `1` ## Shutdown Behavior On shutdown, the app: - disconnects MQTT - stops managed external processes - flushes logger queue - deletes `data/health.db` (current implementation)