Mal wieder virtuelle Geräte - jetzt aber richtig!

Ahoi Zusammen,
das klappt ganz wunderbar. Vielen Dank für die gute Arbeit. Gibt es irgendwo noch Informationen für die “Attributes”,
z.B. für was ist:

  • Instance
  • editable
  • state
  • based_on
  • data

und kann es noch mehr geben?

wie kann ich denn hier die Reihenfolge bestimmen? In Json ist es so wie ich es gerne hätte - erst den Status und dann den Batteriestatus - im Home ist es aber genau umgekehrt.

Danke und Gruß
Tobi

  • Instance
    kannst du nutzen, wenn du von einem Typ (z. B. summierter Stromverbrauch mehrere Instanzen angeben willst. Bei nur einem Messwert an dem Gerät kann die Zahl hinter Instanz auf 0 gestellt werden)

  • editable
    bedeutet einfach nur, ob du in der homee App den Wert für die ID anpassbar machen willst

  • state
    Verstehe ich als "ist das Gerät hinter der ID aktiviert oder nicht

Vieles sieht man im Node Red, wenn man die Werte einfach mal ausprobiert. Fixe Infos hab ich noch nicht gefunden, die Kollegen @Micha, @medicus07, @coffeelover und viele anderen arbeiten aber an einem Wiki und YouTube Videos.

1 „Gefällt mir“

Hier der Link zum Wiki. WIKI: Virtuelle Geräte via hih

Gerne ergänzen.

:coffee:

kurze Zwischenfrage und OT… bringt der Tradfri repeater was?

Kann man das Ganze eigentlich auch umgekehrt machen? Also Geräte aus dem homee in node Red einbinden??

ja
ist in Michas Youtube Videos auch gut beschrieben:

Wo bekommt ihr die Funktionen her?
Gibt es eine Seite? Internetsuche? Selbst erstellt?

Welche Funktionen meinst du?

Wie man Daten vom homee node abgreift (echte Geräte) und diese dann mittels Funktion in NR weiterverarbeitet?

Moin zusammen,

kurze Frage:
Ich versuche in Node Red ein Objekt mit einer Value, welches im ioBroker ist, per hih zu erstellen.

Mein Problem ist, die Value ist true/false und ich brauche für hih 1/0.
Jetzt dachte ich okay mit dem Change Node ändere ich payload true in 1 usw.

jetzt sagt mir das debug fenster vom homeedevice node aber „id und value müssen nummern sein“

hab ich irgendeinen Denkfehler?

Du kannst im change node einstellen, wie der Wert rausgehen soll. Oder noch mit einem JSON node umwandeln.

Ich meine die Funktionen, die in den Funktionsbaustein eingetragen werden. Z.B. wie bei @Micha im Video #3 7:00 Minuten (RGB Funktion).

Man findet einige Hinweise im Internet, die man dann in Funktionen einbauen kann… letztlich muss man aber die Funktionen selber bauen.

Wenn man etwas drin ist, schafft man es zumindest die Funktionen zu verstehen, was im Ablauf genau passiert.

Kleinere Funktionen kann ich mittlerweile auch selber schreiben, wohl ich ziemlich fachfremd bin.

Die RGB-Funktion hat @Micha gebaut, Das ist schon sehr komplex und das können auch nur er und @stfnhmplr:see_no_evil::wink:

Aber man hilft sich gegenseitig und wurschtelt sich so durch… :stuck_out_tongue_winking_eye:
Vielleicht sprichst du @Micha mal per PN auf den Slack-Channel an, da kann man sich einfacher und wirklich gut über diese Thematik austauschen und die Lösungen werden gefunden.

3 „Gefällt mir“

Hat schon jemand von euch die Xiaomi/Aqara Sensoren ohne MQTT eingerichtet? Das läuft mit dem deConz System von Dresden Elektronik super. Die Sensoren werden an dem deConz Controller (Raspberry mit shield oder Stick) angelernt und können dann per ioBroker Adapter in Node Red und die bekannten Wege ins Homee System gezogen werden. Funktioniert super!

ich habe eine Frage, ich hab diverse LIFX LAmpen über Node Red nach Homee gebracht

Im Homee hab ich einige Lampen in eine Gruppe gepackt, und kann sie nun gemeinsam über die Gruppe schalten. Allerdings kann ich nicht in der Gruppe die Farbe ändern, die Gruppenfunktion bietet das gar nicht an. Hier muss ich in die einzelnen Geräte gehen

Hat da jemand eine Idee?

Hallo @witdan,

versuche gerade, einen Aqara Tür-/Fenstersensor über ioBroker und NodeRed sowie hih in homee zu bringen. Hast du einen bestehenden Flow genommen oder einen eigenen geschrieben ?

Bei mir bekomme ich immer die Fehlermeldung, dass ID und Value numeric sein müssen. @Speedo hatte weiter oben von dem gleichen Thema berichtet. Change node habe ich auch schon versucht, ändert aber leider nix an den Fehlermeldung :frowning:

Kannst du uns mal den payload senden mit dem du das vhih Geräte fütterst ?

Bei mir kommt der Sensor vom deCONZ Gateway und das ist im ioBroker als Objekt ansprechbar.

[
    {
        "id": "6d5fda25.77cadc",
        "type": "tab",
        "label": "Flow 1",
        "disabled": false,
        "info": ""
    },
    {
        "id": "dbf3d6f.f9345a8",
        "type": "ioBroker in",
        "z": "6d5fda25.77cadc",
        "name": "Temperatur Flur UG",
        "topic": "deconz.0.Sensors.7.temperature",
        "payloadType": "value",
        "onlyack": "",
        "func": "all",
        "gap": "",
        "x": 190,
        "y": 200,
        "wires": [
            [
                "c945bf30.f1f718"
            ]
        ]
    },
    {
        "id": "c945bf30.f1f718",
        "type": "function",
        "z": "6d5fda25.77cadc",
        "name": "Umwandeln",
        "func": "var payload =\n{\n    \"id\":43,\n    \"value\": parseFloat(msg.payload)\n}\nmsg.payload=payload\nreturn msg;",
        "outputs": 1,
        "noerr": 0,
        "x": 480,
        "y": 200,
        "wires": [
            [
                "c82343da.1b6558"
            ]
        ]
    },
    {
        "id": "c82343da.1b6558",
        "type": "homeeDevice",
        "z": "6d5fda25.77cadc",
        "virtual-homee": "",
        "name": "Sensor Flur UG",
        "nodeId": "401",
        "profile": "3001",
        "icon": "nodeicon_temperature",
        "attributes": "[{\"id\":43,\"node_id\":401,\"instance\":0,\"minimum\":0,\"maximum\":50,\"current_value\":20,\"target_value\":23,\"last_value\":21,\"unit\":\"%C2%B0C\",\"step_value\":0.5,\"editable\":0,\"type\":5,\"state\":1,\"last_changed\":1572966224,\"changed_by\":1,\"changed_by_id\":0,\"based_on\":4,\"data\":\"\"},{\"id\":44,\"node_id\":401,\"instance\":0,\"minimum\":0,\"maximum\":100,\"current_value\":49,\"target_value\":49,\"last_value\":48,\"unit\":\"%25\",\"step_value\":1,\"editable\":0,\"type\":7,\"state\":1,\"last_changed\":1572966224,\"changed_by\":1,\"changed_by_id\":0,\"based_on\":4,\"data\":\"\"},{\"id\":45,\"node_id\":401,\"instance\":0,\"minimum\":260,\"maximum\":1160,\"current_value\":993.299,\"target_value\":993.299,\"last_value\":1018,\"unit\":\"hPa\",\"step_value\":5,\"editable\":0,\"type\":94,\"state\":1,\"last_changed\":1572966224,\"changed_by\":1,\"changed_by_id\":0,\"based_on\":4,\"data\":\"\"}]",
        "x": 710,
        "y": 200,
        "wires": [
            []
        ]
    },
    {
        "id": "a73ebb61.87fea",
        "type": "ioBroker in",
        "z": "6d5fda25.77cadc",
        "name": "Luftfeuchtigkeit Flur UG",
        "topic": "deconz.0.Sensors.8.humidity",
        "payloadType": "value",
        "onlyack": "",
        "func": "all",
        "gap": "",
        "x": 190,
        "y": 260,
        "wires": [
            [
                "9b36fd5f.bfd008"
            ]
        ]
    },
    {
        "id": "9b36fd5f.bfd008",
        "type": "function",
        "z": "6d5fda25.77cadc",
        "name": "Umwandeln",
        "func": "var payload =\n{\n    \"id\":44,\n    \"value\": parseFloat(msg.payload)\n}\nmsg.payload=payload\nreturn msg;",
        "outputs": 1,
        "noerr": 0,
        "x": 480,
        "y": 260,
        "wires": [
            [
                "c82343da.1b6558"
            ]
        ]
    },
    {
        "id": "b99ba894.317598",
        "type": "ioBroker in",
        "z": "6d5fda25.77cadc",
        "name": "Luftdruck Flur UG",
        "topic": "deconz.0.Sensors.9.pressure",
        "payloadType": "value",
        "onlyack": "",
        "func": "all",
        "gap": "",
        "x": 190,
        "y": 320,
        "wires": [
            [
                "ce030a81.d8e4e8"
            ]
        ]
    },
    {
        "id": "ce030a81.d8e4e8",
        "type": "function",
        "z": "6d5fda25.77cadc",
        "name": "Umwandeln",
        "func": "var payload =\n{\n    \"id\":45,\n    \"value\": parseFloat(msg.payload)\n}\nmsg.payload=payload\nreturn msg;",
        "outputs": 1,
        "noerr": 0,
        "x": 470,
        "y": 320,
        "wires": [
            [
                "c82343da.1b6558"
            ]
        ]
    }
]

@witdan danke!

@Micha
mein Flow sieht so aus …

[
    {
        "id": "c1b47614.638f28",
        "type": "ioBroker in",
        "z": "8219ce3c.ee6a48",
        "name": "Briefkasten/opened",
        "topic": "zigbee.0.00158d00041fdb24.opened",
        "payloadType": "value",
        "onlyack": "",
        "func": "all",
        "gap": "",
        "x": 150,
        "y": 540,
        "wires": [
            [
                "922bce24.c69af8"
            ]
        ]
    },
    {
        "id": "922bce24.c69af8",
        "type": "json",
        "z": "8219ce3c.ee6a48",
        "name": "",
        "property": "payload",
        "action": "",
        "pretty": false,
        "x": 350,
        "y": 540,
        "wires": [
            [
                "c2c1e5ae.7a129"
            ]
        ]
    },
    {
        "id": "c2c1e5ae.7a129",
        "type": "change",
        "z": "8219ce3c.ee6a48",
        "name": "",
        "rules": [
            {
                "t": "change",
                "p": "payload",
                "pt": "msg",
                "from": "true",
                "fromt": "bool",
                "to": "1",
                "tot": "num"
            },
            {
                "t": "change",
                "p": "payload",
                "pt": "msg",
                "from": "false",
                "fromt": "bool",
                "to": "0",
                "tot": "num"
            }
        ],
        "action": "",
        "property": "",
        "from": "",
        "to": "",
        "reg": false,
        "x": 540,
        "y": 540,
        "wires": [
            [
                "8fadb81a.be966"
            ]
        ]
    },
    {
        "id": "8fadb81a.be966",
        "type": "homeeDevice",
        "z": "8219ce3c.ee6a48",
        "virtual-homee": "ae671808.3ec348",
        "name": "40/Briefkasten",
        "nodeId": "40",
        "profile": "2000",
        "icon": "default",
        "attributes": "[{\"id\":40,\"node_id\":40,\"instance\":0,\"minimum\":0,\"maximum\":1,\"current_value\":0,\"target_value\":0,\"last_value\":0,\"unit\":\"\",\"step_value\":1,\"editable\":0,\"type\":14,\"state\":1,\"last_changed\":1572873723,\"changed_by\":1,\"changed_by_id\":0,\"based_on\":1,\"data\":\"\"},{\"id\":41,\"node_id\":40,\"instance\":0,\"minimum\":0,\"maximum\":2,\"current_value\":1,\"target_value\":1,\"last_value\":0,\"unit\":\"n%2Fa\",\"step_value\":1,\"editable\":0,\"type\":10,\"state\":1,\"last_changed\":1572873723,\"changed_by\":1,\"changed_by_id\":0,\"based_on\":1,\"data\":\"\"}]",
        "x": 760,
        "y": 540,
        "wires": [
            []
        ]
    },
    {
        "id": "ae671808.3ec348",
        "type": "virtualHomee",
        "z": "",
        "name": "5ABC"
    }
]

Hab den hier als Basis genommen.

So klappt das nicht , du musst den value also deine 1 oder 0 nach dem folgenden Format an das vhih Node senden
{“id”:000,“value”:1}

Probiere es mal mit diesem Change Node

[
    {
        "id": "598ce5e1.4e511c",
        "type": "change",
        "z": "ae11cf02.b83c1",
        "name": "",
        "rules": [
            {
                "t": "change",
                "p": "payload",
                "pt": "msg",
                "from": "true",
                "fromt": "bool",
                "to": "{\"id\":40,\"value\":1}",
                "tot": "json"
            },
            {
                "t": "change",
                "p": "payload",
                "pt": "msg",
                "from": "false",
                "fromt": "bool",
                "to": "{\"id\":40,\"value\":0}",
                "tot": "json"
            }
        ],
        "action": "",
        "property": "",
        "from": "",
        "to": "",
        "reg": false,
        "x": 560,
        "y": 260,
        "wires": [
            [
                "8b1957d1.5a72b8"
            ]
        ]
    }
]

Was mich an deiner Funktion wundert ist der Json Node . Ich selber Nutze die Aquara nicht und weiß auch nicht was die aus dem iobroker für Werte liefern.
VG