Hallo zusammen,
nachdem ich hier schon das Auslesen und Verarbeiten des Schaltstatus des Shelly Plus 1 und Plus 1PM mittels eines Workarounds beschrieben habe, geht es hier nun um die Werte des Shelly Plus 1 PM.
Es ist mir wichtig, mich an dieser Stelle beim User mickym aus dem ioBroker Forum zu bedanken. Er hat mir den Lösungsweg aufgezeigt und wichtige Hinweise und Erklärungen gegeben. ![]()
Im Flow endet dies in der Ausgabe der 3 Debug-Nodes ganz rechts. Stattdessen kann man natürlich einfach z.B. einen eMail-Node oder einen "ioBroker-out"-Node setzen, um weitere Aktionen auszuführen. ![]()
Hier nun der neue Flow zum Parsen der Werte Schaltzustand des Ausgangs, Spannungswert und Leistungswert.
der Flow zum Importieren:
Spoiler anzeigen
[
{
"id": "c423f322.c4806",
"type": "tab",
"label": "MQTT Test Shelly Plus 1PM",
"disabled": false,
"info": ""
},
{
"id": "61a23899.cef4f",
"type": "mqtt in",
"z": "c423f322.c4806",
"name": "",
"topic": "shellyplus1pm-000000000000/events/rpc",
"qos": "0",
"datatype": "auto",
"broker": "f56dd7d5.a4df",
"nl": false,
"rap": true,
"rh": 0,
"x": 260,
"y": 400,
"wires": [
[
"4e7d2b9c.0d0e7c",
"b5b3af45.611e58"
]
]
},
{
"id": "4e7d2b9c.0d0e7c",
"type": "json",
"z": "c423f322.c4806",
"name": "",
"property": "payload",
"action": "",
"pretty": false,
"x": 550,
"y": 400,
"wires": [
[
"8742e4e8.808ff8",
"6642339a.48223c",
"de019655.b36f1",
"7fda335c.d93144"
]
]
},
{
"id": "8742e4e8.808ff8",
"type": "debug",
"z": "c423f322.c4806",
"name": "",
"active": true,
"tosidebar": true,
"console": false,
"tostatus": false,
"complete": "false",
"statusVal": "",
"statusType": "auto",
"x": 770,
"y": 300,
"wires": []
},
{
"id": "5fa6995e.2ec57",
"type": "debug",
"z": "c423f322.c4806",
"name": "",
"active": true,
"tosidebar": true,
"console": false,
"tostatus": false,
"complete": "false",
"statusVal": "",
"statusType": "auto",
"x": 1010,
"y": 400,
"wires": []
},
{
"id": "6642339a.48223c",
"type": "change",
"z": "c423f322.c4806",
"name": "",
"rules": [
{
"t": "set",
"p": "payload",
"pt": "msg",
"to": "payload.params[\"switch:0\"].output",
"tot": "msg"
}
],
"action": "",
"property": "",
"from": "",
"to": "",
"reg": false,
"x": 790,
"y": 400,
"wires": [
[
"5fa6995e.2ec57"
]
]
},
{
"id": "b5b3af45.611e58",
"type": "debug",
"z": "c423f322.c4806",
"name": "",
"active": false,
"tosidebar": true,
"console": false,
"tostatus": false,
"complete": "false",
"statusVal": "",
"statusType": "auto",
"x": 550,
"y": 300,
"wires": []
},
{
"id": "de019655.b36f1",
"type": "change",
"z": "c423f322.c4806",
"name": "",
"rules": [
{
"t": "set",
"p": "payload",
"pt": "msg",
"to": "payload.params[\"switch:0\"].apower",
"tot": "msg"
}
],
"action": "",
"property": "",
"from": "",
"to": "",
"reg": false,
"x": 790,
"y": 540,
"wires": [
[
"7b0e25d7.36a7fc"
]
]
},
{
"id": "33c470a3.c1785",
"type": "comment",
"z": "c423f322.c4806",
"name": "Schaltstatus",
"info": "",
"x": 1010,
"y": 360,
"wires": []
},
{
"id": "857691ed.988cd",
"type": "comment",
"z": "c423f322.c4806",
"name": "Spannung",
"info": "",
"x": 1000,
"y": 620,
"wires": []
},
{
"id": "92173f3c.c3c92",
"type": "comment",
"z": "c423f322.c4806",
"name": "Leistung",
"info": "",
"x": 1000,
"y": 500,
"wires": []
},
{
"id": "7b0e25d7.36a7fc",
"type": "debug",
"z": "c423f322.c4806",
"name": "",
"active": true,
"tosidebar": true,
"console": false,
"tostatus": false,
"complete": "false",
"statusVal": "",
"statusType": "auto",
"x": 1010,
"y": 540,
"wires": []
},
{
"id": "d3a0222c.5d24c",
"type": "debug",
"z": "c423f322.c4806",
"name": "",
"active": true,
"tosidebar": true,
"console": false,
"tostatus": false,
"complete": "false",
"statusVal": "",
"statusType": "auto",
"x": 1010,
"y": 660,
"wires": []
},
{
"id": "7fda335c.d93144",
"type": "change",
"z": "c423f322.c4806",
"name": "",
"rules": [
{
"t": "set",
"p": "payload",
"pt": "msg",
"to": "payload.params[\"switch:0\"].voltage",
"tot": "msg"
}
],
"action": "",
"property": "",
"from": "",
"to": "",
"reg": false,
"x": 770,
"y": 660,
"wires": [
[
"d3a0222c.5d24c"
]
]
},
{
"id": "f56dd7d5.a4df",
"type": "mqtt-broker",
"name": "MQTT-Broker ioB",
"broker": "localhost",
"port": "1883",
"clientid": "",
"usetls": false,
"protocolVersion": "4",
"keepalive": "60",
"cleansession": true,
"birthTopic": "",
"birthQos": "0",
"birthPayload": "*",
"birthMsg": {},
"closeTopic": "",
"closeQos": "0",
"closePayload": "",
"closeMsg": {},
"willTopic": "",
"willQos": "0",
"willPayload": "",
"willMsg": {},
"sessionExpiry": ""
}
]
Anmerkung
Der nachfolgend abgebildeteTeil des Flows kann 1:1 für den Shelly Plus 1 übernommen werden. ![]()
(restl. Nodes einfach entfernen.
)