-
Notifications
You must be signed in to change notification settings - Fork 0
Verkehrsdaten
ConvoyPlan blendet auf der Karte Baustellen, Sperrungen und Hindernisse sowie optional die Live-Verkehrslage (Stau) ein. Die Daten stammen aus mehreren Quellen, die zu einer gemeinsamen Ebene zusammengeführt werden („in einen Topf"). Fällt eine Quelle aus, liefern die anderen weiter.
Diese Anleitung zeigt, was out of the box läuft und wie du die optionalen Quellen (Live-Stau, bundesweite Baustellen) aktivierst.
| Quelle | Abdeckung | Kosten | Setup nötig? |
|---|---|---|---|
| Autobahn-API (bund.dev) | bundesweit, alle Autobahnen | frei | nein — läuft |
| MobiData BW | Baden-Württemberg (bis Kreisstraße) | frei | nein — läuft |
| Berlin VIZ | Berlin | frei | nein — läuft |
| mobilithek (DATEX II) | weitere Bundesländer (Bundes-/Landesstraßen) | frei | ✅ Abschnitt 3 |
| HERE / TomTom | Live-Verkehrslage (Stau), bundesweit | eigener API-Key (Freikontingent) | ✅ Abschnitt 2 |
Farbcodierung auf der Karte: 🟠 Baustelle · 🔴 Sperrung · 🟡 Warnung/Hindernis · Live-Verkehrslage grün→gelb→rot nach Staufaktor.
Autobahn-Baustellen/-Sperrungen (bundesweit) sowie die offenen Feeds für Baden-Württemberg und Berlin sind standardmäßig aktiv. Nichts zu tun.
Die Echtzeit-Verkehrslage (wie das rot/orange Stau-Bild bei Google) gibt es nur bei kommerziellen Anbietern — beide mit kostenlosem Kontingent.
-
Kostenlosen API-Key holen:
- HERE — platform.here.com · 250.000 Anfragen/Monat gratis (empfohlen)
- TomTom — developer.tomtom.com
- Im ConvoyPlan Admin-Bereich → „Live-Verkehrslage (Stau)" den Key eintragen und speichern. Fertig — im Plan-Export-Tab erscheint der Schalter „🚦 Verkehrslage laden".
⚠️ Lizenzhinweis: Die Anzeige von HERE-/TomTom-Verkehrsdaten auf der OSM-Basiskarte kann lizenzpflichtig sein. Vor produktivem Einsatz die Nutzungsbedingungen des Anbieters prüfen.
Für Baustellen/Sperrungen abseits der Autobahn in weiteren Bundesländern nutzt ConvoyPlan die mobilithek (nationaler Zugangspunkt des Bundes) im Standard DATEX II. Der Zugang ist kostenlos, erfordert aber ein Konto, ein Zertifikat und ein abonniertes Datenangebot.
- Auf mobilithek.info registrieren und freischalten lassen.
- Eine Organisation anlegen (Zertifikate & Datennutzungen hängen an der Organisation, nicht am persönlichen Profil).
- In der Organisation ein Maschinenkonto anlegen und dafür ein
Client-Zertifikat erzeugen. Beim Download vergibst du ein Passwort für die
.p12-Datei — merken!
- Unter Datenangebote ein DATEX-II-Baustellen-Angebot eines Bundeslands öffnen (Filter: Kategorie „Verkehr", Lizenz „frei/kostenlos").
- Eine Datennutzung als HTTP Client Pull anlegen und mit dem Maschinenkonto verknüpfen.
- Du erhältst eine Broker-Abruf-URL in dieser Form:
Pro Bundesland ein Abo = eine URL.
https://mobilithek.info:8443/mobilithek/api/v1.0/subscription/<ID>/clientPullService?subscriptionID=<ID>
ConvoyPlan liest das Zertifikat als PEM (nicht .p12). Auf dem Server im
Installationsverzeichnis (Standard ~/convoyplan):
cd ~/convoyplan
mkdir -p secrets
# .p12 → PEM (fragt nach dem beim Download vergebenen Passwort):
openssl pkcs12 -in /pfad/zu/certificate.p12 -out secrets/mobilithek-client.pem -nodes
# WICHTIG: der Container-User (appuser, UID 1001) muss lesen dürfen:
sudo chown -R 1001:1001 secrets
sudo chmod 700 secrets
sudo chmod 600 secrets/*🔒 Geheimhaltung:
mobilithek-client.pementhält den privaten Schlüssel — nur auf dem Server, niemals ins Git. (Der Ordnersecrets/ist per.gitignoreausgeschlossen.)
In ~/convoyplan/.env ergänzen — die Feeds kommasepariert, jeweils als
datex2|<url>:
OPENDATA_TRAFFIC_CLIENT_CERT=/secrets/mobilithek-client.pem
OPENDATA_TRAFFIC_FEEDS=mobidata_bw|https://api.mobidata-bw.de/datasets/traffic/roadworks/roadworks_geojson.json,berlin_viz|https://api.viz.berlin.de/daten/baustellen_sperrungen_viz.json,datex2|<broker-url-land-1>,datex2|<broker-url-land-2>
⚠️ OPENDATA_TRAFFIC_CA_CERTNICHT setzen! Der mobilithek-Broker (mobilithek.info:8443) nutzt ein öffentliches Telekom-Zertifikat — die Prüfung läuft über den System-Truststore. Setzt man die mobilithek-„CA-Kette", bricht die Verbindung (self-signed certificate in chain).
docker compose up -d backend
# Erreichbarkeit + Anzahl der Verkehrs-Features:
docker compose exec backend python -c "import asyncio; from app.services import opendata_traffic as o; print(len(asyncio.run(o._get_features())), 'Features')"Steigt die Zahl deutlich an, fließen die Länder-Feeds. Auf der Karte erscheinen die Baustellen nach spätestens dem 5-Minuten-Cache.
| Symptom | Ursache & Lösung |
|---|---|
Backend startet nicht, Log: Can't locate revision '00xx' |
Das laufende Image ist älter als die Datenbank. Aktuelles Image ziehen: docker compose pull backend && docker compose up -d backend. Nicht die DB downgraden. |
PermissionError [Errno 13] beim Zertifikat |
Datei gehört nicht dem Container-User. sudo chown 1001:1001 secrets/* && chmod 600 secrets/*. |
CERTIFICATE_VERIFY_FAILED: self-signed certificate in chain |
OPENDATA_TRAFFIC_CA_CERT ist gesetzt — entfernen (der Broker nutzt ein öffentliches Zertifikat). |
HTTP 400 beim curl-Test |
Fehlender Accept-Encoding: gzip-Header — der Broker liefert immer gzip. Beim curl-Test --compressed nutzen; ConvoyPlan (httpx) sendet das automatisch. |
HTTP 204 / leer |
Noch kein Datenpaket im Puffer — das Abo ist frisch oder der Anbieter hat noch nicht publiziert. Kommt automatisch. |
HTTP 403 / 404 |
Datennutzung/Zertifikat nicht scharfgeschaltet bzw. Abo ungültig — in der mobilithek den Status der Datennutzung prüfen. |
| Feature-Zahl steigt nicht | Feeds testen (siehe unten), .env-Werte prüfen (`docker compose exec backend printenv |
Einzelnen Feed direkt testen (auf dem Server, mit Zertifikat):
curl -s --compressed --cert secrets/mobilithek-client.pem \
"https://mobilithek.info:8443/mobilithek/api/v1.0/subscription/<ID>/clientPullService?subscriptionID=<ID>" \
| head -c 300Kommt <?xml … <d2LogicalModel … zurück, ist alles korrekt.
| Variable | Zweck |
|---|---|
OPENDATA_TRAFFIC_ENABLED |
Offene Baustellenfeeds an/aus (Standard true) |
OPENDATA_TRAFFIC_FEEDS |
Feed-Liste format|url, kommasepariert. Formate: mobidata_bw, berlin_viz, datex2
|
OPENDATA_TRAFFIC_CLIENT_CERT |
Pfad zum mTLS-Client-Zertifikat (PEM) für datex2-Feeds |
OPENDATA_TRAFFIC_CA_CERT |
Nur für Broker mit privater CA. Für die mobilithek leer lassen. |
HERE_TRAFFIC_API_KEY / TOMTOM_TRAFFIC_API_KEY
|
Live-Verkehrslage (alternativ im Admin-Panel) |
TRAFFIC_FLOW_PROVIDER |
here / tomtom erzwingen (leer = automatisch, HERE bevorzugt) |
💡 Die Zertifikatsdateien werden über den Host-Ordner
./secretsread-only nach/secretsin den Container gemountet (siehedocker-compose.yml).
Start
Einrichtung & Referenz
Bedienung
- Erste Schritte
- Konvoi-Planung
- Fahrzeuge
- Live-Tracking
- Marschbefehl & Export
- Rollen & Berechtigungen
- Teilen
Betrieb & Sicherheit