Zum Inhalt springen

Opennet API: Unterschied zwischen den Versionen

Aus Opennet
Inhalt gelöscht Inhalt hinzugefügt
verwende öffentliche git-URL
MathiasMahnke (Diskussion | Beiträge)
Keine Bearbeitungszusammenfassung
 
(3 dazwischenliegende Versionen von einem anderen Benutzer werden nicht angezeigt)
Zeile 25: Zeile 25:
* Wiki: AP-Liste mit Besitzern und Positionen
* Wiki: AP-Liste mit Besitzern und Positionen
* [[Ondataservice]]: Hardware, Firmware, Systemzustand, Netzwerkschnittstellen
* [[Ondataservice]]: Hardware, Firmware, Systemzustand, Netzwerkschnittstellen
** derselbe Datensatz ist auch via [[Ondataservice#Alternativer_HTTP-Abruf|HTTP-Abruf]] verfügbar (erfordert eine manuelle Anpassung für Firmware bis 0.5.4)
* [[OLSR]]: Links, Qualität, "lastseen"-Zeitstempel
* [[OLSR]]: Links, Qualität, "lastseen"-Zeitstempel
* manuell gepflegte Liste von Regionen für [[Freifunk API]]
* manuell gepflegte Liste von Regionen für [[Freifunk API]]
Zeile 38: Zeile 39:


== Entwicklung ==
== Entwicklung ==
* [http://dev.opennet-initiative.de/browser/on_geronimo git-Repository] auschecken: <tt>git clone https://dev.opennet-initiative.de/git/on_geronimo.git</tt>
* [https://github.com/opennet-initiative/api git-Repository] auschecken: <tt>git clone https://github.com/opennet-initiative/api</tt>
* Dienst lokal starten: <tt>python3 manage.py runserver</tt>
* Dienst lokal starten: <tt>python3 manage.py runserver</tt>
* Daten importieren (manuell):
* Daten importieren (manuell):
Zeile 52: Zeile 53:
* deb-Paket installieren (zuvor eventuell manuell erstellen - siehe oben)
* deb-Paket installieren (zuvor eventuell manuell erstellen - siehe oben)
* den Anweisungen aus der Datei <tt>/usr/share/doc/on-geronimo-api/README.Debian</tt> folgen
* den Anweisungen aus der Datei <tt>/usr/share/doc/on-geronimo-api/README.Debian</tt> folgen

== Problembehebung ==
Falls irgendwelche Daten nicht aktualisiert werden, dann schlug vielleicht einer der Datenimporte fehl.

Fehleranalyse:
# auf dem Host [[Server/jun]] die Datei <tt>/etc/cron.d/on-geronimo-api</tt> betrachen: hier sind alle Datenimporte aufgeführt
# die Cron-Jobs können einzeln (im Kontext des angegebenen Ziel-Nutzers) ausgeführt werden
# bei der manuellen Ausführung können Fehler leicht erkannt werden

Aktuelle Version vom 16. Februar 2026, 14:07 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.

Ü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
    • derselbe Datensatz ist auch via HTTP-Abruf verfügbar (erfordert eine manuelle Anpassung für Firmware bis 0.5.4)
  • 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

Installation

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

Problembehebung

Falls irgendwelche Daten nicht aktualisiert werden, dann schlug vielleicht einer der Datenimporte fehl.

Fehleranalyse:

  1. auf dem Host Server/jun die Datei /etc/cron.d/on-geronimo-api betrachen: hier sind alle Datenimporte aufgeführt
  2. die Cron-Jobs können einzeln (im Kontext des angegebenen Ziel-Nutzers) ausgeführt werden
  3. bei der manuellen Ausführung können Fehler leicht erkannt werden