Navigation

    Logo
    • Register
    • Login
    • Search
    • Recent
    • Tags
    • Unread
    • Categories
    • Unreplied
    • Popular
    • GitHub
    • Docu
    • Hilfe
    1. Home
    2. Deutsch
    3. Skripten / Logik
    4. Node-Red
    5. Shelly Adapter command via nodered

    NEWS

    • ioBroker@Smart Living Forum Solingen, 14.06. - Agenda added

    • ioBroker goes Matter ... Matter Adapter in Stable

    • Monatsrückblick - April 2025

    Shelly Adapter command via nodered

    This topic has been deleted. Only users with topic management privileges can see it.
    • mickym
      mickym Most Active last edited by mickym

      Wenn Du sowas mehrfach variabel halten möchtest, dann musst du halt mit einer JOIN Node alles in einem Objekt sammeln. Also um den unteren Flow noch zu erweitern. 😉

      Das turn = "on" lass ich mal fix, so dass nur die brightness und die transition time variabel gesetzt werden. Könnte man zwar auch variabel machen, macht aber logisch aus meiner Sicht keinen Sinn:

      Der Einfachheit halber habe ich auch das topic gleich den Eigenschaftsnamen genannt. Nachdem der Haken dann bei sende alle nachfolgenden gesetzt ist, wird immer das komplette Objekt geschickt, auch wenn sich nur noch ein Parameter ändert.

      a535702d-0fdb-4f8b-9575-1371d44d45cb-image.png

      [
         {
             "id": "bd08d95169c4cb7d",
             "type": "inject",
             "z": "289f539dcc33814e",
             "name": "",
             "props": [
                 {
                     "p": "payload"
                 },
                 {
                     "p": "topic",
                     "vt": "str"
                 }
             ],
             "repeat": "",
             "crontab": "",
             "once": false,
             "onceDelay": 0.1,
             "topic": "brightness",
             "payload": "20",
             "payloadType": "num",
             "x": 2390,
             "y": 3600,
             "wires": [
                 [
                     "73442e33512059b0"
                 ]
             ]
         },
         {
             "id": "4981a5c949e60d10",
             "type": "inject",
             "z": "289f539dcc33814e",
             "name": "",
             "props": [
                 {
                     "p": "payload"
                 },
                 {
                     "p": "topic",
                     "vt": "str"
                 }
             ],
             "repeat": "",
             "crontab": "",
             "once": false,
             "onceDelay": 0.1,
             "topic": "brightness",
             "payload": "50",
             "payloadType": "num",
             "x": 2390,
             "y": 3660,
             "wires": [
                 [
                     "73442e33512059b0"
                 ]
             ]
         },
         {
             "id": "4acd95c916c8cc19",
             "type": "inject",
             "z": "289f539dcc33814e",
             "name": "",
             "props": [
                 {
                     "p": "payload"
                 },
                 {
                     "p": "topic",
                     "vt": "str"
                 }
             ],
             "repeat": "",
             "crontab": "",
             "once": false,
             "onceDelay": 0.1,
             "topic": "brightness",
             "payload": "100",
             "payloadType": "num",
             "x": 2380,
             "y": 3720,
             "wires": [
                 [
                     "73442e33512059b0"
                 ]
             ]
         },
         {
             "id": "f128698ef305a957",
             "type": "change",
             "z": "289f539dcc33814e",
             "name": "",
             "rules": [
                 {
                     "t": "set",
                     "p": "payload.turn",
                     "pt": "msg",
                     "to": "on",
                     "tot": "str"
                 }
             ],
             "action": "",
             "property": "",
             "from": "",
             "to": "",
             "reg": false,
             "x": 2850,
             "y": 3760,
             "wires": [
                 [
                     "0fe290f2014716bf",
                     "18e24366718a11af"
                 ]
             ]
         },
         {
             "id": "0fe290f2014716bf",
             "type": "debug",
             "z": "289f539dcc33814e",
             "name": "Objekt um turn ergänzt",
             "active": true,
             "tosidebar": true,
             "console": false,
             "tostatus": false,
             "complete": "payload",
             "targetType": "msg",
             "statusVal": "",
             "statusType": "auto",
             "x": 3080,
             "y": 3820,
             "wires": []
         },
         {
             "id": "18e24366718a11af",
             "type": "json",
             "z": "289f539dcc33814e",
             "name": "",
             "property": "payload",
             "action": "",
             "pretty": false,
             "x": 3070,
             "y": 3760,
             "wires": [
                 [
                     "adca4bb4cdae4557"
                 ]
             ]
         },
         {
             "id": "adca4bb4cdae4557",
             "type": "debug",
             "z": "289f539dcc33814e",
             "name": "JSON String zum Datenpunkt",
             "active": true,
             "tosidebar": true,
             "console": false,
             "tostatus": false,
             "complete": "payload",
             "targetType": "msg",
             "statusVal": "",
             "statusType": "auto",
             "x": 3290,
             "y": 3760,
             "wires": []
         },
         {
             "id": "e06a553e3d2ef929",
             "type": "inject",
             "z": "289f539dcc33814e",
             "name": "",
             "props": [
                 {
                     "p": "payload"
                 },
                 {
                     "p": "topic",
                     "vt": "str"
                 }
             ],
             "repeat": "",
             "crontab": "",
             "once": false,
             "onceDelay": 0.1,
             "topic": "transition",
             "payload": "500",
             "payloadType": "num",
             "x": 2390,
             "y": 3800,
             "wires": [
                 [
                     "73442e33512059b0"
                 ]
             ]
         },
         {
             "id": "ad667579b8593bc8",
             "type": "inject",
             "z": "289f539dcc33814e",
             "name": "",
             "props": [
                 {
                     "p": "payload"
                 },
                 {
                     "p": "topic",
                     "vt": "str"
                 }
             ],
             "repeat": "",
             "crontab": "",
             "once": false,
             "onceDelay": 0.1,
             "topic": "transition",
             "payload": "1000",
             "payloadType": "num",
             "x": 2380,
             "y": 3860,
             "wires": [
                 [
                     "73442e33512059b0"
                 ]
             ]
         },
         {
             "id": "92804285f50de019",
             "type": "inject",
             "z": "289f539dcc33814e",
             "name": "",
             "props": [
                 {
                     "p": "payload"
                 },
                 {
                     "p": "topic",
                     "vt": "str"
                 }
             ],
             "repeat": "",
             "crontab": "",
             "once": false,
             "onceDelay": 0.1,
             "topic": "transition",
             "payload": "2000",
             "payloadType": "num",
             "x": 2380,
             "y": 3920,
             "wires": [
                 [
                     "73442e33512059b0"
                 ]
             ]
         },
         {
             "id": "73442e33512059b0",
             "type": "join",
             "z": "289f539dcc33814e",
             "name": "",
             "mode": "custom",
             "build": "object",
             "property": "payload",
             "propertyType": "msg",
             "key": "topic",
             "joiner": "\\n",
             "joinerType": "str",
             "accumulate": true,
             "timeout": "",
             "count": "2",
             "reduceRight": false,
             "reduceExp": "",
             "reduceInit": "",
             "reduceInitType": "",
             "reduceFixup": "",
             "x": 2570,
             "y": 3760,
             "wires": [
                 [
                     "4ba3ceab018fb93d",
                     "f128698ef305a957"
                 ]
             ]
         },
         {
             "id": "4ba3ceab018fb93d",
             "type": "debug",
             "z": "289f539dcc33814e",
             "name": "Objekt aus Variablen",
             "active": true,
             "tosidebar": true,
             "console": false,
             "tostatus": false,
             "complete": "payload",
             "targetType": "msg",
             "statusVal": "",
             "statusType": "auto",
             "x": 2780,
             "y": 3820,
             "wires": []
         }
      ]
      

      Du kannst das mit dem turn on und turn off auch variabel machen. Da es dem Shelly egal ist, wenn Du bei turn off auch noch brightness und transition mitschickst.

      S 1 Reply Last reply Reply Quote 0
      • S
        S84 @mickym last edited by

        @mickym vielen Dank dir.

        Momentan steuere ich den Shelly Datenpunkt xxx und setze ihn auf on.
        Diesem kann ich doch aber nicht das json übergeben, oder? An welchen shelly Datenpunkt schick ich also den Befehl?

        mickym 1 Reply Last reply Reply Quote 0
        • mickym
          mickym Most Active @S84 last edited by

          @s84 Ich habe Keine Ahnung vom Shelly Adapter - da ich das alles via mqtt mache. Ich denke, dass der Shelly alle Datenpunkt in skalare Werte zerlegt und keine JSONs aufnimmt.

          Vielleicht kann hier @haus-automatisierung, der meiner Kenntnis nach, diesen Adapter betreut was dazu sagen.

          Oder @da_Woody ist glaub auch ein Fan des Shelly Adapters.

          Wie gesagt, diesen JSON ist dafür gedacht, den an den command Datenpunkt via mqtt zu schicken,

          da_Woody haus-automatisierung 2 Replies Last reply Reply Quote 0
          • da_Woody
            da_Woody @mickym last edited by

            @mickym sagte in Shelly Adapter command via nodered:

            Oder @da_Woody ist glaub auch ein Fan des Shelly Adapters.

            das ja, allerdings hab ich 0 ahnung von nodered und was ihr da vor habt.

            @S84

            An welchen shelly Datenpunkt schick ich also den Befehl?

            ich denk mal, das wird so nicht funzen. du wirst die DPs einzeln ansprechen müssen.

            1 Reply Last reply Reply Quote 0
            • mickym
              mickym Most Active last edited by

              @S84

              @da_woody sagte in Shelly Adapter command via nodered:

              @mickym sagte in Shelly Adapter command via nodered:

              Oder @da_Woody ist glaub auch ein Fan des Shelly Adapters.

              das ja, allerdings hab ich 0 ahnung von nodered und was ihr da vor habt.

              @S84

              An welchen shelly Datenpunkt schick ich also den Befehl?

              ich denk mal, das wird so nicht funzen. du wirst die DPs einzeln ansprechen müssen.

              Ja ich denke auch, dass man in dem Adapter wohl alle Parameter einzeln einstellen muss. Das ist halt der Nachteil solcher Adapter, dass man da nicht mehrere Befehle aufeinmal schicken kann. 😉

              da_Woody 1 Reply Last reply Reply Quote 0
              • da_Woody
                da_Woody @mickym last edited by

                @mickym nuja, über eine visu, oder alexa kann ich schon mehrere DPs ansprechen. sonst könnte ich ja bei einem rgbw device nicht gleichzeitig einschalten und eine gewünschte farbe gleichzeitig machen.
                aber wie gesagt, ich les zwar manchmal nodered, kann damit aber nix anfangen. 🙂

                1 Reply Last reply Reply Quote 0
                • haus-automatisierung
                  haus-automatisierung Developer Most Active @mickym last edited by

                  @mickym sagte in Shelly Adapter command via nodered:

                  Ich denke, dass der Shelly alle Datenpunkt in skalare Werte zerlegt und keine JSONs aufnimmt.

                  Genau - am Ende das gleiche, was ein Sonoff-Adapter mit Tasmota-Geräten macht. Nur wahlweise über CoAP oder MQTT.

                  1 Reply Last reply Reply Quote 0
                  • S
                    S84 last edited by

                    Vielen Dank an alle!

                    Gibt es alternativ die Möglichkeit den shelly nicht über den Shelly Adapter mit dem Befehl zu steuern sondern über einen nodered Node der einen mqtt „Befehl“ schickt? Sorry, vielleicht stell ich mir das zu einfach vor. So in etwa: Angabe der ip des Shelly im Node und entgegennahme/Versand des jsons.

                    haus-automatisierung 1 Reply Last reply Reply Quote 0
                    • haus-automatisierung
                      haus-automatisierung Developer Most Active @S84 last edited by haus-automatisierung

                      @s84 Klar, schau einfach in die Shelly-Dokumentation, was die Geräte können und erwarten: https://shelly-api-docs.shelly.cloud

                      Eine IP-Adresse des Shellies brauchst Du bei MQTT aber nicht... das läuft ja alles über die jeweiligen Topics. Du musst nur den Shelly und auch Node-Red mit deinem MQTT-Broker verbinden (z.B. Mosquitto).

                      Also einfach dein JSON an das richtige Topic publishen, welches der Shelly kennt. Aber ich frage mich, warum man sich die Arbeit machen möchte... Ist ja nicht so, als ob der Adapter das nicht auch kann?!

                      Beispiele dafür hatte @mickym ja schon geteilt.

                      1 Reply Last reply Reply Quote 0
                      • S
                        S84 last edited by

                        Vielleicht denke ich auch zu kompliziert.
                        Eigentlich will ich dem Shelly ja nur sagen: schalte dich jetzt ein, Dimme dabei auf 30% und das mit 5 sek Transition. Wenn ich das über die einzelnen Datenpunkte mache und nacheinander setze, sehe ich, wie die Lampe nach dem Einschalten nachregelt.

                        mickym 1 Reply Last reply Reply Quote 0
                        • mickym
                          mickym Most Active @S84 last edited by

                          @s84 vielleicht erst die Parameter setzen und den Einschaltbefehl zum Schluss absetzen.

                          1 Reply Last reply Reply Quote 0
                          • First post
                            Last post

                          Support us

                          ioBroker
                          Community Adapters
                          Donate

                          980
                          Online

                          31.7k
                          Users

                          79.7k
                          Topics

                          1.3m
                          Posts

                          4
                          13
                          769
                          Loading More Posts
                          • Oldest to Newest
                          • Newest to Oldest
                          • Most Votes
                          Reply
                          • Reply as topic
                          Log in to reply
                          Community
                          Impressum | Datenschutz-Bestimmungen | Nutzungsbedingungen
                          The ioBroker Community 2014-2023
                          logo