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. Alexa Gerät auslesen und nutzen.

    NEWS

    • Neuer Blog: Fotos und Eindrücke aus Solingen

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

    • ioBroker goes Matter ... Matter Adapter in Stable

    Alexa Gerät auslesen und nutzen.

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

      Ich habe da einen skill Virtual Smart Home (VSH) installiert und mit Node-Red verbunden.
      Über die installierte Node node-red-contrib-virtual-smart-home : vsh-virtual-device
      Bei dem Klick in Alexa in dem Gerät als Switch eingestellt kommt folgendes raus.
      Screenshot 2025-06-21 135359.png
      wie kann man jetzt powerState: "ON" / powerState: "OFF" verarbeiten um daraus zb true und false oder den wert 1000 zu machen.

      Per Function Node komme ich weiter aber wie macht man aus powerState ON OFF dann zB true false oder 1000/1000 ?

      P 1 Reply Last reply Reply Quote 0
      • P
        peterfido @Aphofis last edited by

        @aphofis Der Change Node kann das. Statt setze die Funktion Ändere nehmen.

        638dc1bb-bcba-4203-b755-556f424de032-image.png

        1 Reply Last reply Reply Quote 0
        • Aphofis
          Aphofis last edited by Aphofis

          @peterfido
          Da kommt als Befehl leider nur object Object bei raus

          Screenshot 2025-06-21 181025.png
          Screenshot 2025-06-21 181043.png

          {"powerState":"OFF","source":"alexa","directive":"TurnOff","name":"Test Gerät","type":"SWITCH","rawDirective":{"directive":{"header":{"namespace":"Alexa.PowerController","name":"TurnOff","correlationToken":"SUdTVEs6AAE6AAg6eyJpZCI6ImQzNzU4OGVkLWFmZmUtNGIyYS05MGM1LTdlYzU4MTZlYjg1MyIsInVyaSI6Imh0dHBzOi8vZC1hY3JzLWV1LXAtN2EyLTIyNzM5YzhmLmV1LXdlc3QtMS5hbWF6b24uY29tOjk0NDQiLCJzZXNzaW9uSWQiOiI5N2M3ODA3OC1iZjVlLTQyZTMtYTZiMi01MjQ3MTg1MmQ4NjkifQ=="},"endpoint":{"endpointId":"vshd-c43862983eea1705"},"payload":{}}}}
          

          Das wird alles gesendet

          1 Reply Last reply Reply Quote 0
          • P
            peterfido last edited by peterfido

            @aphofis Hinter Deinem Hub fehlen die Devices.
            cb2ee4c2-b37c-430c-8b24-e9607df9198d-image.png

            Es gibt doch eine gute Hilfe zu den Nodes.
            1b419493-50dc-456c-848f-951e1b8cbe10-image.png

            Das rechte Skript:

            var newMsg = {
               payload: false
            }
            if (msg.on) {
               newMsg.payload = true;
            }
            
            return newMsg;
            

            Die linke Funktion:

            var nodeid = "HIER DIE NODE-ID VOM JEWEILIGEN DEVICE REIN";
            var ison=false;
            
            if (msg.payload > 0){
               ison=true;
            }
            
            var newMsg={
               payload: ''
            }
            
            newMsg.payload= {
               nodeid: nodeid,
               on: ison,
               }
            
            node.status({text:"on: "+ison});
            return newMsg;
            

            Die Node ID vom Device, welche in die Funktion eingetragen werden muss, steht unter Info, wenn die Node / das Device (in meinem Beispiel "Küchenlicht") markiert ist. Die wird benötigt, damit Alexa den Ist-Zustand bekommt und diesen in der App entsprechend anzeigen kann.

            43ec1ae3-565e-49a4-b04d-4ab39634308e-image.png

            Aphofis 1 Reply Last reply Reply Quote 0
            • Aphofis
              Aphofis @peterfido last edited by

              @peterfido

              Es funktioniert auch ohne Gerät und wird sauber von Alexa als Gerät erkannt.
              Ich frage, weil ich gerne Thermostate und Temp Sensoren abfragen möchte

              Screenshot 2025-06-22 135110.png

              [
                  {
                      "id": "c30dae8c9636a674",
                      "type": "vsh-virtual-device",
                      "z": "11e1d19459653027",
                      "name": "Test Gerät",
                      "topic": "payload",
                      "metadata": "",
                      "connection": "8707b9c1c29bf88f",
                      "template": "SWITCH",
                      "retrievable": false,
                      "passthrough": false,
                      "diff": false,
                      "filter": false,
                      "filterTopic": false,
                      "plan": "free",
                      "x": 210,
                      "y": 340,
                      "wires": [
                          [
                              "1d70f5f0c42697a6"
                          ]
                      ]
                  },
                  {
                      "id": "47540399b675ba15",
                      "type": "ioBroker out",
                      "z": "11e1d19459653027",
                      "name": "Test gerät",
                      "topic": "0_userdata.0.GordonX-Home.0.Test_Gerät",
                      "ack": "false",
                      "autoCreate": "false",
                      "stateName": "",
                      "role": "",
                      "payloadType": "",
                      "readonly": "",
                      "stateUnit": "",
                      "stateMin": "",
                      "stateMax": "",
                      "x": 740,
                      "y": 300,
                      "wires": []
                  },
                  {
                      "id": "2ad85599e4621d6a",
                      "type": "debug",
                      "z": "11e1d19459653027",
                      "name": "debug 10",
                      "active": true,
                      "tosidebar": true,
                      "console": false,
                      "tostatus": false,
                      "complete": "false",
                      "statusVal": "",
                      "statusType": "auto",
                      "x": 740,
                      "y": 360,
                      "wires": []
                  },
                  {
                      "id": "a61d04f354ef02ba",
                      "type": "function",
                      "z": "11e1d19459653027",
                      "name": "true",
                      "func": "msg.payload = true;\nreturn msg;",
                      "outputs": 1,
                      "timeout": 0,
                      "noerr": 0,
                      "initialize": "",
                      "finalize": "",
                      "libs": [],
                      "x": 490,
                      "y": 320,
                      "wires": [
                          [
                              "47540399b675ba15",
                              "2ad85599e4621d6a"
                          ]
                      ]
                  },
                  {
                      "id": "be68890204958124",
                      "type": "function",
                      "z": "11e1d19459653027",
                      "name": "false",
                      "func": "msg.payload = false;\nreturn msg;",
                      "outputs": 1,
                      "timeout": 0,
                      "noerr": 0,
                      "initialize": "",
                      "finalize": "",
                      "libs": [],
                      "x": 490,
                      "y": 360,
                      "wires": [
                          [
                              "2ad85599e4621d6a",
                              "47540399b675ba15"
                          ]
                      ]
                  },
                  {
                      "id": "1d70f5f0c42697a6",
                      "type": "switch",
                      "z": "11e1d19459653027",
                      "name": "An/Aus",
                      "property": "payload.powerState",
                      "propertyType": "msg",
                      "rules": [
                          {
                              "t": "cont",
                              "v": "ON",
                              "vt": "str"
                          },
                          {
                              "t": "cont",
                              "v": "OFF",
                              "vt": "str"
                          }
                      ],
                      "checkall": "true",
                      "repair": false,
                      "outputs": 2,
                      "x": 360,
                      "y": 340,
                      "wires": [
                          [
                              "a61d04f354ef02ba"
                          ],
                          [
                              "be68890204958124"
                          ]
                      ]
                  },
                  {
                      "id": "8707b9c1c29bf88f",
                      "type": "vsh-connection",
                      "name": "web@gordonx.de",
                      "port": "8883",
                      "accessTokenExpiry": "1750509703126",
                      "debug": false,
                      "backendUrl": "https://kfd5m4a21f.execute-api.eu-west-1.amazonaws.com/dev",
                      "lwaClientId": "amzn1.application-oa2-client.3f1bb07133854b078261ad43f2484c18"
                  }
              ]
              

              P 1 Reply Last reply Reply Quote 0
              • S
                Skippy07 last edited by

                Hi, ich habe das so gelöst:

                FireShot Capture 139 - node-red-0 - MiniPC - 192.168.178.59.png

                FireShot Capture 140 - node-red-0 - MiniPC - 192.168.178.59.png

                Bei Anschalten eben "True" und ausschalten "False"

                Aphofis mickym 2 Replies Last reply Reply Quote 0
                • P
                  peterfido @Aphofis last edited by peterfido

                  @aphofis Normal simulieren die Hub-Nodes eine Hue Bridge. Pro Gerät ein Hue Bridge wäre wohl machbar. Allerdings kann nur eine davon den Port 80 bekommen.

                  Eine Bridge und zig Geräte dran ist der vorgesehene Weg.

                  1 Reply Last reply Reply Quote 0
                  • Aphofis
                    Aphofis last edited by

                    @peterfido
                    Ich habe nicht den Node installiert. Ich benutze virtual device
                    Screenshot 2025-06-22 195156.png
                    Das scheint anders zu laufen. Dort wird kein Port angegeben.
                    Es wird mit dem Alexa Skill virtual smart home verknüpft.

                    P 1 Reply Last reply Reply Quote 0
                    • Aphofis
                      Aphofis @Skippy07 last edited by

                      @skippy07 sagte in Alexa Gerät auslesen und nutzen.:

                      Hi, ich habe das so gelöst:

                      FireShot Capture 139 - node-red-0 - MiniPC - 192.168.178.59.png

                      FireShot Capture 140 - node-red-0 - MiniPC - 192.168.178.59.png

                      Bei Anschalten eben "True" und ausschalten "False"

                      Das habe ich so auch gelöst. nur wie kann man nun spezifische Temperatur Geräte einbinden und in alexa anzeigen lassen. Also zB einen Iob In node mit einem Datenpunkt eines Temp sensors den ich in alexa anzeigen lassen will bzw diesen dann per speak ausgeben lassen möchte.

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

                        @skippy07 sagte in Alexa Gerät auslesen und nutzen.:

                        Hi, ich habe das so gelöst:

                        FireShot Capture 139 - node-red-0 - MiniPC - 192.168.178.59.png

                        FireShot Capture 140 - node-red-0 - MiniPC - 192.168.178.59.png

                        Bei Anschalten eben "True" und ausschalten "False"

                        Was ich nicht verstehe, warum man den Flow verzweigen muss, wenn dann doch beide Äste an die gleiche Ausgabe geschickt werden.
                        Ausserdem ist das doch verkehrt, wenn man true, false als String in die Ausgabe schickt - das soll doch ein Boolean werden.
                        9550cac1-48db-4063-a7ea-30282390f929-image.png
                        Ich würde halt mal die Logik anpassen und dann kann man das Ganze in EINER Change Node abwickeln.

                        Als erstes würde ich halt mal die payload aus der Eigenschaft "powerState" des originellen Ausgangsobjekt selektieren und dann in ein Boolean umwandeln. Das kann entweder über Änderungsregeln oder JSONATA erfolgen.

                        1. Lösung:
                          f4cefc5f-0b28-4223-8dd8-271af4fa5fc9-image.png

                        2. Lösung mit JSONATA
                          47dcb395-f468-488d-9d0a-ee338efd1757-image.png

                        Aphofis 1 Reply Last reply Reply Quote 0
                        • P
                          peterfido @Aphofis last edited by peterfido

                          @aphofis Ah ok. Dann haben die die gleiche Optik, bauen aber auf eine Cloud auf. Da war ich falsch unterwegs.

                          Ich nutze die ohne Cloud, welche allerdings nur Lampen emulieren können. Aber irgendwas ist ja immer. 😁

                          @mickym ist ein Profi, was mindestens Node-Red betrifft.

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

                            @mickym
                            Das teste ich mal, sobald ich zu Hause bin. Bin momentan aud Montage auf Sylt am We werde ich das mal ausprobieren. Klingt aber auch logisch. Das war ja das, was ich wissen wollte wie man die einzelen einträge abfragt und dann zB in true/false oder was auch immer umwandelt.
                            Danke für das aufzeigen des Weges.

                            1 Reply Last reply Reply Quote 0
                            • Aphofis
                              Aphofis @peterfido last edited by

                              @peterfido
                              Das stimmt wohl ! 👍 😊

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

                              Support us

                              ioBroker
                              Community Adapters
                              Donate

                              469
                              Online

                              31.8k
                              Users

                              80.0k
                              Topics

                              1.3m
                              Posts

                              4
                              13
                              251
                              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