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. Temperaturen über Node RED und Alexa abfragen!

    NEWS

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

    • ioBroker goes Matter ... Matter Adapter in Stable

    • Monatsrückblick - April 2025

    Temperaturen über Node RED und Alexa abfragen!

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

      @LaBamba
      Das mit dem neueren Gerät glaube ich eher nicht.
      Hast du auf allen 4 Geräten das Problem?

      ECHO2 Schlafzimmer ist der Name des Echo Dot?

      Funktioniert das Gerät "Temperatur Schlafzimmer" wenn du die Alexa-App nutzt?

      L 1 Reply Last reply Reply Quote 0
      • L
        LaBamba @Fenian last edited by LaBamba

        @Fenian
        Jetzt bekomme ich "Provider hat momentan leider Schwierigkeiten!"
        Ich habe es an unterschiedlichen Geräten probiert und immer die gleiche Antwort erhalten.

        Update nach einer halben Stunde!
        Ich bekomme übrigen 2 Geräte in Alexa angezeigt.
        1.JPG

        Jetzt akzeptiert der Provider meine Anfrage. Jedoch bekomme ich nur den Ton des Schaltens ausgegeben.

        In Node-RED wird aber jetzt alles schon einmal richtig angezeigt. Unter speak steht auch z.B. Es sind 25 Grad im Wohnzimmer. Nur die Sprachausgabe fehlt jetzt noch!
        Habe ich hier noch eine falsche Einstellung?
        1.JPG

        Eine Vermutung habe ich noch. Es könnte an den Einstellungen des Alexa 2.0 Adapter liegen. Welche Einstellungen habt ihr hier vorgenommen?
        Danke im voraus!

        Fenian 1 Reply Last reply Reply Quote 0
        • Fenian
          Fenian @LaBamba last edited by

          @LaBamba sagte in Temperaturen über Node RED und Alexa abfragen!:

          Eine Vermutung habe ich noch. Es könnte an den Einstellungen des Alexa 2.0 Adapter liegen. Welche Einstellungen habt ihr hier vorgenommen?
          Danke im voraus!

          Naja, ich hatte mal das Problem, dass ein Gerät immer nur sehr leise geantwortet hat.
          Damals hatte ich eine sehr niedrige Lautstärke im Adapter eingetragen- Ich bin von 1 bis 10 ausgegangen, die Angabe im Adapter ist allerdings in %.
          Nachdem ich da nichts mehr drin stehen hatte, war die Ansage laut und deutlich.

          Aber ob das gleich bei allen 4 Geräten der Fall ist?

          Ansonsten hänge mal ein Debug-Element hinter "Temperatur auslesen" und stelle "complete msg object" ein. Unter topic soltte so etwas wie: "alexa2.0.Echo-Devices.XXXXXXX.Commands.speak" stehen.

          L 1 Reply Last reply Reply Quote 0
          • L
            LaBamba @Fenian last edited by

            @Fenian
            Vielen, Vielen danke, es funktioniert! Für das xxxxxxx in alexa2.0.Echo-Devices.XXXXXXX.Commands.speak habe ich die Alexa ID Nummer eingesetzt.
            Jetzt habe ich nur noch eine Frage. Gibt es eine Möglichkeit sich nur von der angesprochenen Alexa die Antwort nach der Temperatur geben zu lassen?

            A 1 Reply Last reply Reply Quote 0
            • A
              Apropo @LaBamba last edited by

              @LaBamba Den Flow dafür hatte ostseereiter oben schon gepostet

              L 1 Reply Last reply Reply Quote 0
              • L
                LaBamba @Apropo last edited by LaBamba

                @Apropo
                Denn habe ich ja verwendet. Jedoch spricht immer nur eine Alexa zu mir. Also immer die Gleiche. Egal wo ich es abfrage.

                A 1 Reply Last reply Reply Quote 0
                • L
                  LaBamba @Fenian last edited by

                  @Fenian
                  Wie kann ich in deiner Programmierung
                  var device = msg.payload[0]
                  var str = msg.payload[1];
                  var res = str.substr(0,5);
                  msg.payload = Math.round(res);
                  msg.payload = "Es sind " + msg.payload + " Grad in der Küche";
                  msg.url = "";
                  var command = "alexa2.0.Echo-Devices." + device + ".Commands.speak"
                  msg.topic = command;
                  return msg;

                  Die Genauigkeit mit einer Nachkommastelle aufrufen?

                  T 1 Reply Last reply Reply Quote 0
                  • A
                    Apropo @LaBamba last edited by

                    @LaBamba Bei mir antwortet damit die Alexa die ich auch anspreche. Habe eine Verzögerung von 1000 eingestellt.

                    L 1 Reply Last reply Reply Quote 0
                    • L
                      LaBamba @Apropo last edited by

                      @Apropo
                      Ich habe es schon mit verschiedenen Verzögerungen probiert. Jedoch antwortet immer nur eine Alexa.

                      1 Reply Last reply Reply Quote 0
                      • T
                        TorbenNW @LaBamba last edited by

                        @LaBamba
                        Nachkommastellen: Die Zeile mit Math.round löschen und mit "msg.payload = msg.payload.replace('.', ',');" ersetzen.

                        Fenian 1 Reply Last reply Reply Quote 0
                        • Fenian
                          Fenian @TorbenNW last edited by

                          Wenn du wirklich die ID fest eingetragen hast, kann ja auch nur dieses Gerät antworten.

                          Vielen, Vielen danke, es funktioniert! Für das xxxxxxx in alexa2.0.Echo-Devices.XXXXXXX.Commands.speak habe ich die Alexa ID Nummer eingesetzt.

                          @TorbenNW sagte in Temperaturen über Node RED und Alexa abfragen!:

                          @LaBamba
                          Nachkommastellen: Die Zeile mit Math.round löschen und mit "msg.payload = msg.payload.replace('.', ',');" ersetzen.

                          @LaBamba sagte in Temperaturen über Node RED und Alexa abfragen!:

                          Die Genauigkeit mit einer Nachkommastelle aufrufen?

                          Ich verstehe das eher so, dass er nur eine Nachkommastelle möchte.

                          Hier ist ein aktualisierter Flow, die Temperatur wird auf eine Nachkommastelle gerundet, In der Funktion "Temperatur auslesen" kannst die Nachkommastellen ändern, in dem du den Wert in den Klammern von "toFixed" änderst.

                          [
                              {
                                  "id": "ec7f4314.1eedc8",
                                  "type": "tab",
                                  "label": "Temperaturansagen",
                                  "disabled": false,
                                  "info": ""
                              },
                              {
                                  "id": "65deed5.6cc5594",
                                  "type": "amazon-echo-hub",
                                  "z": "ec7f4314.1eedc8",
                                  "port": "80",
                                  "enableinput": false,
                                  "x": 101,
                                  "y": 32,
                                  "wires": [
                                      [
                                          "80bb9b8e.7a2f"
                                      ]
                                  ]
                              },
                              {
                                  "id": "80bb9b8e.7a2f",
                                  "type": "amazon-echo-device",
                                  "z": "ec7f4314.1eedc8",
                                  "name": "Temperatur Schlafzimmer",
                                  "topic": "",
                                  "x": 317,
                                  "y": 32,
                                  "wires": [
                                      [
                                          "bdf3fc4.797e08"
                                      ]
                                  ]
                              },
                              {
                                  "id": "bdf3fc4.797e08",
                                  "type": "delay",
                                  "z": "ec7f4314.1eedc8",
                                  "name": "",
                                  "pauseType": "delay",
                                  "timeout": "1000",
                                  "timeoutUnits": "milliseconds",
                                  "rate": "1",
                                  "nbRateUnits": "1",
                                  "rateUnits": "second",
                                  "randomFirst": "1",
                                  "randomLast": "5",
                                  "randomUnits": "seconds",
                                  "drop": false,
                                  "x": 544,
                                  "y": 32,
                                  "wires": [
                                      [
                                          "d2824f5f.c71228",
                                          "6c8128bc.8f56f"
                                      ]
                                  ]
                              },
                              {
                                  "id": "d2824f5f.c71228",
                                  "type": "ioBroker get",
                                  "z": "ec7f4314.1eedc8",
                                  "name": "serialNumber",
                                  "topic": "alexa2.0.History.serialNumber",
                                  "attrname": "payload",
                                  "payloadType": "value",
                                  "x": 765,
                                  "y": 33,
                                  "wires": [
                                      [
                                          "e6f6d7b0.3c86d8"
                                      ]
                                  ]
                              },
                              {
                                  "id": "6c8128bc.8f56f",
                                  "type": "ioBroker get",
                                  "z": "ec7f4314.1eedc8",
                                  "name": "temperature",
                                  "topic": "deconz.0.Sensors.39.temperature",
                                  "attrname": "payload",
                                  "payloadType": "value",
                                  "x": 753.5,
                                  "y": 80,
                                  "wires": [
                                      [
                                          "e6f6d7b0.3c86d8"
                                      ]
                                  ]
                              },
                              {
                                  "id": "e6f6d7b0.3c86d8",
                                  "type": "join",
                                  "z": "ec7f4314.1eedc8",
                                  "name": "",
                                  "mode": "custom",
                                  "build": "array",
                                  "property": "payload",
                                  "propertyType": "msg",
                                  "key": "topic",
                                  "joiner": "\\n",
                                  "joinerType": "str",
                                  "accumulate": false,
                                  "timeout": "",
                                  "count": "2",
                                  "reduceRight": false,
                                  "reduceExp": "",
                                  "reduceInit": "",
                                  "reduceInitType": "",
                                  "reduceFixup": "",
                                  "x": 1097,
                                  "y": 34,
                                  "wires": [
                                      [
                                          "dcda6519.e5d8"
                                      ]
                                  ]
                              },
                              {
                                  "id": "dcda6519.e5d8",
                                  "type": "function",
                                  "z": "ec7f4314.1eedc8",
                                  "name": "Temperatur auslesen",
                                  "func": "var device = msg.payload[0]\nvar str = msg.payload[1];\ntemperature = parseFloat(str).toFixed(1);\nmsg.payload = \"Es sind \" + temperature + \" Grad im Schlafzimmer\";\nmsg.url = \"\";\nvar command = \"alexa2.0.Echo-Devices.\" + device + \".Commands.speak\"\nmsg.topic = command;\nreturn msg;\n",
                                  "outputs": 1,
                                  "noerr": 0,
                                  "x": 1270,
                                  "y": 34,
                                  "wires": [
                                      [
                                          "e004e70b.81ef58",
                                          "3618a2a9.f1e2a6"
                                      ]
                                  ]
                              },
                              {
                                  "id": "e004e70b.81ef58",
                                  "type": "ioBroker out",
                                  "z": "ec7f4314.1eedc8",
                                  "name": "speak",
                                  "topic": "",
                                  "ack": "false",
                                  "autoCreate": "false",
                                  "x": 1441.5,
                                  "y": 34,
                                  "wires": []
                              },
                              {
                                  "id": "3618a2a9.f1e2a6",
                                  "type": "debug",
                                  "z": "ec7f4314.1eedc8",
                                  "name": "",
                                  "active": true,
                                  "tosidebar": true,
                                  "console": false,
                                  "tostatus": false,
                                  "complete": "false",
                                  "x": 1425,
                                  "y": 138,
                                  "wires": []
                              }
                          ]
                          
                          L 1 Reply Last reply Reply Quote 1
                          • L
                            LaBamba @Fenian last edited by

                            @Fenian

                            Danke, es hat ein paar Tage gedauert aber nun läuft es. Irgendwie habe ich aber anscheinend immer wieder Aussetzer mit der DB Verbindung bei Node-Red.
                            Darf ich dich mal Fragen wie du deine Schaltvorgänge in Node RED verknüpfst.
                            Ich hatte ca. 250 mit Alexa Local Node gemacht.
                            1.JPG
                            Es funktioniert generell. Jedoch seit einiger Zeit findet die Gerätesuche auf Alexa keine neuen Geräte mehr. Das ist echt nervig!

                            ostseereiter 1 Reply Last reply Reply Quote 0
                            • ostseereiter
                              ostseereiter @LaBamba last edited by

                              @LaBamba
                              Wenn du in Node Red was an Alexa übergeben willst am besten erst den Adapter neu starten und dann die Geräte suchen lassen.

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

                                So der Flow zum abfragen läuft schon mal 1a, könnte ich hier kombinieren ? Wenn ich Frage, Alexa wie ist die Temperatur das sie dann die Temp sagt und anschließen die Luftfeuchte ? Hab den Code von @Fenian

                                [
                                    {
                                        "id": "3ff22dd8.7fec9a",
                                        "type": "tab",
                                        "label": "Temperaturansagen",
                                        "disabled": false,
                                        "info": ""
                                    },
                                    {
                                        "id": "ffc59ffe.a9a58",
                                        "type": "amazon-echo-hub",
                                        "z": "3ff22dd8.7fec9a",
                                        "port": "80",
                                        "enableinput": false,
                                        "x": 100,
                                        "y": 64,
                                        "wires": [
                                            [
                                                "60cd043e.a012ec"
                                            ]
                                        ]
                                    },
                                    {
                                        "id": "60cd043e.a012ec",
                                        "type": "amazon-echo-device",
                                        "z": "3ff22dd8.7fec9a",
                                        "name": "Temperatur Schlafzimmer",
                                        "topic": "",
                                        "x": 330,
                                        "y": 64,
                                        "wires": [
                                            [
                                                "880ed474.c7dfb8",
                                                "7cb2ff99.6c53d"
                                            ]
                                        ]
                                    },
                                    {
                                        "id": "880ed474.c7dfb8",
                                        "type": "ioBroker get",
                                        "z": "3ff22dd8.7fec9a",
                                        "name": "serialNumber",
                                        "topic": "alexa2.0.History.serialNumber",
                                        "attrname": "payload",
                                        "payloadType": "value",
                                        "x": 565,
                                        "y": 64,
                                        "wires": [
                                            [
                                                "af872fed.2e36d"
                                            ]
                                        ]
                                    },
                                    {
                                        "id": "7cb2ff99.6c53d",
                                        "type": "ioBroker get",
                                        "z": "3ff22dd8.7fec9a",
                                        "name": "Raumklima Schlafzimmer temperature",
                                        "topic": "deconz.0.Sensors.39.temperature",
                                        "attrname": "payload",
                                        "payloadType": "value",
                                        "x": 633.5,
                                        "y": 111,
                                        "wires": [
                                            [
                                                "af872fed.2e36d"
                                            ]
                                        ]
                                    },
                                    {
                                        "id": "af872fed.2e36d",
                                        "type": "join",
                                        "z": "3ff22dd8.7fec9a",
                                        "name": "",
                                        "mode": "custom",
                                        "build": "array",
                                        "property": "payload",
                                        "propertyType": "msg",
                                        "key": "topic",
                                        "joiner": "\\n",
                                        "joinerType": "str",
                                        "accumulate": false,
                                        "timeout": "",
                                        "count": "2",
                                        "reduceRight": false,
                                        "reduceExp": "",
                                        "reduceInit": "",
                                        "reduceInitType": "",
                                        "reduceFixup": "",
                                        "x": 880,
                                        "y": 65,
                                        "wires": [
                                            [
                                                "5517ab3.6b2e7d4"
                                            ]
                                        ]
                                    },
                                    {
                                        "id": "5517ab3.6b2e7d4",
                                        "type": "function",
                                        "z": "3ff22dd8.7fec9a",
                                        "name": "Temperatur auslesen",
                                        "func": "var device = msg.payload[0]\nvar str = msg.payload[1];\nvar res = str.substr(0, 5);\nmsg.payload = Math.round(res);\nmsg.payload = \"Es sind \" + msg.payload + \" Grad im Schlafzimmer\";\nmsg.url = \"\";\nvar command = \"alexa2.0.Echo-Devices.\" + device + \".Commands.speak\"\nmsg.topic = command;\nreturn msg;\n",
                                        "outputs": 1,
                                        "noerr": 0,
                                        "x": 1053,
                                        "y": 65,
                                        "wires": [
                                            [
                                                "90bca55d.0d3348"
                                            ]
                                        ]
                                    },
                                    {
                                        "id": "90bca55d.0d3348",
                                        "type": "ioBroker out",
                                        "z": "3ff22dd8.7fec9a",
                                        "name": "speak",
                                        "topic": "",
                                        "ack": "false",
                                        "autoCreate": "false",
                                        "x": 1224.5,
                                        "y": 65,
                                        "wires": []
                                    }
                                ]
                                
                                
                                F 1 Reply Last reply Reply Quote 0
                                • F
                                  frankyboy73 @D3ltoroxp last edited by

                                  @D3ltoroxp
                                  Ja, das geht, einfach noch mit ner Get Node die Luftfeuchte abfragen, dann aber bei Atribute was anderes als payload eintragen und das dann als Variable mit in den Text eintragen.
                                  Meine Lösung sieht so aus.

                                  [
                                      {
                                          "id": "a4b2c539.1cc178",
                                          "type": "ioBroker get",
                                          "z": "f4971799.ec9a88",
                                          "name": "Temperatur Schalfen",
                                          "topic": "0_userdata.0.Korrektur.Temperatur_Schlafen",
                                          "attrname": "payload",
                                          "payloadType": "value",
                                          "x": 220,
                                          "y": 420,
                                          "wires": [
                                              [
                                                  "355a80e9.515da"
                                              ]
                                          ]
                                      },
                                      {
                                          "id": "e5ab3971.1bd0d8",
                                          "type": "function",
                                          "z": "f4971799.ec9a88",
                                          "name": "speak",
                                          "func": "msg.payload = Math.round(msg.payload * 10) / 10;\nmsg.hue = Math.round(msg.hue);\nvar temp = msg.payload;\nvar hue = msg.hue\nmsg.payload = ' Die Temperatur im Schlafzimmer beträgt ' + temp + ' Grad;' + ' Die Luftfeuchtigkeit liegt bei' + hue + ' Prozent';\nreturn msg;",
                                          "outputs": 1,
                                          "noerr": 0,
                                          "x": 630,
                                          "y": 420,
                                          "wires": [
                                              [
                                                  "a23ad8e5.f3d738"
                                              ]
                                          ]
                                      },
                                      {
                                          "id": "355a80e9.515da",
                                          "type": "ioBroker get",
                                          "z": "f4971799.ec9a88",
                                          "name": "Feuchte Schlafen",
                                          "topic": "deconz.0.Sensors.22.humidity",
                                          "attrname": "hue",
                                          "payloadType": "value",
                                          "x": 450,
                                          "y": 420,
                                          "wires": [
                                              [
                                                  "e5ab3971.1bd0d8"
                                              ]
                                          ]
                                      },
                                      {
                                          "id": "a23ad8e5.f3d738",
                                          "type": "ioBroker get",
                                          "z": "f4971799.ec9a88",
                                          "name": "serialNumber",
                                          "topic": "alexa2.0.History.serialNumber",
                                          "attrname": "topic",
                                          "payloadType": "value",
                                          "x": 800,
                                          "y": 420,
                                          "wires": [
                                              [
                                                  "efbeb8f1.cd9808"
                                              ]
                                          ]
                                      },
                                      {
                                          "id": "efbeb8f1.cd9808",
                                          "type": "function",
                                          "z": "f4971799.ec9a88",
                                          "name": "Echo Ausgabe",
                                          "func": "\n\nmsg.topic = 'alexa2.0.Echo-Devices.' + \n\n    msg.topic + '.Commands.speak';\n\nreturn msg;\n",
                                          "outputs": 1,
                                          "noerr": 0,
                                          "x": 980,
                                          "y": 420,
                                          "wires": [
                                              [
                                                  "3e5d48e8.73bec8"
                                              ]
                                          ]
                                      },
                                      {
                                          "id": "3e5d48e8.73bec8",
                                          "type": "ioBroker out",
                                          "z": "f4971799.ec9a88",
                                          "name": "",
                                          "topic": "",
                                          "ack": "false",
                                          "autoCreate": "false",
                                          "x": 1140,
                                          "y": 420,
                                          "wires": []
                                      }
                                  ]
                                  
                                  1 Reply Last reply Reply Quote 0
                                  • D3ltoroxp
                                    D3ltoroxp last edited by D3ltoroxp

                                    Vielen Dank,
                                    ich hatte das jetzt über ioBroker und Alexa gelöst, mit NodeRed als Trigger. Das klappt soweit auch wunderbar. Dennoch vielen Dank.

                                    Basti97 1 Reply Last reply Reply Quote 0
                                    • Basti97
                                      Basti97 Most Active @D3ltoroxp last edited by

                                      @d3ltoroxp Ich hänge gerade auch bei node red. Wie muss ich das Programmieren wenn ich Frage wie hoch ist die Temperatur und sie sagt 23Grad zum Beispiel.

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

                                        @basti97 Na Du hast einen Trigger - der DEinen Flow startet - wohl eine Alexa Node.
                                        Dann fragst Du Deinen Datenpunkt ab und schickst es an den DAtenpunkt als Text der die Sprachausgabe macht. So was ähnliches habe ich gerade in dem Thread gemacht. Allerdings weiß ich ja nicht, ob ihr hier die gleichen Nodes verwendet.

                                        Basti97 2 Replies Last reply Reply Quote 0
                                        • Basti97
                                          Basti97 Most Active @mickym last edited by

                                          @mickym Mhh ich wollte das auch über Blockly machen aber dort sagt Alexa "das weiß ich leider nicht".
                                          4c4dd0dd-8626-4892-84d5-cbb6ae418d12-grafik.png

                                          A 1 Reply Last reply Reply Quote 0
                                          • A
                                            Apropo @Basti97 last edited by

                                            @basti97 Du musst dazu noch in Alexa eine Routine erstellen mit Aktion 5 Sekunden warten. Dann sollte die Meldung nicht kommen.

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

                                            Support us

                                            ioBroker
                                            Community Adapters
                                            Donate

                                            578
                                            Online

                                            31.7k
                                            Users

                                            79.6k
                                            Topics

                                            1.3m
                                            Posts

                                            15
                                            109
                                            13168
                                            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