Closed get-command closed 4 years ago
Bitte mal eine Debug Node an den Switch hängen (complete message object) und zeigen was die Switch-Node ausgibt
Bitte mal eine Debug Node an den Switch hängen (complete message object) und zeigen was die Switch-Node ausgibt
Der Switch-Node gibt, abhängig vom Smartbutton-Klick (doppelt oder einfach), entweder OnOff: 0 oder OnOff:2 weiter.
Ohne Debug Message bin ich raus
Ohne Debug Message bin ich raus
meinst das?!
Bitte die Debug Node auf "complete Message object" setzen und ausklappen. Das Schwärzen kannst dir sparen, du postest ja nicht deinen Netzwerkschlüssel
Bitte die Debug Node auf "complete Message object" setzen und ausklappen. Das Schwärzen kannst dir sparen, du postest ja nicht deinen Netzwerkschlüssel
hab das eingestellt im debug node:
dann steht da tatsächlich mehr:
Setze mal zwischen "Smart Button" und Switch-Node eine Function-Node mit folgendem Inhalt:
msg = {};
msg.payload = true;
return msg;
Funktioniert leider nicht
Hallo, wie sieht denn der Switch aus? Es wundert mich das ein payload mit onOff 0 bei der Licht an Node ankommt.
Hallo, wie sieht denn der Switch aus? Es wundert mich das ein payload mit onOff 0 bei der Licht an Node ankommt.
Das funktioniert auch. Der Switch-Node gibt - entsprechend Tastendruck des Smartbutton - das weiter. An der Stelle, muss wahrscheinlich noch etwas dazwischen und (sage mal laienhaft) der den Wert "formatiert" (einfache wie bei einem Inject-Node) oder ein Change-Switch der in passendere Werte konvertiert.
Der Execute-Button am Zigbee-Gerät funktioniert problemlos...
Tausch doch bitte mal die beiden Licht Nodes.
Ohne Debug Message bin ich raus
Meinst Du das?
Tausch doch bitte mal die beiden Licht Nodes.
Hab ich. Ändern leider nix.
Ersetze den Inhalt der Function Node durch:
const msg2;
msg2 = {};
msg2.payload = msg.payload;
return msg2;
Bzw. das reicht vermutlich noch nicht. Du sagst die Inject Nodes funktionieren. Was ist der Inhalt des Injects?
Bzw. das reicht vermutlich noch nicht. Du sagst die Inject Nodes funktionieren. Was ist der Inhalt des Injects?
Ich habe an den Inject-Node nichts verändern. Er sendet ja im Default ja den Timestamp. Damit gehts. Habe spaßeshalber mal auf Bolean True gestellt, auch das geht.
Der von dir o.g. Code ist fehlerhaft. Die Variable ist undefiniert oder so ähnlich war die Fehlermeldung.
Gibt es irgendwie eine Äquivalent zum Inject-Node mit einem Input?
Setze mal zwischen "Smart Button" und Switch-Node eine Function-Node mit folgendem Inhalt:
msg = {}; msg.payload = true; return msg;
DAS WAR ES!!!!!!!!!!!!!!!!!! Was für eine schwere Geburt :-) Vielen Dank Dir und allen anderen für die Hilfe!
Ich habe diesen function-Node zwischen Switch und Lampe eingebaut. Damit hat es tatsächlich funktioniert. Danke!!danke! danke!
Fein. Erklärung ist folgende:
msg
nicht nur aus dem Payload-Attribut sondern kann ganz viele andere Attribute haben, z.B. endpoint
, cluster
, ieeeAdr
usw.msg
übergeben kannstDie Quelle deiner msg
ist die "smartbutton zigbee" Node. Da es auch ein zigbee Gerät ist, enthalten seine msg
Objekte seine endpoint
, cluster
, ieeeAdr
usw. Informationen. Diese knallst du dann in die Osram Node und überschreibst mit diesen die Einstellungen der Osram-Node.
Der Function-Schnipsel macht nichts anderes als alle Attribute zu löschen und nur das Payload-Attribut auf true
zu setzen.
Bitte hier dann zu machen wenn es für dich gelöst ist.
Bitte hier dann zu machen wenn es für dich gelöst ist.
Ich habe mir das schon, so wie Du das erklärt hast, vorgestellt. Es ist logisch und plausibel. Bin in der Thematik relativ neu noch.
Vielen Dank für die hervorragende Beschreibung!
Hallo Community, Hallo @hobbyquaker,
hier kann ich ja in Deutsch schreiben, habe ich gerade gesehen :-)
Meine Frage ist vermutlich ganz einfach, aber für mich bisher nicht zu lösen gewesen.
Wie in der Grafik zu sehen ist, kann ich die Command-Nodes starten, wenn ich direkt die Injects ausführe. Das ist ein Zeichen dafür, dass der Command-Node richtig mit der ZigBee-Lampe (Osram) konfiguriert ist. Wenn ich aber einen Switch habe, funktioniert das nicht mit diesem Gerät. Hänge ich statt dem ZigBee-Gerät ein andere Gerät an, funktioniert das auch problemlos. Das ist ein Zeichen dafür, dass der Switch-Node funktioniert. Muss ich, nachdem Switch-Node noch einen Zwischen-Node einbinden, der den Command-Node sagt "Jetzt für den Befehl aus"? Ich habe wirklich extrem viel getestet und sehr viel im Internet recherchiert. Über einen Tipp wäre ich sehr glücklich.
Vielen Dank für die Hilfe.