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 goes Matter ... Matter Adapter in Stable

    • 15. 05. Wartungsarbeiten am ioBroker Forum

    • 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.
    • ostseereiter
      ostseereiter @Fenian last edited by

      @Fenian
      danke erst mal da ich 4 habe mache ich dann den selectDevice 4 mal. versuche ich dann mal wenn ich von der Nachtschicht daheim bin.

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

        @ostseereiter

        Es geht doch noch einfacher und bequemer:
        node-red-join_und_function.png

        Hier sind die Einstellungen für "join":
        node-red-join.png

        Und hier die angpasste Funktion "Temperatur auslesen":
        node-red-function.png

        Wichtig: Topic in "speak" muss leer sein. Das wird jetzt durch die Funktion gesetzt.

        Der Vorteil bei dieser Version liegt imho in der besseren Übersichtlichkeit und natürlich darin, dass ich keine Alexas von Hand mehr hinzufügen muss.

        Wannseesprinter 1 Reply Last reply Reply Quote 1
        • Fenian
          Fenian last edited by Fenian

          Und während ich hier so mit Screenshots um mich schmeisse, fällt mir wieder ein, dass es einfacher gewesen wäre den Flow zu exportieren und hier zu posten.

          [
              {
                  "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": []
              }
          ]
          

          Naja, manchmal hat man ein Brett vorm Kopf 😕

          ostseereiter L 2 Replies Last reply Reply Quote 1
          • ostseereiter
            ostseereiter @Fenian last edited by

            @Fenian
            Danke

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

              @Fenian ich habe erst mal dein Flow übernommen soweit läuft es auch nur manchmal wenn ich im Wohnzimmer frage antwortet der Echo im Flur oder fare ich die Küche antwortet das Wohnzimmer. Erst wenn ich zb zu erst eine andere Frage stelle und dann die Temperaturabfrage starte wird es vom gleichen Echo bearbeitet.

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

                @Fenian
                Hallo,
                danke für die Arbeit. Vor einigen Tagen hatte ich dieses Thema begonnen.
                Ich habe jetzt deinen Flow eingefügt.
                Ich bekomme immer von Alexa die Antwort ECHO2 Schlafzimmer unterstützt das nicht!
                An was könnte dies liegen?
                Ich nehme an du hast einen der ECHO3???

                Zudem bekomme ich folgende Fehlermeldung!
                1.JPG

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

                  @ostseereiter
                  Das Problem hatte ich zwar nicht, aber dann habe ich mal 2 Echos nebeneinander gestellt.
                  Dabei zeigte sich, dass in der History des Alexa2-Adapters alle Echos die reagieren, da auch der Reihe nach auftauchen.
                  Ich habe jetzt eine Verzögerung eingebaut (2000 ms). Das reichte bei mir um aus 3 reagierend Echos tatsächlich den eigentlich angesprochenen Echo für die Sprachausgabe zu nutzen.
                  Kannst ja mal mit der Verzögerung spielen, vielleicht geht es ja auch kürzer.

                  [
                      {
                          "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": [
                              [
                                  "844e7934.014538"
                              ]
                          ]
                      },
                      {
                          "id": "880ed474.c7dfb8",
                          "type": "ioBroker get",
                          "z": "3ff22dd8.7fec9a",
                          "name": "serialNumber",
                          "topic": "alexa2.0.History.serialNumber",
                          "attrname": "payload",
                          "payloadType": "value",
                          "x": 740,
                          "y": 65,
                          "wires": [
                              [
                                  "af872fed.2e36d"
                              ]
                          ]
                      },
                      {
                          "id": "7cb2ff99.6c53d",
                          "type": "ioBroker get",
                          "z": "3ff22dd8.7fec9a",
                          "name": "Temperature",
                          "topic": "deconz.0.Sensors.39.temperature",
                          "attrname": "payload",
                          "payloadType": "value",
                          "x": 732.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": 901,
                          "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": 1077,
                          "y": 65,
                          "wires": [
                              [
                                  "90bca55d.0d3348"
                              ]
                          ]
                      },
                      {
                          "id": "90bca55d.0d3348",
                          "type": "ioBroker out",
                          "z": "3ff22dd8.7fec9a",
                          "name": "speak",
                          "topic": "",
                          "ack": "false",
                          "autoCreate": "false",
                          "x": 1257.5,
                          "y": 65,
                          "wires": []
                      },
                      {
                          "id": "844e7934.014538",
                          "type": "delay",
                          "z": "3ff22dd8.7fec9a",
                          "name": "",
                          "pauseType": "delay",
                          "timeout": "2000",
                          "timeoutUnits": "milliseconds",
                          "rate": "1",
                          "nbRateUnits": "1",
                          "rateUnits": "second",
                          "randomFirst": "1",
                          "randomLast": "5",
                          "randomUnits": "seconds",
                          "drop": false,
                          "x": 540,
                          "y": 64,
                          "wires": [
                              [
                                  "880ed474.c7dfb8",
                                  "7cb2ff99.6c53d"
                              ]
                          ]
                      }
                  ]
                  
                  ostseereiter L 3 Replies Last reply Reply Quote 0
                  • ostseereiter
                    ostseereiter @Fenian last edited by

                    @Fenian ok werde ich probieren nach der Nachtschicht, Danke

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

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

                      @Fenian
                      Hallo,
                      danke für die Arbeit. Vor einigen Tagen hatte ich dieses Thema begonnen.
                      Ich habe jetzt deinen Flow eingefügt.
                      Ich bekomme immer von Alexa die Antwort ECHO2 Schlafzimmer unterstützt das nicht!
                      An was könnte dies liegen?
                      Ich nehme an du hast einen der ECHO3???

                      Zudem bekomme ich folgende Fehlermeldung!

                      Ich schätze mal du sagst "Alexa, Temperatur Schlafzimmer". Versuche es mal mit "Alexa, schalte Temperatur Schlafzimmer an" oder "Alexa, Temperatur Schlafzimmer an"
                      Alexa muss wissen, was du tun möchtest. Da hier eine Lampe emuliert wird eben an oder aus.
                      Eleganter ist es natürlich, sich in der Alexa-App eine Routine anzulegen die "Temperatur Schlafzimmer" schaltet, so dass du dann z.B. "Alexa, wie ist die Temperatur im Schlafzimmer" sagen kannst.

                      Ich habe es mit Echo dot 2. und 3. Generation, Echo 2.Generation, Echo Plus 1. Generation und einem Echo Show 5 probiert. Der Flow funktioniert auf allen Geräten.

                      Und was dein Problem mit dem Port angeht.
                      Irgendetwas blockiert den Port 1880.
                      Zuerst würde ich mal den Adapter neu starten.

                      Wenn das nicht hilft, per ssh auf den Host zugreifen und mal

                      sudo netstat -tulpen
                      

                      aufrufen. Dann kannst du sehen, welcher Prozess den Port belegt und dann entsprechend handeln.
                      Sollte da node-red stehen, prüfe mal ob du evtl. mehrere node-red Instanzen laufen hast

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

                        @Fenian
                        Super mit der Verzögerung klappte es. Danke.

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

                          @Fenian
                          Ich habe die Eingabe so gemacht wie du beschrieben hast.
                          Jedoch ist immer die Antwort ECHO2 Schlafzimmer unterstützt das nicht!
                          Mit der Verzögerung habe ich auch einmal experimentiert.
                          Das mit dem Port 1880 schein tatsächlich durch zwei offene Node-Red Fenster entstanden zu sein.
                          Die Fehlermeldung ist jetzt jedenfalls weg.

                          Ich habe momentan zwei Echo Dot2 und zwei Echo (2. Generation) im Einsatz.
                          Kann es sein, das nur ein neuerer Echo im System eingebunden sein muss?

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

                            @ostseereiter
                            Welche Geräte hast du im System?

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

                              @LaBamba
                              Ich habe xiaomi Sensoren wenn Du das meinst

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

                                @ostseereiter
                                Meinte welche Alexa Modelle?

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

                                  @LaBamba
                                  3 Echo Dot 2 Generation, 1einen echo Spot einen Echo Show 5 und in meinem Auto einen echo input.

                                  1 Reply Last reply Reply Quote 0
                                  • 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
                                            • First post
                                              Last post

                                            Support us

                                            ioBroker
                                            Community Adapters
                                            Donate

                                            955
                                            Online

                                            31.6k
                                            Users

                                            79.5k
                                            Topics

                                            1.3m
                                            Posts

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