BS1IN FU-IT Zielske BW1

Teil 1: Der erste Flow


4. Betrachten Sie die Ausgabe in der Debug-Konsole. Was wird Ihnen angezeigt?

In der Debug-Konsole wird standardmäßig ein

Timestamp (Zeitstempel) als lange Zahl angezeigt1. Dies ist der Standardwert, den ein

inject-Node als msg.payload sendet.

6. Wie lautet nun die Ausgabe des Debug-Nodes?

Nachdem die Änderungen aus Aufgabe 5 übernommen wurden und der debug-Node so eingestellt ist, dass er das gesamte Nachrichtenobjekt anzeigt, lautet die Ausgabe:

JSON

{
  "payload": "Dies ist ein Test.",
  "topic": "Hallo Welt!",
  "Testwert": true,
  "_msgid": "eine_zufällige_und_einzigartige_id"
}

7. Welche drei Attribute hat jedes Nachrichtenobjekt im Standardfall?

Jedes Nachrichtenobjekt in Node-RED hat standardmäßig die folgenden drei Attribute:

  • payload: Dies ist die eigentliche “Nutzlast” oder der Dateninhalt der Nachricht.

  • topic: Dient zur thematischen Einordnung oder zum Routen der Nachricht.

  • _msgid: Eine einzigartige ID, die automatisch für jede Nachricht generiert wird, um sie nachverfolgen zu können.

8. Welche Funktion hat der Button am hinteren Ende des Debug-Nodes?

Der grüne Button rechts am debug-Node dient dazu, die Ausgabe dieses spezifischen Nodes zu aktivieren oder zu deaktivieren. Wenn der Button deaktiviert ist (grau), werden keine Nachrichten von diesem Node mehr im Debug-Fenster angezeigt.

9. Welche Information liefert der Tooltip beim Maus-Hoover über dem Ausgang des Inject-Nodes?

Wenn man mit der Maus über dem Ausgangspunkt (dem kleinen grauen Quadrat) eines Nodes schwebt, zeigt ein Tooltip an, welche Eigenschaften die Nachricht hat, die von diesem Ausgang gesendet wird. Im Fall des inject-Nodes würde der Tooltip zum Beispiel msg.payload und msg.topic anzeigen.

10. Was heißen folgende Begriffe übersetzt?

  • Payload: Nutzlast oder Nutzdaten. Es bezeichnet die eigentlichen Daten, die in einer Nachricht transportiert werden.

  • Topic: Thema oder Betreff. Es wird oft verwendet, um Nachrichten zu kategorisieren.


Teil 2: Flow: Ping

11. Legen Sie einen neuen Flow an…

Hier ist die schrittweise Anleitung zur Erstellung des beschriebenen Ping-Flows:

  1. Nodes hinzufügen: Ziehen Sie die folgenden Nodes aus der linken Palette in Ihren Flow: inject, ping, switch, zwei change-Nodes und zwei debug-Nodes.

  2. Nodes verbinden:

    • Verbinden Sie den inject-Node mit dem Eingang des ping-Nodes.

    • Verbinden Sie den Ausgang des ping-Nodes mit dem Eingang des switch-Nodes.

    • Verbinden Sie den oberen Ausgang des switch-Nodes mit dem ersten change-Node.

    • Verbinden Sie den unteren Ausgang des switch-Nodes mit dem zweiten change-Node.

    • Verbinden Sie jeden der beiden change-Nodes mit einem eigenen debug-Node.

    1. Nodes konfigurieren:

    • Inject-Node:

      • Öffnen Sie den Node mit einem Doppelklick.

      • Stellen Sie unter “Wiederholung” (Repeat) die Option “Intervall” (interval) ein und wählen Sie “jede 1 Minute” (every 1 minute).

    • Ping-Node:

      • Tragen Sie bei “Target” die zu prüfende IP-Adresse ein (z. B. 10.0.0.10).
    • Switch-Node:

      • Dieser Node leitet die Nachricht je nach Ergebnis weiter. Der ping-Node gibt bei Erfolg die Antwortzeit (eine Zahl) und bei Misserfolg false zurück.

      • Stellen Sie die erste Regel so ein: property msg.payload, Bedingung is true. Dies fängt alle erfolgreichen Pings ab (da die Antwortzeit als true gewertet wird).

      • Fügen Sie eine zweite Regel hinzu: otherwise (ansonsten). Diese fängt alle anderen Fälle (Misserfolg) ab.

    • Erster Change-Node (erfolgreicher Pfad):

      • Stellen Sie die Regel so ein: Setze (Set) msg.payload auf (to) den Wert (string) "Der Server läuft!".
    • Zweiter Change-Node (Fehler-Pfad):

      • Stellen Sie die Regel so ein: Setze (Set) msg.payload auf (to) den Wert (string) "Der Server ist offline!".
  3. Deploy und Test:

    • Klicken Sie auf

      Deploy2. Der Flow startet nun automatisch jede Minute einen Ping.

    • Um den Fehlerfall zu testen, ändern Sie die IP im ping-Node zu einer Adresse, die in Ihrem Netzwerk nicht existiert (z.B. 192.168.178.99), und deployen Sie erneut. Nun sollte im Debug-Fenster die Nachricht “Der Server ist offline!” erscheinen.