Hier werden die Unterschiede zwischen zwei Versionen angezeigt.
Nächste Überarbeitung | Vorhergehende Überarbeitung | ||
meshviewer [05.12.2015 19:33] – created havelock | meshviewer [14.12.2023 15:23] (aktuell) – [Backend] havelock | ||
---|---|---|---|
Zeile 1: | Zeile 1: | ||
- | ====== Meshviewer ====== | + | ====== Meshviewer |
+ | |||
+ | Die Karte läuft momentan auf dem Server, der auch '' | ||
+ | Um die notwendigen Daten zu sammeln muß das Backend '' | ||
+ | auf die Programme '' | ||
+ | Folglich muß das Backendprogramm auf einem Rechner laufen, der Teil | ||
+ | des Meshs ist. | ||
+ | Das Backend schreibt die Daten in drei [[meshviewer_json|JSON-Dateien]], | ||
+ | in einem Datenverzeichnis abgelegt werden. In den Dateien ist beispielsweise | ||
+ | das erste Auftauchen eines Knotens vermerkt: | ||
+ | * '' | ||
+ | * '' | ||
+ | * '' | ||
+ | * '' | ||
+ | |||
+ | Werden die Dateien gelöscht, beginnt man ganz von vorne, d.h. alle | ||
+ | Knoten werden wieder als neu angesehen. | ||
+ | |||
+ | Hinter den Knoten werden ggf. verschiedene Symbole angezeigt: | ||
+ | ^ Symbol ^ Bedeutung ^ | ||
+ | | {{: | ||
+ | | {{: | ||
+ | | {{: | ||
+ | | {{: | ||
+ | | {{: | ||
+ | | {{: | ||
+ | | {{: | ||
===== Backend ===== | ===== Backend ===== | ||
+ | Das Backend heißt '' | ||
+ | Abhängigkeiten von Programmen | ||
+ | * '' | ||
+ | * '' | ||
+ | * '' | ||
+ | |||
+ | Voraussetzung für den Betrieb: | ||
+ | < | ||
+ | aptitude install python3 python3-networkx python-configparser rrdtool | ||
+ | </ | ||
+ | |||
+ | Die Daten werden unter Debian am besten unter ''/ | ||
+ | Wir verwenden: | ||
+ | * ''/ | ||
+ | * die JSON-Dateien speichern wir in das Verzeichnis ''/ | ||
+ | * die RRD-Dateien speichern wir in das Verzeichnis ''/ | ||
+ | * Konfigurationsdateien gehören nach ''/ | ||
+ | * '' | ||
+ | * '' | ||
+ | |||
+ | Es wird eine Protokolldatei geschrieben. Als Standard wird ''/ | ||
+ | Der Umfang der Protokollierung kann über die Konfigurationsdatei mittels '' | ||
+ | eingestellt werden. Die Protokollierung kann durch einen Loglevel von 0 ausgestellt werden. | ||
+ | |||
+ | Die Datenaktualisierung erfolgt jede Minute über einen Cron-job: | ||
+ | <file bash / | ||
+ | # Meshviewer backend | ||
+ | |||
+ | SHELL=/ | ||
+ | PATH=/ | ||
+ | |||
+ | */1 * * * * root / | ||
+ | </ | ||
+ | |||
+ | Beispiel für eine Konfigurationsdatei des Backends: | ||
<file conf / | <file conf / | ||
- | *** Hier fehlt etwas *** | + | # configuration for freifunk map utilities |
- | b/ | + | |
+ | [global] | ||
+ | logfile = / | ||
+ | loglevel = 2 | ||
+ | dest_dir = /var/lib/ | ||
aliases = / | aliases = / | ||
prune = 180 | prune = 180 | ||
Zeile 30: | Zeile 96: | ||
===== Frontend ===== | ===== Frontend ===== | ||
- | Wir benutzen die Version | + | Wir benutzen die Version |
+ | Die Quellen befinden sich unter: https:// | ||
- | Abhängigkeiten | + | aptitude install nodejs nodejs-legacy npm ruby-sass |
- | * batctl | + | |
- | * alfred-json | + | |
- | * batadv-vis | + | |
< | < | ||
- | git clone https:// | + | git clone https:// |
cd meshviewer | cd meshviewer | ||
+ | git checkout v4 | ||
npm install | npm install | ||
npm install bower grunt-cli | npm install bower grunt-cli | ||
node_modules/ | node_modules/ | ||
+ | ln -s / | ||
</ | </ | ||
Zeile 57: | Zeile 123: | ||
</ | </ | ||
+ | cp config.json.example config.json | ||
+ | | ||
+ | Config.json bearbeiten | ||
+ | | ||
TODO RESTORE | TODO RESTORE | ||
+ | |||
+ | TODO Wenn es keinen Knoten mit Koordinaten gibt, dann wird die Leaflet-Karte nicht angezeigt | ||
+ | |||
+ | <WRAP center round info> | ||
+ | Wenn die JSON-Dateien von einem anderen Server geladen werden, so | ||
+ | muß dieser einen zusätzlichen Antwortheader einbauen. Für Lighttpd ist das | ||
+ | z.B.: '' | ||
+ | </ | ||
+ | |||
+ | ==== Alternativinstallation ==== | ||
+ | |||
+ | Ohne den ganzen NodeJS-Plunder. | ||
+ | Es werden soweit es geht Pakete des Betriebssystems verwendet, | ||
+ | Siehe dazu auch den Helgoländer Meshviewer. | ||
+ | |||
+ | < | ||
+ | apt-get install libjs-moment libjs-d3 libjs-requirejs libjs-es6-shim | ||
+ | </ | ||
+ | |||
+ | |||
+ | ==== Statistik ==== | ||
+ | |||
+ | aptitude install php-gd php-rrd | ||
+ | |||
+ | Die Statistiken sind im Unterverzeichnis '' | ||
+ | |||