Freifunk Wiesbaden

FreifunkAPI changer

Die FreifunkAPI – eine grandiose Idee nach dem Vorbild der (Hacker-) SpaceAPI, jede community sollte sich ein api-File generieren und die Adresse hinterlegen.

Dennoch, so finde ich, ist dies nur ein Teil von dem was die FreifunkAPI erfüllen kann.

Am Beispiel mancher Apps, die Daten aus der SpaceAPI beziehen, kann man sehen, dass die SpaceAPI mehr davon lebt, dass die Inhalte der api-Files automatisch mit neuen Daten der Hackerspaces befüllt werden:

Hier zum Beispiel die Auswertungen der offen/geschlossen Zeiten eines zufälligen Hackerspaces aus der Region:

spacestatus_commonground

Das ist sehr schick. Dennoch: Solange alle Jubeljahre manuell die API-Files jeder Community wieder auf den neuesten Stand gebracht werden, sind solche Anwendungen undenkbar.

Deshalb habe ich mich die Tage mal hingesetzt und ein Modul geschrieben, dass Freifunk-API-Files einlesen und (bestehende) Werte ändern kann:

changeffapi.git auf github

Zum installieren:

Klonen (nach ~/software/changeffapi),

git clone https://github.com/Freifunk-Mainz/changeffapi ~/software/changeffapi
cd ~/software/changeffapi/

sein eigentliches API-File nach ffapi_file.json symlinken:

ln -s /var/www/path/to/ffapi/file.json ~/software/changeffapi/ffapi_file.json

Die Integration ist relativ simpel, hier ein Beispiel wie man die Anzahl der Nodes setzt:

changeffapi-sample

Bei uns (und in Mainz) wird die Anzahl der Nodes anhand der Kartendaten aus der Karte (auf Basis von ffmap-d3) ermittelt, und dann ins API-File geschrieben: mapnodes.py

Als Bonus wird das ganze noch gettwittert, als submodul kommt dazu notify.git zum Einsatz.

freifunkwi_statustweet

freifunkwi, freifunkmainz

Nicht über die exorbitant hohen Zahlen seitens Wiesbaden wundern, die Netze von Mainz und Wiesbaden sind ein und das selbe, beziehen also auch ihre Daten aus der selben Quelle.

Update

Ein kleiner Bug hat das Script daran gehindert das API-File zu finden, wenn es durch die Crontab gestartet wurde. Gefixt, funktioniert jetzt.

Einmal täglich die Anzahl der Teilnehmer twittern kann man verkraften, oder? Was denkt Ihr dazu?

geschrieben von spky