1.9 KiB
Python-Werkzeuge für die Wegwichtel-REST-API
Die Skripte benötigen nur Python 3 und die Standardbibliothek. Node.js, curl und zusätzliche Python-Pakete sind auf dem aufrufenden Rechner nicht erforderlich.
Authentifizierung
Jeder Request wird zunächst mit den bereits bekannten Zugangsdaten oder ohne Zugangsdaten ausgeführt. Antwortet ein vorgeschalteter Webserver mit 401 Unauthorized, fragt das Werkzeug Benutzername und Passwort interaktiv ab und wiederholt denselben Request. Das Passwort wird mit getpass ohne Bildschirmausgabe eingelesen.
Optionale Umgebungsvariablen:
export WEGWICHTEL_URL='https://wegwichtel.de'
export WEGWICHTEL_USER='florian'
# WEGWICHTEL_PASSWORD nur für unbeaufsichtigte Aufrufe verwenden.
Alle Skripte unterstützen außerdem --base-url und --username. Fehlende fachliche Parameter werden interaktiv abgefragt.
Routen
python3 tools/python/create_route.py
python3 tools/python/update_route.py
python3 tools/python/append_route.py
python3 tools/python/delete_route.py
python3 tools/python/restore_route.py
POIs
python3 tools/python/create_poi.py
python3 tools/python/update_poi.py
python3 tools/python/delete_poi.py
Beim Löschen eines POIs entfernt die API auch dessen Bilder und Audiodatei.
Bilder
python3 tools/python/create_picture.py
python3 tools/python/update_picture.py
python3 tools/python/delete_picture.py
Audio
python3 tools/python/create_audio.py
python3 tools/python/update_audio.py
python3 tools/python/delete_audio.py
Beispiel mit Parametern
python3 tools/python/create_picture.py \
--base-url https://wegwichtel.de \
--route-id 1 \
--poi-id 7 \
--file ./eiche.jpg \
--caption 'Blick auf die Baumkrone' \
--sequence 0
Die Multipart-Hilfsfunktion sendet für Dateien absichtlich keinen behaupteten MIME-Typ. Der Server bestimmt das Format aus dem Dateiinhalt.