Ffmap-d3
Version vom 26. März 2014, 20:32 Uhr von Kaleng (Diskussion | Beiträge)
Work in progress
ffmap-d3 erzeugt einen Knotengraphen (Abb. 1), eine Nodekarte (Abb. 2) und eine Statusübersicht (Abb. 3).
Input
ffmap-d3 benötigt eine 'nodes.json'. Diese sieht in etwa so aus:
{ "meta": { "timestamp": "2013-05-04T17:53:00"}, // Wann die Datei generiert wurde. - erscheint oben als Uhrzeit "links": [ // Eine Linie zwischen zwei Nodes. {"target": 43, // Start, "source": 1, // Ende des Links -> Indizces in die Liste -> Start bei 0 "quality": "TT", // "Ganz vage defininiert." -> Entweder Text, oder 1-2 floating Zahlen. // Der Durchschnitt entspricht der Farbe des Links. Nur ein Feld: Dünne Linie // TT -> Es ist ein Client // Jeder CLient wird auch als Node im Array "nodes" aufgeführt. "type": "client", // Client oder VPN . Ist einer der beiden Nodes ein Client, dann Client link // Ist ein Link ein Gateway, dann Gateway-Link "id": "66:70:02:5c:2c:31-8e:8f:e7:e6:5e:f2" // Braucht die Karte für die auto-update funktion - // Was ist bei mehreren Links zwischen gleichen Nodes? -> Aktuell Reduce-Funktion -> Wird auf einen Link reduziert. }, ], "nodes": [ // Liste aller Nodes. { "name": "SN 1", // Name des Nodes "flags": { // Zustand des Nodes (online, gateway, client, vpn (nicht verwendet)) "online": false, "gateway": false, "client": false}, "id": "f4:ec:38:9d:7d:c2", // Eindeutig um den Knoten identifizieren zu können. "macs": "f4:ec:38:9d:7d:c2", // Comma seperated List aller macs "geo": [50.9956, 7.02981] // Geokoordinaten (lat, long) } ]
Derzeitiges JSON-Format
{ "meta": { "timestamp": "2013-05-04T17:53:00"}, // Wann die Datei generiert wurde. - erscheint oben als Uhrzeit "nodes": { // Liste aller Nodes "[nodeid]": { // Eindeutig um den Knoten identifizieren zu können. "clients": 3, // Anzahl Clients an diesem Node "macs" : "maca, macb" // MACs des Nodes (wlan, mesh-vpn, etc) "name" : "[NAME]", // Name des Nodes "links" : { // Liste aller Links "[nodeid]": { // Nodeid des link-Ziels "type" : null | vpn, // links zu nodes: null, links zu vpns: vpn "quality": 1.000 // link-quali }, ... } "flags" : { "client" : true | false, // eig nutzlos "gateway" : true | false, // ist node im batman-adv - Gateway modus? "online" : true | false // ist der Node online? } "geo" : [50.9956, 7.02981], // Geokoordinaten (lat, long) }, ... } }