Filterung Möhne Map

Hallo,

da ich mir beim Betrachten unserer Map mittlerweile vorkomme wie bei „Wo ist Walter?“, würde ich mal gerne anfragen, ob es möglich ist die Karte nach einzelnen Communities zu filtern.

Ein Beispiel, wie das gehen könnte, liefert die Domäne Ruhrgebiet.

Viele Grüße
JoBu

1 Like

Gehen tut das prinzipiell schon, ist nur ein großer Aufwand für den die Admins wahrscheinlich gerade keine Zeit haben. Mein Vorschlag: Mach dir ne eigene Karte und setz die Filterung auf.

Dazu bin ich leider nicht fähig :smiley:

Oder kann man vielleicht in den Meshviewer eine Filterung nach Präfixen einbauen? Mehr muss es gar nicht sein.

1 Like

Ja, das ist wahrscheinlich der einfachste Weg. Dann bräuchtest du nur eine abgeänderte Version von Meshviewer und Webspace.

Hatte ich auch schon vorgeschlagen, ist aber immer wieder abgelehnt worden.

Wo bitte ist das immer wieder abgelehnt worden?

So wie ich das sehe, ist das für v3 sogar auf der ToDo:
http://metameute.de/~nils/ffhl/todo.txt

Habt ihr ansonsten mal darüber nachgedacht das Roles feature für die Communityzugehörigkeit zu verwenden? Das könnte man dann direkt in ffmap-backend filtern.

Bis der Prefix-Filter zur Verfügung steht…
=> http://moehne-vis.freifunk-rheinland.net/map/geomap.html#lat=51.35633303410569&lon=8.480801582336426&zoom=15

Olsberger Koordinaten auf zoom 15

Nutze ich zur zeit auch als „Krücke“
Siehe auch Universeller Prefix-Filter für Kartenansicht

Naja… das Problem ist, dass wir in der Möhne viele „kleine Communities“ haben, die keine eigene Infrastruktur haben.
Dein Vorschlag würde bedeuten, dass man dann jeweils auch eigene Firmware bauen muss, um die „Role“ unterzubringen.

WIr unterscheiden uns in der Dom Möhne ja auch nur durch ein Prefix im Label. ff-bestwig, ff-olsberg, ff-brilon…usw

Wir haben daher aktuell nur zwei Möglichkeiten:

  1. Auf Deine Filtermöglichkeiten hoffen, wie auch immer die geartet sein werden. (Labelfilter würd uns das Leben leichter machen.)
  2. Die große nodes.json der Möhne selbst zu filtern und somit auch einen eignen Kartenserver aufzubauen.

Nein, im Gegenteil. Die verschiedenen Rollen (d.h. bei euch Community-Zugehörigkeit) können einmal in der Firmware hinterlegt und danach im Webinterface ausgewählt werden.

Ah…warte warte warte… Dann hilf mir auf die Sprünge.

Kann ich, wenn ich ne Liste von Communities in der site.conf hinterlegt habe, jene Liste als Dropdown im Config-Mode auswählbar machen und so den einzelnen Node der jeweiligen Community zuordnen?

Hab ich das so richtig herausgelesen?

Tante Edith: Dann wäre nur das Problem: Wie kann ich die ganze bestehenden Nodes einer Community zuordnen, wenn wir keinen Remotezugriff auf die Kisten haben? Die einzeln abzuklappern wäre unrealistisch. Dann nur mit nem modifizierten Autoupdater.

Tante Edith 2: Und noch was spricht gegen die Verwendung von dem Role-Feature, auch wenn ich es grundsätzlich gut finde. Wenn sich hier auf dem Lande, mal eben wieder ne neue Community unter der Möhne bildet, dann brauchts erst wieder nen Firmware-Update, damit die Liste aktuell ist. Das mit der neuen Community passiert mitunter recht schnell, weil sich hier jedes Kaff anders nennen wird. Große Städte sind halt Mangeware.

Und wenn wir ehrlich sind, soll das Role-Feature lt. Doku auch eher anders verwendet werden. :slight_smile:

Auf der ToDo steht, wenn ich das richtig verstehe, ein Filter in der GUI. Sprich man kann als Betrachter in ein Textfeld einen Filterstring eingeben.

Was die Communities sich aber wünschen ist, eine Karte, in der von Anfang an nur deren Nodes auftauchen. Beim alten Backend hatte ich dies durch mein Filterscript realisiert. Da werden alle Nodes, deren Hostname nicht den Filterkriterien entspricht, aus der nodes.json geworfen.

Für das aktuelle Backend bin ich da auch dran: Für die nodes.json funktioniert das auch schon bestens, allerdings habe ich bislang die graph.json noch nicht berücksichtig, so dass im Graph auch alle anderen Nodes, ohne Name oder weitere Info, auftauchen.

In http://api.freifunk-niersufer.de/mg/nodes.json sind beispielsweise alle Nodes aus http://map.freifunk-niersufer.de/data/nodes.json, deren Name auf „FF-MG-“ matched. Das selbe gibt es auch für Jüchen und Viersen. (Diese drei Communities sind aktuell unterhalb der Subdomäne Niersufer angesiedelt.)

Nachdem die Struktur der graph.json genauso Banane ist, wie der Links-Teil der alten nodes.json - Links beziehen sich auf Positionen in der Liste, anstatt auf eindeutige Indizies - habe ich das auf die Schnelle dafür noch nicht angepasst. Wird aber noch kommen, auch die werde ich zukünftig filtern.

1 Like

Ja, aber den Filterstring als Parameter mit in die Deeplinks mit aufzunehmen, daran wird’s bei @tcatm wohl nicht scheitern. Wenn das Filtern grundsätzlich möglich wäre, dann kann man es auch übergeben.
Da ich hier aber nur einen Wunschzettel ausfüllen kann, hoffe ich auf alles und erwarte nichts. :slight_smile:

Ja, so kann das Roles-Features genutzt werden. Es ist bewusst generisch gehalten um viele Anwendungsfälle abzudecken. Bestehende Knoten kann man nach und nach umstellen, nachdem man die Knotenbetreiber erreicht hat. (Ja, das ist manchmal schwer und eines der größten Probleme vieler Freifunkcommunities).

Der Filter im meshviewer ist vom Konzept völlig anders gedacht als ihr es auch vorstellt und für den Anwendungsfall nicht geeignet.

Das ist sehr schade (für uns).

Ich erwarte auch nichts und baue mir eben den Filter drumherum selber, wie auch schon beim alten Backend. Nachdem mir Filter und Merger quasi aus der Hand gerissen worden sind, schien offentlichtlich Bedarf bestanden zu haben.

Alle paar Tage trudelt bei mir auch eine Anfrage ein, den Filter doch bitte für’s neue Backend zu überarbeiten.

Ursprünglich hab’ ich das Ding nämlich quick&dirty nur für Mönchengladbach geschrieben gehabt, um unsere Gladbacher Nodes aus der unüberschaubaren Ruhrgebiets-Map und deren Graph rauszufiltern bzw. zu separieren.

Anyway… seit dem Wochenende gibt es den Filter in einer ersten Rohfassung für’s neue Backend, wobei bisher nur die nodes.json geflitert wird. Ist übrigens komplett neu in Perl geschrieben, weil PHP zwar für Quick&Dirty ok war, aber mir ansonsten als Script ohne Webbezug eher nicht recht ist.

//EDIT: Ich denke ich werde nächste Woche dank Feier- und Brückentag dazu kommen, das Ding fertig zu stellen.

Das wäre natürlich cool.

@Florian Suchtest Du nicht auch nach nem Filter?

Wie wäre es beide Wege zu verfolgen um das Problem später generisch lösen zu können?

Klingt nach einem guten Weg. Wobei man evtl. auch mal beleuchten sollte, ob so ein Filter nicht direkt im Backend schon Sinn macht. Die Map macht ja eigentlich nix, als ihr bereitgestellte Daten zu visualisieren.

//EDIT: Die Backend-Idee gefällt mir sogar noch besser. Wieso mühselig Daten aus einer JSON rausfiltern, wenn man auch verhindern kann, dass sie überhaupt dort landen? :wink:

1 Like

Einen Filter auf role und/oder site_code können wir im Backend einbauen. So einen Prefixfilter nicht. Der führt nur dazu, dass Menschen anfangen immer mehr Informationen in den Hostnamen zu kodieren und dieser immer länger und unhandlicher wird. Falls wirklich nötig, können wir mal ein generische Format für solche Zusatzinformationen entwickeln (beispielsweise eine Menge an Tags).