Zum Inhalt springen

Opennet API: Unterschied zwischen den Versionen

Aus Opennet
Inhalt gelöscht Inhalt hinzugefügt
Geronimo v2 von "Geronimo" verschoben
 
Entwicklungshinweise hinzugefügt
Zeile 4: Zeile 4:
* URL: https://api.opennet-initiative.de/api/v1/accesspoint/
* URL: https://api.opennet-initiative.de/api/v1/accesspoint/


=== Datenquellen ===
== Datenquellen ==
* Wiki: AP-Liste mit Besitzern und Positionen
* Wiki: AP-Liste mit Besitzern und Positionen
* [[Ondataservice]]: (Hardware, Firmware, Systemzustand, Netzwerkschnittstellen
* [[Ondataservice]]: Hardware, Firmware, Systemzustand, Netzwerkschnittstellen
* [[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]]


=== Funktionsumfang ===
== Funktionsumfang ==
* Zusammenfassung verschiedener Datenquelle
* Zusammenfassung verschiedener Datenquelle
* aktuelle Zustände von Accesspoints und Links ausliefern
* aktuelle Zustände von Accesspoints und Links ausliefern
* Metadaten für die [[Freifunk API]] ausliefern
* Metadaten für die [[Freifunk API]] ausliefern


=== Architektur ===
== Architektur ==
* Django-Anwendung liefert Daten via REST-Framework aus (inkl. Unterstützung für Geodaten - z.B. Bounding-Box-Limitierung von Abfragen)
* 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
* Import von Daten aus den verschiedenen Quellen via cron-Jobs

== Entwicklung ==
* [http://dev.opennet-initiative.de/browser/on_geronimo git-Repository] auschecken: <tt>git clone git@dev.on-i.de:on_geronimo.git</tt>
* Dienst lokal starten: <tt>python3 manage.py runserver</tt>
* 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: <tt>make release-(major|minor|patch)</tt>
* deb-Paket bauen: <tt>make dist-deb</tt>

Version vom 19. Oktober 2017, 00:18 Uhr

Überblick

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