Skip to content
  • Home
  • Aktuell
  • Tags
  • 0 Ungelesen 0
  • Kategorien
  • Unreplied
  • Beliebt
  • GitHub
  • Docu
  • Hilfe
Skins
  • Light
  • Brite
  • Cerulean
  • Cosmo
  • Flatly
  • Journal
  • Litera
  • Lumen
  • Lux
  • Materia
  • Minty
  • Morph
  • Pulse
  • Sandstone
  • Simplex
  • Sketchy
  • Spacelab
  • United
  • Yeti
  • Zephyr
  • Dark
  • Cyborg
  • Darkly
  • Quartz
  • Slate
  • Solar
  • Superhero
  • Vapor

  • Standard: (Kein Skin)
  • Kein Skin
Einklappen
ioBroker Logo

Community Forum

donate donate
  1. ioBroker Community Home
  2. Deutsch
  3. Skripten / Logik
  4. Node-Red
  5. [Gelöst] Benötige Hilfe mit Node-Red in Verbindung mit homee

NEWS

  • Neuer Blogbeitrag: Monatsrückblick - Dezember 2025 🎄
    BluefoxB
    Bluefox
    11
    1
    525

  • Weihnachtsangebot 2025! 🎄
    BluefoxB
    Bluefox
    24
    1
    1.7k

  • UPDATE 31.10.: Amazon Alexa - ioBroker Skill läuft aus ?
    apollon77A
    apollon77
    48
    3
    9.6k

[Gelöst] Benötige Hilfe mit Node-Red in Verbindung mit homee

Geplant Angeheftet Gesperrt Verschoben Node-Red
node-red
121 Beiträge 3 Kommentatoren 17.3k Aufrufe 4 Watching
  • Älteste zuerst
  • Neuste zuerst
  • Meiste Stimmen
Antworten
  • In einem neuen Thema antworten
Anmelden zum Antworten
Dieses Thema wurde gelöscht. Nur Nutzer mit entsprechenden Rechten können es sehen.
  • mickymM mickym

    @oli sagte in Benötige Hilfe mit Node-Red in Verbindung mit homee:

    @mickym
    super, jetzt funktioniert es :-)

    Sehr gut. Dann probier halt erst mal bissi aus. Ggf. brauchst Du den Report nur wenn Du ihn antriggerst oder keine Ahnung ob der mit jedem Geräteupdate ausgegeben werden muss. Ich würde es nicht als final bezeichnen, aber es ist eine Basis damit Du die Zusammenhänge verstehst und das nun Deinen Bedürfnissen anpassen kannst.

    Und wie gesagt: Hänge Dir so viele Debug-Nodes dran, wie Du willst, nur so verstehst Du wie die Befehle funktionieren.

    O Online
    O Online
    Oli
    schrieb am zuletzt editiert von
    #24

    @mickym
    den Report bräuchte ich eigentlich nur, wenn sich am Gerätestatus was ändert,
    den oberen bräuchte ich ebenfalls nur wenn sich am Gerätestatus was ändert, oder ein neues gerät hinzukommt

    ist das möglich?

    Gruß
    Oliver

    mickymM 2 Antworten Letzte Antwort
    0
    • O Oli

      @mickym
      den Report bräuchte ich eigentlich nur, wenn sich am Gerätestatus was ändert,
      den oberen bräuchte ich ebenfalls nur wenn sich am Gerätestatus was ändert, oder ein neues gerät hinzukommt

      ist das möglich?

      mickymM Offline
      mickymM Offline
      mickym
      Most Active
      schrieb am zuletzt editiert von mickym
      #25

      @oli Du sollst das ja nicht als finalen Flow betrachten. Momentan kannst Du das mit der trigger Node anstossen. ;)

      den Report bräuchte ich eigentlich nur, wenn sich am Gerätestatus was ändert,

      den oberen bräuchte ich ebenfalls nur wenn sich am Gerätestatus was ändert, oder ein neues gerät hinzukommt

      Das hängt doch von "Dir" ab, was Du triggern lässt und wie Du das ermittelst. ;) Ggf. an der Stelle an der die globale Geräteliste zusammen gezimmert wird.

      Der Ersteller des ursprünglichen flows hatte das ja als Bedingung - aber das musst Du beurteilen:

      if((msg.payload.node && ((msg.payload.node.state === 2)||(msg.payload.node.state === 12)))||msg.payload === true)
      

      sprich NUR wenn payload eine Eigenschaft node hat oder true ist - und wenn sie eine Eigenschaft node hat - dann nur wenn die Geräte nicht verfügbar sind.

      Ob dass das ist, was Du willst - weiss ich nicht, aber dann hättest Du die gleiche Situation wie vorher.

      Dazu baust Du für Deine Trigger folgenden Filter davor:

      fd7d6d28-7b1d-473e-a79c-1d3b23b22b89-image.png

      [
         {
             "id": "9c97a2e21b3710d3",
             "type": "switch",
             "z": "9c280ddf049b2b4d",
             "name": "filter trigger",
             "property": "(payload.node and (payload.node.state =2 or payload.node.state = 12)) or payload = true",
             "propertyType": "jsonata",
             "rules": [
                 {
                     "t": "true"
                 }
             ],
             "checkall": "true",
             "repair": false,
             "outputs": 1,
             "x": 570,
             "y": 440,
             "wires": [
                 [
                     "0f17893e37ac0581"
                 ]
             ]
         }
      ]
      

      Wie gesagt - das ist der Filter der in der function Node war - wenn es andere Möglichkeiten gibt, dann musst du halt schauen. Ich überlege noch was anderes - aber das ist erst mal das, was bislang Dein jetziger Status mit dem anderen Flow war.

      Jeder Flow bzw. jedes Script, das ich hier poste implementiert jeder auf eigene Gefahr. Flows und Scripts können Fehler aufweisen und weder der Seitenbetreiber noch ich persönlich können hierfür haftbar gemacht werden. Das gleiche gilt für Empfehlungen aller Art.

      1 Antwort Letzte Antwort
      0
      • O Oli

        @mickym
        den Report bräuchte ich eigentlich nur, wenn sich am Gerätestatus was ändert,
        den oberen bräuchte ich ebenfalls nur wenn sich am Gerätestatus was ändert, oder ein neues gerät hinzukommt

        ist das möglich?

        mickymM Offline
        mickymM Offline
        mickym
        Most Active
        schrieb am zuletzt editiert von mickym
        #26

        @oli sagte in Benötige Hilfe mit Node-Red in Verbindung mit homee:

        @mickym
        den Report bräuchte ich eigentlich nur, wenn sich am Gerätestatus was ändert,
        den oberen bräuchte ich ebenfalls nur wenn sich am Gerätestatus was ändert, oder ein neues gerät hinzukommt

        ist das möglich?

        OK - habe ich Dir nun auch gemacht. Also nicht den Filter von dem ursprünglichen Flowersteller nehmen, sondern ich hab jetzt folgendes gebastelt: ;)

        632bcd7a-a0bc-42dd-8e33-c16671f1633b-image.png

        • Es wird geprüft, ob es ein Gerät ist
        • Wenn ja wird es in die Nachrichteneigenschaft device geschoben
        • Dann wird wieder die komplette Geräteliste geholt
        • Dann wird das Gerät aus der Geräteliste selektiert und überprüft ob es vorhanden ist bzw. sich der status geändert hat und nur dann fortgesetzt.

        Statt der Inject Node ein Gerät - kannst dann wieder mit Deinem anderen Flow verlinken:

        [
           {
               "id": "94fbc6ce08554a92",
               "type": "inject",
               "z": "9c280ddf049b2b4d",
               "name": "Ein Gerät",
               "props": [
                   {
                       "p": "payload"
                   }
               ],
               "repeat": "",
               "crontab": "",
               "once": false,
               "onceDelay": 0.1,
               "topic": "",
               "payload": "{\"node\":{\"id\":29,\"name\":\"EG%20%2F%20Wohnzimmer%20%2F%20Netatmo\",\"profile\":3014,\"image\":\"default\",\"favorite\":0,\"order\":42,\"protocol\":9,\"routing\":0,\"state\":1,\"state_changed\":1678428037,\"added\":1607519624,\"history\":0,\"cube_type\":8,\"note\":\"\",\"services\":5,\"phonetic_name\":\"Klima%20Wohnzimmer\",\"owner\":1,\"security\":0,\"attributes\":[{\"id\":253,\"node_id\":29,\"instance\":0,\"minimum\":0,\"maximum\":50,\"current_value\":20.6,\"target_value\":20.6,\"last_value\":20.5,\"unit\":\"%C2%B0C\",\"step_value\":0.5,\"editable\":0,\"type\":5,\"state\":1,\"last_changed\":1678519389,\"changed_by\":1,\"changed_by_id\":0,\"based_on\":4,\"data\":\"\",\"name\":\"\",\"options\":{\"history\":{\"day\":1,\"week\":26,\"month\":6}}},{\"id\":254,\"node_id\":29,\"instance\":0,\"minimum\":0,\"maximum\":100,\"current_value\":33,\"target_value\":33,\"last_value\":34,\"unit\":\"%25\",\"step_value\":1,\"editable\":0,\"type\":7,\"state\":1,\"last_changed\":1678515784,\"changed_by\":1,\"changed_by_id\":0,\"based_on\":4,\"data\":\"\",\"name\":\"\",\"options\":{\"history\":{\"day\":1,\"week\":26,\"month\":6}}},{\"id\":255,\"node_id\":29,\"instance\":0,\"minimum\":0,\"maximum\":5000,\"current_value\":444,\"target_value\":444,\"last_value\":449,\"unit\":\"ppm\",\"step_value\":50,\"editable\":0,\"type\":20,\"state\":1,\"last_changed\":1678519389,\"changed_by\":1,\"changed_by_id\":0,\"based_on\":4,\"data\":\"\",\"name\":\"\",\"options\":{\"history\":{\"day\":1,\"week\":26,\"month\":6}}},{\"id\":256,\"node_id\":29,\"instance\":0,\"minimum\":35,\"maximum\":120,\"current_value\":32,\"target_value\":32,\"last_value\":33,\"unit\":\"dB\",\"step_value\":1,\"editable\":0,\"type\":93,\"state\":1,\"last_changed\":1678515183,\"changed_by\":1,\"changed_by_id\":0,\"based_on\":4,\"data\":\"\",\"name\":\"\",\"options\":{\"history\":{\"day\":1,\"week\":26,\"month\":6}}},{\"id\":257,\"node_id\":29,\"instance\":0,\"minimum\":260,\"maximum\":1160,\"current_value\":1003.7,\"target_value\":1003.7,\"last_value\":1003.6,\"unit\":\"mBar\",\"step_value\":5,\"editable\":0,\"type\":94,\"state\":1,\"last_changed\":1678519389,\"changed_by\":1,\"changed_by_id\":0,\"based_on\":4,\"data\":\"\",\"name\":\"\",\"options\":{\"history\":{\"day\":1,\"week\":26,\"month\":6}}},{\"id\":258,\"node_id\":29,\"instance\":0,\"minimum\":0,\"maximum\":4,\"current_value\":4,\"target_value\":4,\"last_value\":2,\"unit\":\"n%2Fa\",\"step_value\":1,\"editable\":0,\"type\":33,\"state\":1,\"last_changed\":1677083197,\"changed_by\":1,\"changed_by_id\":0,\"based_on\":4,\"data\":\"\",\"name\":\"\"},{\"id\":475,\"node_id\":29,\"instance\":0,\"minimum\":0,\"maximum\":1,\"current_value\":1,\"target_value\":1,\"last_value\":0,\"unit\":\"\",\"step_value\":1,\"editable\":1,\"type\":385,\"state\":1,\"last_changed\":0,\"changed_by\":0,\"changed_by_id\":0,\"based_on\":0,\"data\":\"\",\"name\":\"\"}]}}",
               "payloadType": "json",
               "x": 120,
               "y": 800,
               "wires": [
                   [
                       "e565ecbc06eb639f"
                   ]
               ]
           },
           {
               "id": "306e283de06793a5",
               "type": "change",
               "z": "9c280ddf049b2b4d",
               "name": "",
               "rules": [
                   {
                       "t": "move",
                       "p": "payload",
                       "pt": "msg",
                       "to": "device",
                       "tot": "msg"
                   }
               ],
               "action": "",
               "property": "",
               "from": "",
               "to": "",
               "reg": false,
               "x": 500,
               "y": 800,
               "wires": [
                   [
                       "3fcd14dd3eda98a3"
                   ]
               ]
           },
           {
               "id": "3fcd14dd3eda98a3",
               "type": "change",
               "z": "9c280ddf049b2b4d",
               "name": "hole alle Geräte",
               "rules": [
                   {
                       "t": "set",
                       "p": "payload",
                       "pt": "msg",
                       "to": "{}",
                       "tot": "json"
                   },
                   {
                       "t": "set",
                       "p": "payload.nodes",
                       "pt": "msg",
                       "to": "homee.nodes",
                       "tot": "global"
                   }
               ],
               "action": "",
               "property": "",
               "from": "",
               "to": "",
               "reg": false,
               "x": 720,
               "y": 800,
               "wires": [
                   [
                       "3981f0834f60fe3d"
                   ]
               ]
           },
           {
               "id": "3981f0834f60fe3d",
               "type": "switch",
               "z": "9c280ddf049b2b4d",
               "name": "Nur wenn Gerätestatus geändert",
               "property": "payload.nodes[id=$$.device.node.id].state = device.node.state",
               "propertyType": "jsonata",
               "rules": [
                   {
                       "t": "false"
                   }
               ],
               "checkall": "true",
               "repair": false,
               "outputs": 1,
               "x": 970,
               "y": 800,
               "wires": [
                   [
                       "6f4c16eed7166074"
                   ]
               ]
           },
           {
               "id": "e565ecbc06eb639f",
               "type": "switch",
               "z": "9c280ddf049b2b4d",
               "name": "verify device",
               "property": "payload.node",
               "propertyType": "msg",
               "rules": [
                   {
                       "t": "nnull"
                   }
               ],
               "checkall": "true",
               "repair": false,
               "outputs": 1,
               "x": 290,
               "y": 800,
               "wires": [
                   [
                       "306e283de06793a5"
                   ]
               ]
           }
        ]
        

        Nachdem Du die Zusammenfassung automatisch haben willst kannst Du das mit einer Complete Node erledigen, später würde ich das alles wegschmeissen und mit dem Hauptflow zusammenführen.

        6cd88e02-c174-4d66-b18c-a49d63a6e03e-image.png

        5e7b0ea8-438a-4fc6-9991-31fc20e04fb9-image.png

        [
           {
               "id": "615f1d935afd46f7",
               "type": "complete",
               "z": "9c280ddf049b2b4d",
               "name": "",
               "scope": [
                   "99528e0bbb0f2491",
                   "43f88f1028d1af0a",
                   "139fe3d8efb20402"
               ],
               "uncaught": false,
               "x": 230,
               "y": 1260,
               "wires": [
                   [
                       "bb70522cf511b632"
                   ]
               ]
           }
        ]
        

        Falls in der Complete Node nichts ausgewählt ist dann halt diese 3 Change Nodes auswählen
        c969460a-10a0-47f8-8592-3856edebfae9-image.png

        Wie gesagt final - wenn Du genug rumexperimentiert hast - würde ich das eh zusammenfassen.

        2a9880f7-8f4c-4a90-8fa0-a008e39b579a-image.png

        und hinten raus - den Report willst Du ja auch ganz anders gestalten.

        1. Konsolidierung:

        [
           {
               "id": "afaeceb73a81b97a",
               "type": "tab",
               "label": "Homee 1. Konsoldierung",
               "disabled": false,
               "info": "",
               "env": []
           },
           {
               "id": "1f31a8a611e8ae62",
               "type": "junction",
               "z": "afaeceb73a81b97a",
               "x": 1100,
               "y": 400,
               "wires": [
                   [
                       "d1362666d0d6498d",
                       "e5e4c67350b62fb9",
                       "9c0a0c2ec54309c4"
                   ]
               ]
           },
           {
               "id": "d6ba83fcbbf8632b",
               "type": "junction",
               "z": "afaeceb73a81b97a",
               "x": 1560,
               "y": 260,
               "wires": [
                   [
                       "4fc32434b1ad9e30"
                   ]
               ]
           },
           {
               "id": "ba0d73a9ecf905bb",
               "type": "junction",
               "z": "afaeceb73a81b97a",
               "x": 1500,
               "y": 400,
               "wires": [
                   [
                       "d6ba83fcbbf8632b"
                   ]
               ]
           },
           {
               "id": "ccc13bcc415bf46d",
               "type": "change",
               "z": "afaeceb73a81b97a",
               "name": "decodeUrlComponents",
               "rules": [
                   {
                       "t": "set",
                       "p": "payload",
                       "pt": "msg",
                       "to": "payload ~> |$.nodes|{\"name\":$decodeUrlComponent(name),\t\"note\":$decodeUrlComponent(note),\t\"phonetic_name\":$decodeUrlComponent(phonetic_name)},\"attributes\"|",
                       "tot": "jsonata"
                   }
               ],
               "action": "",
               "property": "",
               "from": "",
               "to": "",
               "reg": false,
               "x": 520,
               "y": 400,
               "wires": [
                   [
                       "c97f121d294f1458"
                   ]
               ]
           },
           {
               "id": "c97f121d294f1458",
               "type": "change",
               "z": "afaeceb73a81b97a",
               "name": "Alle Geräte",
               "rules": [
                   {
                       "t": "set",
                       "p": "payload",
                       "pt": "msg",
                       "to": "payload.nodes",
                       "tot": "msg"
                   }
               ],
               "action": "",
               "property": "",
               "from": "",
               "to": "",
               "reg": false,
               "x": 730,
               "y": 400,
               "wires": [
                   [
                       "913391f5d68d5666"
                   ]
               ]
           },
           {
               "id": "e5e4c67350b62fb9",
               "type": "change",
               "z": "afaeceb73a81b97a",
               "name": "Alle inaktiven Geräte",
               "rules": [
                   {
                       "t": "set",
                       "p": "payload",
                       "pt": "msg",
                       "to": "payload[state = 2]",
                       "tot": "jsonata"
                   },
                   {
                       "t": "set",
                       "p": "homee.inactive",
                       "pt": "flow",
                       "to": "payload",
                       "tot": "msg"
                   }
               ],
               "action": "",
               "property": "",
               "from": "",
               "to": "",
               "reg": false,
               "x": 1320,
               "y": 400,
               "wires": [
                   [
                       "ba0d73a9ecf905bb"
                   ]
               ]
           },
           {
               "id": "9c0a0c2ec54309c4",
               "type": "change",
               "z": "afaeceb73a81b97a",
               "name": "Alle aktiven Geräte",
               "rules": [
                   {
                       "t": "set",
                       "p": "payload",
                       "pt": "msg",
                       "to": "payload[state = 1]",
                       "tot": "jsonata"
                   },
                   {
                       "t": "set",
                       "p": "homee.active",
                       "pt": "flow",
                       "to": "payload",
                       "tot": "msg"
                   }
               ],
               "action": "",
               "property": "",
               "from": "",
               "to": "",
               "reg": false,
               "x": 1330,
               "y": 340,
               "wires": [
                   [
                       "ba0d73a9ecf905bb"
                   ]
               ]
           },
           {
               "id": "d1362666d0d6498d",
               "type": "change",
               "z": "afaeceb73a81b97a",
               "name": "Geräte, die aktualisiert werden",
               "rules": [
                   {
                       "t": "set",
                       "p": "payload",
                       "pt": "msg",
                       "to": "payload[state = 12] ",
                       "tot": "jsonata"
                   },
                   {
                       "t": "set",
                       "p": "homee.updating",
                       "pt": "flow",
                       "to": "payload",
                       "tot": "msg"
                   }
               ],
               "action": "",
               "property": "",
               "from": "",
               "to": "",
               "reg": false,
               "x": 1290,
               "y": 460,
               "wires": [
                   [
                       "ba0d73a9ecf905bb"
                   ]
               ]
           },
           {
               "id": "913391f5d68d5666",
               "type": "change",
               "z": "afaeceb73a81b97a",
               "name": "Geräte ausschliessen",
               "rules": [
                   {
                       "t": "set",
                       "p": "payload",
                       "pt": "msg",
                       "to": "payload ~> $filter(function($value){$value.id in [-1] != true})",
                       "tot": "jsonata"
                   }
               ],
               "action": "",
               "property": "",
               "from": "",
               "to": "",
               "reg": false,
               "x": 940,
               "y": 400,
               "wires": [
                   [
                       "1f31a8a611e8ae62"
                   ]
               ]
           },
           {
               "id": "bf00496a9f44421a",
               "type": "inject",
               "z": "afaeceb73a81b97a",
               "name": "Trigger Report",
               "props": [
                   {
                       "p": "payload"
                   }
               ],
               "repeat": "",
               "crontab": "",
               "once": false,
               "onceDelay": 0.1,
               "topic": "",
               "payload": "",
               "payloadType": "date",
               "x": 1330,
               "y": 200,
               "wires": [
                   [
                       "d6ba83fcbbf8632b"
                   ]
               ]
           },
           {
               "id": "ee98fce5a9a9aa0a",
               "type": "ioBroker in",
               "z": "afaeceb73a81b97a",
               "name": "start",
               "topic": "0_userdata.0.System.homee.StartGeräteinfo",
               "payloadType": "value",
               "onlyack": "",
               "func": "all",
               "gap": "",
               "fireOnStart": "false",
               "outFormat": "MQTT",
               "x": 1350,
               "y": 260,
               "wires": [
                   [
                       "d6ba83fcbbf8632b"
                   ]
               ]
           },
           {
               "id": "f750a4c387a2be4e",
               "type": "change",
               "z": "afaeceb73a81b97a",
               "name": "hole alle Geräte",
               "rules": [
                   {
                       "t": "set",
                       "p": "payload",
                       "pt": "msg",
                       "to": "{}",
                       "tot": "json"
                   },
                   {
                       "t": "set",
                       "p": "payload.nodes",
                       "pt": "msg",
                       "to": "homee.nodes",
                       "tot": "global"
                   }
               ],
               "action": "",
               "property": "",
               "from": "",
               "to": "",
               "reg": false,
               "x": 280,
               "y": 400,
               "wires": [
                   [
                       "ccc13bcc415bf46d"
                   ]
               ]
           },
           {
               "id": "bc3f5ae2440a7bd8",
               "type": "inject",
               "z": "afaeceb73a81b97a",
               "name": "trigger",
               "props": [
                   {
                       "p": "payload"
                   }
               ],
               "repeat": "",
               "crontab": "",
               "once": false,
               "onceDelay": 0.1,
               "topic": "",
               "payload": "true",
               "payloadType": "bool",
               "x": 110,
               "y": 400,
               "wires": [
                   [
                       "f750a4c387a2be4e"
                   ]
               ]
           },
           {
               "id": "cb19c80f141b5ec7",
               "type": "inject",
               "z": "afaeceb73a81b97a",
               "name": "Ein Gerät",
               "props": [
                   {
                       "p": "payload"
                   }
               ],
               "repeat": "",
               "crontab": "",
               "once": false,
               "onceDelay": 0.1,
               "topic": "",
               "payload": "{\"node\":{\"id\":29,\"name\":\"EG%20%2F%20Wohnzimmer%20%2F%20Netatmo\",\"profile\":3014,\"image\":\"default\",\"favorite\":0,\"order\":42,\"protocol\":9,\"routing\":0,\"state\":1,\"state_changed\":1678428037,\"added\":1607519624,\"history\":0,\"cube_type\":8,\"note\":\"\",\"services\":5,\"phonetic_name\":\"Klima%20Wohnzimmer\",\"owner\":1,\"security\":0,\"attributes\":[{\"id\":253,\"node_id\":29,\"instance\":0,\"minimum\":0,\"maximum\":50,\"current_value\":20.6,\"target_value\":20.6,\"last_value\":20.5,\"unit\":\"%C2%B0C\",\"step_value\":0.5,\"editable\":0,\"type\":5,\"state\":1,\"last_changed\":1678519389,\"changed_by\":1,\"changed_by_id\":0,\"based_on\":4,\"data\":\"\",\"name\":\"\",\"options\":{\"history\":{\"day\":1,\"week\":26,\"month\":6}}},{\"id\":254,\"node_id\":29,\"instance\":0,\"minimum\":0,\"maximum\":100,\"current_value\":33,\"target_value\":33,\"last_value\":34,\"unit\":\"%25\",\"step_value\":1,\"editable\":0,\"type\":7,\"state\":1,\"last_changed\":1678515784,\"changed_by\":1,\"changed_by_id\":0,\"based_on\":4,\"data\":\"\",\"name\":\"\",\"options\":{\"history\":{\"day\":1,\"week\":26,\"month\":6}}},{\"id\":255,\"node_id\":29,\"instance\":0,\"minimum\":0,\"maximum\":5000,\"current_value\":444,\"target_value\":444,\"last_value\":449,\"unit\":\"ppm\",\"step_value\":50,\"editable\":0,\"type\":20,\"state\":1,\"last_changed\":1678519389,\"changed_by\":1,\"changed_by_id\":0,\"based_on\":4,\"data\":\"\",\"name\":\"\",\"options\":{\"history\":{\"day\":1,\"week\":26,\"month\":6}}},{\"id\":256,\"node_id\":29,\"instance\":0,\"minimum\":35,\"maximum\":120,\"current_value\":32,\"target_value\":32,\"last_value\":33,\"unit\":\"dB\",\"step_value\":1,\"editable\":0,\"type\":93,\"state\":1,\"last_changed\":1678515183,\"changed_by\":1,\"changed_by_id\":0,\"based_on\":4,\"data\":\"\",\"name\":\"\",\"options\":{\"history\":{\"day\":1,\"week\":26,\"month\":6}}},{\"id\":257,\"node_id\":29,\"instance\":0,\"minimum\":260,\"maximum\":1160,\"current_value\":1003.7,\"target_value\":1003.7,\"last_value\":1003.6,\"unit\":\"mBar\",\"step_value\":5,\"editable\":0,\"type\":94,\"state\":1,\"last_changed\":1678519389,\"changed_by\":1,\"changed_by_id\":0,\"based_on\":4,\"data\":\"\",\"name\":\"\",\"options\":{\"history\":{\"day\":1,\"week\":26,\"month\":6}}},{\"id\":258,\"node_id\":29,\"instance\":0,\"minimum\":0,\"maximum\":4,\"current_value\":4,\"target_value\":4,\"last_value\":2,\"unit\":\"n%2Fa\",\"step_value\":1,\"editable\":0,\"type\":33,\"state\":1,\"last_changed\":1677083197,\"changed_by\":1,\"changed_by_id\":0,\"based_on\":4,\"data\":\"\",\"name\":\"\"},{\"id\":475,\"node_id\":29,\"instance\":0,\"minimum\":0,\"maximum\":1,\"current_value\":1,\"target_value\":1,\"last_value\":0,\"unit\":\"\",\"step_value\":1,\"editable\":1,\"type\":385,\"state\":1,\"last_changed\":0,\"changed_by\":0,\"changed_by_id\":0,\"based_on\":0,\"data\":\"\",\"name\":\"\"}]}}",
               "payloadType": "json",
               "x": 60,
               "y": 520,
               "wires": [
                   [
                       "477f8cdd68a623d6"
                   ]
               ]
           },
           {
               "id": "ea25ff19366dbd8b",
               "type": "change",
               "z": "afaeceb73a81b97a",
               "name": "",
               "rules": [
                   {
                       "t": "move",
                       "p": "payload",
                       "pt": "msg",
                       "to": "device",
                       "tot": "msg"
                   }
               ],
               "action": "",
               "property": "",
               "from": "",
               "to": "",
               "reg": false,
               "x": 440,
               "y": 520,
               "wires": [
                   [
                       "13fef03679554dae"
                   ]
               ]
           },
           {
               "id": "13fef03679554dae",
               "type": "change",
               "z": "afaeceb73a81b97a",
               "name": "hole alle Geräte",
               "rules": [
                   {
                       "t": "set",
                       "p": "payload",
                       "pt": "msg",
                       "to": "{}",
                       "tot": "json"
                   },
                   {
                       "t": "set",
                       "p": "payload.nodes",
                       "pt": "msg",
                       "to": "homee.nodes",
                       "tot": "global"
                   }
               ],
               "action": "",
               "property": "",
               "from": "",
               "to": "",
               "reg": false,
               "x": 660,
               "y": 520,
               "wires": [
                   [
                       "3e5a3f328d92cbec"
                   ]
               ]
           },
           {
               "id": "3e5a3f328d92cbec",
               "type": "switch",
               "z": "afaeceb73a81b97a",
               "name": "Nur wenn Gerätestatus geändert",
               "property": "payload.nodes[id=$$.device.node.id].state = device.node.state",
               "propertyType": "jsonata",
               "rules": [
                   {
                       "t": "false"
                   }
               ],
               "checkall": "true",
               "repair": false,
               "outputs": 1,
               "x": 910,
               "y": 520,
               "wires": [
                   [
                       "ccc13bcc415bf46d"
                   ]
               ]
           },
           {
               "id": "477f8cdd68a623d6",
               "type": "switch",
               "z": "afaeceb73a81b97a",
               "name": "verify device",
               "property": "payload.node",
               "propertyType": "msg",
               "rules": [
                   {
                       "t": "nnull"
                   }
               ],
               "checkall": "true",
               "repair": false,
               "outputs": 1,
               "x": 230,
               "y": 520,
               "wires": [
                   [
                       "ea25ff19366dbd8b"
                   ]
               ]
           },
           {
               "id": "4fc32434b1ad9e30",
               "type": "change",
               "z": "afaeceb73a81b97a",
               "name": "",
               "rules": [
                   {
                       "t": "set",
                       "p": "payload",
                       "pt": "msg",
                       "to": "homee",
                       "tot": "flow"
                   },
                   {
                       "t": "set",
                       "p": "payload",
                       "pt": "msg",
                       "to": "{\t   \"active\" : {\t       \"count\": payload.active ? $count(payload.active): 0,\t       \"names\" :  payload.active ?  $join(payload.active.phonetic_name,\"\\n\") : \"Keine aktiven Geräte vorhanden\"\t   },\t   \"inactive\" : {\t       \"count\": payload.inactive ? $count(payload.inactive): 0,\t        \"names\" :  payload.inactive ?  $join(payload.inactive.phonetic_name,\"\\n\") : \"Keine inaktiven Geräte vorhanden\"\t   },\t   \"updating\" : {\t       \"count\": payload.updating ? $count(payload.inactive): 0,\t        \"names\" :  payload.updating ?  $join(payload.updating.phonetic_name,\"\\n\") : \"Keine Geräte im Aktualisierungsstatus\"\t   },\t   \"summary\" : payload.updating or payload.inactive ? \"Nicht alle Geräte bereit!\" : \"Alle Geräte aktiv\"\t}",
                       "tot": "jsonata"
                   }
               ],
               "action": "",
               "property": "",
               "from": "",
               "to": "",
               "reg": false,
               "x": 1710,
               "y": 260,
               "wires": [
                   [
                       "93b337c8b0c958f0",
                       "6208fe0589c08c8c",
                       "91df4ca35b0811b5",
                       "a9b7cfa0138adb7c"
                   ]
               ]
           },
           {
               "id": "93b337c8b0c958f0",
               "type": "template",
               "z": "afaeceb73a81b97a",
               "name": "",
               "field": "payload",
               "fieldType": "msg",
               "format": "html",
               "syntax": "mustache",
               "template": "<!DOCTYPE html>\n<html>\n\n<body>\n<h1>Status der Geräte:</h1>\n\n<h3>aktive Geräte: {{payload.active.count}}\n<pre>{{payload.active.names}}</pre>\n\n<h3>inaktive Geräte: {{payload.inactive.count}}\n<pre>{{payload.inactive.names}}</pre>\n\n<h3>aktualisierende Geräte: {{payload.updating.count}}\n<pre>{{payload.updating.names}}</pre>\n\n<h3>{{payload.summary}}</h3>\n</body>\n</html>",
               "output": "str",
               "x": 1940,
               "y": 260,
               "wires": [
                   [
                       "bd020f5de81b6984"
                   ]
               ]
           },
           {
               "id": "1b3a14e37e06a753",
               "type": "file",
               "z": "afaeceb73a81b97a",
               "name": "",
               "filename": "filename",
               "filenameType": "msg",
               "appendNewline": false,
               "createDir": false,
               "overwriteFile": "true",
               "encoding": "none",
               "x": 2360,
               "y": 260,
               "wires": [
                   []
               ]
           },
           {
               "id": "bd020f5de81b6984",
               "type": "change",
               "z": "afaeceb73a81b97a",
               "name": "",
               "rules": [
                   {
                       "t": "set",
                       "p": "filename",
                       "pt": "msg",
                       "to": "/home/iobroker/homee-report.html",
                       "tot": "str"
                   }
               ],
               "action": "",
               "property": "",
               "from": "",
               "to": "",
               "reg": false,
               "x": 2150,
               "y": 260,
               "wires": [
                   [
                       "1b3a14e37e06a753"
                   ]
               ]
           },
           {
               "id": "6208fe0589c08c8c",
               "type": "switch",
               "z": "afaeceb73a81b97a",
               "name": "",
               "property": "payload.summary",
               "propertyType": "msg",
               "rules": [
                   {
                       "t": "neq",
                       "v": "Alle Geräte aktiv",
                       "vt": "str"
                   }
               ],
               "checkall": "true",
               "repair": false,
               "outputs": 1,
               "x": 1930,
               "y": 340,
               "wires": [
                   [
                       "e7ee2a2337e50af1"
                   ]
               ]
           },
           {
               "id": "f533e9122ec7d98d",
               "type": "debug",
               "z": "afaeceb73a81b97a",
               "name": "Warnung ausgeben - wenn nicht alle Geräte aktiv",
               "active": false,
               "tosidebar": true,
               "console": false,
               "tostatus": false,
               "complete": "payload",
               "targetType": "msg",
               "statusVal": "",
               "statusType": "auto",
               "x": 2430,
               "y": 340,
               "wires": []
           },
           {
               "id": "e7ee2a2337e50af1",
               "type": "change",
               "z": "afaeceb73a81b97a",
               "name": "",
               "rules": [
                   {
                       "t": "set",
                       "p": "payload",
                       "pt": "msg",
                       "to": "payload.summary",
                       "tot": "msg"
                   }
               ],
               "action": "",
               "property": "",
               "from": "",
               "to": "",
               "reg": false,
               "x": 2110,
               "y": 340,
               "wires": [
                   [
                       "f533e9122ec7d98d"
                   ]
               ]
           },
           {
               "id": "91df4ca35b0811b5",
               "type": "change",
               "z": "afaeceb73a81b97a",
               "name": "Anzahl nicht aktiver Geräte",
               "rules": [
                   {
                       "t": "set",
                       "p": "payload",
                       "pt": "msg",
                       "to": "payload.inactive.count + payload.updating.count",
                       "tot": "jsonata"
                   }
               ],
               "action": "",
               "property": "",
               "from": "",
               "to": "",
               "reg": false,
               "x": 2000,
               "y": 420,
               "wires": [
                   [
                       "49ce4151b0046769"
                   ]
               ]
           },
           {
               "id": "49ce4151b0046769",
               "type": "debug",
               "z": "afaeceb73a81b97a",
               "name": "Nicht aktive Geräte (updating oder inaktiv)",
               "active": false,
               "tosidebar": true,
               "console": false,
               "tostatus": false,
               "complete": "payload",
               "targetType": "msg",
               "statusVal": "",
               "statusType": "auto",
               "x": 2340,
               "y": 420,
               "wires": []
           },
           {
               "id": "a9b7cfa0138adb7c",
               "type": "debug",
               "z": "afaeceb73a81b97a",
               "name": "Zusammenfassung",
               "active": true,
               "tosidebar": true,
               "console": false,
               "tostatus": false,
               "complete": "payload",
               "targetType": "msg",
               "statusVal": "",
               "statusType": "auto",
               "x": 1970,
               "y": 200,
               "wires": []
           }
        ]
        

        Jeder Flow bzw. jedes Script, das ich hier poste implementiert jeder auf eigene Gefahr. Flows und Scripts können Fehler aufweisen und weder der Seitenbetreiber noch ich persönlich können hierfür haftbar gemacht werden. Das gleiche gilt für Empfehlungen aller Art.

        O 1 Antwort Letzte Antwort
        0
        • mickymM mickym

          @oli sagte in Benötige Hilfe mit Node-Red in Verbindung mit homee:

          @mickym
          den Report bräuchte ich eigentlich nur, wenn sich am Gerätestatus was ändert,
          den oberen bräuchte ich ebenfalls nur wenn sich am Gerätestatus was ändert, oder ein neues gerät hinzukommt

          ist das möglich?

          OK - habe ich Dir nun auch gemacht. Also nicht den Filter von dem ursprünglichen Flowersteller nehmen, sondern ich hab jetzt folgendes gebastelt: ;)

          632bcd7a-a0bc-42dd-8e33-c16671f1633b-image.png

          • Es wird geprüft, ob es ein Gerät ist
          • Wenn ja wird es in die Nachrichteneigenschaft device geschoben
          • Dann wird wieder die komplette Geräteliste geholt
          • Dann wird das Gerät aus der Geräteliste selektiert und überprüft ob es vorhanden ist bzw. sich der status geändert hat und nur dann fortgesetzt.

          Statt der Inject Node ein Gerät - kannst dann wieder mit Deinem anderen Flow verlinken:

          [
             {
                 "id": "94fbc6ce08554a92",
                 "type": "inject",
                 "z": "9c280ddf049b2b4d",
                 "name": "Ein Gerät",
                 "props": [
                     {
                         "p": "payload"
                     }
                 ],
                 "repeat": "",
                 "crontab": "",
                 "once": false,
                 "onceDelay": 0.1,
                 "topic": "",
                 "payload": "{\"node\":{\"id\":29,\"name\":\"EG%20%2F%20Wohnzimmer%20%2F%20Netatmo\",\"profile\":3014,\"image\":\"default\",\"favorite\":0,\"order\":42,\"protocol\":9,\"routing\":0,\"state\":1,\"state_changed\":1678428037,\"added\":1607519624,\"history\":0,\"cube_type\":8,\"note\":\"\",\"services\":5,\"phonetic_name\":\"Klima%20Wohnzimmer\",\"owner\":1,\"security\":0,\"attributes\":[{\"id\":253,\"node_id\":29,\"instance\":0,\"minimum\":0,\"maximum\":50,\"current_value\":20.6,\"target_value\":20.6,\"last_value\":20.5,\"unit\":\"%C2%B0C\",\"step_value\":0.5,\"editable\":0,\"type\":5,\"state\":1,\"last_changed\":1678519389,\"changed_by\":1,\"changed_by_id\":0,\"based_on\":4,\"data\":\"\",\"name\":\"\",\"options\":{\"history\":{\"day\":1,\"week\":26,\"month\":6}}},{\"id\":254,\"node_id\":29,\"instance\":0,\"minimum\":0,\"maximum\":100,\"current_value\":33,\"target_value\":33,\"last_value\":34,\"unit\":\"%25\",\"step_value\":1,\"editable\":0,\"type\":7,\"state\":1,\"last_changed\":1678515784,\"changed_by\":1,\"changed_by_id\":0,\"based_on\":4,\"data\":\"\",\"name\":\"\",\"options\":{\"history\":{\"day\":1,\"week\":26,\"month\":6}}},{\"id\":255,\"node_id\":29,\"instance\":0,\"minimum\":0,\"maximum\":5000,\"current_value\":444,\"target_value\":444,\"last_value\":449,\"unit\":\"ppm\",\"step_value\":50,\"editable\":0,\"type\":20,\"state\":1,\"last_changed\":1678519389,\"changed_by\":1,\"changed_by_id\":0,\"based_on\":4,\"data\":\"\",\"name\":\"\",\"options\":{\"history\":{\"day\":1,\"week\":26,\"month\":6}}},{\"id\":256,\"node_id\":29,\"instance\":0,\"minimum\":35,\"maximum\":120,\"current_value\":32,\"target_value\":32,\"last_value\":33,\"unit\":\"dB\",\"step_value\":1,\"editable\":0,\"type\":93,\"state\":1,\"last_changed\":1678515183,\"changed_by\":1,\"changed_by_id\":0,\"based_on\":4,\"data\":\"\",\"name\":\"\",\"options\":{\"history\":{\"day\":1,\"week\":26,\"month\":6}}},{\"id\":257,\"node_id\":29,\"instance\":0,\"minimum\":260,\"maximum\":1160,\"current_value\":1003.7,\"target_value\":1003.7,\"last_value\":1003.6,\"unit\":\"mBar\",\"step_value\":5,\"editable\":0,\"type\":94,\"state\":1,\"last_changed\":1678519389,\"changed_by\":1,\"changed_by_id\":0,\"based_on\":4,\"data\":\"\",\"name\":\"\",\"options\":{\"history\":{\"day\":1,\"week\":26,\"month\":6}}},{\"id\":258,\"node_id\":29,\"instance\":0,\"minimum\":0,\"maximum\":4,\"current_value\":4,\"target_value\":4,\"last_value\":2,\"unit\":\"n%2Fa\",\"step_value\":1,\"editable\":0,\"type\":33,\"state\":1,\"last_changed\":1677083197,\"changed_by\":1,\"changed_by_id\":0,\"based_on\":4,\"data\":\"\",\"name\":\"\"},{\"id\":475,\"node_id\":29,\"instance\":0,\"minimum\":0,\"maximum\":1,\"current_value\":1,\"target_value\":1,\"last_value\":0,\"unit\":\"\",\"step_value\":1,\"editable\":1,\"type\":385,\"state\":1,\"last_changed\":0,\"changed_by\":0,\"changed_by_id\":0,\"based_on\":0,\"data\":\"\",\"name\":\"\"}]}}",
                 "payloadType": "json",
                 "x": 120,
                 "y": 800,
                 "wires": [
                     [
                         "e565ecbc06eb639f"
                     ]
                 ]
             },
             {
                 "id": "306e283de06793a5",
                 "type": "change",
                 "z": "9c280ddf049b2b4d",
                 "name": "",
                 "rules": [
                     {
                         "t": "move",
                         "p": "payload",
                         "pt": "msg",
                         "to": "device",
                         "tot": "msg"
                     }
                 ],
                 "action": "",
                 "property": "",
                 "from": "",
                 "to": "",
                 "reg": false,
                 "x": 500,
                 "y": 800,
                 "wires": [
                     [
                         "3fcd14dd3eda98a3"
                     ]
                 ]
             },
             {
                 "id": "3fcd14dd3eda98a3",
                 "type": "change",
                 "z": "9c280ddf049b2b4d",
                 "name": "hole alle Geräte",
                 "rules": [
                     {
                         "t": "set",
                         "p": "payload",
                         "pt": "msg",
                         "to": "{}",
                         "tot": "json"
                     },
                     {
                         "t": "set",
                         "p": "payload.nodes",
                         "pt": "msg",
                         "to": "homee.nodes",
                         "tot": "global"
                     }
                 ],
                 "action": "",
                 "property": "",
                 "from": "",
                 "to": "",
                 "reg": false,
                 "x": 720,
                 "y": 800,
                 "wires": [
                     [
                         "3981f0834f60fe3d"
                     ]
                 ]
             },
             {
                 "id": "3981f0834f60fe3d",
                 "type": "switch",
                 "z": "9c280ddf049b2b4d",
                 "name": "Nur wenn Gerätestatus geändert",
                 "property": "payload.nodes[id=$$.device.node.id].state = device.node.state",
                 "propertyType": "jsonata",
                 "rules": [
                     {
                         "t": "false"
                     }
                 ],
                 "checkall": "true",
                 "repair": false,
                 "outputs": 1,
                 "x": 970,
                 "y": 800,
                 "wires": [
                     [
                         "6f4c16eed7166074"
                     ]
                 ]
             },
             {
                 "id": "e565ecbc06eb639f",
                 "type": "switch",
                 "z": "9c280ddf049b2b4d",
                 "name": "verify device",
                 "property": "payload.node",
                 "propertyType": "msg",
                 "rules": [
                     {
                         "t": "nnull"
                     }
                 ],
                 "checkall": "true",
                 "repair": false,
                 "outputs": 1,
                 "x": 290,
                 "y": 800,
                 "wires": [
                     [
                         "306e283de06793a5"
                     ]
                 ]
             }
          ]
          

          Nachdem Du die Zusammenfassung automatisch haben willst kannst Du das mit einer Complete Node erledigen, später würde ich das alles wegschmeissen und mit dem Hauptflow zusammenführen.

          6cd88e02-c174-4d66-b18c-a49d63a6e03e-image.png

          5e7b0ea8-438a-4fc6-9991-31fc20e04fb9-image.png

          [
             {
                 "id": "615f1d935afd46f7",
                 "type": "complete",
                 "z": "9c280ddf049b2b4d",
                 "name": "",
                 "scope": [
                     "99528e0bbb0f2491",
                     "43f88f1028d1af0a",
                     "139fe3d8efb20402"
                 ],
                 "uncaught": false,
                 "x": 230,
                 "y": 1260,
                 "wires": [
                     [
                         "bb70522cf511b632"
                     ]
                 ]
             }
          ]
          

          Falls in der Complete Node nichts ausgewählt ist dann halt diese 3 Change Nodes auswählen
          c969460a-10a0-47f8-8592-3856edebfae9-image.png

          Wie gesagt final - wenn Du genug rumexperimentiert hast - würde ich das eh zusammenfassen.

          2a9880f7-8f4c-4a90-8fa0-a008e39b579a-image.png

          und hinten raus - den Report willst Du ja auch ganz anders gestalten.

          1. Konsolidierung:

          [
             {
                 "id": "afaeceb73a81b97a",
                 "type": "tab",
                 "label": "Homee 1. Konsoldierung",
                 "disabled": false,
                 "info": "",
                 "env": []
             },
             {
                 "id": "1f31a8a611e8ae62",
                 "type": "junction",
                 "z": "afaeceb73a81b97a",
                 "x": 1100,
                 "y": 400,
                 "wires": [
                     [
                         "d1362666d0d6498d",
                         "e5e4c67350b62fb9",
                         "9c0a0c2ec54309c4"
                     ]
                 ]
             },
             {
                 "id": "d6ba83fcbbf8632b",
                 "type": "junction",
                 "z": "afaeceb73a81b97a",
                 "x": 1560,
                 "y": 260,
                 "wires": [
                     [
                         "4fc32434b1ad9e30"
                     ]
                 ]
             },
             {
                 "id": "ba0d73a9ecf905bb",
                 "type": "junction",
                 "z": "afaeceb73a81b97a",
                 "x": 1500,
                 "y": 400,
                 "wires": [
                     [
                         "d6ba83fcbbf8632b"
                     ]
                 ]
             },
             {
                 "id": "ccc13bcc415bf46d",
                 "type": "change",
                 "z": "afaeceb73a81b97a",
                 "name": "decodeUrlComponents",
                 "rules": [
                     {
                         "t": "set",
                         "p": "payload",
                         "pt": "msg",
                         "to": "payload ~> |$.nodes|{\"name\":$decodeUrlComponent(name),\t\"note\":$decodeUrlComponent(note),\t\"phonetic_name\":$decodeUrlComponent(phonetic_name)},\"attributes\"|",
                         "tot": "jsonata"
                     }
                 ],
                 "action": "",
                 "property": "",
                 "from": "",
                 "to": "",
                 "reg": false,
                 "x": 520,
                 "y": 400,
                 "wires": [
                     [
                         "c97f121d294f1458"
                     ]
                 ]
             },
             {
                 "id": "c97f121d294f1458",
                 "type": "change",
                 "z": "afaeceb73a81b97a",
                 "name": "Alle Geräte",
                 "rules": [
                     {
                         "t": "set",
                         "p": "payload",
                         "pt": "msg",
                         "to": "payload.nodes",
                         "tot": "msg"
                     }
                 ],
                 "action": "",
                 "property": "",
                 "from": "",
                 "to": "",
                 "reg": false,
                 "x": 730,
                 "y": 400,
                 "wires": [
                     [
                         "913391f5d68d5666"
                     ]
                 ]
             },
             {
                 "id": "e5e4c67350b62fb9",
                 "type": "change",
                 "z": "afaeceb73a81b97a",
                 "name": "Alle inaktiven Geräte",
                 "rules": [
                     {
                         "t": "set",
                         "p": "payload",
                         "pt": "msg",
                         "to": "payload[state = 2]",
                         "tot": "jsonata"
                     },
                     {
                         "t": "set",
                         "p": "homee.inactive",
                         "pt": "flow",
                         "to": "payload",
                         "tot": "msg"
                     }
                 ],
                 "action": "",
                 "property": "",
                 "from": "",
                 "to": "",
                 "reg": false,
                 "x": 1320,
                 "y": 400,
                 "wires": [
                     [
                         "ba0d73a9ecf905bb"
                     ]
                 ]
             },
             {
                 "id": "9c0a0c2ec54309c4",
                 "type": "change",
                 "z": "afaeceb73a81b97a",
                 "name": "Alle aktiven Geräte",
                 "rules": [
                     {
                         "t": "set",
                         "p": "payload",
                         "pt": "msg",
                         "to": "payload[state = 1]",
                         "tot": "jsonata"
                     },
                     {
                         "t": "set",
                         "p": "homee.active",
                         "pt": "flow",
                         "to": "payload",
                         "tot": "msg"
                     }
                 ],
                 "action": "",
                 "property": "",
                 "from": "",
                 "to": "",
                 "reg": false,
                 "x": 1330,
                 "y": 340,
                 "wires": [
                     [
                         "ba0d73a9ecf905bb"
                     ]
                 ]
             },
             {
                 "id": "d1362666d0d6498d",
                 "type": "change",
                 "z": "afaeceb73a81b97a",
                 "name": "Geräte, die aktualisiert werden",
                 "rules": [
                     {
                         "t": "set",
                         "p": "payload",
                         "pt": "msg",
                         "to": "payload[state = 12] ",
                         "tot": "jsonata"
                     },
                     {
                         "t": "set",
                         "p": "homee.updating",
                         "pt": "flow",
                         "to": "payload",
                         "tot": "msg"
                     }
                 ],
                 "action": "",
                 "property": "",
                 "from": "",
                 "to": "",
                 "reg": false,
                 "x": 1290,
                 "y": 460,
                 "wires": [
                     [
                         "ba0d73a9ecf905bb"
                     ]
                 ]
             },
             {
                 "id": "913391f5d68d5666",
                 "type": "change",
                 "z": "afaeceb73a81b97a",
                 "name": "Geräte ausschliessen",
                 "rules": [
                     {
                         "t": "set",
                         "p": "payload",
                         "pt": "msg",
                         "to": "payload ~> $filter(function($value){$value.id in [-1] != true})",
                         "tot": "jsonata"
                     }
                 ],
                 "action": "",
                 "property": "",
                 "from": "",
                 "to": "",
                 "reg": false,
                 "x": 940,
                 "y": 400,
                 "wires": [
                     [
                         "1f31a8a611e8ae62"
                     ]
                 ]
             },
             {
                 "id": "bf00496a9f44421a",
                 "type": "inject",
                 "z": "afaeceb73a81b97a",
                 "name": "Trigger Report",
                 "props": [
                     {
                         "p": "payload"
                     }
                 ],
                 "repeat": "",
                 "crontab": "",
                 "once": false,
                 "onceDelay": 0.1,
                 "topic": "",
                 "payload": "",
                 "payloadType": "date",
                 "x": 1330,
                 "y": 200,
                 "wires": [
                     [
                         "d6ba83fcbbf8632b"
                     ]
                 ]
             },
             {
                 "id": "ee98fce5a9a9aa0a",
                 "type": "ioBroker in",
                 "z": "afaeceb73a81b97a",
                 "name": "start",
                 "topic": "0_userdata.0.System.homee.StartGeräteinfo",
                 "payloadType": "value",
                 "onlyack": "",
                 "func": "all",
                 "gap": "",
                 "fireOnStart": "false",
                 "outFormat": "MQTT",
                 "x": 1350,
                 "y": 260,
                 "wires": [
                     [
                         "d6ba83fcbbf8632b"
                     ]
                 ]
             },
             {
                 "id": "f750a4c387a2be4e",
                 "type": "change",
                 "z": "afaeceb73a81b97a",
                 "name": "hole alle Geräte",
                 "rules": [
                     {
                         "t": "set",
                         "p": "payload",
                         "pt": "msg",
                         "to": "{}",
                         "tot": "json"
                     },
                     {
                         "t": "set",
                         "p": "payload.nodes",
                         "pt": "msg",
                         "to": "homee.nodes",
                         "tot": "global"
                     }
                 ],
                 "action": "",
                 "property": "",
                 "from": "",
                 "to": "",
                 "reg": false,
                 "x": 280,
                 "y": 400,
                 "wires": [
                     [
                         "ccc13bcc415bf46d"
                     ]
                 ]
             },
             {
                 "id": "bc3f5ae2440a7bd8",
                 "type": "inject",
                 "z": "afaeceb73a81b97a",
                 "name": "trigger",
                 "props": [
                     {
                         "p": "payload"
                     }
                 ],
                 "repeat": "",
                 "crontab": "",
                 "once": false,
                 "onceDelay": 0.1,
                 "topic": "",
                 "payload": "true",
                 "payloadType": "bool",
                 "x": 110,
                 "y": 400,
                 "wires": [
                     [
                         "f750a4c387a2be4e"
                     ]
                 ]
             },
             {
                 "id": "cb19c80f141b5ec7",
                 "type": "inject",
                 "z": "afaeceb73a81b97a",
                 "name": "Ein Gerät",
                 "props": [
                     {
                         "p": "payload"
                     }
                 ],
                 "repeat": "",
                 "crontab": "",
                 "once": false,
                 "onceDelay": 0.1,
                 "topic": "",
                 "payload": "{\"node\":{\"id\":29,\"name\":\"EG%20%2F%20Wohnzimmer%20%2F%20Netatmo\",\"profile\":3014,\"image\":\"default\",\"favorite\":0,\"order\":42,\"protocol\":9,\"routing\":0,\"state\":1,\"state_changed\":1678428037,\"added\":1607519624,\"history\":0,\"cube_type\":8,\"note\":\"\",\"services\":5,\"phonetic_name\":\"Klima%20Wohnzimmer\",\"owner\":1,\"security\":0,\"attributes\":[{\"id\":253,\"node_id\":29,\"instance\":0,\"minimum\":0,\"maximum\":50,\"current_value\":20.6,\"target_value\":20.6,\"last_value\":20.5,\"unit\":\"%C2%B0C\",\"step_value\":0.5,\"editable\":0,\"type\":5,\"state\":1,\"last_changed\":1678519389,\"changed_by\":1,\"changed_by_id\":0,\"based_on\":4,\"data\":\"\",\"name\":\"\",\"options\":{\"history\":{\"day\":1,\"week\":26,\"month\":6}}},{\"id\":254,\"node_id\":29,\"instance\":0,\"minimum\":0,\"maximum\":100,\"current_value\":33,\"target_value\":33,\"last_value\":34,\"unit\":\"%25\",\"step_value\":1,\"editable\":0,\"type\":7,\"state\":1,\"last_changed\":1678515784,\"changed_by\":1,\"changed_by_id\":0,\"based_on\":4,\"data\":\"\",\"name\":\"\",\"options\":{\"history\":{\"day\":1,\"week\":26,\"month\":6}}},{\"id\":255,\"node_id\":29,\"instance\":0,\"minimum\":0,\"maximum\":5000,\"current_value\":444,\"target_value\":444,\"last_value\":449,\"unit\":\"ppm\",\"step_value\":50,\"editable\":0,\"type\":20,\"state\":1,\"last_changed\":1678519389,\"changed_by\":1,\"changed_by_id\":0,\"based_on\":4,\"data\":\"\",\"name\":\"\",\"options\":{\"history\":{\"day\":1,\"week\":26,\"month\":6}}},{\"id\":256,\"node_id\":29,\"instance\":0,\"minimum\":35,\"maximum\":120,\"current_value\":32,\"target_value\":32,\"last_value\":33,\"unit\":\"dB\",\"step_value\":1,\"editable\":0,\"type\":93,\"state\":1,\"last_changed\":1678515183,\"changed_by\":1,\"changed_by_id\":0,\"based_on\":4,\"data\":\"\",\"name\":\"\",\"options\":{\"history\":{\"day\":1,\"week\":26,\"month\":6}}},{\"id\":257,\"node_id\":29,\"instance\":0,\"minimum\":260,\"maximum\":1160,\"current_value\":1003.7,\"target_value\":1003.7,\"last_value\":1003.6,\"unit\":\"mBar\",\"step_value\":5,\"editable\":0,\"type\":94,\"state\":1,\"last_changed\":1678519389,\"changed_by\":1,\"changed_by_id\":0,\"based_on\":4,\"data\":\"\",\"name\":\"\",\"options\":{\"history\":{\"day\":1,\"week\":26,\"month\":6}}},{\"id\":258,\"node_id\":29,\"instance\":0,\"minimum\":0,\"maximum\":4,\"current_value\":4,\"target_value\":4,\"last_value\":2,\"unit\":\"n%2Fa\",\"step_value\":1,\"editable\":0,\"type\":33,\"state\":1,\"last_changed\":1677083197,\"changed_by\":1,\"changed_by_id\":0,\"based_on\":4,\"data\":\"\",\"name\":\"\"},{\"id\":475,\"node_id\":29,\"instance\":0,\"minimum\":0,\"maximum\":1,\"current_value\":1,\"target_value\":1,\"last_value\":0,\"unit\":\"\",\"step_value\":1,\"editable\":1,\"type\":385,\"state\":1,\"last_changed\":0,\"changed_by\":0,\"changed_by_id\":0,\"based_on\":0,\"data\":\"\",\"name\":\"\"}]}}",
                 "payloadType": "json",
                 "x": 60,
                 "y": 520,
                 "wires": [
                     [
                         "477f8cdd68a623d6"
                     ]
                 ]
             },
             {
                 "id": "ea25ff19366dbd8b",
                 "type": "change",
                 "z": "afaeceb73a81b97a",
                 "name": "",
                 "rules": [
                     {
                         "t": "move",
                         "p": "payload",
                         "pt": "msg",
                         "to": "device",
                         "tot": "msg"
                     }
                 ],
                 "action": "",
                 "property": "",
                 "from": "",
                 "to": "",
                 "reg": false,
                 "x": 440,
                 "y": 520,
                 "wires": [
                     [
                         "13fef03679554dae"
                     ]
                 ]
             },
             {
                 "id": "13fef03679554dae",
                 "type": "change",
                 "z": "afaeceb73a81b97a",
                 "name": "hole alle Geräte",
                 "rules": [
                     {
                         "t": "set",
                         "p": "payload",
                         "pt": "msg",
                         "to": "{}",
                         "tot": "json"
                     },
                     {
                         "t": "set",
                         "p": "payload.nodes",
                         "pt": "msg",
                         "to": "homee.nodes",
                         "tot": "global"
                     }
                 ],
                 "action": "",
                 "property": "",
                 "from": "",
                 "to": "",
                 "reg": false,
                 "x": 660,
                 "y": 520,
                 "wires": [
                     [
                         "3e5a3f328d92cbec"
                     ]
                 ]
             },
             {
                 "id": "3e5a3f328d92cbec",
                 "type": "switch",
                 "z": "afaeceb73a81b97a",
                 "name": "Nur wenn Gerätestatus geändert",
                 "property": "payload.nodes[id=$$.device.node.id].state = device.node.state",
                 "propertyType": "jsonata",
                 "rules": [
                     {
                         "t": "false"
                     }
                 ],
                 "checkall": "true",
                 "repair": false,
                 "outputs": 1,
                 "x": 910,
                 "y": 520,
                 "wires": [
                     [
                         "ccc13bcc415bf46d"
                     ]
                 ]
             },
             {
                 "id": "477f8cdd68a623d6",
                 "type": "switch",
                 "z": "afaeceb73a81b97a",
                 "name": "verify device",
                 "property": "payload.node",
                 "propertyType": "msg",
                 "rules": [
                     {
                         "t": "nnull"
                     }
                 ],
                 "checkall": "true",
                 "repair": false,
                 "outputs": 1,
                 "x": 230,
                 "y": 520,
                 "wires": [
                     [
                         "ea25ff19366dbd8b"
                     ]
                 ]
             },
             {
                 "id": "4fc32434b1ad9e30",
                 "type": "change",
                 "z": "afaeceb73a81b97a",
                 "name": "",
                 "rules": [
                     {
                         "t": "set",
                         "p": "payload",
                         "pt": "msg",
                         "to": "homee",
                         "tot": "flow"
                     },
                     {
                         "t": "set",
                         "p": "payload",
                         "pt": "msg",
                         "to": "{\t   \"active\" : {\t       \"count\": payload.active ? $count(payload.active): 0,\t       \"names\" :  payload.active ?  $join(payload.active.phonetic_name,\"\\n\") : \"Keine aktiven Geräte vorhanden\"\t   },\t   \"inactive\" : {\t       \"count\": payload.inactive ? $count(payload.inactive): 0,\t        \"names\" :  payload.inactive ?  $join(payload.inactive.phonetic_name,\"\\n\") : \"Keine inaktiven Geräte vorhanden\"\t   },\t   \"updating\" : {\t       \"count\": payload.updating ? $count(payload.inactive): 0,\t        \"names\" :  payload.updating ?  $join(payload.updating.phonetic_name,\"\\n\") : \"Keine Geräte im Aktualisierungsstatus\"\t   },\t   \"summary\" : payload.updating or payload.inactive ? \"Nicht alle Geräte bereit!\" : \"Alle Geräte aktiv\"\t}",
                         "tot": "jsonata"
                     }
                 ],
                 "action": "",
                 "property": "",
                 "from": "",
                 "to": "",
                 "reg": false,
                 "x": 1710,
                 "y": 260,
                 "wires": [
                     [
                         "93b337c8b0c958f0",
                         "6208fe0589c08c8c",
                         "91df4ca35b0811b5",
                         "a9b7cfa0138adb7c"
                     ]
                 ]
             },
             {
                 "id": "93b337c8b0c958f0",
                 "type": "template",
                 "z": "afaeceb73a81b97a",
                 "name": "",
                 "field": "payload",
                 "fieldType": "msg",
                 "format": "html",
                 "syntax": "mustache",
                 "template": "<!DOCTYPE html>\n<html>\n\n<body>\n<h1>Status der Geräte:</h1>\n\n<h3>aktive Geräte: {{payload.active.count}}\n<pre>{{payload.active.names}}</pre>\n\n<h3>inaktive Geräte: {{payload.inactive.count}}\n<pre>{{payload.inactive.names}}</pre>\n\n<h3>aktualisierende Geräte: {{payload.updating.count}}\n<pre>{{payload.updating.names}}</pre>\n\n<h3>{{payload.summary}}</h3>\n</body>\n</html>",
                 "output": "str",
                 "x": 1940,
                 "y": 260,
                 "wires": [
                     [
                         "bd020f5de81b6984"
                     ]
                 ]
             },
             {
                 "id": "1b3a14e37e06a753",
                 "type": "file",
                 "z": "afaeceb73a81b97a",
                 "name": "",
                 "filename": "filename",
                 "filenameType": "msg",
                 "appendNewline": false,
                 "createDir": false,
                 "overwriteFile": "true",
                 "encoding": "none",
                 "x": 2360,
                 "y": 260,
                 "wires": [
                     []
                 ]
             },
             {
                 "id": "bd020f5de81b6984",
                 "type": "change",
                 "z": "afaeceb73a81b97a",
                 "name": "",
                 "rules": [
                     {
                         "t": "set",
                         "p": "filename",
                         "pt": "msg",
                         "to": "/home/iobroker/homee-report.html",
                         "tot": "str"
                     }
                 ],
                 "action": "",
                 "property": "",
                 "from": "",
                 "to": "",
                 "reg": false,
                 "x": 2150,
                 "y": 260,
                 "wires": [
                     [
                         "1b3a14e37e06a753"
                     ]
                 ]
             },
             {
                 "id": "6208fe0589c08c8c",
                 "type": "switch",
                 "z": "afaeceb73a81b97a",
                 "name": "",
                 "property": "payload.summary",
                 "propertyType": "msg",
                 "rules": [
                     {
                         "t": "neq",
                         "v": "Alle Geräte aktiv",
                         "vt": "str"
                     }
                 ],
                 "checkall": "true",
                 "repair": false,
                 "outputs": 1,
                 "x": 1930,
                 "y": 340,
                 "wires": [
                     [
                         "e7ee2a2337e50af1"
                     ]
                 ]
             },
             {
                 "id": "f533e9122ec7d98d",
                 "type": "debug",
                 "z": "afaeceb73a81b97a",
                 "name": "Warnung ausgeben - wenn nicht alle Geräte aktiv",
                 "active": false,
                 "tosidebar": true,
                 "console": false,
                 "tostatus": false,
                 "complete": "payload",
                 "targetType": "msg",
                 "statusVal": "",
                 "statusType": "auto",
                 "x": 2430,
                 "y": 340,
                 "wires": []
             },
             {
                 "id": "e7ee2a2337e50af1",
                 "type": "change",
                 "z": "afaeceb73a81b97a",
                 "name": "",
                 "rules": [
                     {
                         "t": "set",
                         "p": "payload",
                         "pt": "msg",
                         "to": "payload.summary",
                         "tot": "msg"
                     }
                 ],
                 "action": "",
                 "property": "",
                 "from": "",
                 "to": "",
                 "reg": false,
                 "x": 2110,
                 "y": 340,
                 "wires": [
                     [
                         "f533e9122ec7d98d"
                     ]
                 ]
             },
             {
                 "id": "91df4ca35b0811b5",
                 "type": "change",
                 "z": "afaeceb73a81b97a",
                 "name": "Anzahl nicht aktiver Geräte",
                 "rules": [
                     {
                         "t": "set",
                         "p": "payload",
                         "pt": "msg",
                         "to": "payload.inactive.count + payload.updating.count",
                         "tot": "jsonata"
                     }
                 ],
                 "action": "",
                 "property": "",
                 "from": "",
                 "to": "",
                 "reg": false,
                 "x": 2000,
                 "y": 420,
                 "wires": [
                     [
                         "49ce4151b0046769"
                     ]
                 ]
             },
             {
                 "id": "49ce4151b0046769",
                 "type": "debug",
                 "z": "afaeceb73a81b97a",
                 "name": "Nicht aktive Geräte (updating oder inaktiv)",
                 "active": false,
                 "tosidebar": true,
                 "console": false,
                 "tostatus": false,
                 "complete": "payload",
                 "targetType": "msg",
                 "statusVal": "",
                 "statusType": "auto",
                 "x": 2340,
                 "y": 420,
                 "wires": []
             },
             {
                 "id": "a9b7cfa0138adb7c",
                 "type": "debug",
                 "z": "afaeceb73a81b97a",
                 "name": "Zusammenfassung",
                 "active": true,
                 "tosidebar": true,
                 "console": false,
                 "tostatus": false,
                 "complete": "payload",
                 "targetType": "msg",
                 "statusVal": "",
                 "statusType": "auto",
                 "x": 1970,
                 "y": 200,
                 "wires": []
             }
          ]
          

          O Online
          O Online
          Oli
          schrieb am zuletzt editiert von
          #27

          @mickym

          oh, oh, dass ging mir jetzt alles zu schnell, also nochmal zum mitschreiben für dumme wie mich.

          1. den unteren Teil des ersten Flow kann ich löschen und dafür den neuen Flow Konsolidierung importieren?
          2. Muss ich am "Ein Gerät" noch etwas ändern oder nachtragen?
          3. habe ich nicht begriffe, was "Ein Gerät" bewirkt?

          Gruß
          Oliver

          mickymM 2 Antworten Letzte Antwort
          0
          • O Oli

            @mickym

            oh, oh, dass ging mir jetzt alles zu schnell, also nochmal zum mitschreiben für dumme wie mich.

            1. den unteren Teil des ersten Flow kann ich löschen und dafür den neuen Flow Konsolidierung importieren?
            2. Muss ich am "Ein Gerät" noch etwas ändern oder nachtragen?
            3. habe ich nicht begriffe, was "Ein Gerät" bewirkt?
            mickymM Offline
            mickymM Offline
            mickym
            Most Active
            schrieb am zuletzt editiert von
            #28

            @oli Ja ich dachte eigentlich Du willst erst mal lernen - deswegen lass das halt mit der Konsolidierung weg.

            Anstelle der Inject Node kommt der Link aus deinem anderen Flow. Ich muss ja immer simulieren. Ich habe also nur das Geräte mit der ID29 zum Testen genommen. Also anstelle der Inject Node - kannst Du deinen Flow anschliessen, der die Geräte liefert.

            Jeder Flow bzw. jedes Script, das ich hier poste implementiert jeder auf eigene Gefahr. Flows und Scripts können Fehler aufweisen und weder der Seitenbetreiber noch ich persönlich können hierfür haftbar gemacht werden. Das gleiche gilt für Empfehlungen aller Art.

            1 Antwort Letzte Antwort
            0
            • O Oli

              @mickym

              oh, oh, dass ging mir jetzt alles zu schnell, also nochmal zum mitschreiben für dumme wie mich.

              1. den unteren Teil des ersten Flow kann ich löschen und dafür den neuen Flow Konsolidierung importieren?
              2. Muss ich am "Ein Gerät" noch etwas ändern oder nachtragen?
              3. habe ich nicht begriffe, was "Ein Gerät" bewirkt?
              mickymM Offline
              mickymM Offline
              mickym
              Most Active
              schrieb am zuletzt editiert von
              #29

              @oli sagte in Benötige Hilfe mit Node-Red in Verbindung mit homee:

              den unteren Teil des ersten Flow kann ich löschen und dafür den neuen Flow Konsolidierung importieren?

              Den importierst Du erst - wenn Du genügend geübt hast. Es geht mir nicht darum, dass Du jetzt den finalen Flow hast. Ich dachte Du willst das erst mal verstehen????

              Lass das mit der Konsolidierung erst mal weg. Den kannst ja später immer noch importieren.

              Jeder Flow bzw. jedes Script, das ich hier poste implementiert jeder auf eigene Gefahr. Flows und Scripts können Fehler aufweisen und weder der Seitenbetreiber noch ich persönlich können hierfür haftbar gemacht werden. Das gleiche gilt für Empfehlungen aller Art.

              O 1 Antwort Letzte Antwort
              0
              • mickymM mickym

                @oli sagte in Benötige Hilfe mit Node-Red in Verbindung mit homee:

                den unteren Teil des ersten Flow kann ich löschen und dafür den neuen Flow Konsolidierung importieren?

                Den importierst Du erst - wenn Du genügend geübt hast. Es geht mir nicht darum, dass Du jetzt den finalen Flow hast. Ich dachte Du willst das erst mal verstehen????

                Lass das mit der Konsolidierung erst mal weg. Den kannst ja später immer noch importieren.

                O Online
                O Online
                Oli
                schrieb am zuletzt editiert von
                #30

                @mickym
                deswegen frage ich ja nach, weil ich es verstehen will

                Gruß
                Oliver

                mickymM 1 Antwort Letzte Antwort
                0
                • O Oli

                  @mickym
                  deswegen frage ich ja nach, weil ich es verstehen will

                  mickymM Offline
                  mickymM Offline
                  mickym
                  Most Active
                  schrieb am zuletzt editiert von mickym
                  #31

                  @oli sagte in Benötige Hilfe mit Node-Red in Verbindung mit homee:

                  @mickym
                  deswegen frage ich ja nach, weil ich es verstehen will

                  Gut also Konsolidierungsflow für später aufheben. ;) - Die anderen Nodes kannst importieren - und statt "Ein Gerät" - schließt Du Deinen anderen Flow an, der Dir Updates von Deinen Geräten liefert.

                  Im Prinzip brauchst Du auch das manuelle Antriggern dann nicht mehr. Das ist nur damit Du sehen kannst, wie Du hinten mit JSONATA verschiedene Informationen aus deinen Node-Objekten holst. (Ich habe ja nur mal den phonetischen_name herausgeholt).

                  Jeder Flow bzw. jedes Script, das ich hier poste implementiert jeder auf eigene Gefahr. Flows und Scripts können Fehler aufweisen und weder der Seitenbetreiber noch ich persönlich können hierfür haftbar gemacht werden. Das gleiche gilt für Empfehlungen aller Art.

                  O 1 Antwort Letzte Antwort
                  0
                  • mickymM mickym

                    @oli sagte in Benötige Hilfe mit Node-Red in Verbindung mit homee:

                    @mickym
                    deswegen frage ich ja nach, weil ich es verstehen will

                    Gut also Konsolidierungsflow für später aufheben. ;) - Die anderen Nodes kannst importieren - und statt "Ein Gerät" - schließt Du Deinen anderen Flow an, der Dir Updates von Deinen Geräten liefert.

                    Im Prinzip brauchst Du auch das manuelle Antriggern dann nicht mehr. Das ist nur damit Du sehen kannst, wie Du hinten mit JSONATA verschiedene Informationen aus deinen Node-Objekten holst. (Ich habe ja nur mal den phonetischen_name herausgeholt).

                    O Online
                    O Online
                    Oli
                    schrieb am zuletzt editiert von
                    #32

                    @mickym

                    so, jetzt habe ich mal mit dem oberen Flow etwas gespielt und mir zusätzliche Daten geholt und schon kommt die nächste Frage.

                    Wie erstelle ich mir daraus ein Json, was ich in der VIS in einem Tabellen-Widget anzeigen lassen kann?
                    Folgende Spalten würde ich benötigen:
                    Name = Gerätename
                    Gerätetyp = Gerätetyp
                    Protokoll = Funkprotokoll (ZWave, ZigBee usw)
                    Gerätestatus = Gerätestatus (verfügbar, .....)

                    Die Daten werden im Flow alle schon abgefragt.

                    [
                       {
                           "id": "b8ad42061a6d5f2e",
                           "type": "tab",
                           "label": "Flow 2",
                           "disabled": false,
                           "info": "",
                           "env": []
                       },
                       {
                           "id": "bc383b50669e8145",
                           "type": "junction",
                           "z": "b8ad42061a6d5f2e",
                           "x": 1120,
                           "y": 380,
                           "wires": [
                               [
                                   "43f88f1028d1af0a",
                                   "99528e0bbb0f2491",
                                   "139fe3d8efb20402",
                                   "afc0236a6dc34b6c",
                                   "3baf2b45228f3514",
                                   "61efee2e1293f2f8",
                                   "18ed2cb5de54b4e1"
                               ]
                           ]
                       },
                       {
                           "id": "1a49f3e7a72eeb98",
                           "type": "debug",
                           "z": "b8ad42061a6d5f2e",
                           "name": "inaktive Geräte",
                           "active": false,
                           "tosidebar": true,
                           "console": false,
                           "tostatus": false,
                           "complete": "payload",
                           "targetType": "msg",
                           "statusVal": "",
                           "statusType": "auto",
                           "x": 1620,
                           "y": 320,
                           "wires": []
                       },
                       {
                           "id": "6f4c16eed7166074",
                           "type": "change",
                           "z": "b8ad42061a6d5f2e",
                           "name": "decodeUrlComponents",
                           "rules": [
                               {
                                   "t": "set",
                                   "p": "payload",
                                   "pt": "msg",
                                   "to": "payload ~> |$.nodes|{\"name\":$decodeUrlComponent(name),\t\"note\":$decodeUrlComponent(note),\t\"phonetic_name\":$decodeUrlComponent(phonetic_name)},\"attributes\"|",
                                   "tot": "jsonata"
                               }
                           ],
                           "action": "",
                           "property": "",
                           "from": "",
                           "to": "",
                           "reg": false,
                           "x": 540,
                           "y": 380,
                           "wires": [
                               [
                                   "5c62dbd7992ee76d"
                               ]
                           ]
                       },
                       {
                           "id": "5c62dbd7992ee76d",
                           "type": "change",
                           "z": "b8ad42061a6d5f2e",
                           "name": "Alle Geräte",
                           "rules": [
                               {
                                   "t": "set",
                                   "p": "payload",
                                   "pt": "msg",
                                   "to": "payload.nodes",
                                   "tot": "msg"
                               }
                           ],
                           "action": "",
                           "property": "",
                           "from": "",
                           "to": "",
                           "reg": false,
                           "x": 750,
                           "y": 380,
                           "wires": [
                               [
                                   "9ed44d883152b608"
                               ]
                           ]
                       },
                       {
                           "id": "99528e0bbb0f2491",
                           "type": "change",
                           "z": "b8ad42061a6d5f2e",
                           "name": "Alle inaktiven Geräte",
                           "rules": [
                               {
                                   "t": "set",
                                   "p": "payload",
                                   "pt": "msg",
                                   "to": "payload[state = 2]",
                                   "tot": "jsonata"
                               },
                               {
                                   "t": "set",
                                   "p": "homee.inactive",
                                   "pt": "flow",
                                   "to": "payload",
                                   "tot": "msg"
                               }
                           ],
                           "action": "",
                           "property": "",
                           "from": "",
                           "to": "",
                           "reg": false,
                           "x": 1300,
                           "y": 380,
                           "wires": [
                               [
                                   "1a49f3e7a72eeb98",
                                   "79c90e3a205144c8",
                                   "852a4580fa93381d"
                               ]
                           ]
                       },
                       {
                           "id": "139fe3d8efb20402",
                           "type": "change",
                           "z": "b8ad42061a6d5f2e",
                           "name": "Alle aktiven Geräte",
                           "rules": [
                               {
                                   "t": "set",
                                   "p": "payload",
                                   "pt": "msg",
                                   "to": "payload[state = 1]",
                                   "tot": "jsonata"
                               },
                               {
                                   "t": "set",
                                   "p": "homee.active",
                                   "pt": "flow",
                                   "to": "payload",
                                   "tot": "msg"
                               }
                           ],
                           "action": "",
                           "property": "",
                           "from": "",
                           "to": "",
                           "reg": false,
                           "x": 1290,
                           "y": 180,
                           "wires": [
                               [
                                   "f8402a89bc3c1103",
                                   "b1946c337b7d80ef",
                                   "d95e18df200eadee"
                               ]
                           ]
                       },
                       {
                           "id": "f8402a89bc3c1103",
                           "type": "debug",
                           "z": "b8ad42061a6d5f2e",
                           "name": "aktive Geräte",
                           "active": false,
                           "tosidebar": true,
                           "console": false,
                           "tostatus": false,
                           "complete": "payload",
                           "targetType": "msg",
                           "statusVal": "",
                           "statusType": "auto",
                           "x": 1610,
                           "y": 120,
                           "wires": []
                       },
                       {
                           "id": "43f88f1028d1af0a",
                           "type": "change",
                           "z": "b8ad42061a6d5f2e",
                           "name": "Geräte, die aktualisiert werden",
                           "rules": [
                               {
                                   "t": "set",
                                   "p": "payload",
                                   "pt": "msg",
                                   "to": "payload[state = 12] ",
                                   "tot": "jsonata"
                               },
                               {
                                   "t": "set",
                                   "p": "homee.updating",
                                   "pt": "flow",
                                   "to": "payload",
                                   "tot": "msg"
                               }
                           ],
                           "action": "",
                           "property": "",
                           "from": "",
                           "to": "",
                           "reg": false,
                           "x": 1330,
                           "y": 580,
                           "wires": [
                               [
                                   "ceb8932892417bf3",
                                   "4e3680fd1ba7cc1e",
                                   "21b0ae03da03035d"
                               ]
                           ]
                       },
                       {
                           "id": "ceb8932892417bf3",
                           "type": "debug",
                           "z": "b8ad42061a6d5f2e",
                           "name": "Geräte die aktualisiert werden",
                           "active": false,
                           "tosidebar": true,
                           "console": false,
                           "tostatus": false,
                           "complete": "payload",
                           "targetType": "msg",
                           "statusVal": "",
                           "statusType": "auto",
                           "x": 1670,
                           "y": 520,
                           "wires": []
                       },
                       {
                           "id": "4e3680fd1ba7cc1e",
                           "type": "change",
                           "z": "b8ad42061a6d5f2e",
                           "name": "Anzahl",
                           "rules": [
                               {
                                   "t": "set",
                                   "p": "payload",
                                   "pt": "msg",
                                   "to": "payload ? $count(payload) : \"Keine Geräte im Aktualisierungsstatus\"",
                                   "tot": "jsonata"
                               }
                           ],
                           "action": "",
                           "property": "",
                           "from": "",
                           "to": "",
                           "reg": false,
                           "x": 1590,
                           "y": 580,
                           "wires": [
                               [
                                   "d629bd7188fa7121"
                               ]
                           ]
                       },
                       {
                           "id": "d629bd7188fa7121",
                           "type": "debug",
                           "z": "b8ad42061a6d5f2e",
                           "name": "Anzahl Geräte im Aktualisierungsstatus",
                           "active": false,
                           "tosidebar": true,
                           "console": false,
                           "tostatus": false,
                           "complete": "payload",
                           "targetType": "msg",
                           "statusVal": "",
                           "statusType": "auto",
                           "x": 1840,
                           "y": 580,
                           "wires": []
                       },
                       {
                           "id": "79c90e3a205144c8",
                           "type": "change",
                           "z": "b8ad42061a6d5f2e",
                           "name": "Anzahl",
                           "rules": [
                               {
                                   "t": "set",
                                   "p": "payload",
                                   "pt": "msg",
                                   "to": "payload ? $count(payload) : \"Keine Geräte im Aktualisierungsstatus\"",
                                   "tot": "jsonata"
                               }
                           ],
                           "action": "",
                           "property": "",
                           "from": "",
                           "to": "",
                           "reg": false,
                           "x": 1590,
                           "y": 380,
                           "wires": [
                               [
                                   "6636132bd627fd5a"
                               ]
                           ]
                       },
                       {
                           "id": "6636132bd627fd5a",
                           "type": "debug",
                           "z": "b8ad42061a6d5f2e",
                           "name": "Anzahl inaktive Geräte",
                           "active": false,
                           "tosidebar": true,
                           "console": false,
                           "tostatus": false,
                           "complete": "payload",
                           "targetType": "msg",
                           "statusVal": "",
                           "statusType": "auto",
                           "x": 1880,
                           "y": 380,
                           "wires": []
                       },
                       {
                           "id": "b1946c337b7d80ef",
                           "type": "change",
                           "z": "b8ad42061a6d5f2e",
                           "name": "Anzahl",
                           "rules": [
                               {
                                   "t": "set",
                                   "p": "payload",
                                   "pt": "msg",
                                   "to": "payload ? $count(payload) : \"Keine Geräte im Aktualisierungsstatus\"",
                                   "tot": "jsonata"
                               }
                           ],
                           "action": "",
                           "property": "",
                           "from": "",
                           "to": "",
                           "reg": false,
                           "x": 1590,
                           "y": 180,
                           "wires": [
                               [
                                   "1871f120aa223a8d"
                               ]
                           ]
                       },
                       {
                           "id": "1871f120aa223a8d",
                           "type": "debug",
                           "z": "b8ad42061a6d5f2e",
                           "name": "Anzahl aktiver Geräte",
                           "active": false,
                           "tosidebar": true,
                           "console": false,
                           "tostatus": false,
                           "complete": "payload",
                           "targetType": "msg",
                           "statusVal": "",
                           "statusType": "auto",
                           "x": 1800,
                           "y": 180,
                           "wires": []
                       },
                       {
                           "id": "d95e18df200eadee",
                           "type": "change",
                           "z": "b8ad42061a6d5f2e",
                           "name": "Namen",
                           "rules": [
                               {
                                   "t": "set",
                                   "p": "payload",
                                   "pt": "msg",
                                   "to": "payload.name",
                                   "tot": "jsonata"
                               }
                           ],
                           "action": "",
                           "property": "",
                           "from": "",
                           "to": "",
                           "reg": false,
                           "x": 1600,
                           "y": 240,
                           "wires": [
                               [
                                   "ae2e5ba148bb399a"
                               ]
                           ]
                       },
                       {
                           "id": "ae2e5ba148bb399a",
                           "type": "debug",
                           "z": "b8ad42061a6d5f2e",
                           "name": "Namen aktiver Geräte",
                           "active": false,
                           "tosidebar": true,
                           "console": false,
                           "tostatus": false,
                           "complete": "payload",
                           "targetType": "msg",
                           "statusVal": "",
                           "statusType": "auto",
                           "x": 1800,
                           "y": 240,
                           "wires": []
                       },
                       {
                           "id": "852a4580fa93381d",
                           "type": "change",
                           "z": "b8ad42061a6d5f2e",
                           "name": "Namen",
                           "rules": [
                               {
                                   "t": "set",
                                   "p": "payload",
                                   "pt": "msg",
                                   "to": "payload.name",
                                   "tot": "jsonata"
                               }
                           ],
                           "action": "",
                           "property": "",
                           "from": "",
                           "to": "",
                           "reg": false,
                           "x": 1600,
                           "y": 440,
                           "wires": [
                               [
                                   "43f62f9f3bc5bc3d"
                               ]
                           ]
                       },
                       {
                           "id": "43f62f9f3bc5bc3d",
                           "type": "debug",
                           "z": "b8ad42061a6d5f2e",
                           "name": "Namen inaktiver Geräte",
                           "active": false,
                           "tosidebar": true,
                           "console": false,
                           "tostatus": false,
                           "complete": "payload",
                           "targetType": "msg",
                           "statusVal": "",
                           "statusType": "auto",
                           "x": 1810,
                           "y": 440,
                           "wires": []
                       },
                       {
                           "id": "21b0ae03da03035d",
                           "type": "change",
                           "z": "b8ad42061a6d5f2e",
                           "name": "Namen",
                           "rules": [
                               {
                                   "t": "set",
                                   "p": "payload",
                                   "pt": "msg",
                                   "to": "payload.name",
                                   "tot": "jsonata"
                               }
                           ],
                           "action": "",
                           "property": "",
                           "from": "",
                           "to": "",
                           "reg": false,
                           "x": 1600,
                           "y": 640,
                           "wires": [
                               [
                                   "02eb40a627f4e90d"
                               ]
                           ]
                       },
                       {
                           "id": "02eb40a627f4e90d",
                           "type": "debug",
                           "z": "b8ad42061a6d5f2e",
                           "name": "Namen aktualisierende Geräte",
                           "active": false,
                           "tosidebar": true,
                           "console": false,
                           "tostatus": false,
                           "complete": "payload",
                           "targetType": "msg",
                           "statusVal": "",
                           "statusType": "auto",
                           "x": 1850,
                           "y": 640,
                           "wires": []
                       },
                       {
                           "id": "9ed44d883152b608",
                           "type": "change",
                           "z": "b8ad42061a6d5f2e",
                           "name": "Geräte ausschliessen",
                           "rules": [
                               {
                                   "t": "set",
                                   "p": "payload",
                                   "pt": "msg",
                                   "to": "payload ~> $filter(function($value){$value.id in [-1] != true})",
                                   "tot": "jsonata"
                               }
                           ],
                           "action": "",
                           "property": "",
                           "from": "",
                           "to": "",
                           "reg": false,
                           "x": 960,
                           "y": 380,
                           "wires": [
                               [
                                   "bc383b50669e8145"
                               ]
                           ]
                       },
                       {
                           "id": "4bb866d9e36a197e",
                           "type": "change",
                           "z": "b8ad42061a6d5f2e",
                           "name": "hole alle Geräte",
                           "rules": [
                               {
                                   "t": "set",
                                   "p": "payload",
                                   "pt": "msg",
                                   "to": "{}",
                                   "tot": "json"
                               },
                               {
                                   "t": "set",
                                   "p": "payload.nodes",
                                   "pt": "msg",
                                   "to": "homee.nodes",
                                   "tot": "global"
                               }
                           ],
                           "action": "",
                           "property": "",
                           "from": "",
                           "to": "",
                           "reg": false,
                           "x": 300,
                           "y": 380,
                           "wires": [
                               [
                                   "6f4c16eed7166074"
                               ]
                           ]
                       },
                       {
                           "id": "a48d4a225b9f0daa",
                           "type": "inject",
                           "z": "b8ad42061a6d5f2e",
                           "name": "trigger",
                           "props": [
                               {
                                   "p": "payload"
                               }
                           ],
                           "repeat": "",
                           "crontab": "",
                           "once": false,
                           "onceDelay": 0.1,
                           "topic": "",
                           "payload": "true",
                           "payloadType": "bool",
                           "x": 130,
                           "y": 380,
                           "wires": [
                               [
                                   "4bb866d9e36a197e"
                               ]
                           ]
                       },
                       {
                           "id": "afc0236a6dc34b6c",
                           "type": "change",
                           "z": "b8ad42061a6d5f2e",
                           "name": "Alle ZWave Geräte",
                           "rules": [
                               {
                                   "t": "set",
                                   "p": "payload",
                                   "pt": "msg",
                                   "to": "payload[protocol = 1]",
                                   "tot": "jsonata"
                               },
                               {
                                   "t": "set",
                                   "p": "payload.nodes",
                                   "pt": "flow",
                                   "to": "payload",
                                   "tot": "msg"
                               }
                           ],
                           "action": "",
                           "property": "",
                           "from": "",
                           "to": "",
                           "reg": false,
                           "x": 1290,
                           "y": 780,
                           "wires": [
                               [
                                   "3f5d54fa1161d7c3",
                                   "fb541319f5065b26",
                                   "08ef2be1a63734c5",
                                   "94e00d809404b4a6"
                               ]
                           ]
                       },
                       {
                           "id": "3f5d54fa1161d7c3",
                           "type": "debug",
                           "z": "b8ad42061a6d5f2e",
                           "name": "Geräte mit ZWave",
                           "active": false,
                           "tosidebar": true,
                           "console": false,
                           "tostatus": false,
                           "complete": "payload",
                           "targetType": "msg",
                           "statusVal": "",
                           "statusType": "auto",
                           "x": 1630,
                           "y": 720,
                           "wires": []
                       },
                       {
                           "id": "fb541319f5065b26",
                           "type": "change",
                           "z": "b8ad42061a6d5f2e",
                           "name": "Anzahl",
                           "rules": [
                               {
                                   "t": "set",
                                   "p": "payload",
                                   "pt": "msg",
                                   "to": "payload ? $count(payload) : 0",
                                   "tot": "jsonata"
                               }
                           ],
                           "action": "",
                           "property": "",
                           "from": "",
                           "to": "",
                           "reg": false,
                           "x": 1590,
                           "y": 780,
                           "wires": [
                               [
                                   "8b5f07919d5020d8",
                                   "27bd5b6a0a11f64b"
                               ]
                           ]
                       },
                       {
                           "id": "8b5f07919d5020d8",
                           "type": "debug",
                           "z": "b8ad42061a6d5f2e",
                           "name": "Anzahl Geräte ZWave",
                           "active": false,
                           "tosidebar": true,
                           "console": false,
                           "tostatus": false,
                           "complete": "payload",
                           "targetType": "msg",
                           "statusVal": "",
                           "statusType": "auto",
                           "x": 1900,
                           "y": 720,
                           "wires": []
                       },
                       {
                           "id": "08ef2be1a63734c5",
                           "type": "change",
                           "z": "b8ad42061a6d5f2e",
                           "name": "Namen",
                           "rules": [
                               {
                                   "t": "set",
                                   "p": "payload",
                                   "pt": "msg",
                                   "to": "payload.name",
                                   "tot": "jsonata"
                               }
                           ],
                           "action": "",
                           "property": "",
                           "from": "",
                           "to": "",
                           "reg": false,
                           "x": 1600,
                           "y": 840,
                           "wires": [
                               [
                                   "3a0ad671056f0682"
                               ]
                           ]
                       },
                       {
                           "id": "3a0ad671056f0682",
                           "type": "debug",
                           "z": "b8ad42061a6d5f2e",
                           "name": "Namen ZWave Geräte",
                           "active": false,
                           "tosidebar": true,
                           "console": false,
                           "tostatus": false,
                           "complete": "payload",
                           "targetType": "msg",
                           "statusVal": "",
                           "statusType": "auto",
                           "x": 1820,
                           "y": 840,
                           "wires": []
                       },
                       {
                           "id": "27bd5b6a0a11f64b",
                           "type": "ioBroker out",
                           "z": "b8ad42061a6d5f2e",
                           "name": "Anzahl ZWave Geräte",
                           "topic": "0_userdata.0.System.homee.NichtVerfügbar",
                           "ack": "true",
                           "autoCreate": "true",
                           "stateName": "0_userdata.0.System.homee.ZWave",
                           "role": "",
                           "payloadType": "number",
                           "readonly": "false",
                           "stateUnit": "",
                           "stateMin": "",
                           "stateMax": "",
                           "x": 1840,
                           "y": 780,
                           "wires": []
                       },
                       {
                           "id": "3baf2b45228f3514",
                           "type": "change",
                           "z": "b8ad42061a6d5f2e",
                           "name": "Alle ZigBee Geräte",
                           "rules": [
                               {
                                   "t": "set",
                                   "p": "payload",
                                   "pt": "msg",
                                   "to": "payload[protocol = 2]",
                                   "tot": "jsonata"
                               },
                               {
                                   "t": "set",
                                   "p": "payload.nodes",
                                   "pt": "flow",
                                   "to": "payload",
                                   "tot": "msg"
                               }
                           ],
                           "action": "",
                           "property": "",
                           "from": "",
                           "to": "",
                           "reg": false,
                           "x": 1290,
                           "y": 1040,
                           "wires": [
                               [
                                   "b0d34d08416e6c10",
                                   "adb5799593bc282a",
                                   "251973e2ae0fef12",
                                   "82e4d47fe4eafc92"
                               ]
                           ]
                       },
                       {
                           "id": "b0d34d08416e6c10",
                           "type": "debug",
                           "z": "b8ad42061a6d5f2e",
                           "name": "Geräte mit ZigBee",
                           "active": false,
                           "tosidebar": true,
                           "console": false,
                           "tostatus": false,
                           "complete": "payload",
                           "targetType": "msg",
                           "statusVal": "",
                           "statusType": "auto",
                           "x": 1630,
                           "y": 980,
                           "wires": []
                       },
                       {
                           "id": "adb5799593bc282a",
                           "type": "change",
                           "z": "b8ad42061a6d5f2e",
                           "name": "Anzahl",
                           "rules": [
                               {
                                   "t": "set",
                                   "p": "payload",
                                   "pt": "msg",
                                   "to": "payload ? $count(payload) : 0",
                                   "tot": "jsonata"
                               }
                           ],
                           "action": "",
                           "property": "",
                           "from": "",
                           "to": "",
                           "reg": false,
                           "x": 1590,
                           "y": 1040,
                           "wires": [
                               [
                                   "b553c35fe84e7ff1",
                                   "a722c9c32ead9437"
                               ]
                           ]
                       },
                       {
                           "id": "b553c35fe84e7ff1",
                           "type": "debug",
                           "z": "b8ad42061a6d5f2e",
                           "name": "Anzahl Geräte ZigBee",
                           "active": false,
                           "tosidebar": true,
                           "console": false,
                           "tostatus": false,
                           "complete": "payload",
                           "targetType": "msg",
                           "statusVal": "",
                           "statusType": "auto",
                           "x": 1900,
                           "y": 980,
                           "wires": []
                       },
                       {
                           "id": "251973e2ae0fef12",
                           "type": "change",
                           "z": "b8ad42061a6d5f2e",
                           "name": "Namen",
                           "rules": [
                               {
                                   "t": "set",
                                   "p": "payload",
                                   "pt": "msg",
                                   "to": "payload.name",
                                   "tot": "jsonata"
                               }
                           ],
                           "action": "",
                           "property": "",
                           "from": "",
                           "to": "",
                           "reg": false,
                           "x": 1600,
                           "y": 1100,
                           "wires": [
                               [
                                   "382b28ab778199d6"
                               ]
                           ]
                       },
                       {
                           "id": "382b28ab778199d6",
                           "type": "debug",
                           "z": "b8ad42061a6d5f2e",
                           "name": "Namen ZigBee Geräte",
                           "active": false,
                           "tosidebar": true,
                           "console": false,
                           "tostatus": false,
                           "complete": "payload",
                           "targetType": "msg",
                           "statusVal": "",
                           "statusType": "auto",
                           "x": 1820,
                           "y": 1100,
                           "wires": []
                       },
                       {
                           "id": "a722c9c32ead9437",
                           "type": "ioBroker out",
                           "z": "b8ad42061a6d5f2e",
                           "name": "Anzahl ZigBee Geräte",
                           "topic": "0_userdata.0.System.homee.ZigBee",
                           "ack": "true",
                           "autoCreate": "true",
                           "stateName": "0_userdata.0.System.homee.ZigBee",
                           "role": "",
                           "payloadType": "number",
                           "readonly": "false",
                           "stateUnit": "",
                           "stateMin": "",
                           "stateMax": "",
                           "x": 1840,
                           "y": 1040,
                           "wires": []
                       },
                       {
                           "id": "306e283de06793a5",
                           "type": "change",
                           "z": "b8ad42061a6d5f2e",
                           "name": "",
                           "rules": [
                               {
                                   "t": "move",
                                   "p": "payload",
                                   "pt": "msg",
                                   "to": "device",
                                   "tot": "msg"
                               }
                           ],
                           "action": "",
                           "property": "",
                           "from": "",
                           "to": "",
                           "reg": false,
                           "x": 500,
                           "y": 520,
                           "wires": [
                               [
                                   "3fcd14dd3eda98a3"
                               ]
                           ]
                       },
                       {
                           "id": "3fcd14dd3eda98a3",
                           "type": "change",
                           "z": "b8ad42061a6d5f2e",
                           "name": "hole alle Geräte",
                           "rules": [
                               {
                                   "t": "set",
                                   "p": "payload",
                                   "pt": "msg",
                                   "to": "{}",
                                   "tot": "json"
                               },
                               {
                                   "t": "set",
                                   "p": "payload.nodes",
                                   "pt": "msg",
                                   "to": "homee.nodes",
                                   "tot": "global"
                               }
                           ],
                           "action": "",
                           "property": "",
                           "from": "",
                           "to": "",
                           "reg": false,
                           "x": 720,
                           "y": 520,
                           "wires": [
                               [
                                   "3981f0834f60fe3d"
                               ]
                           ]
                       },
                       {
                           "id": "3981f0834f60fe3d",
                           "type": "switch",
                           "z": "b8ad42061a6d5f2e",
                           "name": "Nur wenn Gerätestatus geändert",
                           "property": "payload.nodes[id=$$.device.node.id].state = device.node.state",
                           "propertyType": "jsonata",
                           "rules": [
                               {
                                   "t": "false"
                               }
                           ],
                           "checkall": "true",
                           "repair": false,
                           "outputs": 1,
                           "x": 970,
                           "y": 520,
                           "wires": [
                               [
                                   "6f4c16eed7166074"
                               ]
                           ]
                       },
                       {
                           "id": "e565ecbc06eb639f",
                           "type": "switch",
                           "z": "b8ad42061a6d5f2e",
                           "name": "verify device",
                           "property": "payload.node",
                           "propertyType": "msg",
                           "rules": [
                               {
                                   "t": "nnull"
                               }
                           ],
                           "checkall": "true",
                           "repair": false,
                           "outputs": 1,
                           "x": 290,
                           "y": 520,
                           "wires": [
                               [
                                   "306e283de06793a5"
                               ]
                           ]
                       },
                       {
                           "id": "94e00d809404b4a6",
                           "type": "change",
                           "z": "b8ad42061a6d5f2e",
                           "name": "Gerätetyp",
                           "rules": [
                               {
                                   "t": "set",
                                   "p": "payload",
                                   "pt": "msg",
                                   "to": "payload.note",
                                   "tot": "jsonata"
                               }
                           ],
                           "action": "",
                           "property": "",
                           "from": "",
                           "to": "",
                           "reg": false,
                           "x": 1600,
                           "y": 900,
                           "wires": [
                               [
                                   "0582b181c8bac51c"
                               ]
                           ]
                       },
                       {
                           "id": "0582b181c8bac51c",
                           "type": "debug",
                           "z": "b8ad42061a6d5f2e",
                           "name": "Gerätebezeichnung",
                           "active": false,
                           "tosidebar": true,
                           "console": false,
                           "tostatus": false,
                           "complete": "payload",
                           "targetType": "msg",
                           "statusVal": "",
                           "statusType": "auto",
                           "x": 1810,
                           "y": 900,
                           "wires": []
                       },
                       {
                           "id": "82e4d47fe4eafc92",
                           "type": "change",
                           "z": "b8ad42061a6d5f2e",
                           "name": "Gerätetyp",
                           "rules": [
                               {
                                   "t": "set",
                                   "p": "payload",
                                   "pt": "msg",
                                   "to": "payload.note",
                                   "tot": "jsonata"
                               }
                           ],
                           "action": "",
                           "property": "",
                           "from": "",
                           "to": "",
                           "reg": false,
                           "x": 1600,
                           "y": 1160,
                           "wires": [
                               [
                                   "f575dd92416739a5"
                               ]
                           ]
                       },
                       {
                           "id": "f575dd92416739a5",
                           "type": "debug",
                           "z": "b8ad42061a6d5f2e",
                           "name": "Gerätebezeichnung",
                           "active": false,
                           "tosidebar": true,
                           "console": false,
                           "tostatus": false,
                           "complete": "payload",
                           "targetType": "msg",
                           "statusVal": "",
                           "statusType": "auto",
                           "x": 1840,
                           "y": 1160,
                           "wires": []
                       },
                       {
                           "id": "61efee2e1293f2f8",
                           "type": "change",
                           "z": "b8ad42061a6d5f2e",
                           "name": "Alle EnOcean Geräte",
                           "rules": [
                               {
                                   "t": "set",
                                   "p": "payload",
                                   "pt": "msg",
                                   "to": "payload[protocol = 3]",
                                   "tot": "jsonata"
                               },
                               {
                                   "t": "set",
                                   "p": "payload.nodes",
                                   "pt": "flow",
                                   "to": "payload",
                                   "tot": "msg"
                               }
                           ],
                           "action": "",
                           "property": "",
                           "from": "",
                           "to": "",
                           "reg": false,
                           "x": 1300,
                           "y": 1300,
                           "wires": [
                               [
                                   "6174c1fb73ccadf7",
                                   "6bf0970636cc1e4a",
                                   "d1def4dc22f8abba",
                                   "8e7cb4b3ad9ad7e4"
                               ]
                           ]
                       },
                       {
                           "id": "6174c1fb73ccadf7",
                           "type": "debug",
                           "z": "b8ad42061a6d5f2e",
                           "name": "Geräte mit EnOcean",
                           "active": false,
                           "tosidebar": true,
                           "console": false,
                           "tostatus": false,
                           "complete": "payload",
                           "targetType": "msg",
                           "statusVal": "",
                           "statusType": "auto",
                           "x": 1640,
                           "y": 1240,
                           "wires": []
                       },
                       {
                           "id": "6bf0970636cc1e4a",
                           "type": "change",
                           "z": "b8ad42061a6d5f2e",
                           "name": "Anzahl",
                           "rules": [
                               {
                                   "t": "set",
                                   "p": "payload",
                                   "pt": "msg",
                                   "to": "payload ? $count(payload) : 0",
                                   "tot": "jsonata"
                               }
                           ],
                           "action": "",
                           "property": "",
                           "from": "",
                           "to": "",
                           "reg": false,
                           "x": 1590,
                           "y": 1300,
                           "wires": [
                               [
                                   "ec17a4f04cc1f205",
                                   "39049bb60e657627"
                               ]
                           ]
                       },
                       {
                           "id": "ec17a4f04cc1f205",
                           "type": "debug",
                           "z": "b8ad42061a6d5f2e",
                           "name": "Anzahl Geräte EnOcean",
                           "active": false,
                           "tosidebar": true,
                           "console": false,
                           "tostatus": false,
                           "complete": "payload",
                           "targetType": "msg",
                           "statusVal": "",
                           "statusType": "auto",
                           "x": 1920,
                           "y": 1240,
                           "wires": []
                       },
                       {
                           "id": "d1def4dc22f8abba",
                           "type": "change",
                           "z": "b8ad42061a6d5f2e",
                           "name": "Namen",
                           "rules": [
                               {
                                   "t": "set",
                                   "p": "payload",
                                   "pt": "msg",
                                   "to": "payload.name",
                                   "tot": "jsonata"
                               }
                           ],
                           "action": "",
                           "property": "",
                           "from": "",
                           "to": "",
                           "reg": false,
                           "x": 1600,
                           "y": 1360,
                           "wires": [
                               [
                                   "6b83b8e1410bdb8b"
                               ]
                           ]
                       },
                       {
                           "id": "6b83b8e1410bdb8b",
                           "type": "debug",
                           "z": "b8ad42061a6d5f2e",
                           "name": "Namen EnOcean Geräte",
                           "active": false,
                           "tosidebar": true,
                           "console": false,
                           "tostatus": false,
                           "complete": "payload",
                           "targetType": "msg",
                           "statusVal": "",
                           "statusType": "auto",
                           "x": 1900,
                           "y": 1360,
                           "wires": []
                       },
                       {
                           "id": "39049bb60e657627",
                           "type": "ioBroker out",
                           "z": "b8ad42061a6d5f2e",
                           "name": "Anzahl EnOcean Geräte",
                           "topic": "0_userdata.0.System.homee.EnOcean",
                           "ack": "true",
                           "autoCreate": "true",
                           "stateName": "0_userdata.0.System.homee.EnOcean",
                           "role": "",
                           "payloadType": "number",
                           "readonly": "false",
                           "stateUnit": "",
                           "stateMin": "",
                           "stateMax": "",
                           "x": 1860,
                           "y": 1300,
                           "wires": []
                       },
                       {
                           "id": "8e7cb4b3ad9ad7e4",
                           "type": "change",
                           "z": "b8ad42061a6d5f2e",
                           "name": "Gerätetyp",
                           "rules": [
                               {
                                   "t": "set",
                                   "p": "payload",
                                   "pt": "msg",
                                   "to": "payload.note",
                                   "tot": "jsonata"
                               }
                           ],
                           "action": "",
                           "property": "",
                           "from": "",
                           "to": "",
                           "reg": false,
                           "x": 1600,
                           "y": 1420,
                           "wires": [
                               [
                                   "682221e81d05e1fb"
                               ]
                           ]
                       },
                       {
                           "id": "682221e81d05e1fb",
                           "type": "debug",
                           "z": "b8ad42061a6d5f2e",
                           "name": "Gerätebezeichnung",
                           "active": false,
                           "tosidebar": true,
                           "console": false,
                           "tostatus": false,
                           "complete": "payload",
                           "targetType": "msg",
                           "statusVal": "",
                           "statusType": "auto",
                           "x": 1840,
                           "y": 1420,
                           "wires": []
                       },
                       {
                           "id": "18ed2cb5de54b4e1",
                           "type": "change",
                           "z": "b8ad42061a6d5f2e",
                           "name": "Alle WLan Geräte",
                           "rules": [
                               {
                                   "t": "set",
                                   "p": "payload",
                                   "pt": "msg",
                                   "to": "payload[protocol = 9]",
                                   "tot": "jsonata"
                               },
                               {
                                   "t": "set",
                                   "p": "payload.nodes",
                                   "pt": "flow",
                                   "to": "payload",
                                   "tot": "msg"
                               }
                           ],
                           "action": "",
                           "property": "",
                           "from": "",
                           "to": "",
                           "reg": false,
                           "x": 1290,
                           "y": 1560,
                           "wires": [
                               [
                                   "73232d6356145c91",
                                   "1f89021c7a98c311",
                                   "4d4781ea193feb05",
                                   "f86809f6445fcbc5"
                               ]
                           ]
                       },
                       {
                           "id": "73232d6356145c91",
                           "type": "debug",
                           "z": "b8ad42061a6d5f2e",
                           "name": "Geräte mit WLan",
                           "active": false,
                           "tosidebar": true,
                           "console": false,
                           "tostatus": false,
                           "complete": "payload",
                           "targetType": "msg",
                           "statusVal": "",
                           "statusType": "auto",
                           "x": 1630,
                           "y": 1500,
                           "wires": []
                       },
                       {
                           "id": "1f89021c7a98c311",
                           "type": "change",
                           "z": "b8ad42061a6d5f2e",
                           "name": "Anzahl",
                           "rules": [
                               {
                                   "t": "set",
                                   "p": "payload",
                                   "pt": "msg",
                                   "to": "payload ? $count(payload) : 0",
                                   "tot": "jsonata"
                               }
                           ],
                           "action": "",
                           "property": "",
                           "from": "",
                           "to": "",
                           "reg": false,
                           "x": 1590,
                           "y": 1560,
                           "wires": [
                               [
                                   "1294df0c49809c46",
                                   "ab79ca8d13f7e817"
                               ]
                           ]
                       },
                       {
                           "id": "1294df0c49809c46",
                           "type": "debug",
                           "z": "b8ad42061a6d5f2e",
                           "name": "Anzahl Geräte WLan",
                           "active": false,
                           "tosidebar": true,
                           "console": false,
                           "tostatus": false,
                           "complete": "payload",
                           "targetType": "msg",
                           "statusVal": "",
                           "statusType": "auto",
                           "x": 1910,
                           "y": 1500,
                           "wires": []
                       },
                       {
                           "id": "4d4781ea193feb05",
                           "type": "change",
                           "z": "b8ad42061a6d5f2e",
                           "name": "Namen",
                           "rules": [
                               {
                                   "t": "set",
                                   "p": "payload",
                                   "pt": "msg",
                                   "to": "payload.name",
                                   "tot": "jsonata"
                               }
                           ],
                           "action": "",
                           "property": "",
                           "from": "",
                           "to": "",
                           "reg": false,
                           "x": 1600,
                           "y": 1620,
                           "wires": [
                               [
                                   "b4ba55ad0865333b"
                               ]
                           ]
                       },
                       {
                           "id": "b4ba55ad0865333b",
                           "type": "debug",
                           "z": "b8ad42061a6d5f2e",
                           "name": "Namen WLan Geräte",
                           "active": false,
                           "tosidebar": true,
                           "console": false,
                           "tostatus": false,
                           "complete": "payload",
                           "targetType": "msg",
                           "statusVal": "",
                           "statusType": "auto",
                           "x": 1890,
                           "y": 1620,
                           "wires": []
                       },
                       {
                           "id": "ab79ca8d13f7e817",
                           "type": "ioBroker out",
                           "z": "b8ad42061a6d5f2e",
                           "name": "Anzahl WLan Geräte",
                           "topic": "0_userdata.0.System.homee.WLan",
                           "ack": "true",
                           "autoCreate": "true",
                           "stateName": "0_userdata.0.System.homee.WLan",
                           "role": "",
                           "payloadType": "number",
                           "readonly": "false",
                           "stateUnit": "",
                           "stateMin": "",
                           "stateMax": "",
                           "x": 1850,
                           "y": 1560,
                           "wires": []
                       },
                       {
                           "id": "f86809f6445fcbc5",
                           "type": "change",
                           "z": "b8ad42061a6d5f2e",
                           "name": "Gerätetyp",
                           "rules": [
                               {
                                   "t": "set",
                                   "p": "payload",
                                   "pt": "msg",
                                   "to": "payload.note",
                                   "tot": "jsonata"
                               }
                           ],
                           "action": "",
                           "property": "",
                           "from": "",
                           "to": "",
                           "reg": false,
                           "x": 1600,
                           "y": 1680,
                           "wires": [
                               [
                                   "0d7f447681a383e1"
                               ]
                           ]
                       },
                       {
                           "id": "0d7f447681a383e1",
                           "type": "debug",
                           "z": "b8ad42061a6d5f2e",
                           "name": "Gerätebezeichnung",
                           "active": false,
                           "tosidebar": true,
                           "console": false,
                           "tostatus": false,
                           "complete": "payload",
                           "targetType": "msg",
                           "statusVal": "",
                           "statusType": "auto",
                           "x": 1840,
                           "y": 1680,
                           "wires": []
                       },
                       {
                           "id": "d8d565711fe0dd22",
                           "type": "link in",
                           "z": "b8ad42061a6d5f2e",
                           "name": "",
                           "links": [
                               "d87f2174cf715cf2"
                           ],
                           "x": 75,
                           "y": 520,
                           "wires": [
                               [
                                   "e565ecbc06eb639f"
                               ]
                           ]
                       }
                    ]
                    

                    Gruß
                    Oliver

                    1 Antwort Letzte Antwort
                    0
                    • mickymM Offline
                      mickymM Offline
                      mickym
                      Most Active
                      schrieb am zuletzt editiert von mickym
                      #33

                      Na nachdem ich nicht so fit bin was VIS betrifft, wollt ich zurückfragen:

                      Es geht also darum ein JSON aufzu bauen, wie hier:
                      https://www.smarthome-tricks.de/software-iobroker/iobroker-vis-json-table-widget-teil-1-basics/

                      Dann lass uns nochmal sicher gehen:

                      {
                         "name": name,
                        "type": type,
                         "protocol": protocol,
                         "state" : state
                      }
                      

                      Die Überschriften bzw. das Mapping macht das Widget ja selbst.

                      c86cd803-86a4-4720-a70b-83637a5a0d94-image.png

                      Kannst Du mir vielleicht noch sagen, welche Eigenschaft dem type entspricht? (cube_type ??)
                      Gibts irgendwie ein lookup, welche Protokolle es gibt oder sind die 4 Protokolle bereits vollständig?

                      =========================================================================================

                      Entspricht type - den Services - und möchtest Du die übersetzt haben?

                      Ansonsten müsstest Du ggf. die Eigenschaften, der Protokolle halt ergänzen:

                      {"1":"ZWave","2":"Zigbee","3":"EnOcean","9":"WLan"}
                      

                      bei den Typen entsprechend.

                      ============================================================================

                      So nachdem Du Dich gerade nicht meldest - hier die Tabelle mit den Eigenschaften wie oben:

                      c256b559-4005-4a5b-ac27-b1dc166202ab-image.png

                      die musst halt einfach dahinter hängen - wo alle Geräte noch beisammen sind:

                      aa2fb452-89bc-4f5f-bcc0-13ba999ba680-image.png

                      [
                         {
                             "id": "ef09455158bdbd20",
                             "type": "change",
                             "z": "9c280ddf049b2b4d",
                             "name": "VIS Tabelle",
                             "rules": [
                                 {
                                     "t": "set",
                                     "p": "protocols",
                                     "pt": "msg",
                                     "to": "{\"1\":\"ZWave\",\"2\":\"Zigbee\",\"3\":\"EnOcean\",\"9\":\"WLan\"}",
                                     "tot": "json"
                                 },
                                 {
                                     "t": "set",
                                     "p": "states",
                                     "pt": "msg",
                                     "to": "{\"1\":\"aktiv\",\"2\":\"inaktiv\",\"12\":\"wird aktualisiert\"}",
                                     "tot": "json"
                                 },
                                 {
                                     "t": "set",
                                     "p": "payload",
                                     "pt": "msg",
                                     "to": "payload.{\t   \"name\" :name,\t   \"type\" : cube_type,\t   \"protocol\" :protocol ? $lookup($$.protocols,$string(protocol)) : protocol,\t   \"state\" : $lookup($$.states,$string(state)) \t}",
                                     "tot": "jsonata"
                                 }
                             ],
                             "action": "",
                             "property": "",
                             "from": "",
                             "to": "",
                             "reg": false,
                             "x": 1210,
                             "y": 3380,
                             "wires": [
                                 [
                                     "1b3e55fcd8eadc58"
                                 ]
                             ]
                         },
                         {
                             "id": "1b3e55fcd8eadc58",
                             "type": "debug",
                             "z": "9c280ddf049b2b4d",
                             "name": "VIS Tabelle",
                             "active": true,
                             "tosidebar": true,
                             "console": false,
                             "tostatus": false,
                             "complete": "payload",
                             "targetType": "msg",
                             "statusVal": "",
                             "statusType": "auto",
                             "x": 1410,
                             "y": 3380,
                             "wires": []
                         }
                      ]
                      

                      Jeder Flow bzw. jedes Script, das ich hier poste implementiert jeder auf eigene Gefahr. Flows und Scripts können Fehler aufweisen und weder der Seitenbetreiber noch ich persönlich können hierfür haftbar gemacht werden. Das gleiche gilt für Empfehlungen aller Art.

                      O 1 Antwort Letzte Antwort
                      0
                      • mickymM mickym

                        Na nachdem ich nicht so fit bin was VIS betrifft, wollt ich zurückfragen:

                        Es geht also darum ein JSON aufzu bauen, wie hier:
                        https://www.smarthome-tricks.de/software-iobroker/iobroker-vis-json-table-widget-teil-1-basics/

                        Dann lass uns nochmal sicher gehen:

                        {
                           "name": name,
                          "type": type,
                           "protocol": protocol,
                           "state" : state
                        }
                        

                        Die Überschriften bzw. das Mapping macht das Widget ja selbst.

                        c86cd803-86a4-4720-a70b-83637a5a0d94-image.png

                        Kannst Du mir vielleicht noch sagen, welche Eigenschaft dem type entspricht? (cube_type ??)
                        Gibts irgendwie ein lookup, welche Protokolle es gibt oder sind die 4 Protokolle bereits vollständig?

                        =========================================================================================

                        Entspricht type - den Services - und möchtest Du die übersetzt haben?

                        Ansonsten müsstest Du ggf. die Eigenschaften, der Protokolle halt ergänzen:

                        {"1":"ZWave","2":"Zigbee","3":"EnOcean","9":"WLan"}
                        

                        bei den Typen entsprechend.

                        ============================================================================

                        So nachdem Du Dich gerade nicht meldest - hier die Tabelle mit den Eigenschaften wie oben:

                        c256b559-4005-4a5b-ac27-b1dc166202ab-image.png

                        die musst halt einfach dahinter hängen - wo alle Geräte noch beisammen sind:

                        aa2fb452-89bc-4f5f-bcc0-13ba999ba680-image.png

                        [
                           {
                               "id": "ef09455158bdbd20",
                               "type": "change",
                               "z": "9c280ddf049b2b4d",
                               "name": "VIS Tabelle",
                               "rules": [
                                   {
                                       "t": "set",
                                       "p": "protocols",
                                       "pt": "msg",
                                       "to": "{\"1\":\"ZWave\",\"2\":\"Zigbee\",\"3\":\"EnOcean\",\"9\":\"WLan\"}",
                                       "tot": "json"
                                   },
                                   {
                                       "t": "set",
                                       "p": "states",
                                       "pt": "msg",
                                       "to": "{\"1\":\"aktiv\",\"2\":\"inaktiv\",\"12\":\"wird aktualisiert\"}",
                                       "tot": "json"
                                   },
                                   {
                                       "t": "set",
                                       "p": "payload",
                                       "pt": "msg",
                                       "to": "payload.{\t   \"name\" :name,\t   \"type\" : cube_type,\t   \"protocol\" :protocol ? $lookup($$.protocols,$string(protocol)) : protocol,\t   \"state\" : $lookup($$.states,$string(state)) \t}",
                                       "tot": "jsonata"
                                   }
                               ],
                               "action": "",
                               "property": "",
                               "from": "",
                               "to": "",
                               "reg": false,
                               "x": 1210,
                               "y": 3380,
                               "wires": [
                                   [
                                       "1b3e55fcd8eadc58"
                                   ]
                               ]
                           },
                           {
                               "id": "1b3e55fcd8eadc58",
                               "type": "debug",
                               "z": "9c280ddf049b2b4d",
                               "name": "VIS Tabelle",
                               "active": true,
                               "tosidebar": true,
                               "console": false,
                               "tostatus": false,
                               "complete": "payload",
                               "targetType": "msg",
                               "statusVal": "",
                               "statusType": "auto",
                               "x": 1410,
                               "y": 3380,
                               "wires": []
                           }
                        ]
                        

                        O Online
                        O Online
                        Oli
                        schrieb am zuletzt editiert von
                        #34

                        @mickym

                        ich verwende für die VIS den Materialdesign Adapter und erstelle mir per Skript schon ein paar Tabellen, vielleicht hilft dir die Json Ausgabe dabei

                        [{"id":"FloodDetector-23","sensor":"Küche Wassersensor EG","betrieb":"Batterie","zustand":" <font color=\"lightgreen\"> 95 %","image":"/vis.0/main/img/Meine Icons/Batterie/Batterie_100.png","logo":"/vis.0/main/img/Meine Icons/Tabellen/homeek.png","adapter":"homee"},{"id":"FourButtonRemote-64","sensor":"Schlafzimmer Schalter Nachtlicht DG","betrieb":"Batterie","zustand":" <font color=\"#8f8f8f\">  N/A","image":"/vis.0/main/img/Meine Icons/Batterie/Batterie_0.png","logo":"/vis.0/main/img/Meine Icons/Tabellen/homeek.png","adapter":"homee"},{"id":"MeteringPlug-20","sensor":"Küche Kühlschrank EG","betrieb":"Strom","zustand":" <font color=\"green\"> 100 %","image":"/vis.0/main/img/Meine Icons/Batterie/Strom.png","logo":"/vis.0/main/img/Meine Icons/Tabellen/homeek.png","adapter":"homee"},{"id":"MeteringPlug-33","sensor":"Schlafzimmer Klimaanlage DG","betrieb":"Strom","zustand":" <font color=\"green\"> 100 %","image":"/vis.0/main/img/Meine Icons/Batterie/Strom.png","logo":"/vis.0/main/img/Meine Icons/Tabellen/homeek.png","adapter":"homee"},{"id":"MeteringPlug-34","sensor":"Flur Tablet EG","betrieb":"Strom","zustand":" <font color=\"green\"> 100 %","image":"/vis.0/main/img/Meine Icons/Batterie/Strom.png","logo":"/vis.0/main/img/Meine Icons/Tabellen/homeek.png","adapter":"homee"},{"id":"MeteringPlug-42","sensor":"Wohnzimmer Weinkühlschrank EG","betrieb":"Strom","zustand":" <font color=\"green\"> 100 %","image":"/vis.0/main/img/Meine Icons/Batterie/Strom.png","logo":"/vis.0/main/img/Meine Icons/Tabellen/homeek.png","adapter":"homee"},{"id":"MeteringPlug-56","sensor":"Büro Computer EG","betrieb":"Strom","zustand":" <font color=\"green\"> 100 %","image":"/vis.0/main/img/Meine Icons/Batterie/Strom.png","logo":"/vis.0/main/img/Meine Icons/Tabellen/homeek.png","adapter":"homee"},{"id":"MeteringPlug-57","sensor":"Küche Geschirrspüler EG","betrieb":"Strom","zustand":" <font color=\"green\"> 100 %","image":"/vis.0/main/img/Meine Icons/Batterie/Strom.png","logo":"/vis.0/main/img/Meine Icons/Tabellen/homeek.png","adapter":"homee"},{"id":"MeteringPlug-58","sensor":"Wohnzimmer Multimedia EG","betrieb":"Strom","zustand":" <font color=\"green\"> 100 %","image":"/vis.0/main/img/Meine Icons/Batterie/Strom.png","logo":"/vis.0/main/img/Meine Icons/Tabellen/homeek.png","adapter":"homee"},{"id":"MeteringPlug-59","sensor":"Keller Waschmaschine UG","betrieb":"Strom","zustand":" <font color=\"green\"> 100 %","image":"/vis.0/main/img/Meine Icons/Batterie/Strom.png","logo":"/vis.0/main/img/Meine Icons/Tabellen/homeek.png","adapter":"homee"},{"id":"MeteringPlug-6","sensor":"Flur Vitrine Licht DG","betrieb":"Strom","zustand":" <font color=\"green\"> 100 %","image":"/vis.0/main/img/Meine Icons/Batterie/Strom.png","logo":"/vis.0/main/img/Meine Icons/Tabellen/homeek.png","adapter":"homee"},{"id":"OnOffPlug-35","sensor":"Wohnzimmer Stehlampe EG","betrieb":"Strom","zustand":" <font color=\"green\"> 100 %","image":"/vis.0/main/img/Meine Icons/Batterie/Strom.png","logo":"/vis.0/main/img/Meine Icons/Tabellen/homeek.png","adapter":"homee"},{"id":"OnOffPlug-36","sensor":"Wohnzimmer Bar EG","betrieb":"Strom","zustand":" <font color=\"green\"> 100 %","image":"/vis.0/main/img/Meine Icons/Batterie/Strom.png","logo":"/vis.0/main/img/Meine Icons/Tabellen/homeek.png","adapter":"homee"},{"id":"OnOffPlug-38","sensor":"Wohnzimmer Vitrine EG","betrieb":"Strom","zustand":" <font color=\"green\"> 100 %","image":"/vis.0/main/img/Meine Icons/Batterie/Strom.png","logo":"/vis.0/main/img/Meine Icons/Tabellen/homeek.png","adapter":"homee"},{"id":"OnOffPlug-39","sensor":"Wohnzimmer TV-Schrank EG","betrieb":"Strom","zustand":" <font color=\"green\"> 100 %","image":"/vis.0/main/img/Meine Icons/Batterie/Strom.png","logo":"/vis.0/main/img/Meine Icons/Tabellen/homeek.png","adapter":"homee"},{"id":"OnOffPlug-63","sensor":"Schlafzimmer Nachtlicht Oliver DG","betrieb":"Strom","zustand":" <font color=\"green\"> 100 %","image":"/vis.0/main/img/Meine Icons/Batterie/Strom.png","logo":"/vis.0/main/img/Meine Icons/Tabellen/homeek.png","adapter":"homee"},{"id":"OnOffPlug-65","sensor":"Schlafzimmer Nachtlicht Kirsten DG","betrieb":"Strom","zustand":" <font color=\"green\"> 100 %","image":"/vis.0/main/img/Meine Icons/Batterie/Strom.png","logo":"/vis.0/main/img/Meine Icons/Tabellen/homeek.png","adapter":"homee"},{"id":"OnOffPlug-66","sensor":"Schlafzimmer Nachtlicht TV DG","betrieb":"Strom","zustand":" <font color=\"green\"> 100 %","image":"/vis.0/main/img/Meine Icons/Batterie/Strom.png","logo":"/vis.0/main/img/Meine Icons/Tabellen/homeek.png","adapter":"homee"},{"id":"OnOffPlug-68","sensor":"Schlafzimmer Luftreiniger DG","betrieb":"Strom","zustand":" <font color=\"green\"> 100 %","image":"/vis.0/main/img/Meine Icons/Batterie/Strom.png","logo":"/vis.0/main/img/Meine Icons/Tabellen/homeek.png","adapter":"homee"},{"id":"OpenCloseSensor-10","sensor":"WC Fenster EG","betrieb":"Batterie","zustand":" <font color=\"lightgreen\"> 100 %","image":"/vis.0/main/img/Meine Icons/Batterie/Batterie_100.png","logo":"/vis.0/main/img/Meine Icons/Tabellen/homeek.png","adapter":"homee"},{"id":"OpenCloseSensor-11","sensor":"Wohnzimmer Balkontüre EG","betrieb":"Batterie","zustand":" <font color=\"lightgreen\"> 90 %","image":"/vis.0/main/img/Meine Icons/Batterie/Batterie_90.png","logo":"/vis.0/main/img/Meine Icons/Tabellen/homeek.png","adapter":"homee"},{"id":"OpenCloseSensor-12","sensor":"Esszimmer Balkontüre EG","betrieb":"Batterie","zustand":" <font color=\"lightgreen\"> 100 %","image":"/vis.0/main/img/Meine Icons/Batterie/Batterie_100.png","logo":"/vis.0/main/img/Meine Icons/Tabellen/homeek.png","adapter":"homee"},{"id":"OpenCloseSensor-13","sensor":"Bad Fenster DG","betrieb":"Batterie","zustand":" <font color=\"lightgreen\"> 86 %","image":"/vis.0/main/img/Meine Icons/Batterie/Batterie_90.png","logo":"/vis.0/main/img/Meine Icons/Tabellen/homeek.png","adapter":"homee"},{"id":"OpenCloseSensor-8","sensor":"Büro Fenster Links EG","betrieb":"Batterie","zustand":" <font color=\"lightgreen\"> 100 %","image":"/vis.0/main/img/Meine Icons/Batterie/Batterie_100.png","logo":"/vis.0/main/img/Meine Icons/Tabellen/homeek.png","adapter":"homee"},{"id":"OpenCloseSensor-9","sensor":"Büro Fenster Rechts EG","betrieb":"Batterie","zustand":" <font color=\"lightgreen\"> 90 %","image":"/vis.0/main/img/Meine Icons/Batterie/Batterie_90.png","logo":"/vis.0/main/img/Meine Icons/Tabellen/homeek.png","adapter":"homee"},{"id":"PresenceDetectorWithTemperatureAndBrightnessSensor-70","sensor":"Schlafzimmer Bewegungsmelder Oliver DG","betrieb":"Batterie","zustand":" <font color=\"#8f8f8f\">  N/A","image":"/vis.0/main/img/Meine Icons/Batterie/Batterie_0.png","logo":"/vis.0/main/img/Meine Icons/Tabellen/homeek.png","adapter":"homee"},{"id":"PresenceDetectorWithTemperatureAndBrightnessSensor-71","sensor":"Schlafzimmer Bewegungsmelder DG","betrieb":"Batterie","zustand":" <font color=\"#8f8f8f\">  N/A","image":"/vis.0/main/img/Meine Icons/Batterie/Batterie_0.png","logo":"/vis.0/main/img/Meine Icons/Tabellen/homeek.png","adapter":"homee"},{"id":"RadiatorThermostat-1","sensor":"Büro Heizung EG","betrieb":"Batterie","zustand":" <font color=\"lightgreen\"> 55 %","image":"/vis.0/main/img/Meine Icons/Batterie/Batterie_60.png","logo":"/vis.0/main/img/Meine Icons/Tabellen/homeek.png","adapter":"homee"},{"id":"RadiatorThermostat-2","sensor":"Wohnzimmer Heizung Links EG","betrieb":"Batterie","zustand":" <font color=\"lightgreen\"> 85 %","image":"/vis.0/main/img/Meine Icons/Batterie/Batterie_90.png","logo":"/vis.0/main/img/Meine Icons/Tabellen/homeek.png","adapter":"homee"},{"id":"RadiatorThermostat-26","sensor":"Bad Heizung DG","betrieb":"Batterie","zustand":" <font color=\"lightgreen\"> 85 %","image":"/vis.0/main/img/Meine Icons/Batterie/Batterie_90.png","logo":"/vis.0/main/img/Meine Icons/Tabellen/homeek.png","adapter":"homee"},{"id":"RadiatorThermostat-4","sensor":"Esszimmer Heizung EG","betrieb":"Batterie","zustand":" <font color=\"lightgreen\"> 95 %","image":"/vis.0/main/img/Meine Icons/Batterie/Batterie_100.png","logo":"/vis.0/main/img/Meine Icons/Tabellen/homeek.png","adapter":"homee"},{"id":"RadiatorThermostat-5","sensor":"WC Heizung EG","betrieb":"Batterie","zustand":" <font color=\"lightgreen\"> 55 %","image":"/vis.0/main/img/Meine Icons/Batterie/Batterie_60.png","logo":"/vis.0/main/img/Meine Icons/Tabellen/homeek.png","adapter":"homee"},{"id":"RadiatorThermostat-62","sensor":"Wohnzimmer Heizung Balkon EG","betrieb":"Batterie","zustand":" <font color=\"lightgreen\"> 55 %","image":"/vis.0/main/img/Meine Icons/Batterie/Batterie_60.png","logo":"/vis.0/main/img/Meine Icons/Tabellen/homeek.png","adapter":"homee"},{"id":"RoomThermostat-19","sensor":"Wohnzimmer Raumthermostat EG","betrieb":"Batterie","zustand":" <font color=\"lightgreen\"> 77 %","image":"/vis.0/main/img/Meine Icons/Batterie/Batterie_80.png","logo":"/vis.0/main/img/Meine Icons/Tabellen/homeek.png","adapter":"homee"},{"id":"SmokeDetector-14","sensor":"Flur Rauchmelder UG","betrieb":"Batterie","zustand":" <font color=\"lightgreen\"> 76 %","image":"/vis.0/main/img/Meine Icons/Batterie/Batterie_80.png","logo":"/vis.0/main/img/Meine Icons/Tabellen/homeek.png","adapter":"homee"},{"id":"SmokeDetector-15","sensor":"Flur Rauchmelder EG","betrieb":"Batterie","zustand":" <font color=\"lightgreen\"> 100 %","image":"/vis.0/main/img/Meine Icons/Batterie/Batterie_100.png","logo":"/vis.0/main/img/Meine Icons/Tabellen/homeek.png","adapter":"homee"},{"id":"SmokeDetector-16","sensor":"Flur Rauchmelder DG","betrieb":"Batterie","zustand":" <font color=\"lightgreen\"> 98 %","image":"/vis.0/main/img/Meine Icons/Batterie/Batterie_100.png","logo":"/vis.0/main/img/Meine Icons/Tabellen/homeek.png","adapter":"homee"},{"id":"SmokeDetector-18","sensor":"Schlafzimmer Rauchmelder UG","betrieb":"Batterie","zustand":" <font color=\"lightgreen\"> 88 %","image":"/vis.0/main/img/Meine Icons/Batterie/Batterie_90.png","logo":"/vis.0/main/img/Meine Icons/Tabellen/homeek.png","adapter":"homee"},{"id":"SmokeDetector-45","sensor":"Schlafzimmer Rauchmelder DG","betrieb":"Batterie","zustand":" <font color=\"red\"> 12 %","image":"/vis.0/main/img/Meine Icons/Batterie/Batterie_20.png","logo":"/vis.0/main/img/Meine Icons/Tabellen/homeek.png","adapter":"homee"},{"id":"TemperatureAndHumiditySensor-43","sensor":"Wohnzimmer Temperatur Weinkühlschrank EG","betrieb":"Batterie","zustand":" <font color=\"#8f8f8f\">  N/A","image":"/vis.0/main/img/Meine Icons/Batterie/Batterie_0.png","logo":"/vis.0/main/img/Meine Icons/Tabellen/homeek.png","adapter":"homee"},{"id":"TemperatureAndHumiditySensor-44","sensor":"Wohnzimmer Temperatur Weinkühlschrank EG","betrieb":"Batterie","zustand":" <font color=\"#8f8f8f\">  N/A","image":"/vis.0/main/img/Meine Icons/Batterie/Batterie_0.png","logo":"/vis.0/main/img/Meine Icons/Tabellen/homeek.png","adapter":"homee"},{"id":"02-00-00-6b-4f-a0","sensor":"Aussenraum","betrieb":"Batterie","zustand":" <font color=\"yellow\"> 27 %","image":"/vis.0/main/img/Meine Icons/Batterie/Batterie_30.png","logo":"/vis.0/main/img/Meine Icons/Tabellen/netatmok.png","adapter":"homee"},{"id":"03-00-00-09-89-18","sensor":"Netatmo Schlafzimmer","betrieb":"Batterie","zustand":" <font color=\"lightgreen\"> 76 %","image":"/vis.0/main/img/Meine Icons/Batterie/Batterie_80.png","logo":"/vis.0/main/img/Meine Icons/Tabellen/netatmok.png","adapter":"homee"},{"id":"03-00-00-0a-2b-4e","sensor":"Netatmo Büro","betrieb":"Batterie","zustand":" <font color=\"lightgreen\"> 49 %","image":"/vis.0/main/img/Meine Icons/Batterie/Batterie_50.png","logo":"/vis.0/main/img/Meine Icons/Tabellen/netatmok.png","adapter":"homee"},{"id":"70-ee-50-6b-5f-4e","sensor":"Mein Haus (Netatmo Wohnzimmer)","betrieb":"Strom","zustand":" <font color=\"green\"> 100 %","image":"/vis.0/main/img/Meine Icons/Batterie/Strom.png","logo":"/vis.0/main/img/Meine Icons/Tabellen/netatmok.png","adapter":"homee"}]
                        

                        Den Status und und das Protokoll müsste man wahrscheinlich übersetzten
                        Status: 1 = Verfügbar, 2 = nicht verfügbar, 3 = wird aktualisiert
                        Protokoll: 1 = ZWave, 2 = ZigBee, 3 = EnOcean, 9 = WLan

                        Widget-Einstellungen
                        009d6cfd-56fa-4402-9439-3b33c02836e8-image.png

                        Die Tabelle sieht dann so aus:
                        74c090e0-260e-4646-b802-055bbabbd4ba-image.png

                        Gruß
                        Oliver

                        mickymM 1 Antwort Letzte Antwort
                        0
                        • O Oli

                          @mickym

                          ich verwende für die VIS den Materialdesign Adapter und erstelle mir per Skript schon ein paar Tabellen, vielleicht hilft dir die Json Ausgabe dabei

                          [{"id":"FloodDetector-23","sensor":"Küche Wassersensor EG","betrieb":"Batterie","zustand":" <font color=\"lightgreen\"> 95 %","image":"/vis.0/main/img/Meine Icons/Batterie/Batterie_100.png","logo":"/vis.0/main/img/Meine Icons/Tabellen/homeek.png","adapter":"homee"},{"id":"FourButtonRemote-64","sensor":"Schlafzimmer Schalter Nachtlicht DG","betrieb":"Batterie","zustand":" <font color=\"#8f8f8f\">  N/A","image":"/vis.0/main/img/Meine Icons/Batterie/Batterie_0.png","logo":"/vis.0/main/img/Meine Icons/Tabellen/homeek.png","adapter":"homee"},{"id":"MeteringPlug-20","sensor":"Küche Kühlschrank EG","betrieb":"Strom","zustand":" <font color=\"green\"> 100 %","image":"/vis.0/main/img/Meine Icons/Batterie/Strom.png","logo":"/vis.0/main/img/Meine Icons/Tabellen/homeek.png","adapter":"homee"},{"id":"MeteringPlug-33","sensor":"Schlafzimmer Klimaanlage DG","betrieb":"Strom","zustand":" <font color=\"green\"> 100 %","image":"/vis.0/main/img/Meine Icons/Batterie/Strom.png","logo":"/vis.0/main/img/Meine Icons/Tabellen/homeek.png","adapter":"homee"},{"id":"MeteringPlug-34","sensor":"Flur Tablet EG","betrieb":"Strom","zustand":" <font color=\"green\"> 100 %","image":"/vis.0/main/img/Meine Icons/Batterie/Strom.png","logo":"/vis.0/main/img/Meine Icons/Tabellen/homeek.png","adapter":"homee"},{"id":"MeteringPlug-42","sensor":"Wohnzimmer Weinkühlschrank EG","betrieb":"Strom","zustand":" <font color=\"green\"> 100 %","image":"/vis.0/main/img/Meine Icons/Batterie/Strom.png","logo":"/vis.0/main/img/Meine Icons/Tabellen/homeek.png","adapter":"homee"},{"id":"MeteringPlug-56","sensor":"Büro Computer EG","betrieb":"Strom","zustand":" <font color=\"green\"> 100 %","image":"/vis.0/main/img/Meine Icons/Batterie/Strom.png","logo":"/vis.0/main/img/Meine Icons/Tabellen/homeek.png","adapter":"homee"},{"id":"MeteringPlug-57","sensor":"Küche Geschirrspüler EG","betrieb":"Strom","zustand":" <font color=\"green\"> 100 %","image":"/vis.0/main/img/Meine Icons/Batterie/Strom.png","logo":"/vis.0/main/img/Meine Icons/Tabellen/homeek.png","adapter":"homee"},{"id":"MeteringPlug-58","sensor":"Wohnzimmer Multimedia EG","betrieb":"Strom","zustand":" <font color=\"green\"> 100 %","image":"/vis.0/main/img/Meine Icons/Batterie/Strom.png","logo":"/vis.0/main/img/Meine Icons/Tabellen/homeek.png","adapter":"homee"},{"id":"MeteringPlug-59","sensor":"Keller Waschmaschine UG","betrieb":"Strom","zustand":" <font color=\"green\"> 100 %","image":"/vis.0/main/img/Meine Icons/Batterie/Strom.png","logo":"/vis.0/main/img/Meine Icons/Tabellen/homeek.png","adapter":"homee"},{"id":"MeteringPlug-6","sensor":"Flur Vitrine Licht DG","betrieb":"Strom","zustand":" <font color=\"green\"> 100 %","image":"/vis.0/main/img/Meine Icons/Batterie/Strom.png","logo":"/vis.0/main/img/Meine Icons/Tabellen/homeek.png","adapter":"homee"},{"id":"OnOffPlug-35","sensor":"Wohnzimmer Stehlampe EG","betrieb":"Strom","zustand":" <font color=\"green\"> 100 %","image":"/vis.0/main/img/Meine Icons/Batterie/Strom.png","logo":"/vis.0/main/img/Meine Icons/Tabellen/homeek.png","adapter":"homee"},{"id":"OnOffPlug-36","sensor":"Wohnzimmer Bar EG","betrieb":"Strom","zustand":" <font color=\"green\"> 100 %","image":"/vis.0/main/img/Meine Icons/Batterie/Strom.png","logo":"/vis.0/main/img/Meine Icons/Tabellen/homeek.png","adapter":"homee"},{"id":"OnOffPlug-38","sensor":"Wohnzimmer Vitrine EG","betrieb":"Strom","zustand":" <font color=\"green\"> 100 %","image":"/vis.0/main/img/Meine Icons/Batterie/Strom.png","logo":"/vis.0/main/img/Meine Icons/Tabellen/homeek.png","adapter":"homee"},{"id":"OnOffPlug-39","sensor":"Wohnzimmer TV-Schrank EG","betrieb":"Strom","zustand":" <font color=\"green\"> 100 %","image":"/vis.0/main/img/Meine Icons/Batterie/Strom.png","logo":"/vis.0/main/img/Meine Icons/Tabellen/homeek.png","adapter":"homee"},{"id":"OnOffPlug-63","sensor":"Schlafzimmer Nachtlicht Oliver DG","betrieb":"Strom","zustand":" <font color=\"green\"> 100 %","image":"/vis.0/main/img/Meine Icons/Batterie/Strom.png","logo":"/vis.0/main/img/Meine Icons/Tabellen/homeek.png","adapter":"homee"},{"id":"OnOffPlug-65","sensor":"Schlafzimmer Nachtlicht Kirsten DG","betrieb":"Strom","zustand":" <font color=\"green\"> 100 %","image":"/vis.0/main/img/Meine Icons/Batterie/Strom.png","logo":"/vis.0/main/img/Meine Icons/Tabellen/homeek.png","adapter":"homee"},{"id":"OnOffPlug-66","sensor":"Schlafzimmer Nachtlicht TV DG","betrieb":"Strom","zustand":" <font color=\"green\"> 100 %","image":"/vis.0/main/img/Meine Icons/Batterie/Strom.png","logo":"/vis.0/main/img/Meine Icons/Tabellen/homeek.png","adapter":"homee"},{"id":"OnOffPlug-68","sensor":"Schlafzimmer Luftreiniger DG","betrieb":"Strom","zustand":" <font color=\"green\"> 100 %","image":"/vis.0/main/img/Meine Icons/Batterie/Strom.png","logo":"/vis.0/main/img/Meine Icons/Tabellen/homeek.png","adapter":"homee"},{"id":"OpenCloseSensor-10","sensor":"WC Fenster EG","betrieb":"Batterie","zustand":" <font color=\"lightgreen\"> 100 %","image":"/vis.0/main/img/Meine Icons/Batterie/Batterie_100.png","logo":"/vis.0/main/img/Meine Icons/Tabellen/homeek.png","adapter":"homee"},{"id":"OpenCloseSensor-11","sensor":"Wohnzimmer Balkontüre EG","betrieb":"Batterie","zustand":" <font color=\"lightgreen\"> 90 %","image":"/vis.0/main/img/Meine Icons/Batterie/Batterie_90.png","logo":"/vis.0/main/img/Meine Icons/Tabellen/homeek.png","adapter":"homee"},{"id":"OpenCloseSensor-12","sensor":"Esszimmer Balkontüre EG","betrieb":"Batterie","zustand":" <font color=\"lightgreen\"> 100 %","image":"/vis.0/main/img/Meine Icons/Batterie/Batterie_100.png","logo":"/vis.0/main/img/Meine Icons/Tabellen/homeek.png","adapter":"homee"},{"id":"OpenCloseSensor-13","sensor":"Bad Fenster DG","betrieb":"Batterie","zustand":" <font color=\"lightgreen\"> 86 %","image":"/vis.0/main/img/Meine Icons/Batterie/Batterie_90.png","logo":"/vis.0/main/img/Meine Icons/Tabellen/homeek.png","adapter":"homee"},{"id":"OpenCloseSensor-8","sensor":"Büro Fenster Links EG","betrieb":"Batterie","zustand":" <font color=\"lightgreen\"> 100 %","image":"/vis.0/main/img/Meine Icons/Batterie/Batterie_100.png","logo":"/vis.0/main/img/Meine Icons/Tabellen/homeek.png","adapter":"homee"},{"id":"OpenCloseSensor-9","sensor":"Büro Fenster Rechts EG","betrieb":"Batterie","zustand":" <font color=\"lightgreen\"> 90 %","image":"/vis.0/main/img/Meine Icons/Batterie/Batterie_90.png","logo":"/vis.0/main/img/Meine Icons/Tabellen/homeek.png","adapter":"homee"},{"id":"PresenceDetectorWithTemperatureAndBrightnessSensor-70","sensor":"Schlafzimmer Bewegungsmelder Oliver DG","betrieb":"Batterie","zustand":" <font color=\"#8f8f8f\">  N/A","image":"/vis.0/main/img/Meine Icons/Batterie/Batterie_0.png","logo":"/vis.0/main/img/Meine Icons/Tabellen/homeek.png","adapter":"homee"},{"id":"PresenceDetectorWithTemperatureAndBrightnessSensor-71","sensor":"Schlafzimmer Bewegungsmelder DG","betrieb":"Batterie","zustand":" <font color=\"#8f8f8f\">  N/A","image":"/vis.0/main/img/Meine Icons/Batterie/Batterie_0.png","logo":"/vis.0/main/img/Meine Icons/Tabellen/homeek.png","adapter":"homee"},{"id":"RadiatorThermostat-1","sensor":"Büro Heizung EG","betrieb":"Batterie","zustand":" <font color=\"lightgreen\"> 55 %","image":"/vis.0/main/img/Meine Icons/Batterie/Batterie_60.png","logo":"/vis.0/main/img/Meine Icons/Tabellen/homeek.png","adapter":"homee"},{"id":"RadiatorThermostat-2","sensor":"Wohnzimmer Heizung Links EG","betrieb":"Batterie","zustand":" <font color=\"lightgreen\"> 85 %","image":"/vis.0/main/img/Meine Icons/Batterie/Batterie_90.png","logo":"/vis.0/main/img/Meine Icons/Tabellen/homeek.png","adapter":"homee"},{"id":"RadiatorThermostat-26","sensor":"Bad Heizung DG","betrieb":"Batterie","zustand":" <font color=\"lightgreen\"> 85 %","image":"/vis.0/main/img/Meine Icons/Batterie/Batterie_90.png","logo":"/vis.0/main/img/Meine Icons/Tabellen/homeek.png","adapter":"homee"},{"id":"RadiatorThermostat-4","sensor":"Esszimmer Heizung EG","betrieb":"Batterie","zustand":" <font color=\"lightgreen\"> 95 %","image":"/vis.0/main/img/Meine Icons/Batterie/Batterie_100.png","logo":"/vis.0/main/img/Meine Icons/Tabellen/homeek.png","adapter":"homee"},{"id":"RadiatorThermostat-5","sensor":"WC Heizung EG","betrieb":"Batterie","zustand":" <font color=\"lightgreen\"> 55 %","image":"/vis.0/main/img/Meine Icons/Batterie/Batterie_60.png","logo":"/vis.0/main/img/Meine Icons/Tabellen/homeek.png","adapter":"homee"},{"id":"RadiatorThermostat-62","sensor":"Wohnzimmer Heizung Balkon EG","betrieb":"Batterie","zustand":" <font color=\"lightgreen\"> 55 %","image":"/vis.0/main/img/Meine Icons/Batterie/Batterie_60.png","logo":"/vis.0/main/img/Meine Icons/Tabellen/homeek.png","adapter":"homee"},{"id":"RoomThermostat-19","sensor":"Wohnzimmer Raumthermostat EG","betrieb":"Batterie","zustand":" <font color=\"lightgreen\"> 77 %","image":"/vis.0/main/img/Meine Icons/Batterie/Batterie_80.png","logo":"/vis.0/main/img/Meine Icons/Tabellen/homeek.png","adapter":"homee"},{"id":"SmokeDetector-14","sensor":"Flur Rauchmelder UG","betrieb":"Batterie","zustand":" <font color=\"lightgreen\"> 76 %","image":"/vis.0/main/img/Meine Icons/Batterie/Batterie_80.png","logo":"/vis.0/main/img/Meine Icons/Tabellen/homeek.png","adapter":"homee"},{"id":"SmokeDetector-15","sensor":"Flur Rauchmelder EG","betrieb":"Batterie","zustand":" <font color=\"lightgreen\"> 100 %","image":"/vis.0/main/img/Meine Icons/Batterie/Batterie_100.png","logo":"/vis.0/main/img/Meine Icons/Tabellen/homeek.png","adapter":"homee"},{"id":"SmokeDetector-16","sensor":"Flur Rauchmelder DG","betrieb":"Batterie","zustand":" <font color=\"lightgreen\"> 98 %","image":"/vis.0/main/img/Meine Icons/Batterie/Batterie_100.png","logo":"/vis.0/main/img/Meine Icons/Tabellen/homeek.png","adapter":"homee"},{"id":"SmokeDetector-18","sensor":"Schlafzimmer Rauchmelder UG","betrieb":"Batterie","zustand":" <font color=\"lightgreen\"> 88 %","image":"/vis.0/main/img/Meine Icons/Batterie/Batterie_90.png","logo":"/vis.0/main/img/Meine Icons/Tabellen/homeek.png","adapter":"homee"},{"id":"SmokeDetector-45","sensor":"Schlafzimmer Rauchmelder DG","betrieb":"Batterie","zustand":" <font color=\"red\"> 12 %","image":"/vis.0/main/img/Meine Icons/Batterie/Batterie_20.png","logo":"/vis.0/main/img/Meine Icons/Tabellen/homeek.png","adapter":"homee"},{"id":"TemperatureAndHumiditySensor-43","sensor":"Wohnzimmer Temperatur Weinkühlschrank EG","betrieb":"Batterie","zustand":" <font color=\"#8f8f8f\">  N/A","image":"/vis.0/main/img/Meine Icons/Batterie/Batterie_0.png","logo":"/vis.0/main/img/Meine Icons/Tabellen/homeek.png","adapter":"homee"},{"id":"TemperatureAndHumiditySensor-44","sensor":"Wohnzimmer Temperatur Weinkühlschrank EG","betrieb":"Batterie","zustand":" <font color=\"#8f8f8f\">  N/A","image":"/vis.0/main/img/Meine Icons/Batterie/Batterie_0.png","logo":"/vis.0/main/img/Meine Icons/Tabellen/homeek.png","adapter":"homee"},{"id":"02-00-00-6b-4f-a0","sensor":"Aussenraum","betrieb":"Batterie","zustand":" <font color=\"yellow\"> 27 %","image":"/vis.0/main/img/Meine Icons/Batterie/Batterie_30.png","logo":"/vis.0/main/img/Meine Icons/Tabellen/netatmok.png","adapter":"homee"},{"id":"03-00-00-09-89-18","sensor":"Netatmo Schlafzimmer","betrieb":"Batterie","zustand":" <font color=\"lightgreen\"> 76 %","image":"/vis.0/main/img/Meine Icons/Batterie/Batterie_80.png","logo":"/vis.0/main/img/Meine Icons/Tabellen/netatmok.png","adapter":"homee"},{"id":"03-00-00-0a-2b-4e","sensor":"Netatmo Büro","betrieb":"Batterie","zustand":" <font color=\"lightgreen\"> 49 %","image":"/vis.0/main/img/Meine Icons/Batterie/Batterie_50.png","logo":"/vis.0/main/img/Meine Icons/Tabellen/netatmok.png","adapter":"homee"},{"id":"70-ee-50-6b-5f-4e","sensor":"Mein Haus (Netatmo Wohnzimmer)","betrieb":"Strom","zustand":" <font color=\"green\"> 100 %","image":"/vis.0/main/img/Meine Icons/Batterie/Strom.png","logo":"/vis.0/main/img/Meine Icons/Tabellen/netatmok.png","adapter":"homee"}]
                          

                          Den Status und und das Protokoll müsste man wahrscheinlich übersetzten
                          Status: 1 = Verfügbar, 2 = nicht verfügbar, 3 = wird aktualisiert
                          Protokoll: 1 = ZWave, 2 = ZigBee, 3 = EnOcean, 9 = WLan

                          Widget-Einstellungen
                          009d6cfd-56fa-4402-9439-3b33c02836e8-image.png

                          Die Tabelle sieht dann so aus:
                          74c090e0-260e-4646-b802-055bbabbd4ba-image.png

                          mickymM Offline
                          mickymM Offline
                          mickym
                          Most Active
                          schrieb am zuletzt editiert von mickym
                          #35

                          @oli Das habe ich doch schon alles gemacht, schaus Dir halt an. Es geht doch nur noch um den Typ. Aktualisert ist 12 und nicht 3.

                          [{"name":"DG / Schlafzimmer / Bewegungsmelder / Kirsten","type":2,"protocol":"Zigbee","state":"aktiv"},{"name":"DG / Schlafzimmer / Bewegungsmelder Oliver","type":2,"protocol":"Zigbee","state":"aktiv"},{"name":"DG / Schlafzimmer / Luftreiniger","type":2,"protocol":"Zigbee","state":"aktiv"},{"name":"DG / Schlafzimmer / Nachtlicht TV","type":2,"protocol":"Zigbee","state":"aktiv"},{"name":"DG / Schlafzimmer / Nachtlicht Kirsten","type":2,"protocol":"Zigbee","state":"aktiv"},{"name":"DG / Schlafzimmer / Schalter Nachtlicht","type":2,"protocol":"Zigbee","state":"aktiv"},{"name":"DG / Schlafzimmer / Nachtlicht Oliver","type":2,"protocol":"Zigbee","state":"aktiv"},{"name":"EG / Wohnzimmer / Heizung Balkon","type":1,"protocol":"ZWave","state":"aktiv"},{"name":"UG / Keller / Waschmaschine","type":1,"protocol":"ZWave","state":"aktiv"},{"name":"EG / Wohnzimmer / Multimedia","type":1,"protocol":"ZWave","state":"aktiv"},{"name":"DG / Flur / Rauchmelder","type":1,"protocol":"ZWave","state":"aktiv"},{"name":"EG / Flur / Rauchmelder","type":1,"protocol":"ZWave","state":"aktiv"},{"name":"UG / Flur / Rauchmelder","type":1,"protocol":"ZWave","state":"aktiv"},{"name":"DG / Bad / Fenster","type":1,"protocol":"ZWave","state":"aktiv"},{"name":"EG / Esszimmer / Balkontüre","type":1,"protocol":"ZWave","state":"aktiv"},{"name":"EG / Wohnzimmer / Balkontüre","type":1,"protocol":"ZWave","state":"aktiv"},{"name":"EG / WC / Fenster","type":1,"protocol":"ZWave","state":"aktiv"},{"name":"EG / Büro / Fenster Rechts","type":1,"protocol":"ZWave","state":"aktiv"},{"name":"EG / Büro / Fenster Links","type":1,"protocol":"ZWave","state":"aktiv"},{"name":"DG / Schlafzimmer / Rauchmelder","type":1,"protocol":"ZWave","state":"aktiv"},{"name":"UG / Schlafzimmer / Rauchmelder","type":1,"protocol":"ZWave","state":"aktiv"},{"name":"EG / Büro / Heizung","type":1,"protocol":"ZWave","state":"aktiv"},{"name":"EG / Wohnzimmer / Vitrine","type":2,"protocol":"Zigbee","state":"aktiv"},{"name":"DG / Flur / Vitrine Licht","type":1,"protocol":"ZWave","state":"inaktiv"},{"name":"EG / Wohnzimmer / Temperatur Weinkühlschrank","type":2,"protocol":"Zigbee","state":"aktiv"},{"name":"EG / Wohnzimmer / Heizung Links","type":1,"protocol":"ZWave","state":"aktiv"},{"name":"EG / Wohnzimmer / TV-Schrank","type":2,"protocol":"Zigbee","state":"aktiv"},{"name":"EG / Esszimmer / Heizung","type":1,"protocol":"ZWave","state":"aktiv"},{"name":"EG / WC / Heizung","type":1,"protocol":"ZWave","state":"aktiv"},{"name":"EG / Wohnzimmer / Weinkühlschrank","type":1,"protocol":"ZWave","state":"aktiv"},{"name":"EG / Wohnzimmer / Raumthermostat","type":1,"protocol":"ZWave","state":"aktiv"},{"name":"EG / Büro / Computer","type":1,"protocol":"ZWave","state":"aktiv"},{"name":"EG / Küche / Kühlschrank","type":1,"protocol":"ZWave","state":"aktiv"},{"name":"EG / Küche / Geschirrspüler","type":1,"protocol":"ZWave","state":"aktiv"},{"name":"EG / Küche / Wassersensor","type":1,"protocol":"ZWave","state":"aktiv"},{"name":"DG / Bad / Heizung","type":1,"protocol":"ZWave","state":"aktiv"},{"name":"EG / Wohnzimmer / Netatmo","type":8,"protocol":"WLan","state":"aktiv"},{"name":"Netatmo Aussenraum","type":8,"protocol":"WLan","state":"aktiv"},{"name":"EG / Büro / Netatmo","type":8,"protocol":"WLan","state":"aktiv"},{"name":"DG / Schlafzimmer / Netatmo","type":8,"protocol":"WLan","state":"aktiv"},{"name":"DG / Schlafzimmer / Klimaanlage","type":1,"protocol":"ZWave","state":"aktiv"},{"name":"EG / Flur / Tablet","type":1,"protocol":"ZWave","state":"aktiv"},{"name":"EG / Wohnzimmer / Stehlampe","type":2,"protocol":"Zigbee","state":"aktiv"},{"name":"EG / Wohnzimmer / Bar","type":2,"protocol":"Zigbee","state":"aktiv"},{"name":"EG / Küche / Temperatur Kühlschrank","type":2,"protocol":"Zigbee","state":"aktiv"}]
                          

                          Na egal - Du siehst wie einfach man solche JSONS erstellen kann - das kannst ja dann selbst umsetzen. ;)

                          Jeder Flow bzw. jedes Script, das ich hier poste implementiert jeder auf eigene Gefahr. Flows und Scripts können Fehler aufweisen und weder der Seitenbetreiber noch ich persönlich können hierfür haftbar gemacht werden. Das gleiche gilt für Empfehlungen aller Art.

                          O 1 Antwort Letzte Antwort
                          0
                          • mickymM mickym

                            @oli Das habe ich doch schon alles gemacht, schaus Dir halt an. Es geht doch nur noch um den Typ. Aktualisert ist 12 und nicht 3.

                            [{"name":"DG / Schlafzimmer / Bewegungsmelder / Kirsten","type":2,"protocol":"Zigbee","state":"aktiv"},{"name":"DG / Schlafzimmer / Bewegungsmelder Oliver","type":2,"protocol":"Zigbee","state":"aktiv"},{"name":"DG / Schlafzimmer / Luftreiniger","type":2,"protocol":"Zigbee","state":"aktiv"},{"name":"DG / Schlafzimmer / Nachtlicht TV","type":2,"protocol":"Zigbee","state":"aktiv"},{"name":"DG / Schlafzimmer / Nachtlicht Kirsten","type":2,"protocol":"Zigbee","state":"aktiv"},{"name":"DG / Schlafzimmer / Schalter Nachtlicht","type":2,"protocol":"Zigbee","state":"aktiv"},{"name":"DG / Schlafzimmer / Nachtlicht Oliver","type":2,"protocol":"Zigbee","state":"aktiv"},{"name":"EG / Wohnzimmer / Heizung Balkon","type":1,"protocol":"ZWave","state":"aktiv"},{"name":"UG / Keller / Waschmaschine","type":1,"protocol":"ZWave","state":"aktiv"},{"name":"EG / Wohnzimmer / Multimedia","type":1,"protocol":"ZWave","state":"aktiv"},{"name":"DG / Flur / Rauchmelder","type":1,"protocol":"ZWave","state":"aktiv"},{"name":"EG / Flur / Rauchmelder","type":1,"protocol":"ZWave","state":"aktiv"},{"name":"UG / Flur / Rauchmelder","type":1,"protocol":"ZWave","state":"aktiv"},{"name":"DG / Bad / Fenster","type":1,"protocol":"ZWave","state":"aktiv"},{"name":"EG / Esszimmer / Balkontüre","type":1,"protocol":"ZWave","state":"aktiv"},{"name":"EG / Wohnzimmer / Balkontüre","type":1,"protocol":"ZWave","state":"aktiv"},{"name":"EG / WC / Fenster","type":1,"protocol":"ZWave","state":"aktiv"},{"name":"EG / Büro / Fenster Rechts","type":1,"protocol":"ZWave","state":"aktiv"},{"name":"EG / Büro / Fenster Links","type":1,"protocol":"ZWave","state":"aktiv"},{"name":"DG / Schlafzimmer / Rauchmelder","type":1,"protocol":"ZWave","state":"aktiv"},{"name":"UG / Schlafzimmer / Rauchmelder","type":1,"protocol":"ZWave","state":"aktiv"},{"name":"EG / Büro / Heizung","type":1,"protocol":"ZWave","state":"aktiv"},{"name":"EG / Wohnzimmer / Vitrine","type":2,"protocol":"Zigbee","state":"aktiv"},{"name":"DG / Flur / Vitrine Licht","type":1,"protocol":"ZWave","state":"inaktiv"},{"name":"EG / Wohnzimmer / Temperatur Weinkühlschrank","type":2,"protocol":"Zigbee","state":"aktiv"},{"name":"EG / Wohnzimmer / Heizung Links","type":1,"protocol":"ZWave","state":"aktiv"},{"name":"EG / Wohnzimmer / TV-Schrank","type":2,"protocol":"Zigbee","state":"aktiv"},{"name":"EG / Esszimmer / Heizung","type":1,"protocol":"ZWave","state":"aktiv"},{"name":"EG / WC / Heizung","type":1,"protocol":"ZWave","state":"aktiv"},{"name":"EG / Wohnzimmer / Weinkühlschrank","type":1,"protocol":"ZWave","state":"aktiv"},{"name":"EG / Wohnzimmer / Raumthermostat","type":1,"protocol":"ZWave","state":"aktiv"},{"name":"EG / Büro / Computer","type":1,"protocol":"ZWave","state":"aktiv"},{"name":"EG / Küche / Kühlschrank","type":1,"protocol":"ZWave","state":"aktiv"},{"name":"EG / Küche / Geschirrspüler","type":1,"protocol":"ZWave","state":"aktiv"},{"name":"EG / Küche / Wassersensor","type":1,"protocol":"ZWave","state":"aktiv"},{"name":"DG / Bad / Heizung","type":1,"protocol":"ZWave","state":"aktiv"},{"name":"EG / Wohnzimmer / Netatmo","type":8,"protocol":"WLan","state":"aktiv"},{"name":"Netatmo Aussenraum","type":8,"protocol":"WLan","state":"aktiv"},{"name":"EG / Büro / Netatmo","type":8,"protocol":"WLan","state":"aktiv"},{"name":"DG / Schlafzimmer / Netatmo","type":8,"protocol":"WLan","state":"aktiv"},{"name":"DG / Schlafzimmer / Klimaanlage","type":1,"protocol":"ZWave","state":"aktiv"},{"name":"EG / Flur / Tablet","type":1,"protocol":"ZWave","state":"aktiv"},{"name":"EG / Wohnzimmer / Stehlampe","type":2,"protocol":"Zigbee","state":"aktiv"},{"name":"EG / Wohnzimmer / Bar","type":2,"protocol":"Zigbee","state":"aktiv"},{"name":"EG / Küche / Temperatur Kühlschrank","type":2,"protocol":"Zigbee","state":"aktiv"}]
                            

                            Na egal - Du siehst wie einfach man solche JSONS erstellen kann - das kannst ja dann selbst umsetzen. ;)

                            O Online
                            O Online
                            Oli
                            schrieb am zuletzt editiert von
                            #36

                            @mickym
                            sorry, hat sich überschnitten, du bist zu schnell für mich, bin gerade am testen ;-)

                            Gruß
                            Oliver

                            mickymM 1 Antwort Letzte Antwort
                            0
                            • mickymM Offline
                              mickymM Offline
                              mickym
                              Most Active
                              schrieb am zuletzt editiert von mickym
                              #37

                              Ok - hat bissi gedauert - weil ich den Filter nur mit den Klammern machen wollte - aber hier noch eine in meinen Augen elegantere Möglichkeit, weil man damit auch noch weitere Eigenschaften von Protokollen oder Status mappen kann.

                              Man macht also nicht einfach ein Objekt mit dem status als key (Eigenschaft), sondern erstellt komplette Arrays, die man dann mit der $single Funktion filtert.

                              Das sieht dann so aus:
                              cc244613-1436-45e7-bdfe-64161bd32a30-image.png

                              Die Daten die man also bekommt sind Objekte aus Arrays. Hier zum Beispiel die Protokolle:

                              [
                                  {
                                      "id": 1,
                                      "name": "ZWave"
                                  },
                                  {
                                      "id": 2,
                                      "name": "Zigbee"
                                  },
                                  {
                                      "id": 3,
                                      "name": "EnOcean"
                                  },
                                  {
                                      "id": 9,
                                      "name": "WLan"
                                  }
                              ]
                              

                              Der JSONATA Code schaut dann eigentlich easy aus (aber musste selbst wieder bissi rumtüfteln)

                              payload.{"name" :name,
                              "type" : cube_type,
                              "protocol" : $single($$.protocols, function($v){$v.id = protocol}).name,
                              "state" : $single($$.states, function($v){$v.id = state}).name
                              }
                              

                              Hier wieder zum Ausprobieren:

                              [
                                 {
                                     "id": "0c51f133a4fe4fe4",
                                     "type": "change",
                                     "z": "9c280ddf049b2b4d",
                                     "name": "VIS Tabelle 2",
                                     "rules": [
                                         {
                                             "t": "set",
                                             "p": "protocols",
                                             "pt": "msg",
                                             "to": "[{\"id\":1,\"name\":\"ZWave\"},{\"id\":2,\"name\":\"Zigbee\"},{\"id\":3,\"name\":\"EnOcean\"},{\"id\":9,\"name\":\"WLan\"}]",
                                             "tot": "json"
                                         },
                                         {
                                             "t": "set",
                                             "p": "states",
                                             "pt": "msg",
                                             "to": "[{\"id\":1,\"name\":\"aktiv\"},{\"id\":2,\"name\":\"inaktiv\"},{\"id\":12,\"name\":\"wird aktualisiert\"}]",
                                             "tot": "json"
                                         },
                                         {
                                             "t": "set",
                                             "p": "payload",
                                             "pt": "msg",
                                             "to": "payload.{\"name\" :name,\t\"type\" : cube_type,\t\"protocol\" : $single($$.protocols, function($v){$v.id = protocol}).name,\t\"state\" : $single($$.states, function($v){$v.id = state}).name\t}",
                                             "tot": "jsonata"
                                         }
                                     ],
                                     "action": "",
                                     "property": "",
                                     "from": "",
                                     "to": "",
                                     "reg": false,
                                     "x": 1210,
                                     "y": 3440,
                                     "wires": [
                                         [
                                             "ebf3d21498467dc6"
                                         ]
                                     ]
                                 },
                                 {
                                     "id": "ebf3d21498467dc6",
                                     "type": "debug",
                                     "z": "9c280ddf049b2b4d",
                                     "name": "VIS Tabelle",
                                     "active": true,
                                     "tosidebar": true,
                                     "console": false,
                                     "tostatus": false,
                                     "complete": "payload",
                                     "targetType": "msg",
                                     "statusVal": "",
                                     "statusType": "auto",
                                     "x": 1410,
                                     "y": 3440,
                                     "wires": []
                                 }
                              ]
                              

                              Jedenfalls sieht man mit wie wenig Code - man mit JSONATA solche Objekte erzeugt ohne wie mit Javascript oder Blocklies sich mit Schleifen rumzuschlagen. ;)

                              Es ist zwar am Anfang etwas undurchsichtig, aber es lohnt sich probiert so was einfach mit dem try aus. Ihr könnt so was abspeichern.

                              Hier mal meine Test mit Deinen Geräten. ;)

                              https://try.jsonata.org/LdlRlT3hR

                              Wenn man dann an dem Code etwas verändert, sieht man sofort das Ergebnis und kann es dann wenn man zufrieden ist, einfach in die Change Node kopieren.

                              Je mehr ich damit beschäftige, desto genialer finde ich es - und erspart Spaghetti-Code. ;)

                              Warum das so praktisch ist wenn man arrays mit Objekten macht - habe ich hier mal kurz demonstriert:

                              1c0172b4-8009-4ec0-9bfc-8bd38a613612-image.png

                              Man sieht man kann damit ganz schnell auch mehrsprachig arbeiten und ändert nur einen Parameter in seinem JSONATA-Code.

                              Jeder Flow bzw. jedes Script, das ich hier poste implementiert jeder auf eigene Gefahr. Flows und Scripts können Fehler aufweisen und weder der Seitenbetreiber noch ich persönlich können hierfür haftbar gemacht werden. Das gleiche gilt für Empfehlungen aller Art.

                              O 1 Antwort Letzte Antwort
                              0
                              • mickymM mickym

                                Ok - hat bissi gedauert - weil ich den Filter nur mit den Klammern machen wollte - aber hier noch eine in meinen Augen elegantere Möglichkeit, weil man damit auch noch weitere Eigenschaften von Protokollen oder Status mappen kann.

                                Man macht also nicht einfach ein Objekt mit dem status als key (Eigenschaft), sondern erstellt komplette Arrays, die man dann mit der $single Funktion filtert.

                                Das sieht dann so aus:
                                cc244613-1436-45e7-bdfe-64161bd32a30-image.png

                                Die Daten die man also bekommt sind Objekte aus Arrays. Hier zum Beispiel die Protokolle:

                                [
                                    {
                                        "id": 1,
                                        "name": "ZWave"
                                    },
                                    {
                                        "id": 2,
                                        "name": "Zigbee"
                                    },
                                    {
                                        "id": 3,
                                        "name": "EnOcean"
                                    },
                                    {
                                        "id": 9,
                                        "name": "WLan"
                                    }
                                ]
                                

                                Der JSONATA Code schaut dann eigentlich easy aus (aber musste selbst wieder bissi rumtüfteln)

                                payload.{"name" :name,
                                "type" : cube_type,
                                "protocol" : $single($$.protocols, function($v){$v.id = protocol}).name,
                                "state" : $single($$.states, function($v){$v.id = state}).name
                                }
                                

                                Hier wieder zum Ausprobieren:

                                [
                                   {
                                       "id": "0c51f133a4fe4fe4",
                                       "type": "change",
                                       "z": "9c280ddf049b2b4d",
                                       "name": "VIS Tabelle 2",
                                       "rules": [
                                           {
                                               "t": "set",
                                               "p": "protocols",
                                               "pt": "msg",
                                               "to": "[{\"id\":1,\"name\":\"ZWave\"},{\"id\":2,\"name\":\"Zigbee\"},{\"id\":3,\"name\":\"EnOcean\"},{\"id\":9,\"name\":\"WLan\"}]",
                                               "tot": "json"
                                           },
                                           {
                                               "t": "set",
                                               "p": "states",
                                               "pt": "msg",
                                               "to": "[{\"id\":1,\"name\":\"aktiv\"},{\"id\":2,\"name\":\"inaktiv\"},{\"id\":12,\"name\":\"wird aktualisiert\"}]",
                                               "tot": "json"
                                           },
                                           {
                                               "t": "set",
                                               "p": "payload",
                                               "pt": "msg",
                                               "to": "payload.{\"name\" :name,\t\"type\" : cube_type,\t\"protocol\" : $single($$.protocols, function($v){$v.id = protocol}).name,\t\"state\" : $single($$.states, function($v){$v.id = state}).name\t}",
                                               "tot": "jsonata"
                                           }
                                       ],
                                       "action": "",
                                       "property": "",
                                       "from": "",
                                       "to": "",
                                       "reg": false,
                                       "x": 1210,
                                       "y": 3440,
                                       "wires": [
                                           [
                                               "ebf3d21498467dc6"
                                           ]
                                       ]
                                   },
                                   {
                                       "id": "ebf3d21498467dc6",
                                       "type": "debug",
                                       "z": "9c280ddf049b2b4d",
                                       "name": "VIS Tabelle",
                                       "active": true,
                                       "tosidebar": true,
                                       "console": false,
                                       "tostatus": false,
                                       "complete": "payload",
                                       "targetType": "msg",
                                       "statusVal": "",
                                       "statusType": "auto",
                                       "x": 1410,
                                       "y": 3440,
                                       "wires": []
                                   }
                                ]
                                

                                Jedenfalls sieht man mit wie wenig Code - man mit JSONATA solche Objekte erzeugt ohne wie mit Javascript oder Blocklies sich mit Schleifen rumzuschlagen. ;)

                                Es ist zwar am Anfang etwas undurchsichtig, aber es lohnt sich probiert so was einfach mit dem try aus. Ihr könnt so was abspeichern.

                                Hier mal meine Test mit Deinen Geräten. ;)

                                https://try.jsonata.org/LdlRlT3hR

                                Wenn man dann an dem Code etwas verändert, sieht man sofort das Ergebnis und kann es dann wenn man zufrieden ist, einfach in die Change Node kopieren.

                                Je mehr ich damit beschäftige, desto genialer finde ich es - und erspart Spaghetti-Code. ;)

                                Warum das so praktisch ist wenn man arrays mit Objekten macht - habe ich hier mal kurz demonstriert:

                                1c0172b4-8009-4ec0-9bfc-8bd38a613612-image.png

                                Man sieht man kann damit ganz schnell auch mehrsprachig arbeiten und ändert nur einen Parameter in seinem JSONATA-Code.

                                O Online
                                O Online
                                Oli
                                schrieb am zuletzt editiert von Oli
                                #38

                                @mickym

                                funktioniert alles super, wenn du mir jetzt noch verrätst, wie ich den Status mit verschiedenen Schriftfarben belegen kann?
                                Verfügbar = #8f8f8f
                                nicht verfügbar = rot
                                wird aktualisiert = orange

                                Danach bin ich mit dem ersten Flow durch und kann ihn dir mal posten

                                Gruß
                                Oliver

                                mickymM 2 Antworten Letzte Antwort
                                0
                                • O Oli

                                  @mickym

                                  funktioniert alles super, wenn du mir jetzt noch verrätst, wie ich den Status mit verschiedenen Schriftfarben belegen kann?
                                  Verfügbar = #8f8f8f
                                  nicht verfügbar = rot
                                  wird aktualisiert = orange

                                  Danach bin ich mit dem ersten Flow durch und kann ihn dir mal posten

                                  mickymM Offline
                                  mickymM Offline
                                  mickym
                                  Most Active
                                  schrieb am zuletzt editiert von
                                  #39

                                  @oli sagte in Benötige Hilfe mit Node-Red in Verbindung mit homee:

                                  Ja das sind die beiden Nodes? Für die Version mit den Arrays zum Lookup - und gibts damit ein Problem?

                                  Jeder Flow bzw. jedes Script, das ich hier poste implementiert jeder auf eigene Gefahr. Flows und Scripts können Fehler aufweisen und weder der Seitenbetreiber noch ich persönlich können hierfür haftbar gemacht werden. Das gleiche gilt für Empfehlungen aller Art.

                                  O 1 Antwort Letzte Antwort
                                  0
                                  • mickymM mickym

                                    @oli sagte in Benötige Hilfe mit Node-Red in Verbindung mit homee:

                                    Ja das sind die beiden Nodes? Für die Version mit den Arrays zum Lookup - und gibts damit ein Problem?

                                    O Online
                                    O Online
                                    Oli
                                    schrieb am zuletzt editiert von
                                    #40

                                    @mickym

                                    sorry falsche Taste erwischt, habe ein Edit gemacht oben gemacht

                                    Gruß
                                    Oliver

                                    1 Antwort Letzte Antwort
                                    0
                                    • O Oli

                                      @mickym

                                      funktioniert alles super, wenn du mir jetzt noch verrätst, wie ich den Status mit verschiedenen Schriftfarben belegen kann?
                                      Verfügbar = #8f8f8f
                                      nicht verfügbar = rot
                                      wird aktualisiert = orange

                                      Danach bin ich mit dem ersten Flow durch und kann ihn dir mal posten

                                      mickymM Offline
                                      mickymM Offline
                                      mickym
                                      Most Active
                                      schrieb am zuletzt editiert von
                                      #41

                                      @oli sagte in Benötige Hilfe mit Node-Red in Verbindung mit homee:

                                      @mickym

                                      funktioniert alles super, wenn du mir jetzt noch verrätst, wie ich den Status mit verschiedenen Schriftfarben belegen kann?
                                      Verfügbar = #8f8f8f
                                      nicht verfügbar = rot
                                      wird aktualisiert = orange

                                      Danach bin ich mit dem ersten Flow durch und kann ihn dir mal posten

                                      Du meinst

                                      "state": " <font color=\"#8f8f8f\"> aktiv"
                                      "state": " <font color=\"rot\"> inaktiv"
                                      "state": " <font color=\"orange\"> wird aktualisiert"
                                      

                                      Jeder Flow bzw. jedes Script, das ich hier poste implementiert jeder auf eigene Gefahr. Flows und Scripts können Fehler aufweisen und weder der Seitenbetreiber noch ich persönlich können hierfür haftbar gemacht werden. Das gleiche gilt für Empfehlungen aller Art.

                                      O 1 Antwort Letzte Antwort
                                      0
                                      • mickymM mickym

                                        @oli sagte in Benötige Hilfe mit Node-Red in Verbindung mit homee:

                                        @mickym

                                        funktioniert alles super, wenn du mir jetzt noch verrätst, wie ich den Status mit verschiedenen Schriftfarben belegen kann?
                                        Verfügbar = #8f8f8f
                                        nicht verfügbar = rot
                                        wird aktualisiert = orange

                                        Danach bin ich mit dem ersten Flow durch und kann ihn dir mal posten

                                        Du meinst

                                        "state": " <font color=\"#8f8f8f\"> aktiv"
                                        "state": " <font color=\"rot\"> inaktiv"
                                        "state": " <font color=\"orange\"> wird aktualisiert"
                                        
                                        O Online
                                        O Online
                                        Oli
                                        schrieb am zuletzt editiert von Oli
                                        #42

                                        @mickym
                                        ja, und wo trage ich das ein?

                                        Sorry, eine Frage habe ich trotzdem noch, kannst du mir sagen, warum der Eintrag der Tabelle im Exporer im Klartext kommt und wenn ich den Datenpunkt öffne nur Objekt darin steht?

                                        8bbc3c70-4bf6-43f6-a54e-b8743fcb460f-image.png

                                        Gruß
                                        Oliver

                                        mickymM 1 Antwort Letzte Antwort
                                        0
                                        • O Oli

                                          @mickym
                                          ja, und wo trage ich das ein?

                                          Sorry, eine Frage habe ich trotzdem noch, kannst du mir sagen, warum der Eintrag der Tabelle im Exporer im Klartext kommt und wenn ich den Datenpunkt öffne nur Objekt darin steht?

                                          8bbc3c70-4bf6-43f6-a54e-b8743fcb460f-image.png

                                          mickymM Offline
                                          mickymM Offline
                                          mickym
                                          Most Active
                                          schrieb am zuletzt editiert von mickym
                                          #43

                                          @oli Wenn Du den Wert in einen Datenpunkt schreiben willst, musst Du das Objekt als JSON String abspeichern. Also vorher noch eine JSON Node vor die iobroker_out Node machen.

                                          Jeder Flow bzw. jedes Script, das ich hier poste implementiert jeder auf eigene Gefahr. Flows und Scripts können Fehler aufweisen und weder der Seitenbetreiber noch ich persönlich können hierfür haftbar gemacht werden. Das gleiche gilt für Empfehlungen aller Art.

                                          O 1 Antwort Letzte Antwort
                                          0
                                          Antworten
                                          • In einem neuen Thema antworten
                                          Anmelden zum Antworten
                                          • Älteste zuerst
                                          • Neuste zuerst
                                          • Meiste Stimmen


                                          Support us

                                          ioBroker
                                          Community Adapters
                                          Donate

                                          880

                                          Online

                                          32.5k

                                          Benutzer

                                          81.8k

                                          Themen

                                          1.3m

                                          Beiträge
                                          Community
                                          Impressum | Datenschutz-Bestimmungen | Nutzungsbedingungen | Einwilligungseinstellungen
                                          ioBroker Community 2014-2025
                                          logo
                                          • Anmelden

                                          • Du hast noch kein Konto? Registrieren

                                          • Anmelden oder registrieren, um zu suchen
                                          • Erster Beitrag
                                            Letzter Beitrag
                                          0
                                          • Home
                                          • Aktuell
                                          • Tags
                                          • Ungelesen 0
                                          • Kategorien
                                          • Unreplied
                                          • Beliebt
                                          • GitHub
                                          • Docu
                                          • Hilfe