Meshviewer - Development

Hallo,

so noch ein Test :smile: der groessere Auswirkungen auf den Meshviewer hat und noch nicht final ist. Es geht um Router (URL).

Zu finden unter und in der „Developer Console“ werden immer deep links ausgeben (Links in der GUI keine deep links, außer View toggle)

Beispiele:
Sprache (Verbesserungspotenzial da, Router wird erst später geladen)

Sprache, View, Link:

EDIT:
Location verlinken

Alle Parameter sind optional. Geplant in der Zukunft sind zudem noch Filter und Location.
https://github.com/ffrgb/meshviewer/issues/83

EDIT:
LIVE :slight_smile: - Links updated

Viele Gruesse
Xaver

(PS; Update den auch abundzu, daher kann auch ein teil der Beschreibung fehlerhaft sein)

4 „Gefällt mir“

Hallo,

aktueller Test mit umgebauter Sidebar - Header bleibt immer auch bei nodes, location und link.
EDIT:
Bei uns inzwischen live:
https://regensburg.freifunk.net/netz/karte/

gruss
xaver

PS: Ist das OK, wenn ich für neue Features einen neuen Post mache (groessere Änderungen/visuelle Unterschiede/Bedienung)? Feedback ist willkommen oder Ideen.

2 „Gefällt mir“

So jetzt ist vom Performance „Project“ auch der letzte (aktuelle) Punkt gefallen. :tada:
Virtual-dom wurde ersetzt.
https://github.com/ffrgb/meshviewer/projects/1
(Werde das Project sicher noch mit ein oder anderen Task fuellen. Muss mal wieder schauen wo aktuell die groessten Bottlenecks sind.)

Neben schnellerem Aufbau merkt man die Verbesserung auch bei Filter Operationen.

4 „Gefällt mir“

So jetzt verfügt der forcegraph wieder über Animation und das heran zoomen von aufrufen direkt via URL klappt wesentlich besser.

GW filter und GW Ausgabe bei der Node wurde auf Wunsch hinzugefügt. GWs werden nicht wie in anderen Implementierungen über eine Liste gepflegt, sondern alle mit dem gw flag ist eine Liste und diese löst die Namen auf.

Ansonsten noch paar andere Sachen wie Libary Updates oder kleinere Modifikationen (inkl fix vom Meshlink count, tilte-tag Umbau usw.).

Moin, ist leider gerade nicht erreichbar.

Sry, ja es gab ein technisches Problem am Cluster. SSD Cache kaputt, Daten werden migriert usw. und da wir das gestellt bekommen und nichts zahlen, waren wir eine niedrige Priorität. Jetzt ist der Server umgezogen und wenn der DNS durch ist sollte es gehen. Google DNS Flush ist passiert.

EDIT:
Das Backup hat leider nicht den aktuellen Stand. muss das nochmal deployen.

EDIT2:
So wieder deployed - strg + F5 - JS hat dann ein cache breaker.

2 „Gefällt mir“

Hallo,

Entwicklung geht weiter:

  • Neuer Kartenserver läuft (Update von Zoomlevel und attribution nötig)
  • Umbau nodes.json ist in zusammen spiel mit yanic an der Reihe. Aktuell wird ein massiver Overhead mit ausgeliefert (ca. 50%), aber auch ein paar neue Informationen. Aktuell noch am planen und testen.
  • Kleinere Bugfixes und Updates

Viele Gruesse
xaver

PS:
Kann leider nicht meinen ersten Post updaten (kaputter Link) usw.

3 „Gefällt mir“

Sag mal kann dieser MV auch mit nodes.json Version 1 umgehen und hat er multi nodes.json support um mehrere jsons auf der gleichen Karte anzeigen zu können?

  1. Nein, es gibt ein Konverter Script - das war mal drin, Das kostet Leistung und kannte keine Community mit v1. Hätte eher ein Proxy Script gebaut. Wir planen ja auch v2 den Rücken zu kehren. Beispielsweise möchte ich einige Sachen viel dynamischer bauen Wenn möglich via Config Felder definieren die ausgeben werde (wenn alles klappt). Als Backend Yanic (und jeder andere der irgendwie so raus bekommt - Vorteil von dynamischen config wenns geht).
  2. Ja
1 „Gefällt mir“

Hast du da mal einen Link?

Muss mal schauen - das war mal im Code drin - eigentlich wandelt es nur etwas die Struktur um. Hab mich nie mit v1 groß beschäftigt.

Das wäre super da wir derzeit noch auf v1 hängen und das aus Gründen derzeit auch nicht ändern können.

Wollte gerade drauf schauen, aber es sind keine CORS gesetzt und kann daher die JSON nicht laden.

Cross-Origin Request Blocked: The Same Origin Policy disallows reading the remote resource at https://mesh.freifunknord.de/data/nodes.json. (Reason: CORS header ‘Access-Control-Allow-Origin’ missing).

https://hessen.meshviewer.net

Da hatte ich und gut den meisten Hirnschmalz hatte sheogorath reingesteckt damals eine Meshviewer (v4) version gebaut welche nodes.json v1 und v2 verarbeiten konnte.

müsste dieser commit gewesen sein.

das wäre schon mal eine Umwandlung von v2 in v1. Aber in diesem Fall brauchen wir eine Wandlung von v1 nach v2, damit der hopglass eine v2 von uns bekommen kann.

Hier ist auch ein script, das das neue v2 Format in das alte v1 umformatiert: GitHub - Freifunk-Nord/nord-ffmap-backend

Es gibt aber doch bestimmt irgendwo schon ein bash- oder jq-Script, das einfach eine nodes.json v1 in v2 umwandeln kann mit ein paar jq befehlen, oder?

Hier ist auch noch mal ein codeschnipsel, der helfen könnte eine invers funktion zu erstellen:

Damit kann man im hopglass-server eine nodes.json im v1 format erstellen, siehe hopglass README option in „possible-webserver-queries“:

/mv1/nodes.json 	Meshviewer nodes.json v1

Allerdings ist das alles noch keine Lösung für uns.

  • Entweder brauchen wir in Nord und Hamburg einen Workaround, der aus unserer nodes.json v1 eine neuere v2 erstellt, damit hopglass damit läuft
  • oder wir müssen unser generate_aliases.py Script neu erstellen, das in die nodesV1 die geokoordinaten reinrechnet damit es dies auch in einer nodes.jsonV2 reinrechnen kann, so dass wir gleich das neuere Format benutzen können. Dazu hab ich das hier von @kantorkel gefunden: was hat es mit dem generate_aliases_v2.py auf sich? Ist das für eine nodes.json im v2 format gedacht? Oder ist das nur eine neue version des scripts und das v2 hat nichts mit nodes.json v2 zu tun?

Wir hatten v2 schon mit ffmap backend und wie beschreiben planen wir das ganze zu ändern. Backend kann theoretisch alles sein, aber erste wird Yanic sein. Unser Meshviewer unterstützt „offiziell“ kein HopGlass Backend.

1 „Gefällt mir“

Großes Update geplant:

  • Version releasen - master branch - bisher hab es immer nur den develop
  • nodes.json und Graph komplett überarbeiten - yanic wird gleich das passende Backend liefern.
  • TQ in beide Seiten und kein Durchschnitt mehr.
  • Updates auch in der infobox content

Alles weitere gibt es im issue tracker und Milestone.

1 „Gefällt mir“

Was genau soll da geändert werden? Das Ticket gibt keine Informationen her.

Ich müsste dann für die Freifunk-Karte.de den Parser anpassen.

4 „Gefällt mir“

Hallo,

mal wieder ein Update.

Es geht voran, einige Sachen gemerged, viel obsoletes zeug entfernt und das neue Format macht sich deutlich im Volumen bemerkbar. Mehr Details im Milestone.

Gleiche Instanz (800 Nodes, 1000 Links)
Alt Knote Linkdatenndaten 245KB (gzip Übertragung)
Neue Knoten und Linkdaten 94,4KB (gzip Übertragung)

Test mit 5k nodes und 1,5k links 310KB (brotli Übertragung)

Aktuelle Sidebar:

Viele andere Sachen sind in den Issues auch mit Screenshots zu finden.

Live bei Darmstadt (Vanilla Meshviewer)

Custom style

xaver

5 „Gefällt mir“