📝 Zusammenfassung
openai-gpt-4o-mini
## HAUPTTHEMA
In diesem Video wird gezeigt, wie man mit dem Workflow-Tool n8n einen automatisierten Router-Rebooter erstellt, der die Verbindung zu Routern wie einer Fritzbox überwacht und bei Verbindungsproblemen einen Neustart durchführt.
## KERNPUNKTE
- **Workflow-Erstellung:** Der Workflow wird in n8n vollständig grafisch erstellt und enthält Komponenten zum Testen der Internetverbindung.
- **Ping-Befehle:** Mehrere Ping-Befehle werden verwendet, um die Internetverbindung zu überprüfen und falls notwendig, einen Router-Neustart auszulösen.
- **Einsatz von WiFi-Steckdosen:** Eine intelligente WiFi-Steckdose (z.B. Shelly) wird verwendet, um den Router remote ein- und auszuschalten.
- **Fehlerbehandlung:** Der Workflow ist so konzipiert, dass er auch im Fehlerfall weiterläuft, um Mehrfachstarts des Routers zu vermeiden.
- **Zeitplan:** Eine Zeitplan-Funktion wird hinzugefügt, die es ermöglicht, den Workflow regelmäßig (z.B. alle 5 Minuten) automatisch auszuführen.
- **Lockfile-Mechanismus:** Ein Lockfile wird verwendet, um zu verhindern, dass ein Reboot-Prozess unterbrochen wird, falls der Router noch beim Hochfahren ist.
## FAZIT/POSITION
Das Video bietet eine praktische Anleitung zur Automatisierung des Router-Neustarts mit n8n und hebt die Vorteile automatisierter Überwachung hervor. Der Autor ermutigt die Zuschauer zur Interaktion und zum Abonnieren des Kanals.
hallo liebe Freunde meines Kanals in einem der vorigen Videos habe ich euch ja das Workflow Tool n8n näher gebracht heute machen wir da weiter wo wir an der Stelle aufgehört haben nämlich wir bauen uns einen schicken Workflow dabei geht es heute darum ein Router neu zu starten deswegen nennen wir das ganze ein Router Rebooter das ganze wird ein bisschen unterhaltsamer und weniger techniklastig als die letzten Videos weil wir nämlich einfach n8n voll grafisch nutzen werden und uns da einen schicken Workflow zusammenbauen werden der uns dabei hilft sowas wie z.B eine Fritzbox oder ein anderes System remote zu starten wenn das Ding nicht mehr funktioniert bevor ich mit diesem Video in die Folgen gehen no mein üblicher Spruch wenn euch dieses Video unterwegs gefällt oder wenn es euch sogar was bringt wä es ganz große klasse wenn ihr mir ein Like da lassen würd oder vielleicht sogar ein Kommentar das bringt dem Kanal eine ganze Menge und macht ih ein bisschen populärer in der Welt da Drau en dann gibt es natürlich die kostenlosen YouTube-Kanal Abos und wer noch keins hat der ist herzlich eingeladen jetzt auf Abonnieren zu klicken und am besten auch gleich die Glocke aktivieren denn dann verpasst du auch ganz von meinen zukünftigen Videos für die Fans meines Kanals gibt es patreon Mitgliedschaften und wer da dran interessiert ist kann ja den auch mal auf den Link unten in der Videobeschreibung klicken außerdem ihr könnt mich buchen für alle Fragen rund um die IT und die Themen die ich in diesen Videos hier auf Youtube vorstelle und wenn euch das interessiert klickt unten auf den entsprechenden Link da erfahrt ein bisschen mehr jetzt aber fangen wir an mit unserem Router reboter unter n8n viel Spaß dabei vor langer langer Zeit habe ich in einem meiner ersten Youtube Videos ein Produkt getestet das eben Router starten konnte das war ein physikalisches Dings das hat man zwischen die Stromversorgung oder in die Stromversorgung von dem eingeschleift und es hat er mit so ein paar Pings und so weiter dafür gesorgt herauszufinden ob die Internetverbindung da ist und hat dann im Fehlerfall den Router neu gestartet das Produkt ist lange lange vom Markt aber das Problem natürlich nicht damit nicht gelöst stellt euch einfach mal vor ihr habt ein einen Router oder ein Modem sowas wie z.B eine Fritzbox und einen Provider der regelmäßig dafür sorgt dass man eben diesen Router neu starten muss z.B Vodafone dann ist das natürlich eine ganz tolle Sache wenn man nicht zur Stelle sein muss wenn man diesen Router neu starten muss Szenario ihr seid im Urlaub und ihr wollt z.B eure Fotos auf eure syology hochladen ihr erwartet dass eure Internetverbindung funktioniert aber na ja die der der der Router hat eben grsche gemacht jetzt wäre es natürlich ganz toll wenn man einen berittenen boten dahinchicken könnte der sich drum kümmert das Ding neu startet und so weiter geht natürlich nicht aber unsere Infrastruktur unds Technologie gibt es natürlich her solche Sachen zu automatisieren und da wir das ganze n8n oder n8n auf der syology laufen haben die E24 x 7 da ist bietet sich das als Plattform dafür an als zweites Werkzeug braucht wir natürlich irgendwas was diesen diesen Neustart triggert und praktisch diesen Router stromloss schaltet für für ein paar Sekunden wieder anschaltet und das im Fehler oder wenn notwendig halt dann auch wiederholbar macht und dafür bieten sich solche äh intelligenten Steckdosen wie die sich jetzt z.B an das hier ist das hier ist jetzt eine von Shelly m vom Prinzip her kann das jedes andere Produkt auch sein aber wichtig dabei ist dass es ein eine Steckdose ist die man über WiFi ansteuern kann und die nicht zwangsweise einen Server im Internet braucht mit dem sie nach Hause telefonieren will sondern wo wir das praktisch lokal über Wireless Protokoll ansteuern können beim Shelly ist es sehr sehr einfach ich zeig's euch auch in diesem Video wie das funktioniert ähm ihr wisst selbst was ihr im Haus habt oder was ihr bevorzugt also wie gesagt man muss es eben irgendwie über eine lokale IP-Adresse ansprechen können ohne dass es irgendwie ins Internet muss das ist ganz wichtig und damit hatten wir im Prinzip alles alle ingredienzchen an Bord und können uns das ganze jetzt mal auf NN oder n8n spreicht aus wie ihr wollt genauer anschauen ich mache's besonders ich versuch es einfach zu halten aber da ist natürlich auch schon eine gewisse kleine Komplexität in dem ganzen Workflow drin da werden paar zweigungen drin sein und ein paar Betriebssystem Aufrufe aber das macht natürlich auch irgendwo das interessant und es ist irgendwie für mich da schon das Salz in der Suppe also gehen wir rüber nach n8n n8n und legen mal los hier sind wir auf n8n und das ist die Übersicht meiner Workflows jetzt gehen wir als erstes her und legen uns einen neuen an Workflow und hier ist er in seiner ganzen Lehre am besten geht ihr jetzt sofort her und benennt das Ding um dafür klickt ihr hier oben links auf den Namen und jetzt nennen wir das ganze einfach Router oh Router Rebooter und ich setze noch das Wort Demo dahinter ihr könnt dann das entsprechend auch benennen wie Ihr möchtet hauptsache ihr findet das wieder gut jetzt müssen wir einen ersten Schritt hinzufügen das geht über dieses Plus das habe ich euch schon mal gezeigt und hier haben wir gleich die Übersicht über die ganzen verschiedenen Auslöser die einen Workflow so wie das nennt man eben in der dieser Sprache triggern können also auslesösen können und für uns reicht es erstmal der manuelle Auslöser denn wir wollen es ja erstmal nur testen und später überlegen wir uns mit was für ein anderen Auslöser wir das ganze dann bedienen oder Scharfschalten gut also tun wir das mal hier auf die linke Seite übrigens wenn ihr wenn euch das zu ist da auf eurem Bildschirm könnt hier über diese Zoom Knöpfe das größer oder kleiner machen ich lasse es mal so einfach um die Sichtbarkeit im Video bisschen zu verbessern gut also wenn wir auf diesen testwflow Button drauf klicken dann wird das Ding ausgelöst gut was ist denn jetzt so der ganz grobe Ablauf von so einem Router reboter also als erstes müssen wir gucken hat unser Router noch Verbindung zum Internet das ist eine und basierend auf dem Ergebnis müssen wir sagen okay wenn du Verbindung zum Internet hast brauchst du nichts tun dann führen wir irgendwann diesen Workflow noch mal aus damit wir irgendwie so eine kontinuierliche Testschleife haben was passiert aber wenn du keinen Zugriff aufs Internet nicht mehr hast dann musst du rebutoten also wir haben einmal einen einen Test und basiert auf den Testergebnissen lösen wir zwei Wege aus entweder wir machen Schluss mit unserem Workflow und warten bis er wieder ausgeführt wird oder wir starten den den Router neu fangen wir also mit dem Test an und das geht am besten mit einem betriebssystembfehl keine Angst wir müssen jetzt nicht runter auf die auf die Betriebssystem Shell sondern wir machen das hier über einen Baustein aus n8n und den kriegen wir entweder hier über dieses Pluszeichen oder über dieses das spielt keine keine Rolle was ihr da macht und das Ganze ist irg irgendwie was ausführen also wir schalten ungedanklich auf Englisch und das wir dann Exec execute und execute command ist genau das was wir brauchen also wir führen ein betriebssystemfehl aus und das hier ist so was ihr hier seht immer die Grund Struktur von so einem Bauklotz und hier in diesem Feld in diesem Textfeld können wir also unseren unser Kommando eintragen und das ist nichts anderes als das Ping Kommando das kennt ihr schon wir pingen raus und Kriegen Pong zurück und dann geben wir dem Ding ein paar Parameter mit die das für diese Hintergrundverarbeitung bisschen tauglicher machen also wir wollen als erstes mal nur einen einzelnen Ping rausschicken n C1 dann brauchen wir keine hostnamensauflösung - N denn wir wollen einfach nur wissen funktioniert es können wir nach außen pingen und kriegen wir ein pun zurück was dahinter dann mit Hostnamen steht interessiert uns nicht dann Q für quiet wir wollen Hal nicht diese ganze litternei von wie lange hat's gedauert und diese ganze Statistik hinten dran haben das interessiert uns alles nicht und dann brauchen wir noch einen weiteren Parameter US groß W wie lange soll es dauern was ist unser Timeout ja wie lange haben wir Geduld bis wir oder warten wir bis wir ein Punk zurückbekommen und das ist in dem Fall 2 Sekunden und jetzt als müssen wir noch das Ziel angeben und jetzt machen wir einfach mal zum Spaß oder auch für für ernst kann man auch machen nehmen wir die DNS Server von Google denn wenn wir die irgendwie erreichen und die sind hoch hochverfügbar angelegt dann ist dann ist ja in Ordnung dann haben wir Verbindung zum Internet also machen wir hier 8.8.8.8 und jetzt können wir diesen pingbefehl mal testen und ihr seht das hat funktioniert wir bekommen hier eineus Gabe Ping blabblabla hat 56 databites rausgeschickt und wir haben keine keine verloren unterwegs oh das ist schon mal ganz gut was passiert jetzt aber wenn uns dieser Ping nichts zurückliefert das schauen wir uns jetzt auch mal an indem wir einfach hier eine Fantasie IP-Adresse eingeben am besten was aus dem lokalen Bereich wo wir genau wissen dass da niemand zu Hause ist das ist 102.168.222.22 Z da bin ich mir absolut sicher dass da niemand antwortet und auch jetzt können wir hier sagen Test step und jetzt dauert es 2 Sekunden bis wir eine Fehlermeldung bekommen und das ist natürlich auch klasse weil Fehlermeldung ist in jedem Fall also jede Meldung in diesem Fall ist gut für unseren Workflow jetzt hat es aber eine kleine Problematik mit sich denn im Fehlerfall ist das ist die das Standardverhalten von NN den Workflow zu stoppen geht nicht mehr weiter ist beendet fertig tschüss aber wir wollen ja genau wissen was S was daneben gegangen ist und deswegen müssen wir jetzt ein paar Sachen hier an unserem Knoten an diesem execute command Knoten noch verändern und dafür klicken wir hier auf dieses Zahnrädchen und hier gibt's ein paar Standard Einstellungen die wir hier die wir hier ändern können auf jeden Fall brauchen wir von diesem von diesem Baustein immer eine Ausgabe egal was passiert funktioniert's Krien wollen wir eine Ausgabe haben wenn es nicht funktioniert wollen wir trotzdem eine haben und das nächste ist das On Error Verhalten also wenn was schief gelaufen ist ich habe ja gesagt Standardverhalten ist stop Workflow das wollen wir nicht wir wollen auf jeden Fall weitermachen denn wir wollen ja praktisch möglicherweise zum nächsten Ping gehen denn von einem Ping wissen wir nicht was ist jetzt eigentlich Sache es K Kön das sein dass der was das Ziel gerade irgendwie in Erwartung ist und gerade nicht nicht erreichbar das heißt ja nicht dass sie dann unseren Router neu starten müssen wissen wir aber nicht deswegen machen wir am besten noch einen zweiten ping und ein dritten und ein vierten vielleicht sogar ein fünften und um all diese pingses auseinander zualten ist es gut wenn wir hier dieses diesen diesen Titel von dem Befehl mal ändern und das machen wir jetzt mal schnell indem wir hier auf diesen Stift klicken und dann drüber schreiben und ich nen das G ganze ping_1 und jetzt klicke ich auf rename und jetzt heißt das eben ping_1 sehr gut jetzt gehen wir mal zurück auf unsere Arbeitsoberfläche und ganz wichtig zwischendurch immer wieder mal auf diesen safe Button klicken denn was man gesichert hat das bleibt erstmal und ihr seht hier wir haben ja diesen diesen Knoten ja oder diesen ähm diesen Baustein ausprobiert und der hat eben diese Fehlermeldung abgegeben das in Ordnung gut jetzt wollen wir einen zweiten Ping dahinter schalten und wir wollen ja nicht diesen ganzen Kram noch mal eingeben dannf gehen wir mit der rechten Maustaste da drauf und dann können wir duplicate anklicken und ihr seht hier ist ein zweiter Bauklotz entstanden mit ping_terstrich als Namen das das nehmen wir uns jetzt gleich vor und jetzt wieder doppelter mauskck drauf und jetzt können wir dieses Ding bearbeiten fangen wir also als erstes Mal mit dem Namen an das ist ping_2 ganz wichtig und jetzt könnten wir dem Ding erstmal ein anderes Ziel geben machen wir das mal das ist auch intern wird auch daneben gehen aber das ist jetzt erstmal gut wir wollen jetzt erstmal nur pinknoten haben die fehlerweldungen liefern und ihr seht auch gleich warum ich das so mache da jetzt praktisch Ping 2 nach Ping 1 automatisch ausgeführt werden soll schnappen wir uns hier dieses Plus und ziehen das auf den Eingang von Ping 2 ich habe ja gesagt wir brauchen natürlich noch ein paar Ergebnisse mehr als plus 1 oder 2 weil zi das ist kann ja immer noch schief gegangen sein und je mehr wir haben umso stabiler ist natürlich unser Ergebnis übrigens wenn ihr hier ein bisschen Platz schaffen wollt könnt ihr müsst ihr nicht jeden Knoten einzeln bewegen oder jeden Baustein sonder ihr könnt hier so ein so ein Rahmen drüber ziehen dann sind die alle markiert und dann könnt ihr den ganzen alle Mar Knoten oder Bausteine dann irgendwo hin bewegen gut ich Klone diesen zweiten Ping auch noch mal macht das gleiche Spiel wie gerade eben benenn den als erstes Mal um das ist jetzt unser dritter rename und da machen wir mal vier draus alles gut geht ja nicht ne das wie gesagt das ist jetzt auch genau das Ziel wir wollen nur negative Ergebnisse haben und wieder ver Kabeln und noch mal einen weiteren Klon anlegen ihr könnt das ihr könnt so viele anlegen wie ihr wollt aber irgendwann ist natürlich auch der sin der Sache überschritten also wir wollen natürlich irgendwo ein stabiles Ergebnis haben das irgendwie schon mit der Realität oder uns ein Eindruck verschafft wie wie sieht's den tatsächlich aus wir wollen nicht aus aus Jucks und Dollerei ständig unseren unser Modem rebooten oder neu starten wir wollen das ja wirklich nur machen wenn wenn tatsächlich keine Verbindung da ist auch wieder hier wieder safe mal zwischendurch anklicken und hier das gleiche Spiel wie vorhin umbenamsen und noch mal eine andere IP-Adresse eingeben einfach aus ju undollerei damit wir hier nicht immer das Gleiche machen und auch wieder verkabeln so jetzt haben wir praktisch eine Kaskade die einfach so eins nach dem anderen abläuft wir können das ja mal testen dauert jedes Mal 2 Sekunden ungefähr bis der Ping merkt okay es funktioniert hat nicht funktioniert und jetzt haben wir vier Ergebnisse gut jetzt haben wir hier unsere verschiedenen Pings aber hier ist noch ein kleiner Schönheitsfehler ich habe nämlich vergessen den umzubenennen so Ping 4 jetzt wollen wir ja auf diese entsprechenden Ergebnisse reagieren also wenn alles durchgelaufen ist und wir haben positive Ergebnisse aus aus unserer testkaskade dann brauchen wir gar nichts machen dann wissen wir dass Internet da ist und wir können einfach warten eine bestimmte Zeit lang warten bis wir diesen Ablauf wieder starten um dann praktisch eine einen testrhythmus hinzubekommen aber im anderen Fall wenn wir keine Ergebnisse bekommen das heißt nur negative Ergebnisse dann heißt es ja wir haben keine Internetverbindung und wir müssen mit einem Reboot reagieren und das ganze ist natürlich eine Ablaufsteuerung und Ablauf Steuerung finden wir un im Bereich Flow und was wir brauchen ist eine wenn Verzweigung wenn das also wenn keine Internetverbindung dann rebut wenn Verbindung dann tut gar nichts also reagieren wir mit IF und so sieht praktisch diese if Geschichte von innen aus genau wie die anderen Knoten auch aber mit ein bisschen anderen Parametern als erstes genau hab richtig erfasst benennen wir das Ding um das heißt nicht if sondern keine Antwort jetzt müssen wir natürlich definieren was ist den das Kriterium was heißt den keine Antwort und das bekommen wir aus den Ausgaben der verschiedenen Pings die wir vorhin abgearbeitet haben und die haben sich hier alle im Bereich Input gesammelt hier seht ihr Ping 1 2 3 4 fangen wir also mal mit ping 1 an der hat diesen Server hier angepingt und der ist daneben gegangen wie erwartet also sagen wir im Fehler Fall von Ping 1 und zwar ist es dadurch definiert dass diese dieses dieser dieses Ergebnis error entstanden ist also nicht leer ist ist not empty und Ping 2 hat einen Fehler abgegeben ist not empty ist nicht leer und Ping 3 hat einen Fehler geliefert also error is not empty Fehler ist nicht leer also wir haben einen Fehler und Ping 4 noch genauso halt wir müss noch eine Verbindung hinzufügen und die sind alle mit un verknüpft also es ist immer nur immer und und jetzt hier den letzten hinein das heißt also wenn alle unsere verschiedenen Pings Fehler geliefert haben dann wissen wir genau wir haben keine Internetverbindung warum steht hier nicht dieses Ping 3 drin das liegt daran dass es der letzte Ping ist und n8n gesagt hat okay der braucht das nicht das ist schon alles in Ordnung so das hat alles seine Richtigkeit und wir können das ja auch testen und tatsächlich liegen wir hier auf der True branch das heißt genau wir haben keine Antwort alle sind mit Fehler ausgestiegen das ist prima schauen uns mal grafisch an tatsächlich haben wir ja hier und das ist durch diesen diese grüne Linie dargestellt den Ablauf wir haben auf Test Workflow gedrückt wir haben Ping 1 abgearbeitet wir haben ein Ergebnis zurückbekommen 2 3 und so weiter wir haben vier Ergebnisse in diesen in diese if Geschichte hineingeliefert und wir haben viermal einen Fehler bekommen ja wir haben keine Antwort das heißt hier im im J Fall müsste praktisch unsere reboot Mechanik dann einsteigen das können wir uns mal mit dem Platzhalter belegen klicken wir mal hier drauf und wir wollen eigentlich gar nichts tun wir wollen einfach nur ein Platz halten dafür gibt es diese no Operation do nothing Dinger und Reboot nennen wir das einfach mal so gehen wir also hier hin hier heißt das ist jetzt nur für unsere für unsere als als gedankenst Stütze und im falls fals Fall also wenn wir ir irg einer Form Internetverbindung haben brauchen wir eigentlich gar nichts zu tun wir könnten hier eigentlich das offen lassen wir können aber der schönheialber auch so ein do nothing Knoten hinmachen und sagen tue nichts rename zurück wieder auf Speichern tun das mal hier schön runter und jetzt testen wir das ganze mal das heißt Ping 1 läuft ab 2 3 und 4 und ihr seht das Ergebnis ist wir müssten rebooten in dem Fall jetzt tun wir aber mal was ganz anderes wir nehmen mal unser unser Ping 1 und wir setzen hier einen den DNS die dnsip von Google wieder ein 1.8 8.8 und wir wissen ja dass der mit großer Wahrscheinlichkeit funktioniert also testen wir unseren Workflow und testen kostet da nichts aber wir werden herausfinden dass in dem Fall unds dass der Workflow sagt wir brauchen gar nichts tun wir erreichen nämlich die Außenwelt ist genau das was wir haben wollen so jetzt können wir im Prinzip hergehen und unsere rebootmechanik ausprägen wie könnte das aussehen ich habe ja gesagt diese na ja WiFi Steckdosen Steckdose die muss eben irgendwie auf ein Aufruf reagieren und ich muss irgendwie in diesen Aufruf was was reinpacken können dass mir das sagt hey schalt aus oder schalt an und das ist in diesem z.B diesem Shelly API dargestellt und das habe ich für uns schon mal rausgesucht deswegen braucht ihr das jetzt nicht machen und das ganze sieht dann folgendermaßen aus wir werden einen erstmal diesen diesen diesen nichts tun Dings wegwerfen und wir fügen führen wieder etwas aus und zwar ein einen ein Betriebssystem Befehl über execute command wieder das ist ja unser alter Freund und wie würde jetzt dieser betriebssystembefehl aus Aussehen wir wollen ja dieses get wir wollen praktisch ein get an diese an den Webserver oder Webservice von unserer Steckdose schicken das heißt wir brauchen ein eine Art Webbrowser der kein User Interface hat dafür müss uns Dr orientieren was unserchn Docker Container beherrscht und der beherrscht auf jeden Fall den Befehl vget das ist im Prinzip ein ein Befehl der dafür sorgt dass eine URL aufgerufen wird und dann kann ich entscheiden was ich mit dem Ergebnis mache will ich es runterladen will ich es einfach weiter verarbeiten oder will ich gar nichts damit machen und jetzt brauchen wir natürlich ihr habt's richtig gearnt ein paar Parameter für unseren veget Befehl und die sehen folgendermaßen aus ein bisschen bisschen wild aber es lässt sich relativ einfach erklären dieses Minus kleinq groß o-us sorgt dafür dass praktisch keine Ausgabe verarbeitet wird und hier ist unsere URL das heißt wir haben hier das übliche HTTP wie wenden wir praktisch eine Webseite aufrufen wollten das hier ist die IP-Adresse von meiner WiFi Steckdose und das was hier danach kommt ist im Prinzip dieser API Aufruf der kann von von System zu System unterschiedlich sein aber vom Prinzip her ist der wahrscheinlich bei jeder anderen Steckdose ähnlich aufgebaut ob es jetzt eine Philips HU ist oder irgendein anderes Produkt bei Shelly sieht jedenfalls so aus relay das hier ist ein ein sogenanntes relay ein Relay auf Deutsch und das hat verschiedene verschiedene Adressen in dem Fall bei der Shelly Plug S ist es immer die Null und jetzt der Parameter den man den wir hier hineinliefern wir wollen dem Ding Anweisung geben auszuschalten turn ist gleich off genauso gibt's natürlich wieder ein turn ist gleich on klarer Fall und dann dieses kaufm unzeichen größer// SGT einfach nur nur dafür dass irgendwelche eventuellen Ausgaben nicht unser unser pilsystem verschmutzen sondern dass es einfach ins nulevice kopiert wird also der einen großen Papierkorb diese Shelly Plug ist eingestöpselt und ist auch auf ein und jetzt können wir natürlich auch wiederum diesen Schritt testen wir müssen natürlich um den Befehl testen zu können müssen wir natürlich dafür sorgen dass wiederum alle von unseren Baustein hier vorne alle Pings wieder negative Ergebnisse abliefern und jetzt können wir hier hineingehen und können mal einen Test auslösen das heißt wenn ich hier auf Test step klicke wenn erstmal alle vorigen Knoten ausgeführt damit wir überhaupt ein verlässliches Ergebnis bekommen wir haben ein paar Änderungen vorgenommen und ihr habt's klicken gehört die deckdose hat reagiert das ist schon mal ganz eine ganz gute Sache also wir können schon mal ausschalten das machen wir schon sehr sehr gut und wir sichern das Ergebnis schon mal zwischendurch wieder und execute command funktioniert das heißt wir ändern auch hier wieder den Namen auf ausschalten jetzt ist es ja so wir müssen ja immer das so steht's auch in den für diese für diese Router drin man soll ja dann immer ein paar Sekunden warten bis man wieder den Strom schaltet das heißt wir klicken hier auf plus und was ist besser geeignet als ein Weight knnoten um genau das zu tun wait warte gibt es hier ist er und wir können hier genau festlegen wie lange gewart werden soll und das sind in der Regel natürlich sowas um die 10 Sekunden und das ganze nennen wir dann also warte 10 Sekunden danach schalten wir das ganze Ding wieder an das heißt wir können im Prinzip den ausschaltenknoten einfach duplizieren hier haben wir wir verkabeln den schnell und machen das jetzt natürlich wieder anschalten und der einzige Unterschied wird hier sein in dem API Aufruf statt turn ist gleich off wird natürlich das ganze turn ist gleich on heißen rename ja und jetzt können wir natürlich hier die Sache sichern und den unseren ganzen Workflow noch mal ausprobieren Test Workflow das heißt wir pingen unsere Ziele an jedes ping geht daneben unsere everzweigung sagt ausschalten oder reboten viel mehr wir warten 10 Sekunden nach dem Ausschalten und dann geht die Sache wieder von vorne los unser Router ist rebootet jetzt ist es natürlich so wir wollen das ja nicht immer wieder manuell anstoßen die Idee ist ja das ganze in eine in eine in einen Zeitablauf zu zu gießen dafür eignet sich natürlich ein Zeitplan und das finden wir hier unter schedule schedule Trigger den wollen wir uns jetzt erstmal hier von außen anschauen hier ist er und den wer wir jetzt natürlich hier einsetzen statt diesem when clicking Test Workflow das heißt ich nehme hier einfach die Verbindung raus und verkabel jetzt den schedule Trigger und jetzt müssen wir uns natürlich überlegen wie wie führen wir das Ding aus und hier gibt es verschiedene Regeln wir können sagen okay wir wollen das im Minutentakt sozusagen und wir wollen sagen wie viele Minuten sollen vergehen zwischen den Auslösungen wir können jetzt natürlich sagen alle 5 Minuten und das scheint mir auch ganz gute Idee zu sein dass wir alle 5 Minuten überprüfen haben wir Verbindung zum Internet ich denke alles was länger ist das kann ärgerlich sein man kann natürlich auch bis auf 15 Minuten aber das bringt ja keine richtige Last auf unser System ist ja nicht so dass wir das alle 5 Sekunden ausführen oder alle 5 Millisekunden sondern alle 5 Minuten ist ja wirklich ein guter Kompromiss gut das heißt wir haben jetzt hier diesen diesen Auslöser der alle 5 Minuten diese Kaskade abarbeitet jetzt stellt sich natürlich folgende Frage was passiert wenn unser Router nach dem Anschalten beschäftigt ist seine Verbindung herzustellen und ihr wisst ja wenn es z.B bei Kabelinternet dauert das unter Umständen auch echt wirklich 10 Minuten ja das heißt wir müssen uns irgendwie weil ja dieser dieser dieser Schritt häufiger kommt als alle 10 Minuten müssen uns irgendwie eine Methodik überlegen die dafür sorgt dass hier unser Reboot von unserem Router nicht unterbrochen wird mit dem neuen ausschalten anschalten das wäre VIG das wäre eine völlig idiotische Schleife die sich nicht mehr beenden ließe das heißt wir brauchen irgendeinen Mechanismus der hier unter für eine Unterbrechung sorgt und in selbst in großen Softwaresystemen wie z.B SAP werden loogfiles verwendet und genau das werden wir verwenden wir werden uns ein lckfile erzeugen das sagt okay wir sind hier momentan in beschäftigt der Router ist gerade am rebooten wir brauchen diesen Test gerade nicht durchzuführen wir machen das wenn wir fertig sind das ist eigentlich im Prinzip ganz einfach wir müssen im Prinzip hier vor das Ausschalten das Erzeugen dieses lockfiles schalten und dafür nehmen wir einfach hier diesen diese Verkabelung weg und wir setzen was anderes hinein nämlich die Erzeugung dieses Logfiles das machen wir wieder über unseren Betriebssystem Befehl Exec execute command und wir schreiben einfach in das aktuelle Verzeichnis eine kleine Datei ohne Inhalt rein und die nennen wir router Rebooter active damit wir auch genau wissen was das ist ja und jetzt kann man z.B noch pun Log hinten dran schreiben damit wir wissen aha das sperrt das setzen wir hier vor das Ausschalten das heißt bevor überhaupt hier irgendwas passiert legen wir diese Datei an wir müssen natürlich auch hier hinten dran irgendwie so eine Sache wie wie wie ein wartekommando setzen damit wir auch wissen hey wir sind jetzt mit mit unserer Arbeit fertig mit unserem rebooting und wir nehmen dann diese Datei wieder weg das heißt wir fügen einen neuen warteschritt hinzu noch mal ein wait hier ist er und in dem Fall wären das natürlich sowas wie 10 Minuten ja weil ich habe ja gesagt so ein Kabel Modem das dauert manchmal ganz schön lange bis das sich mit seiner mit seiner Umgebung wieder angefreundet hat und verläsliche Ergebnisse lieft schreibben wir es auch dazu wie lange wir warten warte warte 10 Minuten und jetzt können wir davon ausgehen dass unser Router wieder da ist nach diesen 10 Minuten und wir müssen jetzt dafür sorgen dass diese lockdatei wieder verschwindet das machen wir wieder über einen Betriebssystem Befehl execute command und das ist dann einfach rm- F RM remove - f Force also mit richtig Nachdruck und dann Router am besten wir en das ja alles um anlegen blogdatei und hier ist es dann löschen loogdatei perfekt das heißt wir haben schon mal diesen Bereich hier nicht noch nicht geschützt aber wir haben dafür gesorgt dass die grundlegenden Sachen erstmal da sind wir haben legen praktisch wir setzen praktisch eine Ampel wir setzen hier die Ampel auf Rot dass hier nicht noch mal jemand diesen diese Kaskade gleichzei ausführt werden sie schon läuft und hier schalten praktischch das Löschen der logdate die Ampel wieder auf Grün jetzt müs natürlichgendwie auf diese Ampel reagieren und das müs wir hier vne tun bei schedule Trigger und zw müssen wir jetzt einen eine Abfrage einbauen die DAF SGT dass wir herusfinden diese lckdatei da ist und das Teil das es uns ermöglß read Files V Disk also read und hier ist dieser Bauklotz read Files vom Disk und im Prinzip brauchen wir hier nicht viel zu machen wir wollen natürlich genau das so machen wie es wie es hier ist wir sagen re Files vom Disk auch hier brauchen wir natürlich im Fehlerfall ein ein weitermach logisch denn falls wir diese Datei nicht finden müssen wir trotzdem ein Ergebnis bekommen und deswegen auch always output data und ja ja das ist alles nicht so schlimm und wir benen das auch gleich um finde Log dateiename und natürlich der Dateiname den brauchen wir auch klar das können wir natürlich auch jetzt ausprobieren Test step und wir haben nichts weil es natürlich nicht da ist ist schon mal gut und jetzt müssen wir auf das Ergebnis natürlich hier reagieren und was ist besser geeignet als wieder unsere wenverzweigung das heißt wir klicken hier aufs plus suchen uns das if und um das hier jetzt ausfüllen zu können brauchen wir jetztich erstmal ein positives Ergebnis das heißt diese Logdatei muss da sein das beste ist natürlich wenn wir diesen Workflow das uns anlegen lassen aber wir wollen natürlich nicht 10 Minuten warten das heißt ich Kappe mal hier diese Verbindung zwischen anschalten und warten das heißt dieser diese diese Verkabelung nehme ich mal weg damit unser Workflow einfach mal hier hinten nach dem Ausschalten nach dem Anschalten endet und diese lockdatei mal übrig bleibt denn dann können wir hier vorne mal da drauf reagieren aber wir müssen natürlich irgendwie das ganze in Bewegung setzen deswegen verkabel ich noch mal dies testworflow Schalter und lass das mal ablaufen so wir kommen hier an unsere Geschichte und wir werden nach dem Anschalten damit belohnt dass sich im Prinzip diese diese Workflow beendet und die Datei übrig bleibt denn wir können jetzt im Prinzip hier vorne mal schauen was hier passiert Test step und die Datei ist tatsächlich vorhanden wir sehen die wir brauchen jetzt diese die Ausgabe vom vorigen Schritt und wenn wir jetzt hier filename sagen is equal to und jetzt sagen wir noch mal Test step wir haben ein positives Ergebnis weil diese Datei gefunden wurde gut sieht jetzt sehr sehr kompliziert aus ist es aber gar nicht wieder mal auf save klicken weil wir wollen ja im Prinzip nur wissen gibt's die Datei und wenn wenn Sie wenn es sie gibt dann tue nichts so R also habe ich neu benannt und das heißt wenn die Datei da ist machen wir gar nichts wir starten überhaupt nicht wenn sie aber da ist wenn sie aber nicht da ist dann können wir im Prinzip mit unserem mit unserer Kaskade anfangen wir können das natürlich auch ausprobieren indem wir hier z.B diese Wartezeit einfach auch auf 10 Sekunden mal setzen einfach nur für für den Test ja damit wir da nicht nicht ewig warten müssen jetzt mit dem mit dem Zeitplan Auslöser da drin können wir natürlich nicht mehr auf Test Workflow gehen das heißt wir müssen ja hier jetzt irgendwie noch mal unseren unseren manuellen Schalter wieder reinverkabel verkabeln und jetzt können wir praktisch Test Workflow auslösen wir pingen unsere Kaskade durch wir finden unsere Systeme nicht also wir finden unsere Partner nicht im Internet wir starten unseren Router durch wir schalten an wir warten jetzt natürlich nicht 10 Minuten sondern 10 Sekunden ihr habt ihr gesehen ich habe es geändert und löschen danach diese Logdatei wieder wir müssen jetzt natürlich erst mal die Sache aus unserem Testmodus rausbekommen und das mit vernünftigen Werten füllen und auch hier diese unsere pinkascade jetzt mit entsprechenden korrekten zielen befüttern ja vorhin schon hier setze ich mal wieder Google ein und hier kann man z.B coordin oder cloudfare nehmen ich mache mal hier so noch mal testen und in dem Fall sind wir ja hier bei T nichts rausgekommen ist also auch auf diese Weise korrekt und gesichert ist es jetzt gibt es natürlich nur noch eins zu tun nämlich das Ding von inactive auf active zu setzen und jetzt seht ihr hier ich habe diesen Workflow aktiviert und wir können jetzt natürlich nicht sehen was hier interaktiv sehen was hier dann passiert wir müssen hier drauf schauen bei den executions also bei den auf Ausführungen und hier seht ihr die Liste dessen was wir hier schon getestet haben und wenn man genug wartet in dem Fall sind es natürlich 5 Minuten sieht man dann auch eine Auslösung des eigentlichen produktiven Workflows hier haben wir die Ausführung bzw das Protokoll der ersten Ausführung im Live Mod also im Aktivmodus hier die anderen die da sieht man ja immer dieses Icon für die für den Test diesmal ist es praktisch von selbst ausgelöst worden durch den Zeit Planer und hier sehen wir was was abgelaufen ist das hat tatsächlich also mit diesem Trigger dann angefangen und ist praktisch hier überall durchgelaufen die Logdatei war nicht da es wurde alles erfolgreich angepingt es gab Antworten also keine Antwort war falsch und es wurde natürlich nichts getan um den Router zu booten das bringt mich zum Ende dieses Videos über n8n n8n als Router Rebooter ich hoffe es hat euch was gebracht und es hat wenigstens Spaß gemacht zuzuschauen in beiden Fällen wäre es große klasse wenn ihr mir ein Like da lassen würdet und vielleicht sogar ein Kommentar denn das bringt dem Kanal wirklich eine ganze Menge um ein bisschen populärer zu werden außerdem gibt es die kostenlosen YouTube-Kanal Abos und wer es noch nicht hat der ist jetzt dazu eingeladen auf Abonnieren zu klicken und bitte dann auch gleich die Glocke aktivieren denn dann verpasst du auch kez V meinen zukünftigen Videos für die Fans meines Kanals gibt's patreon Mitglied schaften dazu könnt ihr mal unten auf den Link in der Videobeschreibung klicken denn da gibt's ein bisschen mehr Informationen da drüber außerdem ihr könnt mich buchen für alle it Themen die ich hier auch in meinen Videos vorstelle dafür gibt's ebenfalls einen Link unten in der Videobeschreibung da können mich dann entsprechend buchen und es gibt außerdem meinen Lifestyle Kanal Listen J doing live da könnt ihr sehen was ich tue wenn ich nicht hinterm Computer sitze für heute vielen Dank fürs zuschauen und und bis zum nächsten Mal tschüss [Musik] [Musik]