Navigation

    Logo
    • Register
    • Login
    • Search
    • Recent
    • Tags
    • Unread
    • Categories
    • Unreplied
    • Popular
    • GitHub
    • Docu
    • Hilfe
    1. Home
    2. Deutsch
    3. ioBroker Allgemein
    4. Weiteres Vorgehen Alexa-Adapter

    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

    Weiteres Vorgehen Alexa-Adapter

    This topic has been deleted. Only users with topic management privileges can see it.
    • U
      uwe72 @Stefan Wilke last edited by uwe72

      @stefan-wilke

      Mit Node-Red kenne ich mich nicht aus.

      Meine Lösung war folgende:

      1.) Datenpunkt erzeugen

      var alexaIobrokerUpdate = "0_userdata.0.alexaIobrokerUpdate"; 
      createState(alexaIobrokerUpdate, false, {
          name: alexaIobrokerUpdate,
          desc: alexaIobrokerUpdate,
          type: 'boolean', 
          read: true,
          write: true
      });
      

      2.) Diesen Datenpunkt (virtuelles Device) im iot-Adapter hinzufügen:
      20d14311-2aef-4ae2-9896-0b891d9afe38-image.png
      d9f906d8-8086-4d38-80bd-3ea2eca8a122-image.png

      3.) In der Alexa App neues Gerät hinzufügen bzw. darauf achten, dass es vorhanden ist:
      fc3ed520-a336-42c5-a7f5-48c39d5d9b62-image.png

      4.) In der jeweiligen Alexa-Leerroutine (eine pro Raum/Device existierte eh schon) dieses virtuelle Device mit aufnehmen:
      3477c7e5-7204-48f6-8c6b-ed1e05128d81-image.png
      320d3a12-ebae-4788-82cf-defbbca11308-image.png

      5.) Auf Änderungen reagieren und die Alexa Summary aktualisieren (per Pull abholen)

      on({id: [].concat(['iot.0.smart.lastObjectID']), change: "any"}, async function (obj) {
           let value = obj.state.val; 
           let oldValue = obj.oldState.val; 
           getState("alexa2.0.History.#trigger", function (err, state) { 
               setState("alexa2.0.History.#trigger"/*Trigger/Rescan*/, state ? !state.val : true); 
          }); 
      });
      

      Das war es schon. Aufwand hält sich in Grenzen.

      Stefan Wilke R 2 Replies Last reply Reply Quote 0
      • Stefan Wilke
        Stefan Wilke @uwe72 last edited by Stefan Wilke

        @uwe72

        Was du mit dem iot Adapter machst ist ja vom Prinzip her das Gleiche was ich mit dem Node-Red Flow mache.

        In den Alexa Routinen wird ein virtuelles Gerät angelegt was auf An steht.

        Wird die Routine über Alexa aufgerufen setzt sie den Userdata Datenpunkt auf true. Dieser Userdata Datenpunkt triggert letztendlich den Datenpunkt History #trigger.

        In meinen Blockly Script wird der Userdata Datenpunkt auf true abgefragt und wenn der true ist, dann wird der Datenpunkt History #trigger auf true gesetzt.
        Anschließend noch den selbst erstellten Datenpunkt wieder auf false setzten damit es nicht zu Phantomauslösungen kommt.

        Die meiste Zeit geht drauf, in allen Alexa Routinen ein neues Gerät so wie du es auch beschrieben hast anzulegen.

        Den Datenpunkt, den Node Red Flow und das Blockly Script zu erstellen dauert keine 10 Minuten. Meine gut 80 Routinen zu ändern und das neue Gerät einzufügen hat deutlich länger gedauert.

        Ich habe selber keine Ahnung von Node-Red aber das war ganz schnell zusammengeklickt. Auf Wunsch kann ich gerne den Flow und das Blockly Script hier als Export zur Verfügung stellen.

        Gruß Stefan

        D 1 Reply Last reply Reply Quote 0
        • D
          DirkM @Stefan Wilke last edited by

          Hi, @stefan-wilke,

          erst mal danke für deinen Lösungsvorschlag.
          Leider klappt das bei mir nicht.
          Bei mir sieht node-red so aus:
          2023-09-03 16_11_01-node-red-0 - raspberrypi.png
          Ich sehe den Zustand von "Alexa FIX" nicht. Bei mir steht nur connected.
          Auch sehe ich im ioBroker keine Änderung beim Objekt "Alexa FIX"
          Hast du eine Idee, wo ich suchen soll?

          Gruß

          Dirk

          Stefan Wilke 2 Replies Last reply Reply Quote 0
          • Stefan Wilke
            Stefan Wilke @DirkM last edited by

            @dirkm
            Gib mir bitte eine Stunde, es ist gerade Formel1 drin.

            1 Reply Last reply Reply Quote 0
            • Stefan Wilke
              Stefan Wilke @DirkM last edited by Stefan Wilke

              @dirkm
              Bin leider auch nicht der Node Red Freak aber ich könnte mir vorstellen, dass das virtuelle Gerät (Alexafix) noch nicht in deinen Alexa Geräten erkannt worden ist.

              Ich bin auf die Web Seite von Alexa gegangen (https://alexa.amazon.de/spa/index.html#appliances) und habe dort nach neuen Geräten suchen lassen und das virtuelle Gerät (Alexafix) ist dann dort als AlexafixRoyal Philips Electronics intelligentes Gerät erkannt worden. Ob das auch in der Alexa App geht kann ich nicht sagen.

              Wenn das Gerät Alexafix erkannt worden ist musst du natürlich auch in deinen Routinen das neue Gerät hinzufügen.

              Screenshot_2023-09-03-17-07-40-719_com.amazon.dee.app.jpg
              Screenshot_2023-09-03-17-09-19-728_com.amazon.dee.app.jpg
              Screenshot_2023-09-03-17-09-31-250_com.amazon.dee.app.jpg
              Screenshot_2023-09-03-17-10-15-589_com.amazon.dee.app.jpg
              Screenshot_2023-09-03-17-10-25-571_com.amazon.dee.app.jpg
              Screenshot_2023-09-03-17-10-41-424_com.amazon.dee.app.jpg

              Kleiner Nachtrag, bei mir sieht das genau wie auf deinem Screenshot wenn ich den Flow ändere und dann oben auf Übernahme gehe.
              Erst wenn ich einen Alexa Sprachbefehl gebe der die Routine mit dem neuen virtuellen Gerät Alexafix aufruft ändert sich auch der Flow von connected zu 0.userdata.........

              In meinem Flow ein Debug eingebaut und es sieht so aus wie bei dir
              Bildschirmfoto_2023-09-03_18-06-50.png
              Jetzt das virtuelle Gerät (alexafix) eingeschaltet bzw. die Routine per Sprache ausgelöst.
              Bildschirmfoto_2023-09-03_18-07-42.png
              Und nun einmal das virtuelle Gerät (alexafix) ausgeschaltet.
              Bildschirmfoto_2023-09-03_18-08-23.png

              D 2 Replies Last reply Reply Quote 0
              • D
                DirkM @Stefan Wilke last edited by

                Hi @stefan-wilke,

                erst einmal danke (-:
                Ich werde mich die Tage weiter damit beschäftigen. Dein Ansatz wird mir bestimmt weiterhelfen.

                Ich melde mich wieder.

                Gruß

                Dirk

                1 Reply Last reply Reply Quote 0
                • U
                  uwe72 last edited by

                  @stefan-wilke Grundsatzfrage: Warum überhaupt "Node Red"? Weil es kostenlos ist? Mich würde es nur interessieren. Über den iot-Adapter ist es ja wirklich ein Thema von einer Minute, siehe oben.

                  Stefan Wilke D 2 Replies Last reply Reply Quote 0
                  • Stefan Wilke
                    Stefan Wilke @uwe72 last edited by

                    @uwe72
                    Ich habe mich mit dem iot-Adapter noch nicht beschäftigt und kann dazu nichts sagen.

                    Als das Problem mit dem History #trigger vor ein paar Wochen zum ersten Mal aufkam habe ich mir Gedanken dazu gemacht. Das Erste was mir in den Sinn kam war, in Alexa ein Gerät anzulegen was als Trigger für einen Datenpunkt herhalten kann.

                    Ich wollte schon eine meiner Steckdosen dafür nehmen und dann bin ich beim lesen des lange Github Thread über das History #trigger Problem auf den Beitrag von rsl99de gestoßen (Das ganze geht auch ohne den Iot-Adapter, wenn man per Node-Red ein gerät erzeugt, welches Alexa dann erkennt. Über dieser "virtuelle" Gerät kann man dann triggern).

                    Das habe ich dann ausprobiert und keine 10 Minuten später hatte ich dann mein virtuelles Gerät.

                    Wenn ich das mit dem iot Adapter richtig verstehe, wird doch auch dort ein virtuelles Gerät angelegt und in jeder Alexa Routine muss dann dieses Gerät wie auch bei meiner Node Red Lösung hinzugefügt werden was ja die meiste Arbeit ist.

                    Gruß Stefan

                    1 Reply Last reply Reply Quote 0
                    • D
                      DirkM @uwe72 last edited by

                      Hi, @uwe72,

                      richtig, weil es mit node-red kostenlos ist.
                      Es scheint ja auch mit node-red zu funktionieren.

                      Gruß

                      Dirk

                      1 Reply Last reply Reply Quote 0
                      • D
                        DirkM @Stefan Wilke last edited by

                        Hi @stefan-wilke,

                        bei mir wird leider nichts bei der Gerätesuche gefunden. Weder unter deinem Link noch in der App. Hast du evtl. noch einen besonderen Skill installiert?

                        Gruß

                        Dirk

                        liv-in-sky Stefan Wilke 2 Replies Last reply Reply Quote 0
                        • liv-in-sky
                          liv-in-sky @DirkM last edited by

                          @dirkm ich hatte schon mal den fall, dass ich ein älteres gerät ansprechen mußte, um die geräte suche zu aktivieren - erst dann kam das gerät - echo show 15 fand das gerät nicht - aber ein echo 3 schon - warum das so war - keine ahnung - probiere es mal

                          D 1 Reply Last reply Reply Quote 0
                          • D
                            DirkM @liv-in-sky last edited by

                            Hi @liv-in-sky,

                            danke für den Hinweis. Die Gerätesuche ist ja nicht Echo abhängig, deshalb weiß ich nicht so genau was du meinst.
                            Ich habe mal alte Geräte ein/aus geschaltet. Es wird weiterhin nichts neues Gefunden. Lösche ich ein vorhandenes Gerät, wird dieses bei einer neuen Suche wieder gefunden.

                            Gruß

                            Dirk

                            liv-in-sky 1 Reply Last reply Reply Quote 0
                            • liv-in-sky
                              liv-in-sky @DirkM last edited by

                              @dirkm sagte in Weiteres Vorgehen Alexa-Adapter:

                              Die Gerätesuche ist ja nicht Echo abhängig, deshalb weiß ich nicht so genau was du meinst.

                              genau das dachte ich auch - war aber bei einem gerät, welches über tasmota software integriert worden ist, anders ! das hat nur ein alter echo gefunden. in tasmota wird auch ein hue philps hue gerät simuliert

                              1 Reply Last reply Reply Quote 0
                              • O
                                Onkel-Bob last edited by

                                Hi,

                                als das History Problem vor ein paar wochen aufkam, gab es den workaround auf das "..Player.volume" zu reagieren und darüber festzustellen mit welcher Alexa gesprochen wurde. Das fand ich super weil man nicht auf die Kommunikation von Alexa warten musste (um die History zu aktualisieren) sondern die Trigger-Alexa sofort ermittelt werden konnte. Das lief ausgesprochen zuverlässig und schnell.

                                Nach dem Fix wurde der Volume-State aber nicht mehr geändert und dieser Weg funktionierte nicht mehr.

                                Ich würde es sehr gut finden wenn soetwas wieder zur Verfügung stehen würde. Ich denke dem Großteil der Leute mit dem History-Problem würde das helfen.

                                Gruß,
                                Bob

                                padrino 1 Reply Last reply Reply Quote 0
                                • Elzershark
                                  Elzershark last edited by

                                  Trigger Punkte Reihenfolge:

                                  Vorhandene iot Geräte:
                                  iot.0.smart.lastObjectID = Das letzte Gerät was geschaltet wurde, was in der iot existiert. Bei Aktualisierung alexa2.0.History.#trigger antriggern

                                  Wecker:
                                  Alexa2 Handyapp - Geräte - Echo und Alexa - Wecker und Timer - Unten Einstellung - xxGerät Wecklicht -> Trigger Datenpunkt auswählen zum Triggern

                                  Rest:
                                  Trigger Datenpunkt erstellen für Routinen in der alexa Handyapp

                                  1 Reply Last reply Reply Quote 1
                                  • padrino
                                    padrino Most Active @Onkel-Bob last edited by

                                    @onkel-bob sagte in Weiteres Vorgehen Alexa-Adapter:

                                    Nach dem Fix wurde der Volume-State aber nicht mehr geändert und dieser Weg funktionierte nicht mehr.

                                    Das hat aber doch nix mit dem Fix zu tun.
                                    Das liegt an Amazons weiteren Änderungen... 🤷‍♂️

                                    O 1 Reply Last reply Reply Quote 0
                                    • R
                                      rettroo @uwe72 last edited by rettroo

                                      @uwe72

                                      on({id: [].concat(['iot.0.smart.lastObjectID']), change: "any"}, async function (obj) {
                                           let value = obj.state.val; 
                                           let oldValue = obj.oldState.val; 
                                           getState("alexa2.0.History.#trigger", function (err, state) { 
                                               setState("alexa2.0.History.#trigger"/*Trigger/Rescan*/, state ? !state.val : true); 
                                          }); 
                                      });
                                      

                                      Hi! Du holst da ja "nur" das "summary" ab, könnte man da auch "name" aktualisieren?

                                      EDIT: Hat sich erledigt.... der NAME wird auch perfekt getriggert also alles OK!

                                      1 Reply Last reply Reply Quote 0
                                      • Stefan Wilke
                                        Stefan Wilke @DirkM last edited by

                                        Hi @dirkm

                                        als den Beitrag von @liv-in-sky gelesen habe der zwei verschiedene Echo Geräte hat und auch ich habe zwei verschiedene Echos (einen Echo Dot 3. Generation und einen Echo, die große Kugel) st mir die Idee gekommen, das es etwas mit den Echo Geräten zu tun haben könnte.

                                        Mein virtuelles Gerät Alexafix ist mit meinem Echo Dot verbunden.

                                        Dann habe ich gegoogelt und die Node Red Palette (node-red-contrib-amazon-echo) unterstützt nur diese Geräte:

                                        Amazon Echo 2nd generation
                                        Amazon Echo Plus 2nd generation
                                        Amazon Echo Dot 1st, 2nd and 3rd generations

                                        Das könnte die Lösung sein warum der Flow bei dir nicht geht.

                                        Gruß Stefan

                                        DJMarc75 1 Reply Last reply Reply Quote 0
                                        • DJMarc75
                                          DJMarc75 @Stefan Wilke last edited by

                                          @stefan-wilke sagte in Weiteres Vorgehen Alexa-Adapter:

                                          Dann habe ich gegoogelt und die Node Red Palette (node-red-contrib-amazon-echo) unterstützt nur diese Geräte

                                          Na ist ja auch nicht verwunderlich - siehe wann die Nodes zuletzt bearbeitet wurden

                                          node-red-contrib-alexa-local
                                          No extra Alexa Skills required. Works directly with Alexa in local network.
                                          0.3.24 vor 5 Jahr(en), 5 Monat(en)
                                          

                                          &

                                          node-red-contrib-amazon-echo
                                          Alexa controlled Node-Red nodes supporting latest Amazon Echo devices
                                          0.1.10 vor 3 Jahr(en), 9 Monat(en)
                                          

                                          Deine Lösung ist gut aber dann doch eher suboptimal wenn man Devices > 3 besitzt 😉

                                          Man (also nicht ich) könnte es mal mit folgender Node probieren:

                                          https://flows.nodered.org/node/node-red-contrib-amazon-echo-oztourer

                                          Zwar steht in der Doku auch nur:

                                          Supported devices
                                          
                                              Amazon Echo 2nd generation
                                              Amazon Echo Plus 2nd generation
                                              Amazon Echo Dot 1st, 2nd and 3rd generations
                                          
                                          

                                          allerdings ist das mit Dokus ja so ne Sache 😉

                                          1 Reply Last reply Reply Quote 0
                                          • Stefan Wilke
                                            Stefan Wilke last edited by

                                            Ich denke, man sollte nicht zu viel Zeit investieren warum meine Node Red Lösung bei einigen geht und bei anderen nicht.
                                            Bei mir hat der Flow auf Anhieb funktioniert und deshalb habe ich keinen anderen Lösungsansatz verfolgt.

                                            Es gibt ja auch die Lösung des Problems mit Hilfe des iot-Adapter.

                                            Diese Lösung scheint ja immer zu funktionieren.

                                            Gruß Stefan

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

                                            Support us

                                            ioBroker
                                            Community Adapters
                                            Donate
                                            FAQ Cloud / IOT
                                            HowTo: Node.js-Update
                                            HowTo: Backup/Restore
                                            Downloads
                                            BLOG

                                            768
                                            Online

                                            31.9k
                                            Users

                                            80.1k
                                            Topics

                                            1.3m
                                            Posts

                                            alexa 2.0
                                            15
                                            52
                                            6824
                                            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