NEWS
ioBroker out ack==true setzen
-
Hallo zusammen,
ich experimetiere gerade mit Node-RED im Zusammenspiel mit ioBroker. Jetzt habe ich leider nirgends gefunden ob und wie man bei dem Knoten "ioBroker out" den Wert acknowlegded auf true setzen kann.
Vielleicht kann da ja jemand weiter helfen? Besten Dank.
-
@AxelRHD Hey die Frage verstehe ich nicht ganz. Kannst du mal ein Foto machen oder den Flow posten?
-
@AxelRHD Das ist einfach. Wenn Du value setzt ist ack gleich true, bei command ist ack gleich false.
Hiermit kannst Du testen:
[ { "id": "49aa0ad5.53b3b4", "type": "ioBroker out", "z": "6e170384.60c96c", "name": "test", "topic": "0_userdata.0.test", "ack": "false", "autoCreate": "false", "stateName": "", "role": "", "payloadType": "", "readonly": "", "stateUnit": "", "stateMin": "", "stateMax": "", "x": 1490, "y": 640, "wires": [] }, { "id": "6c45636c.1b696c", "type": "inject", "z": "6e170384.60c96c", "name": "", "props": [ { "p": "payload" }, { "p": "topic", "vt": "str" } ], "repeat": "", "crontab": "", "once": false, "onceDelay": 0.1, "topic": "", "payload": "test", "payloadType": "str", "x": 1330, "y": 640, "wires": [ [ "49aa0ad5.53b3b4" ] ] }, { "id": "f0ca83d6.d1312", "type": "debug", "z": "6e170384.60c96c", "name": "", "active": true, "tosidebar": true, "console": false, "tostatus": false, "complete": "payload", "targetType": "msg", "statusVal": "", "statusType": "auto", "x": 1670, "y": 580, "wires": [] }, { "id": "c27a0537.3243f8", "type": "ioBroker get", "z": "6e170384.60c96c", "name": "test", "topic": "0_userdata.0.test", "attrname": "payload", "payloadType": "object", "x": 1500, "y": 580, "wires": [ [ "f0ca83d6.d1312" ] ] }, { "id": "12184eb7.895281", "type": "inject", "z": "6e170384.60c96c", "name": "", "props": [ { "p": "payload" }, { "p": "topic", "vt": "str" } ], "repeat": "", "crontab": "", "once": false, "onceDelay": 0.1, "topic": "", "payload": "true", "payloadType": "bool", "x": 1320, "y": 580, "wires": [ [ "c27a0537.3243f8" ] ] } ]
-
@mickym sagte in ioBroker out ack==true setzen:
@AxelRHD Das ist einfach. Wenn Du value setzt ist ack gleich true, bei command ist ack gleich false.
Hiermit kannst Du testen:
[ { "id": "49aa0ad5.53b3b4", "type": "ioBroker out", "z": "6e170384.60c96c", "name": "test", "topic": "0_userdata.0.test", "ack": "false", "autoCreate": "false", "stateName": "", "role": "", "payloadType": "", "readonly": "", "stateUnit": "", "stateMin": "", "stateMax": "", "x": 1490, "y": 640, "wires": [] }, { "id": "6c45636c.1b696c", "type": "inject", "z": "6e170384.60c96c", "name": "", "props": [ { "p": "payload" }, { "p": "topic", "vt": "str" } ], "repeat": "", "crontab": "", "once": false, "onceDelay": 0.1, "topic": "", "payload": "test", "payloadType": "str", "x": 1330, "y": 640, "wires": [ [ "49aa0ad5.53b3b4" ] ] }, { "id": "f0ca83d6.d1312", "type": "debug", "z": "6e170384.60c96c", "name": "", "active": true, "tosidebar": true, "console": false, "tostatus": false, "complete": "payload", "targetType": "msg", "statusVal": "", "statusType": "auto", "x": 1670, "y": 580, "wires": [] }, { "id": "c27a0537.3243f8", "type": "ioBroker get", "z": "6e170384.60c96c", "name": "test", "topic": "0_userdata.0.test", "attrname": "payload", "payloadType": "object", "x": 1500, "y": 580, "wires": [ [ "f0ca83d6.d1312" ] ] }, { "id": "12184eb7.895281", "type": "inject", "z": "6e170384.60c96c", "name": "", "props": [ { "p": "payload" }, { "p": "topic", "vt": "str" } ], "repeat": "", "crontab": "", "once": false, "onceDelay": 0.1, "topic": "", "payload": "true", "payloadType": "bool", "x": 1320, "y": 580, "wires": [ [ "c27a0537.3243f8" ] ] } ]
Vielen Dank für den Input. Sehe ich das richtig, dass hier das ganze Objekt übegeben werden muss? Schade, dass man nicht einfach den payload und ack als zusätzlichen key in der message übergeben kann. Nimmst du dann schon am Eingang das ganze Objekt auf?
-
@AxelRHD Nein das ist nur zu Demonstration. Einfach den payload als value (ack=true) oder command (ack=false) schreiben.
-
@mickym sagte in ioBroker out ack==true setzen:
@AxelRHD Nein das ist nur zu Demonstration. Einfach den payload als value (ack=true) oder command (ack=false) schreiben.
Aaah. Jetzt verstehe ich. Dann ist der Wert ein String mit ack in Klammern. Das werde ich bei Gelegenheit ausprobieren. Danke für die Erläuterung.
-
@AxelRHD Nee ich glaube Du denkst zu kompliziert. Der payload wird geschrieben - in dem iobroker out node - steuerst Du über den Type ob ack =true oder false gesetzt wird.
command = ack=false
value = ack =trueDa ist nichts mit Klammern etc.