NEWS
[Anfänger] Blockly Timeout
-
Moin moin,
ich habe mein erstes Blockly-Skript geschrieben. Es werden zwei Pings auf Handys überwacht. Danach sollen die Sicherheitskameras umgeschaltet werden. Das funktionierte auch soweit ganz gut. Allerdings hatte ich heute Nacht das Problem, dass meine Fritzbox auf dem 5Ghz-WLAN eine "RADAR"-Abfrage gemacht und deswegen einen Kanalwechsel durchgeführt hat (so stehts im Protokoll der Fritz.box). Daraufhin hatte ich kurzfristig kein WLAN, sodass die Kameras in den Überwachen-Modus umgesprungen sind. Das sollte so nicht sein - deswegen habe ich mir gedacht, dass ich einen Timeout einbaue, damit er prüft, ob es nicht doch nur ein kurzfristiger WLAN-Ausfall ist. Allerdings funktioniert nun der Code nicht mehr ... was mache ich falsch?
Danke und Gruß

-
zeigen
Protokoll:

Erklärung dazu:

Ja ich war auch irritiert - war mir so nicht bewusst. Weiß auch nicht, wer hier wichtiges aufm 5GHz WLAN-Netz unterwegs ist :D
Kannst du mir dein Script vielleicht in Worten erklären, wo der Unterschied zu meinem ist und wieso du das so baust? Ich lerne noch :)
Wieso stoppst du den Timeout obwohl gar keiner läuft?
Dein Timeout startet ja nachdem gecheckt wurde, ob beide Handys noch im WLAN sind ... aber genau da soll ja in meinem Verständnis zunächst gewartet werden. -
zeigen
Protokoll:

Erklärung dazu:

Ja ich war auch irritiert - war mir so nicht bewusst. Weiß auch nicht, wer hier wichtiges aufm 5GHz WLAN-Netz unterwegs ist :D
Kannst du mir dein Script vielleicht in Worten erklären, wo der Unterschied zu meinem ist und wieso du das so baust? Ich lerne noch :)
Wieso stoppst du den Timeout obwohl gar keiner läuft?
Dein Timeout startet ja nachdem gecheckt wurde, ob beide Handys noch im WLAN sind ... aber genau da soll ja in meinem Verständnis zunächst gewartet werden.@easytj sagte in [Anfänger] Blockly Timeout:
Wieso stoppst du den Timeout obwohl gar keiner läuft?
Es wird der Timeout gestoppt falls er läuft.
@easytj sagte in [Anfänger] Blockly Timeout:
nachdem gecheckt wurde, ob beide Handys noch im WLAN sind
ah, sorry...

-
@easytj sagte in [Anfänger] Blockly Timeout:
Wieso stoppst du den Timeout obwohl gar keiner läuft?
Es wird der Timeout gestoppt falls er läuft.
@easytj sagte in [Anfänger] Blockly Timeout:
nachdem gecheckt wurde, ob beide Handys noch im WLAN sind
ah, sorry...

-
OK - ich bin blind :D
Wieso baust du den Code andersherum auf? Was bewirkt das? Und wieso ist der Timeout nach der State-Prüfung?
Kannst du mir das kurz erklären, damit ich das verstehe?@easytj sagte in [Anfänger] Blockly Timeout:
wieso ist der Timeout nach der State-Prüfung
na weil es sonst nicht funktioniert. Erst wenn beide States auf false stehen soll ja der Timeout starten.
Vorher macht das ja wenig Sinn.
Sobald sich nur ein Status auf true ändert wird der Timeout gestoppt - unabhängig ob der Timeout läuft oder nicht.Falls ein Status auf true wechselt wird der "sonst" Block ausgeführt.
Das nennt man eine Logikmaschine ;)
-
@easytj sagte in [Anfänger] Blockly Timeout:
wieso ist der Timeout nach der State-Prüfung
na weil es sonst nicht funktioniert. Erst wenn beide States auf false stehen soll ja der Timeout starten.
Vorher macht das ja wenig Sinn.
Sobald sich nur ein Status auf true ändert wird der Timeout gestoppt - unabhängig ob der Timeout läuft oder nicht.Falls ein Status auf true wechselt wird der "sonst" Block ausgeführt.
Das nennt man eine Logikmaschine ;)
Vielleicht habe ich einen Denkfehler aber folgendes möchte ich umsetzen:
Sobald sich ein Status der Handys ändert, soll er 30 Sekunden warten und dann prüfen, ob immer noch beide Handys auf false stehen. Erst dann soll das Makro laufen und Status 0 schalten. Falls zwischenzeitlich doch wieder eine Verbindung hergestellt werden konnte, soll er im Status 1 bleiben.
Wenn du mir sagst, dass dein Skript exakt das macht, versuche ich es mal damit und versuche es auch, es genau zu verstehen...
-
Vielleicht habe ich einen Denkfehler aber folgendes möchte ich umsetzen:
Sobald sich ein Status der Handys ändert, soll er 30 Sekunden warten und dann prüfen, ob immer noch beide Handys auf false stehen. Erst dann soll das Makro laufen und Status 0 schalten. Falls zwischenzeitlich doch wieder eine Verbindung hergestellt werden konnte, soll er im Status 1 bleiben.
Wenn du mir sagst, dass dein Skript exakt das macht, versuche ich es mal damit und versuche es auch, es genau zu verstehen...
@easytj sagte in [Anfänger] Blockly Timeout:
versuche ich es mal damit und versuche es auch
@easytj sagte in [Anfänger] Blockly Timeout:
Erst dann soll das Makro laufen und Status 0 schalten. Falls zwischenzeitlich doch wieder eine Verbindung hergestellt werden konnte, soll er im Status 1 bleiben.
na mach doch einfach - weil genau DAS macht das Skript durch den STOP des Timeouts wenn sich einer der 2 Trigger ändert.
Mehr helfen kann ich jetzt leider nicht.
-
@easytj sagte in [Anfänger] Blockly Timeout:
versuche ich es mal damit und versuche es auch
@easytj sagte in [Anfänger] Blockly Timeout:
Erst dann soll das Makro laufen und Status 0 schalten. Falls zwischenzeitlich doch wieder eine Verbindung hergestellt werden konnte, soll er im Status 1 bleiben.
na mach doch einfach - weil genau DAS macht das Skript durch den STOP des Timeouts wenn sich einer der 2 Trigger ändert.
Mehr helfen kann ich jetzt leider nicht.
-
@easytj sagte in [Anfänger] Blockly Timeout:
versuche ich es mal damit und versuche es auch
@easytj sagte in [Anfänger] Blockly Timeout:
Erst dann soll das Makro laufen und Status 0 schalten. Falls zwischenzeitlich doch wieder eine Verbindung hergestellt werden konnte, soll er im Status 1 bleiben.
na mach doch einfach - weil genau DAS macht das Skript durch den STOP des Timeouts wenn sich einer der 2 Trigger ändert.
Mehr helfen kann ich jetzt leider nicht.
-

So hats leider gerade nicht funktioniert... der hat umgehend beide Modi hin- und hergeschaltet
-

So hats leider gerade nicht funktioniert... der hat umgehend beide Modi hin- und hergeschaltet
-
@easytj sagte in [Anfänger] Blockly Timeout:
So hats leider gerade nicht funktioniert
Ist ja klar warum.... jetzt importier mal den folgenden Code und passe NUR die Datenpunkte an
-
Hey! Du scheinst an dieser Unterhaltung interessiert zu sein, hast aber noch kein Konto.
Hast du es satt, bei jedem Besuch durch die gleichen Beiträge zu scrollen? Wenn du dich für ein Konto anmeldest, kommst du immer genau dorthin zurück, wo du zuvor warst, und kannst dich über neue Antworten benachrichtigen lassen (entweder per E-Mail oder Push-Benachrichtigung). Du kannst auch Lesezeichen speichern und Beiträge positiv bewerten, um anderen Community-Mitgliedern deine Wertschätzung zu zeigen.
Mit deinem Input könnte dieser Beitrag noch besser werden 💗
Registrieren Anmelden


