# Transit Driver XP Native Win32 driver client targeting Windows XP-era systems. Project-wide setup and service documentation is maintained in [`../docs/PROJECT_GUIDE.md`](../docs/PROJECT_GUIDE.md). The operational monitoring dashboard is documented in [`../docs/MONITORING_UI.md`](../docs/MONITORING_UI.md). For Windows XP compatibility, the client temporarily uses the LAN services: - Login: `http://192.168.68.66:5000/login` - Assigned schedules: `http://192.168.68.66:5001/driver/schedules/daily` - Route stops: `http://192.168.68.66:5001/bus-lines/:busLineId/stops` This HTTP fallback avoids the TLS 1.2/certificate limitations of Windows XP. Schedules are assigned through `transit.shifts`; the client does not expect a `driver_id`, `bus_id`, or `weekdays` column on `transit.schedules`. ## Build ```bash make clean && make ``` ## Distribution Build the installer with: ```bash makensis installer.nsi ``` Distribute `TransitDriverXPSetup.exe`. It detects an existing installation, stops the previous client, and replaces it in the same directory. ## Login diagnostics If the app shows `Driver service unreachable`, open `driver_xp.log` in the same folder as the installed `driver_xp.exe` and inspect the latest entries. The log records the failing stage and WinHTTP or HTTP status code, but never writes the password or JWT token. Common codes: - `12007`: hostname could not be resolved (DNS) - `12029`: connection to the server failed - `12175`: HTTPS certificate or TLS validation failed - `401` or `403`: the server responded, but authentication was rejected