Region PathHash Bot

Region und Path_Hash Bot

Ich bin eigentlich kein Freund von Bots, aber habe mich entschieden um die Einführung von Regionen und 2/3 Byte Pfade zu unterstützen, eine Möglichkeit zu schaffen damit die Durchgängigkeit des Netzes geprüft werden kann.

Was macht der Bot?

Der Bot lauscht auf bestimmten Channels nach eingehenden Nachrichten. Er prüft automatisch, aus welcher Region eine Nachricht stammt, und antwortet mit dem gleichen Region-Scope zurück. So bleibt die Antwort im selben Flooding-Bereich wie die ursprüngliche Nachricht. Zusätzlich wird die ab v1.14 implementierte verlängerte “Path Hash Size” gefordert. Damit kann der Pfad welchen die Nachricht nimmt genau überprüft werden, da die Überlappungen mit nur dem ersten Byte der Repeater ID deutlich unwahrscheinlicher werden.

Wie wird der Bot ausgelöst?

Damit der Bot antwortet, müssen vier Bedingungen erfüllt sein:

  1. Channel: Die Nachricht muss auf einem der überwachten Channels eingehen. Aktuell sind das: #chtest, #test, #ping, #bot.
  2. Region: Der Transport-Code der Nachricht muss zu einer der konfigurierten Regionen passen (ch, ch-de, ch-it, ch-fr europe). Nachrichten ohne Region werden ignoriert.
    Ob es Nachrichten mit ch-it und ch-fr bis zum Bot in der Nähe von Zürich schaffen ist eher ungewiss.
  3. 2/3 Byte Pfad path_hash_size 2 oder 3 muss gesetzt sein
  4. Trigger-Wort: Der Nachrichtentext muss eines der folgenden Wörter enthalten: regionping, regiontest, ping oder region.

Sind alle Bedingungen erfüllt, antwortet der Bot nach einer kurzen zufälligen Verzögerung.

Was passiert bei einer Antwort?

Der Bot:

  • Setzt seinen Flood-Scope auf die erkannte Region der eingehenden Nachricht

  • Passt den Path-Hash-Mode an die eingehende Nachricht an

  • Sendet eine Antwort an @[Absender]

  • Der Weg welche die Antwort zurückgelegt hat, kann ohne Zweifel nachvollzogen werden: Lange auf die Antwort drücken und dann “View Message Paths”. Keine Verwechelung mit Repeatern welche dasselbe erste Byte verwenden.

Damit kann man überpruefen, ob die eigene Region-Konfiguration korrekt funktioniert, ob die Repeater auf dem Weg bereits Pfade mit 2 oder 3-Byte unterstützen und ob Nachrichten mit dem richtigen Scope beim Bot ankommen.

Gut zu wissen:

  • Repeater ab v.1.14 unterstützen weiterhin 1 Byte Pfade jedoch zusätzlich auch 2 & 3 Byte. Was verwendet wird, wird immer vom Initiator der Aussendung bestimmt.
  • Beim eigene Companion kann die zu verwendende Path Hash Size unter <Experimental Settings> konfiguriert werden.
  • Es ist zu erwarten dass das Netz noch nicht durchgängig 2/3 Byte Pfade unterstützt. Desshalb allenfalls nach dem Test wieder auf 1 Byte zurücksetzen.
  • Ich werde den Bot in der Anfangsphase bis 2/3 Byte Pfade und Regionen etabliert sind betreiben. Danach kommt er wieder weg.
3 Likes

Danke für die spannende Aufgabe.

Ich finde, dass es etliche solche Aufgaben mehr geben sollte. Es bildet den Sender weiter und belastet das Netz entgegen den einfachen Ping-Bots kaum.

Ich komme zur Zeit mit path_hash_size 2 kaum bis Bern. Ich hoffe, dass ich die Aufgabe in Kürze lösen kann. Heute wäre doch ein guter Zeitpunkt, die Repeater zu updaten!

Hast du schon es auf ‘direktem Weg’ - also mit vorgewählten Repeatern versucht? Via die gut positionierten Repeater der Gruppe HB9BG sollten sich dir doch einige gute Wege erschliessen.
Probier es bei deinem nächst gelegenen Repeater auch mal mit: set path.hash.mode 1 Damit werden bei der Nachricht lediglich die ersten vier Zeichen des Schlüssels zur ‘Rekonstruktion’ des Weges eingetragen.

Gueti Zyt und viel Spass mit den kleinen Radios, Paul

Das ist so, die Repeater der

Das ist so. Die Repeater der Gruppe HB9BG sind strategisch sehr gut gelegen: Gratulation ins Aare- und Gürbetal.

Wenn ich aber die Karte von https://brn.meshmapper.net/ mit meiner Repeater-Nachbarliste abgleiche, habe ich keine Treffer.

Welche Nachbarn ‘sieht’ dein Repeater OHNE (also: set path.hash.mode 0) ?