NEWS
Node Red: Fragen zu einfachen Steuerungsaufgaben
-
@mickym Das ist aber nicht das Objekt - Zeig mal wie das im mqtt. Adapter aussieht.
-
@mickym meinst du das?
-
@bastel2021 Ja - aber da sollte halt nicht state drin stehen. In der Regel ist da ein ganzes Objekt drin.
Starte mal Deinen zigbee2mqtt neu.
-
@mickym hm, aber das kann ich doch nicht beeinflussen, oder?
-
-
@bastel2021 So sieht das gut aus. Nun poste das Objekt im NodeRed.
-
-
@bastel2021 gut dann trägst Du in die Change Node zu dem Switch folgendes ein:
und hinten (also nach dem switch) in die Change Node verschiebst Du die payload nach state
Dieses Objekt schreibst Du dann via mqtt in das topic mit set darunter:
Also:
zigbee2mqtt/licht/wohnzimmer/boxsteckdose/set
Also in der 1. Change Node vor dem Switch "Setze" und in der 2. Change Node nach dem Switch "Verschiebe"
-
@mickym Ja das klappt so! Perfekt! Muss jetzt nur noch verstehen warum
-
@mickym so werden also die Informationen der Reihe nach weiter gegeben bzw. verändert
-
@bastel2021 Gut wie gesagt - Du musst Dich bisschen mit Objekten beschäftigen - das habe ich Dir aber schon angekündigt.
Das habe ich ja hier bis zum Excess geübt. https://forum.iobroker.net/post/905403
Im Prinzip ist das aber nicht schwer:
Deine payload ist also ein Objekt und enthält eine Eigenschaft state. Auf Eigenschaften eines Objektes kannst Du immer direkt mit einem Punkt dazwischen zugreifen. Also payload.state.
Man kann auch mit der Maus immer neben die Eigenschaft, die einen interessiert fahren und den Pfad kopieren:
so und in der 1. ChangeNode setzt Du eine neue payload - aus dem alten Nachrichtenobjekt, da aus der Eigenschaft payload und dort aus der Eigenschaft state.
So extrahierst Du also ganz einfach Eigenschaften aus einem Objekt.
Im 2. Fall erstellst Du ein Objekt aus
OFF wird also
{"state":"OFF"}
und das ganze als payload Eigenschaft.
Das fühlt sich erstmal umständlicher im MQTT an, als mit den normalen Datenpunkten, hat aber den Vorteil, dass man mehrere Parameter mit einem Befehl verstellen kann.
Bei einer Steckdose macht das keinen Sinn, aber bei einer dimmbaren Lampe kann ich die Dimmung und ein und ausschalten gleichzeitig verschicken.
{"state":"ON","brightness":50}
Damit schalte ich also mit einem Befehl die Lampe ein und dimme auf 50%.
In Deiner Debug Node 22 siehst Du dass Du nun als payload ein Objekt mit der Eigenschaft state verschickst. - Das hast Du nur nicht ausgeklappt auf Deinem Screenshot.
-
@mickym sagte in Node Red: Fragen zu einfachen Steuerungsaufgaben:
In Deiner Debug Node 22 siehst Du dass Du nun als payload ein Objekt mit der Eigenschaft state verschickst. - Das hast Du nur nicht ausgeklappt auf Deinem Screenshot.
Sorry, hab ich geändert im Post!
-
@bastel2021 sagte in Node Red: Fragen zu einfachen Steuerungsaufgaben:
@mickym sagte in Node Red: Fragen zu einfachen Steuerungsaufgaben:
In Deiner Debug Node 22 siehst Du dass Du nun als payload ein Objekt mit der Eigenschaft state verschickst. - Das hast Du nur nicht ausgeklappt auf Deinem Screenshot.
Sorry, hab ich geändert!
Na kein Problem - Hauptsache Du hast das Prinzip verstanden. - Dann kann ich mich ja erst mal entspannen und Dich weiter machen lassen.
-
@mickym Genau das wollte ich mit der ganzen Aktion kennen lernen. Daran muss ich mich natürlich erstmal gewöhnen. Ich bin aber froh das das alles bis hier hin geklappt hat. Und jetzt muss ich mich langsam weiter vortasten.
Schon wieder Danke für deine Hilfe!
-
@bastel2021 sagte in Node Red: Fragen zu einfachen Steuerungsaufgaben:
@mickym Genau das wollte ich mit der ganzen Aktion kennen lernen. Daran muss ich mich natürlich erstmal gewöhnen. Ich bin aber froh das das alles bis hier hin geklappt hat. Und jetzt muss ich mich langsam weiter vortasten.
Schon wieder Danke für deine Hilfe!
Ja da kannst Du ja auch stolz auf Dich sein. Immerhin hast Du Dein System komplett neu aufgebaut, Backup eingespielt, mosquitto und zigbee2mqtt installiert und alles läuft. Da haben viele wesentlich mehr Probleme oder bringen das nicht auf die Reihe. Also auch ein Kompliment von meiner Seite:
-
@mickym Oh! vielen Dank, sehr nett von dir!
-
@mickym Hallo! Ich hänge mal wieder an einer Stelle fest. Ich habe ja meinen Stromzähler ausgelesen. Die Daten wurden von Tasmota an iobroker geschickt. Jetzt habe ich ja Mosquito am laufen und muss die Konfiguration anpassen. Bei richtiger Einstellung sollten die Daten dann ja unter IOBroker mqtt.0 ankommen. Aber irgendwie klappt das mal wieder nicht. Hab schon einiges ausprobiert aber das ist wieder "stochern im Trüben".
Tasmota mqtt Einstellung:
Host: mein PI
Port: 1883
Client: Zaehler
User: den ich für Mosquito festgelegt habe
Passwort: entsprechend
Aber es kommt nichts an unter mqtt.0 -
@bastel2021 Du hast auch definitiv keinen sonoff Adapter oder sonst irgendeinen MQTT-Simulator auf Deinem System?
-
@mickym Doch, ich habe ein Sonoff Adapter. Aber der ist gestoppt!
-
- Möglichkeit: Deinstallieren ! - Du musst Dich entscheiden - willst Du mqtt oder sonoff -
- Möglichkeit: Du änderst den sonoff auf einen anderen Port und entscheidest dann bei jedem einzelnen Geräte wo es hin reportet.
Wenn Du den sonoff also auf 1884 machst - Maschine neu durchstarten.