HowTo: Node Red – Internetverbindungs-Informationen im Dashboard anzeigen

Im folgenden Artikel wird erklärt, wie Ihr euch Informationen zu Eurer Internetverbindung anzeigen könnt. Dabei wird jede Stunde die aktuelle Internet-IP-Adresse abgerufen und ein Speedtest durchgeführt, der euch die Download- und Upload-Geschwindigkeit anzeigt.


Sicherheitshinweise

Ich weiß die folgenden Hinweise sind immer irgendwie lästig und wirken unnötig. Aber leider haben schon viele Menschen die es "besser" wussten aus Leichtsinnigkeit Augen, Finger oder anderes verloren bzw. sich verletzt. Im Vergleich dazu ist ein Datenverlust fast nicht der Rede Wert, aber auch diese können echt ärgerlich sein. Deswegen nehmt Euch bitte fünf Minuten Zeit um die Sicherheitshinweise zu lesen. Denn auch das coolste Projekt ist keine Verletzung oder anderen Ärger wert.
https://www.nerdiy.de/sicherheitshinweise/

Affiliatelinks/Werbelinks

Die hier in aufgeführten Links zu Online-Shops sind sogenannte Affiliate-Links. Wenn Du auf so einen Affiliate-Link klickst und über diesen Link einkaufst, bekommt Nerdiy.de von dem betreffenden Online-Shop oder Anbieter eine Provision. Für Dich verändert sich der Preis nicht. Falls Du Deine Einkäufe über diese Links tätigst unterstützt Du Nerdiy.de dabei auch in Zukunft weitere nützliche Projekte anbieten zu können. 🙂 


Voraussetzungen

Hilfreiche Artikel:
Damit Ihr neue Nodes installieren könnt sollte NodeRed natürlich schon installiert sein.
Wie ihr einen RaspberryPi dazu vorbereitet und dann NodeRed darauf installiert ist in den folgenden Artikeln beschrieben.

Die folgenden drei Artikel beschreiben was zu tun ist um den RaspberryPi soweit vorzubereiten:
RaspberryPi – Einrichten für Nerdiys!
RaspberryPi – Die Erste Konfiguration!
RaspberryPi – Den RaspberryPi über SSH steuern

NodeRed – Installation von NodeRed auf dem RaspberryPi
NodeRed – Neue Nodes installieren
NodeRed – Mit Dashboard-Nodes eine Benutzeroberfläche erstellen

Benötigtes Werkzeug:
-keins-

Benötigtes Material:

In der folgenden Liste findet Ihr alle Teile die Ihr zur Umsetzung dieses Artikels benötigt.


In die NodeRed Konfigurationsoberfläche einloggen

Bevor Ihr eure NodeRed Konfiguration bearbeiten könnt müsst Ihr Euch - falls aktiviert - zunächst in die NodeRed Konfigurationsoberfläche einloggen.

Ansicht des Login Dialogs. Hier müsst Ihr die Login Daten eingeben die Ihr während der Konfiguration des Logins angegeben habt. Infos dazu findet Ihr im Artikel NodeRed - Benutzerlogin einrichten.

Speedtest-Node installieren

Als erstes müsst Ihr die Node installieren die für Euch den Speedtest übernimmt.
Dazu installiert Ihr die Node “node-red-contrib-speedtest”.
Wie man Nodes installiert ist in diesem Artikel beschrieben:
NodeRed – Neue Nodes installieren


Node-Code für Speedtest Anzeige

Nachdem Ihr den unten stehenden Node-Code eingefügt habt müsst Ihr die Dashboard-Elemente nur noch korrekt auf Eurem Dashboard positionieren. Informationen dazu findet Ihr auch in dem Artikel NodeRed – Mit Dashboard-Nodes eine Benutzeroberfläche erstellen.

Mit der Inject-Node “Speedtest ausführen” könnt Ihr den Speedtest manuell ausführen. Wundert euch nicht, wenn Ihr nicht direkt eine Auswertung erhaltet, der Speedtest dauert ein paar Sekunden.
In der Inject-Node könnt Ihr auch den Abfrageintervall für die Internet-Daten einstellen. Hier würde ich den Abfrageintervall nicht zu klein wählen, da es sein kann, dass zu häufige Abfragen irgendwann vom Test-Server geblockt werden. Außerdem würdet Ihr so auch Eure eigene Internetverbindung mit den häufigen Speedtests “blockieren”.

So könnten die Internetdaten bei Euch im Dashboard angezeigt werden.
So sieht der Flow im Konfigurations-Menü aus.

Der folgende Node-Code beinhaltet die oben angezeigte Konfiguration.

[{"id":"6ba1b514.1a8ffc","type":"inject","z":"bcba3320.cf832","name":"Speedtest ausführen","topic":"","payload":"","payloadType":"date","repeat":"3600","crontab":"","once":false,"onceDelay":0.1,"x":460,"y":1880,"wires":[["d8c672a4.02c62"]]},{"id":"60085e2a.ceb88","type":"debug","z":"bcba3320.cf832","name":"","active":false,"tosidebar":true,"console":false,"tostatus":false,"complete":"true","x":910,"y":1960,"wires":[]},{"id":"d8c672a4.02c62","type":"speedtest","z":"bcba3320.cf832","name":"","maxTime":5000,"x":660,"y":1880,"wires":[["60085e2a.ceb88","7166b0b4.0fb4e","559c3c96.63f474","9e7a000d.72622","7efb5657.f7c238"]]},{"id":"7efb5657.f7c238","type":"change","z":"bcba3320.cf832","name":"IP-Adresse","rules":[{"t":"set","p":"payload","pt":"msg","to":"payload.client.ip","tot":"msg"}],"action":"","property":"","from":"","to":"","reg":false,"x":930,"y":1800,"wires":[["528c8196.97579"]]},{"id":"9e7a000d.72622","type":"change","z":"bcba3320.cf832","name":"Download-Geschw.","rules":[{"t":"set","p":"payload","pt":"msg","to":"payload.speeds.download","tot":"msg"}],"action":"","property":"","from":"","to":"","reg":false,"x":950,"y":1840,"wires":[["68c5b12e.30c4f"]]},{"id":"559c3c96.63f474","type":"change","z":"bcba3320.cf832","name":"Upload-Geschw.","rules":[{"t":"set","p":"payload","pt":"msg","to":"payload.speeds.upload","tot":"msg"}],"action":"","property":"","from":"","to":"","reg":false,"x":940,"y":1880,"wires":[["bdd0dacf.8f0bc8"]]},{"id":"7166b0b4.0fb4e","type":"change","z":"bcba3320.cf832","name":"Ping","rules":[{"t":"set","p":"payload","pt":"msg","to":"payload.server.ping","tot":"msg"}],"action":"","property":"","from":"","to":"","reg":false,"x":910,"y":1920,"wires":[["c0dd272d.26b458"]]},{"id":"528c8196.97579","type":"ui_text","z":"bcba3320.cf832","group":"56d04a8f.ecd7a4","order":0,"width":0,"height":0,"name":"","label":"Internet-IP-Adresse:","format":"{{msg.payload}}","layout":"row-spread","x":1320,"y":1800,"wires":[]},{"id":"68c5b12e.30c4f","type":"ui_text","z":"bcba3320.cf832","group":"56d04a8f.ecd7a4","order":0,"width":0,"height":0,"name":"","label":"Download-Geschwindigkeit:","format":"{{msg.payload}}Mbps","layout":"row-spread","x":1340,"y":1840,"wires":[]},{"id":"bdd0dacf.8f0bc8","type":"ui_text","z":"bcba3320.cf832","group":"56d04a8f.ecd7a4","order":0,"width":0,"height":0,"name":"","label":"Upload-Geschwindigkeit:","format":"{{msg.payload}}Mbps","layout":"row-spread","x":1330,"y":1880,"wires":[]},{"id":"c0dd272d.26b458","type":"ui_text","z":"bcba3320.cf832","group":"56d04a8f.ecd7a4","order":0,"width":0,"height":0,"name":"","label":"Ping:","format":"{{msg.payload}}ms","layout":"row-spread","x":1270,"y":1920,"wires":[]},{"id":"56d04a8f.ecd7a4","type":"ui_group","z":"","name":"System","tab":"77aad24e.6a657c","disp":true,"width":"6","collapse":false},{"id":"77aad24e.6a657c","type":"ui_tab","z":"","name":"Einstellungen","icon":"dashboard"}]

Viel Spaß mit dem Projekt

Ich hoffe bei euch hat alles wie beschrieben funktioniert. Falls nicht oder ihr Fragen oder Anregungen habt lasst es mich in den Kommentaren bitte wissen. Ich trage dies dann ggf. in den Artikel nach.
Auch Ideen für neue Projekte sind immer gerne willkommen. 🙂

P.S. Viele dieser Projekte - besonders die Hardwareprojekte - kosten viel Zeit und Geld. Natürlich mache ich das weil ich Spaß daran habe, aber wenn Du es cool findest, dass ich die Infos dazu mit Euch teile, würde ich mich über eine kleine Spende an die Kaffeekasse freuen. 🙂

Buy Me a Coffee at ko-fi.com       

7 Kommentare

  1. Hallo,
    der Speedtest hat lange Zeit wunderbar funktioniert.
    Seit dem 03.09.2022 kommen keine Werte mehr und der Node ‘Speedtest’ bringt folgende Meldung:
    “Error: No server found, verify your proxy/network”.

    Ist bekannt woran das Verhalten liegen kann? Ich habe alle 15 Minuten die Abfrage gesendet, war das zu kurz?

    Danke und Gruß

    Martin

    1. Hi Martin,
      ich habe es gerade mal ausprobiert. Bei mir ging es auch nicht (mehr).
      Das liegt wohl an einer alten Version. Nachdem ich die Node über den Paletten Manager geupdated (und NodeRed neu gestartet) hatte geht es wieder.
      Vorher musst du aber noch die Datenschutzregeln (Einstellung in der Speedtest Node) akzeptieren.
      Hoffe es klappt bei dir auch. 🙂
      Beste Grüße
      Fabian

  2. Hi Fabian,

    danke für die schnelle Antwort.
    Ich versuche bereits den ganzen Abend das Update durchzuführen.
    1) Update ging nicht
    2) Nun ist ’node-red-contrib-speedtest‘ ausgegraut und lässt sich auch nicht deinstallieren. Weder aus der Palettenverwaltung noch per Konsole ’npm uninstall node-red-contrib-speedtest‘.

    Node-Red läuft bei mir auf einem Raspberry unter Debian.

    Gruß

    Martin

  3. Hi Fabian,

    gelöst: Ich habe den Bereich Speedtest betreffend in der Datei ‚.node-red/.config.nodes.json‘ entfernt, Node-Red gestoppt und neu gestartet, Speedtest über die Palettenverwaltung installiert, nun funktioniert es.

    Danke für deine Unterstützung.

    Grüße
    Martin

Kommentar hinterlassen

Deine E-Mail-Adresse wird nicht veröffentlicht. Erforderliche Felder sind mit * markiert

Diese Website verwendet Akismet, um Spam zu reduzieren. Erfahre mehr darüber, wie deine Kommentardaten verarbeitet werden.