Opennet API: Unterschied zwischen den Versionen

Aus Opennet
Wechseln zu: Navigation, Suche
(Überblick)
(Überblick: mehr Links mit Beispielen)
Zeile 12: Zeile 12:
 
* https://api.opennet-initiative.de/api/v1/link
 
* https://api.opennet-initiative.de/api/v1/link
 
* https://api.opennet-initiative.de/api/v1/interface
 
* https://api.opennet-initiative.de/api/v1/interface
 +
 +
Filtern nach AP-Status, z.B. "online" (alternativ "flapping")
 +
* https://map.opennet-initiative.de/api/v1/accesspoint/?status=online&data_format=geojson&in_bbox=10.314788818359373,53.72027890176105,14.860382080078127,54.29969774594346
  
 
Für JSON-Format  ?format=json anhängen, z.B.:
 
Für JSON-Format  ?format=json anhängen, z.B.:
 
* https://api.opennet-initiative.de/api/v1/accesspoint/192.168.1.11?format=json
 
* https://api.opennet-initiative.de/api/v1/accesspoint/192.168.1.11?format=json
 +
 +
Für GeoJSON  ?format=geojson, z.B. alle Links im GeoJSON Format:
 +
* https://map.opennet-initiative.de/api/v1/link/?data_format=geojson&in_bbox=10.314788818359373,53.72027890176105,14.860382080078127,54.29969774594346
  
 
== Datenquellen ==
 
== Datenquellen ==

Version vom 24. Februar 2019, 21:14 Uhr

Die Opennet API (Geronimo v2) bietet Statusdaten des Mesh-Netzwerks und Meta-Daten der lokalen Communities basierend auf verschiedenen Quellen mittels einer REST-API an. Der Vorgänger dieses Diensts war Geronimo v1.

Inhaltsverzeichnis

Überblick

URLs für einen Node:

Für alle Nodes:

Filtern nach AP-Status, z.B. "online" (alternativ "flapping")

Für JSON-Format  ?format=json anhängen, z.B.:

Für GeoJSON  ?format=geojson, z.B. alle Links im GeoJSON Format:

Datenquellen

  • Wiki: AP-Liste mit Besitzern und Positionen
  • Ondataservice: Hardware, Firmware, Systemzustand, Netzwerkschnittstellen
  • OLSR: Links, Qualität, "lastseen"-Zeitstempel
  • manuell gepflegte Liste von Regionen für Freifunk API

Funktionsumfang

  • Zusammenfassung verschiedener Datenquelle
  • aktuelle Zustände von Accesspoints und Links ausliefern
  • Metadaten für die Freifunk API ausliefern

Architektur

  • Django-Anwendung liefert Daten via REST-Framework aus (inkl. Unterstützung für Geodaten - z.B. Bounding-Box-Limitierung von Abfragen)
  • Import von Daten aus den verschiedenen Quellen via cron-Jobs

Entwicklung

  • git-Repository auschecken: git clone git@dev.on-i.de:on_geronimo.git
  • Dienst lokal starten: python3 manage.py runserver
  • Daten importieren (manuell):
    • python3 manage.py import_olsr
    • python3 manage.py import_wiki
    • python3 manage.py import_ondataservice ONDATASERVICE_DB_DATEI
  • API abfragen (z.B. Browser oder curl): http://localhost:8000/api/v1/accesspoint/
  • Release erstellen: make release-(major|minor|patch)
  • deb-Paket bauen: make dist-deb
  • deb-Paket bauen und auf einem Server installieren: make deploy-deb-remote DEPLOY_TARGET=root@example.on

Installation

  • deb-Paket installieren (zuvor eventuell manuell erstellen - siehe oben)
  • den Anweisungen aus der Datei /usr/share/doc/on-geronimo-api/README.Debian folgen
Meine Werkzeuge
Namensräume

Varianten
Aktionen
Start
Opennet
Kommunikation
Karten
Werkzeuge