BNetzA Automated Measurements (#63)
Adds automation for BNetzA broadband measurements. DOCSight can now watch a directory for new measurement files and auto-import them, with full CSV support alongside existing PDF parsing.
New Features
- BnetzWatcherCollector - Watches a configured directory for new
.pdfand.csvfiles, auto-imports them every 5 minutes - CSV Parser - Parses BNetzA CSV exports (semicolon-separated, German locale numbers with auto-detection)
- Settings Panel - New BNetzA section in Settings with enable toggle and watch directory configuration
- Status Banner - Shows watcher status (active/inactive, watch dir, import count) in the BNetzA view
- CSV Upload - Upload endpoint now accepts CSV files alongside PDF
- Sidecar Compose -
docker-compose.bnetz.ymlfor running the official Breitbandmessung Desktop App as automated sidecar
How to use
- Enable in Settings > BNetzA and set a watch directory (default:
/data/bnetz) - Place measurement PDFs/CSVs in the watch directory (manually or via sidecar)
- Files are auto-imported, moved to
processed/, and tracked via.importedmarker
For fully automated setup with the official BNetzA app:
docker compose -f docker-compose.yml -f docker-compose.bnetz.yml up -dTechnical
- New
sourcecolumn onbnetz_measurementstable (upload/watcher/csv_import) with automatic migration pdf_bytesis now optional (NULL for CSV imports)- 37 new tests (330 total, all passing)
- Translations: en, de, fr, es