NEWS
Node Red und Blockly Scripte
-
@labamba
Das mit dem Blockly war auch verkehrt - ändere das mal wieder auf geändert zurück. Das war schon richtig. Das ist ja der 2. Teil mit dem state des Shellies der hier triggert und nicht der Button. - Sorry mein Fehler.Wenn das beim ersten Mal nicht funktioniert hat, dann hat das andere Ursachen - und ich glaube auch nicht, dass das was mit NodeRed zu tun hat.
Mach in Dein Blockly ein Debug Baustein um zu sehen, ob das Blockly getriggert wurde:
So wenn das Triggert - dann funktioniert das Zusammenspiel von NodeRed und Blockly. Wenn sich dann nichts tut - ist es aber ein reines Problem Deines Blocklies.
Was stand denn bei Dir da ursprünglich drin, wahr oder geändert? Beim Triggern des Buttons.
-
@mickym said in Node Red und Blockly Scripte:
So ich habe mal dein Node Red Skript eingefügt. Das mit dem Sub-Flow ist richtig gut.
-
@mickym said in Node Red und Blockly Scripte:
@labamba
Das mit dem Blockly war auch verkehrt - ändere das mal wieder auf geändert zurück. Das war schon richtig. Das ist ja der 2. Teil mit dem state des Shellies der hier triggert und nicht der Button. - Sorry mein Fehler.Wenn das beim ersten Mal nicht funktioniert hat, dann hat das andere Ursachen - und ich glaube auch nicht, dass das was mit NodeRed zu tun hat.
Mach in Dein Blockly ein Debug Baustein um zu sehen, ob das Blockly getriggert wurde:
So wenn das Triggert - dann funktioniert das Zusammenspiel von NodeRed und Blockly. Wenn sich dann nichts tut - ist es aber ein reines Problem Deines Blocklies.
Was stand denn bei Dir da ursprünglich drin, wahr oder geändert? Beim Triggern des Buttons.
Wahr ist richtig!
-
@labamba OK, wenn das wahr war - dann war das was ich zu den Blocklies gesagt hatte am Anfang des heutigen Abends gesagt hatte natürlich Käse- Sorry nochmal.
Wie gesagt dann machst einfach noch ein Debug Baustein in das Blockly und siehst ja ob der NodeRed Flow triggert. Wenn sich dann nichts bewegt, dann hast Du halt mit Deinen Blockly Skripts noch irgendein Problem, weil dann wurde das Blockly ja getriggert.
-
Wahrscheinlich ist es besser die Trigger Node in den subflow und nur in den stop Ast aufzunehmen
Aber ohne halt Hardware zur Verfügung zu haben, ist das immer etwas schwierig - sich vorzustellen.
-
@mickym Falls Du übrigens das Ganze wie in Deinem Blockly machen willst, dass das nur ausgeführt wird, wenn ein Button gefdrückt wird - der sich nach 5 s immer selbst auf false stellt, dann machst das halt auch mit einer trigger Node und entweder eine Flow Variablen oder Datenpunkt.
-
@mickym
Die einfache Varainte mit dem auslösen des Skriptes funtkioniert jetzt.
Ehrlich gesagt weiss ich aber auch nicht warum. -
@labamba Na dann ist ja gut - und das Thema gelöst. Wie gesagt - ich denke eher dass auf der Blockly Seite was nicht richtig initialisiert war.
Mach wie ich vorgeschlagen habe direkt am Anfang einen Debug Baustein in Deine Blocklies und dann siehst ob es getriggert wurde oder nicht. Wenn getriggert wurde und dann trotzdem nichts passiert ist es auf jeden Fall auf der Blockly Seite zu suchen.
-
@mickym
Werde es jetzt mal versuchen mit node-red umzusetzen.
Bin gerade dabei deine Vorlage zu verstehen.
Ich verstehe aber noch nicht wie ich den Alexa befehl dort einbinden muss. -
@labamba Nun der Subflow entspricht ja nur dem 2. Teil des Blocklies, da ja als Trigger der state des Shellies dient.
Bei der Alexa Node kommt entweder eine Zahl raus, wenn Du eine Prozentzahl sagst oder auf und zu und setzt es in einen http-Request um.
Das hatte ich ja alles hier beschrieben: https://forum.iobroker.net/topic/51385/node-red-und-blockly-scripte/28
Du musst halt nur den http Node aktivieren.
Und wie gesagt, warum Du es über http und nicht über mqtt steuerst, weiss ich immer noch nicht.
-
Und wie gesagt, warum Du es über http und nicht über mqtt steuerst, weiss ich immer noch nicht.
Ganz einfach. Ich wusste nicht wie ich mqtt in das script bekomme. ..und mit http hat es super funktioniert.
-
@labamba sagte in Node Red und Blockly Scripte:
Und wie gesagt, warum Du es über http und nicht über mqtt steuerst, weiss ich immer noch nicht.
Ganz einfach. Ich wusste nicht wie ich mqtt in das script bekomme. ..und mit http hat es super funktioniert.
OK ich dachte, Du hast den mqtt-Adapter installiert, aber wahrscheinlich nutzt Du den Shelly Adapter mit dem mqtt Protokoll. Also vergiß was ich sagte. Ich nutze den Shelly Adapter nicht.
-
@mickym said in Node Red und Blockly Scripte:
@labamba sagte in Node Red und Blockly Scripte:
Und wie gesagt, warum Du es über http und nicht über mqtt steuerst, weiss ich immer noch nicht.
Ganz einfach. Ich wusste nicht wie ich mqtt in das script bekomme. ..und mit http hat es super funktioniert.
OK ich dachte, Du hast den mqtt-Adapter installiert, aber wahrscheinlich nutzt Du den Shelly Adapter mit dem mqtt Protokoll. Also vergiß was ich sagte. Ich nutze den Shelly Adapter nicht.
Genau ich nutze den Shelly Adapter mit dem mqtt Protokoll.
-
@labamba Wie gesagt um HTTP Kommandos aus NR zu senden, nutzt Du die http Request Node - wie gesagt die Flows sind unten beschrieben,
-
@mickym said in Node Red und Blockly Scripte:
@labamba Wie gesagt um HTTP Kommandos aus NR zu senden, nutzt Du die http Request Node - wie gesagt die Flows sind unten beschrieben,
Unten beschrieben?
-
@labamba sagte in Node Red und Blockly Scripte:
@mickym said in Node Red und Blockly Scripte:
@labamba Wie gesagt um HTTP Kommandos aus NR zu senden, nutzt Du die http Request Node - wie gesagt die Flows sind unten beschrieben,
Unten beschrieben?
https://forum.iobroker.net/topic/51385/node-red-und-blockly-scripte/34?_=1642255680958
-
@mickym said in Node Red und Blockly Scripte:
Wahrscheinlich ist es besser die Trigger Node in den subflow und nur in den stop Ast aufzunehmen
Aber ohne halt Hardware zur Verfügung zu haben, ist das immer etwas schwierig - sich vorzustellen.
So das habe ich jetzt schon mal hinbekommen.
Funtkioniert schon mal grundsätzlich! Jedoch stellt er jetzt immer nur einen Winkel der Lamellen ein. Die Höhe des Raffstore wird über die Prozentzahl gesteuert.
Jetzt stellt sich für mich die Frage wie ich hier noch die Variablen Winkel z.B. zu, 22°, 45°, 67°, 90° usw. hinbekomme.
Meine Buttons auf dem Tablet laufen gerade noch über die Skripts. Kann es sein, dass Node Red dann auch in den Skriptablauf mit eingreift? Wenn ich die Buttons jetzt auslöse spinnt der Raffstore.
-
@labamba Natürlich muss Du Deinen entprechenden Blocklies stoppen.
Wenn der Datenpunkt aus dem Shelly Adapter mit stop triggert - dann triggert er ja sowohl den NodeRed Flow und Dein Blockly.
Die Buttons aus dem Tablett triggern nichts - aber der 2. Teil des Blocklies.
Warum Du die payload in percentage wandelst - verstehe ich auch nicht. Wie gesagt nutze den Flow mit der Http-Request Node (also Höhe des Raffstores).
Die Winkel habe ich nicht verstanden, da habe ich ja nur Zeiten gesehen im 2. Teil des Blocklies. Wie willst Du denn gleichzeitig den Winkel und die Höhe übergeben?
-
@mickym said in Node Red und Blockly Scripte:
@labamba Natürlich muss Du Deinen entprechenden Blocklies stoppen.
Wenn der Datenpunkt aus dem Shelly Adapter mit stop triggert - dann triggert er ja sowohl den NodeRed Flow und Dein Blockly.
Kann ich das z.B. nur auf NODE-RED einstellen?
Die Buttons aus dem Tablett triggern nichts - aber der 2. Teil des Blocklies.
Habe ich mit gedacht!
Warum Du die payload in percentage wandelst - verstehe ich auch nicht. Wie gesagt nutze den Flow mit der Http-Request Node (also Höhe des Raffstores).
Ich habe im Shelly Adapter einen Datenpunkt zu Höhe der über mqtt läuft. Diesen habe ich gerade verwendet. Funktioniert für die Höheneinstellung super.
Die Winkel habe ich nicht verstanden, da habe ich ja nur Zeiten gesehen im 2. Teil des Blocklies. Wie willst Du denn gleichzeitig den Winkel und die Höhe übergeben?
DIe Raffstore haben Lamellen. Ich möchte sie am liebsten Flexibel in eine gewisse Höhe fahren. Hierfür habe ich die Prozentanzeige über den Shelly Adapter und mqtt. Das funktioniert ja super.
Gleichzeitig möchte ich noch verschiedene Winkel. z.B. 90° (Raffstore geschlossen, keine Sicht nach Außen, 45° Sicht nach Außen aber Verschattung z.B. im Sommer. 0° volle Sicht nach Außen oder -30°C für einen Energieeintrag im Winter aber keine Einsicht in die Räumlichkeiten von außen.Habe mir jetzt überlegt ob ich es so machen kann.
Befehl:
Büro Raffstore 90 (zu) - Position flexibel und 90° für Lamelle geschlossen
Büro Raffstore 45 - Positon flexibel und 45° für Lamelle mit durchsicht aber gleichzeitig Verschattung
usw.Du hast irgendwo mal geschrieben das man auch einen Button vom Tablet über Node-Red so steuern könnte. Ich frage mich wie sowas gehen könnte.
-
@labamba sagte in Node Red und Blockly Scripte:
@labamba Natürlich muss Du Deinen entprechenden Blocklies stoppen.
Wenn der Datenpunkt aus dem Shelly Adapter mit stop triggert - dann triggert er ja sowohl den NodeRed Flow und Dein Blockly.Kann ich das z.B. nur auf NODE-RED einstellen?
Na da musst Du doch einfach das Blockly für diesen Adapter stoppen - bzw. man kann den Baustein der triggert einfach deaktivieren, dann bleibt Dir immer noch der Rückweg:
@labamba sagte in Node Red und Blockly Scripte:
Warum Du die payload in percentage wandelst - verstehe ich auch nicht. Wie gesagt nutze den Flow mit der Http-Request Node (also Höhe des Raffstores).
Ich habe im Shelly Adapter einen Datenpunkt zu Höhe der über mqtt läuft. Diesen habe ich gerade verwendet. Funktioniert für die Höheneinstellung super.
Ja aber hier ist das Unsinn - ich sehe auch nicht, dass Du wieder in einen Datenpunkt schreibst, das brauchst Du nicht warum? - Du willst doch ohne das Blockly auskommen.
Ich habe Dir den Flow mit dem http Request doch gepostet. Die payload enthält doch bereits die Prozentzahl.
Klemme einfach diese beiden Nodes hinter Deine Alexa Nodes (schmeiss die Change Node mit percentage raus, als ersetzen durch die setze msg.url Change Node) und das jeweilige Raffstore sollte um diese Prozentzahl öffnen.
Die anderen Nodes - mit dem Drehwinkel schmeisst erst mal raus und schaust ob das man dem Öffen und Schließen passt.
Es fehlen halt noch die Alexa Kommandos für stop, close und open - poste mal was da raus kommt. Wie gesagt das mit dem Drehwinkel müssen dann eigene Befehle sein und haben mit dem Öffnen und Schließen und steuern über HTTP nichts zu tun.
Die IP Adresse in der Change Node musst halt anpassen - damit der richtige Shelly angesteuert wird.