NEWS
Script nur kurz / einmal ausführen?
-
@exmerci sagte in Script nur kurz / einmal ausführen?:
Ist wohl so, das ich das mit dem triggern nicht verstehe, da ich keine JS Erfahrung habe.
Wahrscheinlich.
Der Trigger (eigene Gruppe von Blöcken) "startet" (korrekt= löst aus) das Skript.
Danach schläft es und macht nichts mehr, bis es wieder getriggert wird.
(Außer es läuft eine falsche Endlosschleife)@exmerci sagte in Script nur kurz / einmal ausführen?:
Wie triggere ich den das Script.
Das ist unterschiedlich. In deinem Fall wohl über einen selbst angelegten Datenpunkt.
Je nach Wunsch wäre das ein boolscher Zustand, der durch das Button-Widget kurz auf true gesetzt wird oder ein Dantenpunkt vom Typ number in das du "1" oder "2" für das gewünschte Programm einträgst und darauf wird dann getriggert -
Eventuell auch ne Möglichkeit ? Den DP javascript.0.scriptEnabled vom Script auf true und verzögert wieder auf false setzen via toggle Button ?
Nur so ne Idee von mir ....
-
@harrym sagte in Script nur kurz / einmal ausführen?:
Nur so ne Idee von mir ....
soll man aber nicht machen
-
@Homoran OK. Dann war's ne blöde Idee
-
Ich hatte jetzt mal so etwas gebaut. Aber irgendwie geht das nicht.
Zugehörige Objekte:
-
@exmerci sagte in Script nur kurz / einmal ausführen?:
Aber irgendwie geht das nicht.
Die Zahlen bitte als Mathematik-Block nehmen.
unwahr = falsch bitte las Logikblock
steuere durch aktualisiere-Block ersetzen -
@exmerci
mache aus "normal" mal einen "button" (ausser der kann auch "false" sein)
Du darfst "string" (Textbausteine) auch nur für "string" Inhalte verwenden und nicht für Zahlen oder "true/false" Werte -
Ok. Ich versuche es. Muss jetzt erst noch mal ein bisschen arbeiten.
Melde mich wieder ob ich es hinbekommen habe oder nicht. -
@Homoran sagte in Script nur kurz / einmal ausführen?:
Die Zahlen bitte als Mathematik-Block nehmen.
Wenn ich das mache, kann ich keine Zahlen wie 12:00 eingeben für die Uhrzeit.
-
@exmerci sagte:
keine Zahlen wie 12:00 eingeben für die Uhrzeit.
12:00 ist keine Zahl, sondern ein String. Die target temperature sollte eine Zahl sein.
-
Obwohl es zu funktionieren scheint, wird folgender Fehler angezeigt.
Was habe ich noch falsch gemacht?
-
@exmerci sagte in Script nur kurz / einmal ausführen?:
Was habe ich noch falsch gemacht?
Was steht in Zeile 11 des erzeugten Javascript-Codes (Button blockly/JS rechts oben) ?
-
setState("0_userdata.0.Normal"/*Normal*/, false, true);
-
-
@exmerci sagte:
setState("0_userdata.0.Normal"/Normal/, false, true);
Hast Du den Datenpunkt "0_userdata.0.Normal" versehentlich gelöscht ?
-
Nein, dann würde es ja auch nicht funktionieren.
-
Muss an Blockly liegen. Wenn ich den Java Code kopiere und in ein richtiges Java script kopiere kommt der Fehler nicht.
-
@exmerci sagte:
Muss an Blockly liegen.
Wohl kaum, denn Zeile 11 ist fehlerfrei. Starte mal die JS-Instanz neu. Kommt dann die Warnung noch immer ?
-
@exmerci
zeige bitte noch einmal dein aktuelles Blockly
vorhin hast Du versucht einen boolschen Wert (true/false) mit einem String zu steuern -