NEWS
Blockly Script Türwächter
-
@codierknecht Uhrzeit passt
Objektstatus
-
@orpheus1977 sagte in Blockly Script Türwächter:
Uhrzeit passt
Sehe ich nicht. Logge mal die Zeit wie in meinem Beispiel.
Vielleicht enthält der Wert Leerzeichen?
-
@codierknecht said in Blockly Script Türwächter:
Sehe ich nicht. Logge mal die Zeit wie in meinem Beispiel.
Wie mach ich das genau? Debug hab ich über den Schraubenschlüssel oben rechts eingeschaltet
-
@orpheus1977 sagte in Blockly Script Türwächter:
Debug hab ich über den Schraubenschlüssel oben rechts eingeschaltet
Nein - schalte das wieder aus.
Sieh Dir mein Beispiel an.
-
@codierknecht Ich seh leider aus deinem Beispiel nicht wie du das aktiviert hast
-
@orpheus1977
So:
-
@codierknecht Hallo und Sorry für die späte Antwort, ich bin erst jetzt wieder zum Testen gekommen.
Die Zeit passt aus meiner Sicht.
-
@orpheus1977 Es scheitert offensichtlich an der Abfrage. Wenn ich das script auf diese reduziere dann passiert gar nichts
-
@orpheus1977 Änder mal die Debug-Ausgabe in deinem Skript ohne Abfrage auf den folgenden Aufbau:
Es ist davon auszugehen das in der Zeichenkette ggf. noch weitere "unsichtbare" Zeichen enthalten sind.
Mögliche Lösung wenn das der Fall ist:
-
@asgothian Danke das schaut gut aus - mit enthält Wert funktioniert der Trigger.
Ich bau mal das script fertig und melde mich dann nochmals. -
@orpheus1977 sagte in Blockly Script Türwächter:
Danke das schaut gut aus - mit enthält Wert funktioniert der Trigger.
Wäre trotzdem interessant zu erfahren, was da tatsächlich im DP steht.
Da sollte dann der Prser entsprechend angepasst werden, um keine führenden oder nachfolgenden Leer- oder sonstige Zeichen zu lesen. Damit hättest Du das dann sauber. -
@codierknecht Für mich schaut es wie ein Leerzeichen vor und nach dem OFFEN aus:
script.js.Testscript: .. OFFEN ..
allerdings hat eine genaue Abfrage mit OFFEN nicht funktioniert -
@orpheus1977 sagte in Blockly Script Türwächter:
allerdings hat eine genaue Abfrage mit OFFEN nicht funktioniert
Eben ... weil da ja auch nicht genau "OFFEN" enthalten ist.
Das eigentliche Problem liegt an dem RegEx im Parser. Das müsste so gestaltet sein, dass es führende und nachfolgende Leerzeichen (oder andere Whitespaces) entfernt. -
@codierknecht sagte in Blockly Script Türwächter:
@orpheus1977 sagte in Blockly Script Türwächter:
allerdings hat eine genaue Abfrage mit OFFEN nicht funktioniert
Eben ... weil da ja auch nicht genau "OFFEN" enthalten ist.
Das eigentliche Problem liegt an dem RegEx im Parser. Das müsste so gestaltet sein, dass es führende und nachfolgende Leerzeichen (oder andere Whitespaces) entfernt.Genau deswegen entferne ich überall da wo ich String-vergleiche mache via .trim die Whitespaces vor und hinter dem Inhalt (es sei denn das vorhanden sein von bestimmten Whitespaces ist notwendig - dann mach ich das nicht). Das ist fast ein Automatismus. Da ich Blockly selber nicht einsetze habe ich da den "einfachen" Ausweg mit "beinhaltet OFFEN" gegangen - ist in diesem Fall auch kein Problem, OFFEN und ZU haben genau keine Überdeckung.
Eine Umstellung des Parser das er das generell macht halte ich für gefährlich. Manchmal will man gezielt bestimmte whitespace chars vor oder hinter einem Text haben und auch darauf prüfen.
A.
-
@asgothian sagte in Blockly Script Türwächter:
Manchmal will man gezielt bestimmte whitespace chars vor oder hinter einem Text haben und auch darauf prüfen
Prinzipiell gebe ich Dir Recht. Dürfte allerdings ziemlich selten und hier nicht gefragt sein.
@Orpheus1977
Interessant wäre mal zu sehen, wie das HTML der Seite aussieht und wie das mit dem Parser ausgelesen wird.