@reini_t Nun dann hättest Du ja auch trotz Umstellung Deiner Logikmaschine auf NodeRed Deinen Adapter weiter behalten können.
Falls man wirklich die node.id der Amazon Node benötigt - dann erstellst einfach das Objekt- du kannst aber auch mal weglassen.
Wenn Du als ein aus true/false hast - kannst Du das direkt über eine Change Node machen, in dem Du das Objekt einfach so einstellst wie Du es brauchst.
Merke: NodeRed hat gerade seine Vorteile, in dem man keinen Javascript Code schreibt - das ist wirklich nur in einigen Ausnahmefällen (z. Bsp bei externen Bibliotheken oder wenn man eine Node braucht um was zu speichern und man das nicht im flow-Kontext machen will).
Du schreibst einfach in Deine Change Node - das Objekt was Du haben willst, in ein JSONATA Feld und gut ist.
{ "nodeid": "6df04e96.e4c63", "on": payload }7ef4088f-44b9-4b68-aadc-1828c9e7b240-image.png
10643578-839b-495e-a43a-e61f9957ae95-image.png
Diese ganze Codiererei ist einfach unnötig.
Falls Du als Input nicht true oder false, sonder ON/OFF oder 0/1 hast, dann kannst Du das in der Change node mit 2 zusätzlichen Regeln ändern oder einfach im JSONATA Objekt.
Hier mit zusätzlichen Regeln in der Change Node:
1eda77f1-71ac-4348-8bb8-c8fbd7665835-image.png
oder nur im Objekt:
19dfe883-7b1c-435d-9418-ea6fc651eaec-image.png
Spoiler [ { "id": "e4ae86b05c50d9cd", "type": "inject", "z": "7e6af0015415146d", "name": "", "props": [ { "p": "payload" } ], "repeat": "", "crontab": "", "once": false, "onceDelay": 0.1, "topic": "", "payload": "true", "payloadType": "bool", "x": 370, "y": 3520, "wires": [ [ "2dc8e8ac670c9a16" ] ] }, { "id": "26b9506fb10256b1", "type": "inject", "z": "7e6af0015415146d", "name": "", "props": [ { "p": "payload" } ], "repeat": "", "crontab": "", "once": false, "onceDelay": 0.1, "topic": "", "payload": "false", "payloadType": "bool", "x": 370, "y": 3560, "wires": [ [ "2dc8e8ac670c9a16" ] ] }, { "id": "2dc8e8ac670c9a16", "type": "change", "z": "7e6af0015415146d", "name": "", "rules": [ { "t": "set", "p": "payload", "pt": "msg", "to": "{\t \"nodeid\": \"6df04e96.e4c63\",\t \"on\": payload\t }\t", "tot": "jsonata" } ], "action": "", "property": "", "from": "", "to": "", "reg": false, "x": 550, "y": 3540, "wires": [ [ "9c31686c26785195" ] ] }, { "id": "9c31686c26785195", "type": "debug", "z": "7e6af0015415146d", "name": "Zur Alexa Node", "active": true, "tosidebar": true, "console": false, "tostatus": false, "complete": "payload", "targetType": "msg", "statusVal": "", "statusType": "auto", "x": 760, "y": 3540, "wires": [] } ]Deinen Flow kann man nicht interpretieren, wenn Du den nicht in CodeTag setzt, da sonst der Browser hier Formatsteuerzeichen interpretiert. Also jeden Export bin in CodeTags (so wie im Blockly Export auch).
Code-Tags.gif
Du kannst ja mal versuchen Deinen Flow so wie er ist zu reimportieren - Du wirst scheitern.
8e33c27b-1e0c-40e0-8a2e-f1c365edba41-image.png
Also nur in CodeTags - sonst macht das keinen Sinn.
Wenn da übrigens solche Objekte rauskommen ....
{ "nodeid": "6df04e96.e4c63", "on": true }(Ich habe die Node selbst nicht, da keine Alexa).
87d94d42-79c4-4f19-aa48-ba0b4321bc69-image.png
... dann kannst Du das ganze vereinfachen - indem Du nur den Wert selektierst über den Pfad:
copy path.gif
bf63257a-d0c1-4014-88f5-8da36dd5d16c-image.png
Das heißt Du kannst alles mit EINER Node umwandeln, um ein Attribut eines Objektes in einen Datenpunkt im iobroker zu schreiben.
Spoiler [ { "id": "a4aef8eaa9a93ac0", "type": "inject", "z": "7e6af0015415146d", "name": "Alexa Ausgabe", "props": [ { "p": "payload" } ], "repeat": "", "crontab": "", "once": false, "onceDelay": 0.1, "topic": "", "payload": "{\"nodeid\":\"6df04e96.e4c63\",\"on\":true}", "payloadType": "json", "x": 280, "y": 3940, "wires": [ [ "208e759b77bf0348", "56cfb667ef472d47" ] ] }, { "id": "56cfb667ef472d47", "type": "debug", "z": "7e6af0015415146d", "name": "Alexa Ausgabe", "active": true, "tosidebar": true, "console": false, "tostatus": false, "complete": "payload", "targetType": "msg", "statusVal": "", "statusType": "auto", "x": 480, "y": 3900, "wires": [] }, { "id": "31e9b2dec2c5a305", "type": "debug", "z": "7e6af0015415146d", "name": "on Status selektiert", "active": true, "tosidebar": true, "console": false, "tostatus": false, "complete": "payload", "targetType": "msg", "statusVal": "", "statusType": "auto", "x": 730, "y": 3900, "wires": [] }, { "id": "208e759b77bf0348", "type": "change", "z": "7e6af0015415146d", "name": "", "rules": [ { "t": "set", "p": "payload", "pt": "msg", "to": "payload.on", "tot": "msg" } ], "action": "", "property": "", "from": "", "to": "", "reg": false, "x": 490, "y": 3940, "wires": [ [ "31e9b2dec2c5a305" ] ] } ]