NEWS
node-red-contrib-virtual-smart-home mit Loxone
-
@mickym said in node-red-contrib-virtual-smart-home mit Loxone:
@mickym Die Directiven sind wichtig - ob hier AN - AUS Geschaltet oder gedimmt wird - wenn Du also sag dimme auf 45% dann ist die directive anders und dann musst Du den Wert der Brightness nehmen. Deswegen hängst Du am Besten eine Switch Node hinter Deine Alexa Node und setzt direkt die Werte die Loxone braucht.
Da musst du mir nochmal helfen, das habe ich noch nicht kapiert!
-
@heinloth Wie gesagt ich habe Dir gesagt die Hilfe gibt zumindest Auskunft. Poste doch mal das Objekt den Wert wenn Du zu Alexa sagst dimme auf 45%.
Die directiven sind wohl sehr viele die stehen nicht in der Hilfe - deshalb musst Du einfach die Befehle sprechn und wir schauen, was aus der Alexa Node rauskommt.
Die Hilfe zu den Nodes bekommst Du wenn Du die Node anklickst und dann auf das Buch:
Dann siehst bei Rollläden dass Du dort die Position des Rollladen findest - auf und zu machen über die Directive.
-
@heinloth sagte in node-red-contrib-virtual-smart-home mit Loxone:
@mickym said in node-red-contrib-virtual-smart-home mit Loxone:
@mickym Die Directiven sind wichtig - ob hier AN - AUS Geschaltet oder gedimmt wird - wenn Du also sag dimme auf 45% dann ist die directive anders und dann musst Du den Wert der Brightness nehmen. Deswegen hängst Du am Besten eine Switch Node hinter Deine Alexa Node und setzt direkt die Werte die Loxone braucht.
Da musst du mir nochmal helfen, das habe ich noch nicht kapiert!
Nun Du hast doch eine Debug Node - da kommt doch jedesmal was raus und die postest Du dann hier wieder - dann kann ich das über Inject Nodes simulieren.
-
-
`
},
{ -
Aktuell verhindert der brightness das der directive arbeiten kann
-
@heinloth Lösche mal den ganzen Flow hier raus - zumindest ohne die Alexa Node - weil da ist Dein Alexa Zugang drin - also ohne Alexa Node exportieren.
Ansonsten schaut der Flow nun so aus:
hier zum Import:
Der Ansatz sieht also wie folgt aus:
Am Anfang werten wir über die Switch Node aus, was für eine Directive Alexa ausgibt:
Diese stand in der msg.payload.directive
Nun wird an den ersten beiden Ausgängen 0 oder 100 gesetzt, beim letzten Ausgang auf die payload.brightness
-
Herzlichen Dank, du warst mir wirklich eine sehr große Hilfe. Gibt es hier eine Funktion Daumen hoch?
-
@heinloth sagte in node-red-contrib-virtual-smart-home mit Loxone:
Gibt es hier eine Funktion Daumen hoch?
Ja
-
Hallo, jetzt hänge ich gerade ein wenig an der Raffstoresteuerung.
Mit Beschattung Küche fährt er immer ganz runter und stellt dann die Lamellen gerade, das funktioniert.
Mit Raffstore Küche möchte ich den Raffstore steuern. Mit Sprachbefehl schließen macht er zu, mit Sprachbefehl auf öffnet er. Wenn ich sage 0% schließt er, wenn ich sage 100% öffnet er.
Jetzt möchte ich :
Raffstore definieren mit Prozentangabe ( z.B. 30%)
Sprachbefehl ändern zusätzlich zu Befehl auf z.B. Befehl hochWie kann ich das noch umsetzen und wie kann ich meine Programmierung optimieren!
Herzlichen Dank
-
-
[ { "id": "e34db2b2.a93fc", "type": "debug", "z": "7d95d556.9cdadc", "name": "", "active": true, "tosidebar": true, "console": false, "tostatus": true, "complete": "payload", "targetType": "msg", "statusVal": "payload", "statusType": "auto", "x": 370, "y": 400, "wires": [] }, { "id": "3ba04a95.88a9a6", "type": "debug", "z": "7d95d556.9cdadc", "name": "", "active": true, "tosidebar": true, "console": false, "tostatus": true, "complete": "payload", "targetType": "msg", "statusVal": "payload", "statusType": "auto", "x": 930, "y": 260, "wires": [] }, { "id": "5eafccaa.672334", "type": "switch", "z": "7d95d556.9cdadc", "name": "Analysiere Directive", "property": "payload.percentage", "propertyType": "msg", "rules": [ { "t": "eq", "v": "0", "vt": "str" }, { "t": "eq", "v": "100", "vt": "str" }, { "t": "btwn", "v": "1", "vt": "num", "v2": "99", "v2t": "num" } ], "checkall": "true", "repair": false, "outputs": 3, "x": 420, "y": 340, "wires": [ [ "2b5ff971.9facd6", "6e3cf6b8.251598" ], [ "7bfe0352.318f1c", "c343f71d.636c38" ], [ "46980042.d750c", "b6b591a7.d3c9c" ] ] }, { "id": "2b5ff971.9facd6", "type": "change", "z": "7d95d556.9cdadc", "name": "auf 0", "rules": [ { "t": "set", "p": "payload", "pt": "msg", "to": "0", "tot": "num" } ], "action": "", "property": "", "from": "", "to": "", "reg": false, "x": 700, "y": 340, "wires": [ [ "1d2c69c6.9bd3d6", "a23d546d.30cc58" ] ] }, { "id": "7bfe0352.318f1c", "type": "change", "z": "7d95d556.9cdadc", "name": "auf 100", "rules": [ { "t": "set", "p": "payload", "pt": "msg", "to": "100", "tot": "num" } ], "action": "", "property": "", "from": "", "to": "", "reg": false, "x": 730, "y": 380, "wires": [ [ "1d2c69c6.9bd3d6", "3ba04a95.88a9a6" ] ] }, { "id": "a23d546d.30cc58", "type": "debug", "z": "7d95d556.9cdadc", "name": "", "active": true, "tosidebar": true, "console": false, "tostatus": true, "complete": "payload", "targetType": "msg", "statusVal": "payload", "statusType": "auto", "x": 930, "y": 200, "wires": [] }, { "id": "d683d5a9.696698", "type": "debug", "z": "7d95d556.9cdadc", "name": "", "active": true, "tosidebar": true, "console": false, "tostatus": true, "complete": "payload", "targetType": "msg", "statusVal": "payload", "statusType": "auto", "x": 930, "y": 140, "wires": [] }, { "id": "6e3cf6b8.251598", "type": "debug", "z": "7d95d556.9cdadc", "name": "", "active": true, "tosidebar": true, "console": false, "tostatus": true, "complete": "payload", "targetType": "msg", "statusVal": "payload", "statusType": "auto", "x": 610, "y": 500, "wires": [] }, { "id": "c343f71d.636c38", "type": "debug", "z": "7d95d556.9cdadc", "name": "", "active": true, "tosidebar": true, "console": false, "tostatus": true, "complete": "payload", "targetType": "msg", "statusVal": "payload", "statusType": "auto", "x": 610, "y": 560, "wires": [] }, { "id": "3462d884.5cf738", "type": "change", "z": "7d95d556.9cdadc", "name": "Payloadänderung", "rules": [ { "t": "set", "p": "payload", "pt": "msg", "to": "payload.mode", "tot": "msg" }, { "t": "change", "p": "payload", "pt": "msg", "from": "Position.Down", "fromt": "str", "to": "down", "tot": "str" }, { "t": "change", "p": "payload", "pt": "msg", "from": "Position.Up", "fromt": "str", "to": "up", "tot": "str" } ], "action": "", "property": "", "from": "", "to": "", "reg": false, "x": 690, "y": 280, "wires": [ [ "d683d5a9.696698", "1d2c69c6.9bd3d6" ] ] }, { "id": "ed7b05a3.e24f58", "type": "ioBroker out", "z": "7d95d556.9cdadc", "name": "Küche Liegefenster: shade", "topic": "loxone.0.0e6abcb9-033a-68b6-ffff1382f11b2d79.shade", "ack": "false", "autoCreate": "false", "stateName": "", "role": "", "payloadType": "", "readonly": "", "stateUnit": "", "stateMin": "", "stateMax": "", "x": 480, "y": 100, "wires": [] }, { "id": "46980042.d750c", "type": "debug", "z": "7d95d556.9cdadc", "name": "", "active": true, "tosidebar": true, "console": false, "tostatus": true, "complete": "payload", "targetType": "msg", "statusVal": "payload", "statusType": "auto", "x": 610, "y": 620, "wires": [] }, { "id": "b6b591a7.d3c9c", "type": "change", "z": "7d95d556.9cdadc", "name": "auf 100", "rules": [ { "t": "change", "p": "payload", "pt": "msg", "from": "20", "fromt": "num", "to": "80", "tot": "num" } ], "action": "", "property": "", "from": "", "to": "", "reg": false, "x": 740, "y": 420, "wires": [ [ "1d2c69c6.9bd3d6", "85644c84.026fa" ] ] }, { "id": "85644c84.026fa", "type": "debug", "z": "7d95d556.9cdadc", "name": "", "active": true, "tosidebar": true, "console": false, "tostatus": true, "complete": "payload", "targetType": "msg", "statusVal": "payload", "statusType": "auto", "x": 930, "y": 560, "wires": [] } ]
-
@heinloth sagte in node-red-contrib-virtual-smart-home mit Loxone:
Hallo, jetzt hänge ich gerade ein wenig an der Raffstoresteuerung.
Mit Beschattung Küche fährt er immer ganz runter und stellt dann die Lamellen gerade, das funktioniert.
Mit Raffstore Küche möchte ich den Raffstore steuern. Mit Sprachbefehl schließen macht er zu, mit Sprachbefehl auf öffnet er. Wenn ich sage 0% schließt er, wenn ich sage 100% öffnet er.
Jetzt möchte ich :
Raffstore definieren mit Prozentangabe ( z.B. 30%)
das macht keinen Sinn wichtig sind für den Switch Node für verschiedene Befehle die Szenarien. Also Du sprichst die Befehle und untersuchst - welche Directiven die Alexa Node ausspukt und auf die reagierst Du - d.h. ich kann nur untersützen, wenn Du mir sagst bei welchem Befehl welche Directive ausgespukt wird.
Sprachbefehl ändern zusätzlich zu Befehl auf z.B. Befehl hoch
Nun das hat mit NodeRed nichts zu tun - das musst Du irgendwo in der Alexa definieren. Vielleicht kann hier @frankyboy73 wieder mal aushelfen. Ich habe selbst keine Alexa.
-
Ok kein Problem, werde mich damit noch ein wenig beschäftigen.
Kannst du mir evtl. noch ein paar grundlegende Tipps geben.
Backup IObroker mach ich über Backup funktion.
Nodes von NodeRed exportiere ich auf die Festplatte.
Muss ich sonst noch Sicherungen vornehmen?Was muss ich machen, damit IObroker stabil läuft. Es gibt doch eine Funktion wenn eine Instanz gelb wird, dass diese dann neu gestartet wird. Ist das zu empfehlen?
Was muss ich noch beachten? -
@heinloth Nun zu der Funktion, dass eine Instanz neu gestartet wird, wenn sie gelb ist, kann ich nichts zu sagen - ich kenn das gar nicht - wo stellst man das ein?
Backup IObroker mach ich über Backup funktion.
Ja das mache ich zwar auch so - habe damit aber noch nie ein System hergestellt. Ich hab das ganze auf einem Raspberry laufen und machen immer mal wieder Image-Backups - da halt noch manche andere Dinge auf der Maschine sind, die zusammengreifen. Ich glaube ich bräuchte ggf. lange bis das System wieder so läuft wie jetzt.
Teile des Backups - wie Zigbee habe ich schon mal benutzt.Nodes von NodeRed exportiere ich auf die Festplatte.
Ja entweder als einzelne Flows - oder alle Flows zusammen.
Muss ich sonst noch Sicherungen vornehmen?
Wie gesagt weiß nicht auf was für einem System Dein iobroker läuft - ich mach wie gesagt hin und wieder Images.
Ich nutze generell - Adapter nur sparsam - in erster Linie sind für mich Adapter das Interface zur Hardware oder Basisprotokollen. So Adapter die prüfen, ob Geräte noch eingeschaltet sind oder die mir nur Datenpunkte aus einem JSONString einzeln schreiben, darauf verzichte ich. Das mache ich entweder lieber mit Node Red - da weiß ich welche Logik dahinter steht und es sind keine Black Boxen. Die Adapter für Shellies oder Tasmota mag ich auch nicht - arbeite lieber mit originärem MQTT. Leider bieten diese Adapter auch keine Möglichkeit sich mit bestehendem MQTT-Brokern zu verbinden, sondern simulieren einen eigenen Broker. Das ist für mich auch ein K.O. - dann musst Du für jede Instanz einen eigenen Port verwenden.
Das wars mal mit so allgemeinen Hinweisen.
-
@heinloth sagte in node-red-contrib-virtual-smart-home mit Loxone:
Raffstore definieren mit Prozentangabe ( z.B. 30%)
Sprachbefehl ändern zusätzlich zu Befehl auf z.B. Befehl hochHi, das könnte man eventuell über Routinen in der Alexa App umsetzen.
Wenn folgendes passiert, Stimme, da dann eingeben was man zur Ausführung sagen will, z.B.
"Raffstore hoch", man kann auch mehrere Sätze in einer Routine verwenden.
Dann bei Aktion das Gerät auswählen (unter dem Punkt Smarthome) und was passieren soll, (an,aus,auf,zu,10% oder 100%)
Habe das bei meinen Rollos auch so gemacht. Wenn ich sage"Rollo Schlafen hoch" oder "Rollo Schlafen auf" dann habe ich als Aktion, Rollo auf 0%. Runter dann das gleiche. Runter und zu und als Aktion dann 70% (70% weil ich die nicht ganz dicht haben will)
Man könnte auch nehmen Rollo Standart und dann z.B. Aktion auf 30%, usw.
Als Hinweis: Da muss man dann immer den gleichen Wortlaut sagen wie in der Routine eingegeben, also am besten nicht zu komplizierte Sachen verwenden.
Ich habe das auch schon so genutzt, das ich mir ein Vituelles Gerät erstellt habe und über verschieden Routinen stelle ich das Gerät dann auf verschiedene Prozentzahlen und werte das dann in Node Red aus um verschiedene Aktionen auszuführen. Ich lasse mir damit z.B. verschiedene Temperaturen ausgeben.
@mickym Nicht über die Funktion Nodes meckern, das ist noch ganz alt und habe ich noch nicht überarbeitet. -
Danke, versuche ich mal.