Skip to content
  • Home
  • Aktuell
  • Tags
  • 0 Ungelesen 0
  • Kategorien
  • Unreplied
  • Beliebt
  • GitHub
  • Docu
  • Hilfe
Skins
  • Light
  • Brite
  • Cerulean
  • Cosmo
  • Flatly
  • Journal
  • Litera
  • Lumen
  • Lux
  • Materia
  • Minty
  • Morph
  • Pulse
  • Sandstone
  • Simplex
  • Sketchy
  • Spacelab
  • United
  • Yeti
  • Zephyr
  • Dark
  • Cyborg
  • Darkly
  • Quartz
  • Slate
  • Solar
  • Superhero
  • Vapor

  • Standard: (Kein Skin)
  • Kein Skin
Einklappen
ioBroker Logo

Community Forum

donate donate
  1. ioBroker Community Home
  2. Deutsch
  3. Skripten / Logik
  4. Blockly
  5. Alexa Routinen zum Schalten von Geräten

NEWS

  • Monatsrückblick Januar/Februar 2026 ist online!
    BluefoxB
    Bluefox
    13
    1
    157

  • Jahresrückblick 2025 – unser neuer Blogbeitrag ist online! ✨
    BluefoxB
    Bluefox
    17
    1
    4.3k

  • Neuer Blogbeitrag: Monatsrückblick - Dezember 2025 🎄
    BluefoxB
    Bluefox
    13
    1
    1.3k

Alexa Routinen zum Schalten von Geräten

Geplant Angeheftet Gesperrt Verschoben Blockly
blockly
22 Beiträge 5 Kommentatoren 2.4k Aufrufe 5 Watching
  • Älteste zuerst
  • Neuste zuerst
  • Meiste Stimmen
Antworten
  • In einem neuen Thema antworten
Anmelden zum Antworten
Dieses Thema wurde gelöscht. Nur Nutzer mit entsprechenden Rechten können es sehen.
  • G Offline
    G Offline
    G.Hawk
    schrieb am zuletzt editiert von
    #1

    Hallo
    Ich würde gern mal wissen, ob ich in der Alexa App eine Routine erstellen kann, die nur eine Antwort gibt, um diese Routine als Trigger im iobroker zu benutzen um ein Gerät oder Datenpunkt zu schalten?
    Ich denke das müsste funktionieren. Ich habe aber folgendes Problem: Die Routinen sind ja bei den einzelnen Echos zu finden. Müsste ich da für jeden Echo ein eigenes Skript schreiben?
    Ich frage mich, ob es da nicht einen einfacheren Weg gibt.
    Der Trigger triggert ja dann immer nur an dem Echo den ich gerade anspreche.
    Also wie müsste ein Blockly aussehen, das dann für alle Echos gilt.
    Ich hoffe das war verständlich.

    Die zweite Frage wäre: Wenn das so funtionieren würde wofür brauche ich dann noch den iot Adapter.

    Falls jemand eine einfachere Lösung hat würde ich mich sehr freuen.
    Was bei mir allerdings nicht so zuverlässig klappt, ist das ganze über history zu machen.

    G dslraserD I 3 Antworten Letzte Antwort
    0
    • G G.Hawk

      Hallo
      Ich würde gern mal wissen, ob ich in der Alexa App eine Routine erstellen kann, die nur eine Antwort gibt, um diese Routine als Trigger im iobroker zu benutzen um ein Gerät oder Datenpunkt zu schalten?
      Ich denke das müsste funktionieren. Ich habe aber folgendes Problem: Die Routinen sind ja bei den einzelnen Echos zu finden. Müsste ich da für jeden Echo ein eigenes Skript schreiben?
      Ich frage mich, ob es da nicht einen einfacheren Weg gibt.
      Der Trigger triggert ja dann immer nur an dem Echo den ich gerade anspreche.
      Also wie müsste ein Blockly aussehen, das dann für alle Echos gilt.
      Ich hoffe das war verständlich.

      Die zweite Frage wäre: Wenn das so funtionieren würde wofür brauche ich dann noch den iot Adapter.

      Falls jemand eine einfachere Lösung hat würde ich mich sehr freuen.
      Was bei mir allerdings nicht so zuverlässig klappt, ist das ganze über history zu machen.

      G Offline
      G Offline
      G.Hawk
      schrieb am zuletzt editiert von
      #2

      Mir ist gerade noch was aufgefallen.
      Ich könnte ja doch den History Datenpunkt benutzen und einfach den answertext als trigger benutzen.
      Das Problem ist nur, dass da nichts drin steht, wenn man über eine Routine geht.

      Weiß einer warum?

      1 Antwort Letzte Antwort
      0
      • G G.Hawk

        Hallo
        Ich würde gern mal wissen, ob ich in der Alexa App eine Routine erstellen kann, die nur eine Antwort gibt, um diese Routine als Trigger im iobroker zu benutzen um ein Gerät oder Datenpunkt zu schalten?
        Ich denke das müsste funktionieren. Ich habe aber folgendes Problem: Die Routinen sind ja bei den einzelnen Echos zu finden. Müsste ich da für jeden Echo ein eigenes Skript schreiben?
        Ich frage mich, ob es da nicht einen einfacheren Weg gibt.
        Der Trigger triggert ja dann immer nur an dem Echo den ich gerade anspreche.
        Also wie müsste ein Blockly aussehen, das dann für alle Echos gilt.
        Ich hoffe das war verständlich.

        Die zweite Frage wäre: Wenn das so funtionieren würde wofür brauche ich dann noch den iot Adapter.

        Falls jemand eine einfachere Lösung hat würde ich mich sehr freuen.
        Was bei mir allerdings nicht so zuverlässig klappt, ist das ganze über history zu machen.

        dslraserD Offline
        dslraserD Offline
        dslraser
        Forum Testing Most Active
        schrieb am zuletzt editiert von
        #3

        @Martin-0 sagte in Alexa Routinen zum Schalten von Geräten:

        Der Trigger triggert ja dann immer nur an dem Echo den ich gerade anspreche.

        Welcher ECHO angesprochen wurde, kannst Du im Alexa2 Adapter in der History sehen. Entweder den Namen oder die Seriennummer ermitteln und dann damit machen was Du willst.

        Beispiel über den Namen:
        Bildschirmfoto 2020-09-17 um 15.32.00.png

        G 1 Antwort Letzte Antwort
        0
        • dslraserD dslraser

          @Martin-0 sagte in Alexa Routinen zum Schalten von Geräten:

          Der Trigger triggert ja dann immer nur an dem Echo den ich gerade anspreche.

          Welcher ECHO angesprochen wurde, kannst Du im Alexa2 Adapter in der History sehen. Entweder den Namen oder die Seriennummer ermitteln und dann damit machen was Du willst.

          Beispiel über den Namen:
          Bildschirmfoto 2020-09-17 um 15.32.00.png

          G Offline
          G Offline
          G.Hawk
          schrieb am zuletzt editiert von
          #4

          @dslraser
          OK, aber was mache ich dann damit?
          Wofür ist das debug output?

          Also ich habe 7 Echos und unter jedem Echo stehen ja die vorhanden Routinen.
          Wenn ich jetzt im Schlafzimmer eine Routine starte, dann soll der iobroker diese Routine als Trigger für ein Skript benutzen, was dann irgendwas ausführt.

          Wenn ich das jetzt aber ich Wohnzimmer mache würde mein Trigger ja nicht funktionieren.

          Dieses Problem habe ich.
          Ich könnte natürlich 7 Skripte (für jeden Echo ein eigenes) schreiben, aber das muss doch einfacher gehen.

          dslraserD M 2 Antworten Letzte Antwort
          0
          • G G.Hawk

            @dslraser
            OK, aber was mache ich dann damit?
            Wofür ist das debug output?

            Also ich habe 7 Echos und unter jedem Echo stehen ja die vorhanden Routinen.
            Wenn ich jetzt im Schlafzimmer eine Routine starte, dann soll der iobroker diese Routine als Trigger für ein Skript benutzen, was dann irgendwas ausführt.

            Wenn ich das jetzt aber ich Wohnzimmer mache würde mein Trigger ja nicht funktionieren.

            Dieses Problem habe ich.
            Ich könnte natürlich 7 Skripte (für jeden Echo ein eigenes) schreiben, aber das muss doch einfacher gehen.

            dslraserD Offline
            dslraserD Offline
            dslraser
            Forum Testing Most Active
            schrieb am zuletzt editiert von
            #5

            @Martin-0
            Ich habe es so verstanden, das Du rausfinden möchtest welcher ECHO angesprochen wurde und dann auch dort die entsprechende Routine ausführen möchtest, aber vielleicht meinst Du ja auch etwas anderes.

            1 Antwort Letzte Antwort
            0
            • G G.Hawk

              Hallo
              Ich würde gern mal wissen, ob ich in der Alexa App eine Routine erstellen kann, die nur eine Antwort gibt, um diese Routine als Trigger im iobroker zu benutzen um ein Gerät oder Datenpunkt zu schalten?
              Ich denke das müsste funktionieren. Ich habe aber folgendes Problem: Die Routinen sind ja bei den einzelnen Echos zu finden. Müsste ich da für jeden Echo ein eigenes Skript schreiben?
              Ich frage mich, ob es da nicht einen einfacheren Weg gibt.
              Der Trigger triggert ja dann immer nur an dem Echo den ich gerade anspreche.
              Also wie müsste ein Blockly aussehen, das dann für alle Echos gilt.
              Ich hoffe das war verständlich.

              Die zweite Frage wäre: Wenn das so funtionieren würde wofür brauche ich dann noch den iot Adapter.

              Falls jemand eine einfachere Lösung hat würde ich mich sehr freuen.
              Was bei mir allerdings nicht so zuverlässig klappt, ist das ganze über history zu machen.

              I Offline
              I Offline
              Info
              schrieb am zuletzt editiert von
              #6

              Hi, ich möchte mich hier gerne mal dranhängen. Denn quasi genau das möchte ich auch machen. Bin schon eine ganze Weile mit ioBroker am Start und habe auch schon viel umgesetzt. Aber eben Alexa einfach etwas fragen zu können und eine Antwort zu bekommen ....

              Bei mir im Sinne von:
              Alexa, wie ist der Status des Pools

              Ich lese aus dem ALEXA2 History die Anfrage mit. Trigger, Ausgabe und alles ist kein Akt.
              ABER Alexa antwortet erstmal das sie keine Ahnung hat wie der Status des Pools ist oder das sie das Gerät nicht kennt. DAS würde ich gerne unterbinden. Und am liebsten ohne etliche Skills die genau auf den Wortlaut x hören.

              Der Versuch mit einem Skill der auf "Alexa, Status" hört und einfach nur als Antwort gibt: "Sekunde, ich schaue nach" klappt. Fragt man aber nach "Alexa, Status Pool" klappt es schon nicht mehr.

              Vielleicht als Anregung

              on({id: 'alexa2.0.History.summary', change: "ne"}, function (f) { 
                  var $$Device = getState('alexa2.0.History.name').val;
                  var $$Sammeltext = "";
              
                  // Status des Pools
                 if((f.state.val).match("status pool")) {
                      var $$TPool = myRound(getState('0_userdata.0.MyControllers.Pooltechnik.Values.T1').val,1);
                      $$Sammeltext += " Die Wassertemperatur beträgt " + $$TPool + " Grad. "
                      if(getState('0_userdata.0.MyControllers.Pooltechnik.Values.K1').val) {
                          var $$PPool = myRound(getState('shelly.0.SHPLG-S#6A5E9C#1.Relay0.Power').val,0);
                          $$Sammeltext += " Die Filteranlage ist in Betrieb, aktueller Energieverbrauch: " + $$PPool + " Watt. ";
                      } else {
                          $$Sammeltext += " Die Filteranlage ist aus. ";
                      }
                      if(getState('0_userdata.0.MyControllers.Pooltechnik.Values.K2').val) {
                          $$Sammeltext += " Die Poolbeleuchtung ist eingeschaltet. ";
                      } else {
                          $$Sammeltext += " Die Poolbeleuchtung ist aus. ";
                      }
              
                      Sub_AlexaTalk($$Device, $$Sammeltext,0,0);
                  
                  // Status der Katzenkappe
                  } else if ((f.state.val).match('status katzenklappe')) {
                      if(getState('0_userdata.0.Junctions.Katzenklappe.Switches.offen').val) {
                          Sub_AlexaTalk($$Device, 'Die Katzenklappe ist offen',0,0);
                      } else {
                          Sub_AlexaTalk($$Device, 'Die Katzenklappe ist geschlossen',0,0);
                      }
                  }
              });
              

              myRound ist eine eigene Funktion zum Runden
              Sub_AlexaTalk ist eine Unterfunktion von meiner Log-Funktion, mit der ich Echos geziehl und mit eigenen Parametern (Delay, Lautstärke, Lautstärke nach Tageszeit, ....) ansprechen kann.

              dslraserD 1 Antwort Letzte Antwort
              0
              • I Info

                Hi, ich möchte mich hier gerne mal dranhängen. Denn quasi genau das möchte ich auch machen. Bin schon eine ganze Weile mit ioBroker am Start und habe auch schon viel umgesetzt. Aber eben Alexa einfach etwas fragen zu können und eine Antwort zu bekommen ....

                Bei mir im Sinne von:
                Alexa, wie ist der Status des Pools

                Ich lese aus dem ALEXA2 History die Anfrage mit. Trigger, Ausgabe und alles ist kein Akt.
                ABER Alexa antwortet erstmal das sie keine Ahnung hat wie der Status des Pools ist oder das sie das Gerät nicht kennt. DAS würde ich gerne unterbinden. Und am liebsten ohne etliche Skills die genau auf den Wortlaut x hören.

                Der Versuch mit einem Skill der auf "Alexa, Status" hört und einfach nur als Antwort gibt: "Sekunde, ich schaue nach" klappt. Fragt man aber nach "Alexa, Status Pool" klappt es schon nicht mehr.

                Vielleicht als Anregung

                on({id: 'alexa2.0.History.summary', change: "ne"}, function (f) { 
                    var $$Device = getState('alexa2.0.History.name').val;
                    var $$Sammeltext = "";
                
                    // Status des Pools
                   if((f.state.val).match("status pool")) {
                        var $$TPool = myRound(getState('0_userdata.0.MyControllers.Pooltechnik.Values.T1').val,1);
                        $$Sammeltext += " Die Wassertemperatur beträgt " + $$TPool + " Grad. "
                        if(getState('0_userdata.0.MyControllers.Pooltechnik.Values.K1').val) {
                            var $$PPool = myRound(getState('shelly.0.SHPLG-S#6A5E9C#1.Relay0.Power').val,0);
                            $$Sammeltext += " Die Filteranlage ist in Betrieb, aktueller Energieverbrauch: " + $$PPool + " Watt. ";
                        } else {
                            $$Sammeltext += " Die Filteranlage ist aus. ";
                        }
                        if(getState('0_userdata.0.MyControllers.Pooltechnik.Values.K2').val) {
                            $$Sammeltext += " Die Poolbeleuchtung ist eingeschaltet. ";
                        } else {
                            $$Sammeltext += " Die Poolbeleuchtung ist aus. ";
                        }
                
                        Sub_AlexaTalk($$Device, $$Sammeltext,0,0);
                    
                    // Status der Katzenkappe
                    } else if ((f.state.val).match('status katzenklappe')) {
                        if(getState('0_userdata.0.Junctions.Katzenklappe.Switches.offen').val) {
                            Sub_AlexaTalk($$Device, 'Die Katzenklappe ist offen',0,0);
                        } else {
                            Sub_AlexaTalk($$Device, 'Die Katzenklappe ist geschlossen',0,0);
                        }
                    }
                });
                

                myRound ist eine eigene Funktion zum Runden
                Sub_AlexaTalk ist eine Unterfunktion von meiner Log-Funktion, mit der ich Echos geziehl und mit eigenen Parametern (Delay, Lautstärke, Lautstärke nach Tageszeit, ....) ansprechen kann.

                dslraserD Offline
                dslraserD Offline
                dslraser
                Forum Testing Most Active
                schrieb am zuletzt editiert von
                #7

                @Info sagte in Alexa Routinen zum Schalten von Geräten:

                Ich lese aus dem ALEXA2 History die Anfrage mit. Trigger, Ausgabe und alles ist kein Akt.
                ABER Alexa antwortet erstmal das sie keine Ahnung hat wie der Status des Pools ist oder das sie das Gerät nicht kennt. DAS würde ich gerne unterbinden. Und am liebsten ohne etliche Skills die genau auf den Wortlaut x hören.

                Ich kenne dazu keine Möglichkeit.

                Irgendwie auch logisch, das Alexa mit "ich kenne das Gerät nicht" usw...antwortet, denn sie kennt es ja tatsächlich nicht. Funktionieren wird Dein Script dann trotzdem, weil das ja nur auf die History reagiert...Nur die erste Antwort von Alexa nervt halt. Deshalb gehe ich nicht den Weg über die History, sondern lege meistens über den iot-Adapter mehrere SmartGeräte/SmartNamen an, die dann eine echte Routinen in der Amazon App auslösen, z.B. löst dann ein Button der aktualisiert wird mein Blockly/Script aus und gibt mir das wieder was ich will.

                I GaspodeG 2 Antworten Letzte Antwort
                0
                • dslraserD dslraser

                  @Info sagte in Alexa Routinen zum Schalten von Geräten:

                  Ich lese aus dem ALEXA2 History die Anfrage mit. Trigger, Ausgabe und alles ist kein Akt.
                  ABER Alexa antwortet erstmal das sie keine Ahnung hat wie der Status des Pools ist oder das sie das Gerät nicht kennt. DAS würde ich gerne unterbinden. Und am liebsten ohne etliche Skills die genau auf den Wortlaut x hören.

                  Ich kenne dazu keine Möglichkeit.

                  Irgendwie auch logisch, das Alexa mit "ich kenne das Gerät nicht" usw...antwortet, denn sie kennt es ja tatsächlich nicht. Funktionieren wird Dein Script dann trotzdem, weil das ja nur auf die History reagiert...Nur die erste Antwort von Alexa nervt halt. Deshalb gehe ich nicht den Weg über die History, sondern lege meistens über den iot-Adapter mehrere SmartGeräte/SmartNamen an, die dann eine echte Routinen in der Amazon App auslösen, z.B. löst dann ein Button der aktualisiert wird mein Blockly/Script aus und gibt mir das wieder was ich will.

                  I Offline
                  I Offline
                  Info
                  schrieb am zuletzt editiert von
                  #8

                  @dslraser ja es funktioniert wie Du sagst.
                  Was ich bei Dir nicht verstehe: Du sagst also z.B. per Alexa Skill das das "Gerät" (virtuelles Gerät im IoT Adapter) Pool eingeschaltet werden soll. Den Switch triggerst Du dann, macht irgendwas (Sprachausgabe, .....) ?

                  Ich möchte es gerne so natürlich wie möglich haben. Über smarte Devices zu gehen ist natürlich der einfachste Weg. Aber man kann halt nicht alles abfragen. Geschweige denn komplexe Dinge aus mehreren Status.

                  dslraserD 1 Antwort Letzte Antwort
                  0
                  • I Info

                    @dslraser ja es funktioniert wie Du sagst.
                    Was ich bei Dir nicht verstehe: Du sagst also z.B. per Alexa Skill das das "Gerät" (virtuelles Gerät im IoT Adapter) Pool eingeschaltet werden soll. Den Switch triggerst Du dann, macht irgendwas (Sprachausgabe, .....) ?

                    Ich möchte es gerne so natürlich wie möglich haben. Über smarte Devices zu gehen ist natürlich der einfachste Weg. Aber man kann halt nicht alles abfragen. Geschweige denn komplexe Dinge aus mehreren Status.

                    dslraserD Offline
                    dslraserD Offline
                    dslraser
                    Forum Testing Most Active
                    schrieb am zuletzt editiert von
                    #9

                    @Info sagte in Alexa Routinen zum Schalten von Geräten:

                    Was ich bei Dir nicht verstehe: Du sagst also z.B. per Alexa Skill das das "Gerät" (virtuelles Gerät im IoT Adapter) Pool eingeschaltet werden soll. Den Switch triggerst Du dann, macht irgendwas (Sprachausgabe, .....) ?

                    Vielleicht reden wir auch aneinander vorbei, aber auch mehrere Dinge in einem Blockly abfragen und ausgeben geht, also auch komplexe Antworten.
                    Z.B. Die Temperaturen von allen Räumen.
                    (das ist eine Routine, man kann ja auch mehrere Routinen mit verschieden formulierten Fragen erstellen. Diese Routine aktualisiert einen Button über iot und löst dann die Blockly Abfrage aus)

                    Beispiel Temperatur
                    Temperaturen.wav

                    Oder Fenster
                    Fenster.wav

                    Meinst Du so was ?

                    1 Antwort Letzte Antwort
                    0
                    • G G.Hawk

                      @dslraser
                      OK, aber was mache ich dann damit?
                      Wofür ist das debug output?

                      Also ich habe 7 Echos und unter jedem Echo stehen ja die vorhanden Routinen.
                      Wenn ich jetzt im Schlafzimmer eine Routine starte, dann soll der iobroker diese Routine als Trigger für ein Skript benutzen, was dann irgendwas ausführt.

                      Wenn ich das jetzt aber ich Wohnzimmer mache würde mein Trigger ja nicht funktionieren.

                      Dieses Problem habe ich.
                      Ich könnte natürlich 7 Skripte (für jeden Echo ein eigenes) schreiben, aber das muss doch einfacher gehen.

                      M Offline
                      M Offline
                      Michi68
                      schrieb am zuletzt editiert von
                      #10

                      @Martin-0
                      Hallo,
                      vielleicht ist das so etwas einfacher zu verstehen.
                      Um eine Abfrage zu stellen brauchst du nur ein Script, hier mal ein Beispiel, Ausgabe ist immer auf dem Gerät das du ansprichst.

                      einmal die lange variante
                      Status_Lampen2.png


                      <xml xmlns="https://developers.google.com/blockly/xml">
                      <variables>
                      <variable id="~J%;V(L_kdEvsqQ~IBk">Ausgabetext</variable>
                      <variable type="timeout" id="timeout">timeout</variable>
                      <variable type="timeout" id="timeout2">timeout2</variable>
                      </variables>
                      <block type="comment" id="cU,}hA#oC@+|ueGSN6{" x="-837" y="-838"> <field name="COMMENT">Alexa, sind noch Lampen eingeschaltet</field> <next> <block type="comment" id="4PKyNb9DKivCB/%Q6R@v"> <field name="COMMENT">Alexa, ist noch Licht eingeschaltet</field> <next> <block type="control" id="@J7@ob/rsR9OCYN+!hI7"> <mutation xmlns="http://www.w3.org/1999/xhtml" delay_input="false"></mutation> <field name="OID">alexa2.0.History.#trigger</field> <field name="WITH_DELAY">FALSE</field> <value name="VALUE"> <block type="logic_boolean" id="oI]KS-#7{Lh(W#]MB7C">
                      <field name="BOOL">TRUE</field>
                      </block>
                      </value>
                      <next>
                      <block type="controls_if" id="{_JT|3Mpv
                      tSOVWD3Pz6">
                      <value name="IF0">
                      <block type="logic_compare" id="D?,QGBBwauCm,Qte=Q-">
                      <field name="OP">EQ</field>
                      <value name="A">
                      <block type="get_value" id="]irLwLWGul].x{m.#.@"> <field name="ATTR">val</field> <field name="OID">javascript.0.Eigene_Datenpunkte.Status.Lampen.Lampen_die_an_sind</field> </block> </value> <value name="B"> <block type="math_number" id="5LL6xi4F_7}-aEi^jHY@"> <field name="NUM">0</field> </block> </value> </block> </value> <statement name="DO0"> <block type="variables_set" id="5VFfHYTB!S7A^A*?SicA"> <field name="VAR" id="~J%;V(L_kdEvs*qQ~IBk">Ausgabetext</field> <value name="VALUE"> <block type="text_join" id="4?k[0reCRn.mjkxHg41~"> <mutation items="3"></mutation> <value name="ADD0"> <block type="text" id="NgpEM1aq.?1o;p,vmj.">
                      <field name="TEXT"><speak><voice name="Alexa"></field>
                      </block>
                      </value>
                      <value name="ADD1">
                      <block type="get_value" id="Vh/8rxU]yD!3mT}0y[eC">
                      <field name="ATTR">val</field>
                      <field name="OID">javascript.0.Eigene_Datenpunkte.Status.Lampen.Lampen_sind_wo_an</field>
                      </block>
                      </value>
                      <value name="ADD2">
                      <block type="text" id="nbjQLM
                      ~Fd1@ly;mL|Z*">
                      <field name="TEXT"></voice></speak></field>
                      </block>
                      </value>
                      </block>
                      </value>
                      <next>
                      <block type="timeouts_settimeout" id="^c,bQ)^![(HGz2QrWw/u">
                      <field name="NAME">timeout</field>
                      <field name="DELAY">500</field>
                      <field name="UNIT">ms</field>
                      <statement name="STATEMENT">
                      <block type="comment" id="3e5[cR-lQ2P@g3-V]T.">
                      <field name="COMMENT">Wohnzimmer</field>
                      <next>
                      <block type="controls_if" id="KauxWUEJAP2sp)D%Cdm9">
                      <value name="IF0">
                      <block type="logic_compare" id="F4MK(fbY8WU[yWO)@Z~O">
                      <field name="OP">EQ</field>
                      <value name="A">
                      <block type="get_value" id="Oe@)VM+1Y_1YJn?6xyl"> <field name="ATTR">val</field> <field name="OID">alexa2.0.History.name</field> </block> </value> <value name="B"> <block type="text" id="Q8@T8q|P]D*WR6aG#*j0"> <field name="TEXT">Wohnzimmer</field> </block> </value> </block> </value> <statement name="DO0"> <block type="control" id="r|w?GKF2R8A%WSX@AP[|"> <mutation xmlns="http://www.w3.org/1999/xhtml" delay_input="false"></mutation> <field name="OID">alexa2.0.Echo-Devices.XXX.Commands.ssml</field> <field name="WITH_DELAY">FALSE</field> <value name="VALUE"> <block type="variables_get" id="HTcKd2V9F)=k:Ae4mS}F"> <field name="VAR" id="~J%;V(L_kdEvs*qQ~IBk">Ausgabetext</field> </block> </value> </block> </statement> <next> <block type="comment" id="Lg@:ha-a2x,0rfhC.]_="> <field name="COMMENT">Küche</field> <next> <block type="controls_if" id="DTWD3KK_f2CmowWl}Dw+"> <value name="IF0"> <block type="logic_compare" id="*r~k%Po!vzUQHybU)sv">
                      <field name="OP">EQ</field>
                      <value name="A">
                      <block type="get_value" id="285L,qT@eWkZS(#hgXnl">
                      <field name="ATTR">val</field>
                      <field name="OID">alexa2.0.History.name</field>
                      </block>
                      </value>
                      <value name="B">
                      <block type="text" id="w!HtM,nb,KI1aqaOeI36">
                      <field name="TEXT">Küche</field>
                      </block>
                      </value>
                      </block>
                      </value>
                      <statement name="DO0">
                      <block type="control" id="_H{%k4b|sj!:P^rDu%};">
                      <mutation xmlns="http://www.w3.org/1999/xhtml" delay_input="false"></mutation>
                      <field name="OID">alexa2.0.Echo-Devices.XXX.Commands.ssml</field>
                      <field name="WITH_DELAY">FALSE</field>
                      <value name="VALUE">
                      <block type="variables_get" id="~51B8(3{stq1BpR1J~p%">
                      <field name="VAR" id="~J%;V(L_kdEvs
                      qQ~IBk">Ausgabetext</field>
                      </block>
                      </value>
                      </block>
                      </statement>
                      <next>
                      <block type="comment" id="?k8YL[;!mE5;-NddVTc"> <field name="COMMENT">Schlafzimmer</field> <next> <block type="controls_if" id="zyeAn3wMc!;hYZDhK)hy"> <value name="IF0"> <block type="logic_compare" id="bq=B-rG}sw}7gG1{/Y-."> <field name="OP">EQ</field> <value name="A"> <block type="get_value" id="ZrS-l8E!}8.4{,qM9i">
                      <field name="ATTR">val</field>
                      <field name="OID">alexa2.0.History.name</field>
                      </block>
                      </value>
                      <value name="B">
                      <block type="text" id="te+gSwhWiVR4,scYV%ca">
                      <field name="TEXT">Schlafzimmer</field>
                      </block>
                      </value>
                      </block>
                      </value>
                      <statement name="DO0">
                      <block type="control" id="grH6#whY1.N-q[pLM5X.">
                      <mutation xmlns="http://www.w3.org/1999/xhtml" delay_input="false"></mutation>
                      <field name="OID">alexa2.0.Echo-Devices.XXX.Commands.ssml</field>
                      <field name="WITH_DELAY">FALSE</field>
                      <value name="VALUE">
                      <block type="variables_get" id="[hMf^;p|,CaZVyd+qTm~">
                      <field name="VAR" id="~J%;V(L_kdEvs
                      qQ~IBk">Ausgabetext</field>
                      </block>
                      </value>
                      </block>
                      </statement>
                      <next>
                      <block type="comment" id="zB.uUF.v)YSQB%fh-NeN">
                      <field name="COMMENT">Badezimmer</field>
                      <next>
                      <block type="controls_if" id="yLDA;+i/I+kd:0zZE}WS">
                      <value name="IF0">
                      <block type="logic_compare" id="c!s}w1%u#jEsW#BP^],=">
                      <field name="OP">EQ</field>
                      <value name="A">
                      <block type="get_value" id="ANko_h~ho^4}^aa=9sS">
                      <field name="ATTR">val</field>
                      <field name="OID">alexa2.0.History.name</field>
                      </block>
                      </value>
                      <value name="B">
                      <block type="text" id="O,6A4Ym6Pm;LnGW{aHh:">
                      <field name="TEXT">Badezimmer</field>
                      </block>
                      </value>
                      </block>
                      </value>
                      <statement name="DO0">
                      <block type="control" id="tg_[?#}w5X(T6O@aJwK8">
                      <mutation xmlns="http://www.w3.org/1999/xhtml" delay_input="false"></mutation>
                      <field name="OID">alexa2.0.Echo-Devices.XXX.Commands.ssml</field>
                      <field name="WITH_DELAY">FALSE</field>
                      <value name="VALUE">
                      <block type="variables_get" id=";#p5#I+i.f#xUjF#U7)@">
                      <field name="VAR" id="~J%;V(L_kdEvs
                      qQ~IBk">Ausgabetext</field>
                      </block>
                      </value>
                      </block>
                      </statement>
                      <next>
                      <block type="comment" id="Z^qFzd.$Eq69H^BadO9t">
                      <field name="COMMENT">Flur</field>
                      <next>
                      <block type="controls_if" id="M7hV07aa/l?O]8?~Q1;">
                      <value name="IF0">
                      <block type="logic_compare" id="Kh%.^Ls~FUNBCw.S!;5"> <field name="OP">EQ</field> <value name="A"> <block type="get_value" id="jQ)Is^0?xsU%Gp=LLE"> <field name="ATTR">val</field> <field name="OID">alexa2.0.History.name</field> </block> </value> <value name="B"> <block type="text" id="bVIu?*Y3KEq}V}ehCWF."> <field name="TEXT">Flur</field> </block> </value> </block> </value> <statement name="DO0"> <block type="control" id="DA3W]TJ_CX$)2O3}Ca|~"> <mutation xmlns="http://www.w3.org/1999/xhtml" delay_input="false"></mutation> <field name="OID">alexa2.0.Echo-Devices.XXX.Commands.ssml</field> <field name="WITH_DELAY">FALSE</field> <value name="VALUE"> <block type="variables_get" id="?n:m6}Y4|gYD7,oulgk#"> <field name="VAR" id="~J%;V(L_kdEvs*qQ~IBk">Ausgabetext</field> </block> </value> </block> </statement> <next> <block type="comment" id="t3]i)L+2B.Jnfa2eap,:"> <field name="COMMENT">Gästezimmer</field> <next> <block type="controls_if" id="TO9RT7C9la!v9ZgSMcs4"> <value name="IF0"> <block type="logic_compare" id="~cyXuqsTmYgp5o=wWmm)"> <field name="OP">EQ</field> <value name="A"> <block type="get_value" id="p%xttIq4BmLwwKxz__+">
                      <field name="ATTR">val</field>
                      <field name="OID">alexa2.0.History.name</field>
                      </block>
                      </value>
                      <value name="B">
                      <block type="text" id="~K5Qg^xQEePp(z.M]wU2">
                      <field name="TEXT">Gästezimmer</field>
                      </block>
                      </value>
                      </block>
                      </value>
                      <statement name="DO0">
                      <block type="control" id="yNv9Ae7e^u;=HgPlo_6b">
                      <mutation xmlns="http://www.w3.org/1999/xhtml" delay_input="false"></mutation>
                      <field name="OID">alexa2.0.Echo-Devices.XXX.Commands.ssml</field>
                      <field name="WITH_DELAY">FALSE</field>
                      <value name="VALUE">
                      <block type="variables_get" id="Fa52rB4f[7U3aHZ8eZA"> <field name="VAR" id="~J%;V(L_kdEvs*qQ~IBk">Ausgabetext</field> </block> </value> </block> </statement> </block> </next> </block> </next> </block> </next> </block> </next> </block> </next> </block> </next> </block> </next> </block> </next> </block> </next> </block> </next> </block> </next> </block> </statement> <next> <block type="debug" id=".{Ew66Z]MiR,{4e08hvp" disabled="true"> <field name="Severity">log</field> <value name="TEXT"> <shadow xmlns="http://www.w3.org/1999/xhtml" type="text" id="+;gROYIhif%4n~j.}Nhz"> <field name="TEXT">test</field> </shadow> <block type="variables_get" id="H2iPnI=xf$iC3jL9$mQV"> <field name="VAR" id="~J%;V(L_kdEvs*qQ~IBk">Ausgabetext</field> </block> </value> </block> </next> </block> </next> </block> </statement> <next> <block type="controls_if" id="N+F+/fYbDeMZL#(HaEo|"> <value name="IF0"> <block type="logic_compare" id="T+)nZ(]w4LgDY/|?p56g"> <field name="OP">NEQ</field> <value name="A"> <block type="get_value" id="k=BXdEuQo7?Mo%bdfdng"> <field name="ATTR">val</field> <field name="OID">javascript.0.Eigene_Datenpunkte.Status.Lampen.Lampen_die_an_sind</field> </block> </value> <value name="B"> <block type="math_number" id="j-blGyC;V4jTLHKvikXr"> <field name="NUM">0</field> </block> </value> </block> </value> <statement name="DO0"> <block type="variables_set" id="mk,--n%8x}e1WshOCBc."> <field name="VAR" id="~J%;V(L_kdEvs*qQ~IBk">Ausgabetext</field> <value name="VALUE"> <block type="text_join" id="Ew3VTw7qG|Fx:}vq3hIR"> <mutation items="5"></mutation> <value name="ADD0"> <block type="text" id="L(r$t@)3fal36K.]Oag."> <field name="TEXT">&lt;speak&gt;&lt;voice name="Alexa"&gt;</field> </block> </value> <value name="ADD1"> <block type="text" id="Lo0@rGsN^gt1iZ#@~A/7"> <field name="TEXT">Im Moment sind im </field> </block> </value> <value name="ADD2"> <block type="get_value" id="i?[Ze,W23|M_S5@d?;q">
                      <field name="ATTR">val</field>
                      <field name="OID">javascript.0.Eigene_Datenpunkte.Status.Lampen.Lampen_sind_wo_an</field>
                      </block>
                      </value>
                      <value name="ADD3">
                      <block type="text" id="NqEob9;8UT11wTdCQi#"> <field name="TEXT">eingeschaltete Lampen</field> </block> </value> <value name="ADD4"> <block type="text" id="-9oSLmZYA~kWjO#/VdCp"> <field name="TEXT">&lt;/voice&gt;&lt;/speak&gt;</field> </block> </value> </block> </value> <next> <block type="timeouts_settimeout" id="YUcn[QksR=DsW0nE^6~;"> <field name="NAME">timeout2</field> <field name="DELAY">500</field> <field name="UNIT">ms</field> <statement name="STATEMENT"> <block type="comment" id="~/NGTn@Mn185A#A@}8|#"> <field name="COMMENT">Wohnzimmer</field> <next> <block type="controls_if" id="t/iFREg+aB[Tg|fNABO1"> <value name="IF0"> <block type="logic_compare" id="D(x#GpMhMaD67h~IXyLv"> <field name="OP">EQ</field> <value name="A"> <block type="get_value" id="+}2st9y5DfUl-#ll]Z}:"> <field name="ATTR">val</field> <field name="OID">alexa2.0.History.name</field> </block> </value> <value name="B"> <block type="text" id=";}C_.s[i7I4,Veg*qcG)"> <field name="TEXT">Wohnzimmer</field> </block> </value> </block> </value> <statement name="DO0"> <block type="control" id="K:5m9f*LTG}^bDe*EMRM"> <mutation xmlns="http://www.w3.org/1999/xhtml" delay_input="false"></mutation> <field name="OID">alexa2.0.Echo-Devices.XXX.Commands.ssml</field> <field name="WITH_DELAY">FALSE</field> <value name="VALUE"> <block type="variables_get" id="$oM=t$]eZXT[~+[[FM87"> <field name="VAR" id="~J%;V(L_kdEvs*qQ~IBk">Ausgabetext</field> </block> </value> </block> </statement> <next> <block type="comment" id="T-*4J_}8s|[qg1JO7rZB"> <field name="COMMENT">Küche</field> <next> <block type="controls_if" id="ncx,@hS5whA03;Ip5;VA"> <value name="IF0"> <block type="logic_compare" id="Q.RwM6/fds:jBUCp:wUU"> <field name="OP">EQ</field> <value name="A"> <block type="get_value" id="+DUh%F)wI-Arbp;uhIJO"> <field name="ATTR">val</field> <field name="OID">alexa2.0.History.name</field> </block> </value> <value name="B"> <block type="text" id="PVeTUK8X:tB-(u13[+pC"> <field name="TEXT">Küche</field> </block> </value> </block> </value> <statement name="DO0"> <block type="control" id="_:8l4dLKjuOI@p_I@/qI"> <mutation xmlns="http://www.w3.org/1999/xhtml" delay_input="false"></mutation> <field name="OID">alexa2.0.Echo-Devices.XXX.Commands.ssml</field> <field name="WITH_DELAY">FALSE</field> <value name="VALUE"> <block type="variables_get" id=")!9E6@!U?T#0iZ8?rtU">
                      <field name="VAR" id="~J%;V(L_kdEvs
                      qQ~IBk">Ausgabetext</field>
                      </block>
                      </value>
                      </block>
                      </statement>
                      <next>
                      <block type="comment" id="rnL!p!!mhI[hPHPE,^8Y">
                      <field name="COMMENT">Schlafzimmer</field>
                      <next>
                      <block type="controls_if" id="15Q%R0g[m.$Q#SiqV,tx">
                      <value name="IF0">
                      <block type="logic_compare" id="Mr.EdOG:^c[0n[eUPq@">
                      <field name="OP">EQ</field>
                      <value name="A">
                      <block type="get_value" id="NNWi7X3~PA1~?bB.o1z%">
                      <field name="ATTR">val</field>
                      <field name="OID">alexa2.0.History.name</field>
                      </block>
                      </value>
                      <value name="B">
                      <block type="text" id="MNDwMm~j]|[/(L|yNzR4">
                      <field name="TEXT">Schlafzimmer</field>
                      </block>
                      </value>
                      </block>
                      </value>
                      <statement name="DO0">
                      <block type="control" id=")kA0gFFA]g2:yn@o=gJQ">
                      <mutation xmlns="http://www.w3.org/1999/xhtml" delay_input="false"></mutation>
                      <field name="OID">alexa2.0.Echo-Devices.XXX.Commands.ssml</field>
                      <field name="WITH_DELAY">FALSE</field>
                      <value name="VALUE">
                      <block type="variables_get" id="3B}%@Yz[li)JZjP,Ylqr">
                      <field name="VAR" id="~J%;V(L_kdEvsqQ~IBk">Ausgabetext</field>
                      </block>
                      </value>
                      </block>
                      </statement>
                      <next>
                      <block type="comment" id="]ua=kK~)+chG).Mnyh7w">
                      <field name="COMMENT">Badezimmer</field>
                      <next>
                      <block type="controls_if" id="Z:Gocl?5n,AY)W%/@m4e">
                      <value name="IF0">
                      <block type="logic_compare" id="m6g}@gs
                      B9l
                      +iVI_]}b">
                      <field name="OP">EQ</field>
                      <value name="A">
                      <block type="get_value" id="M;]frUPdx-7ZESpG.,,x">
                      <field name="ATTR">val</field>
                      <field name="OID">alexa2.0.History.name</field>
                      </block>
                      </value>
                      <value name="B">
                      <block type="text" id="0:D*?Zgedt*[@sv!0W%n">
                      <field name="TEXT">Badezimmer</field>
                      </block>
                      </value>
                      </block>
                      </value>
                      <statement name="DO0">
                      <block type="control" id="DeMs)NQDVQ}.^sj(/%6w">
                      <mutation xmlns="http://www.w3.org/1999/xhtml" delay_input="false"></mutation>
                      <field name="OID">alexa2.0.Echo-Devices.XXX.Commands.ssml</field>
                      <field name="WITH_DELAY">FALSE</field>
                      <value name="VALUE">
                      <block type="variables_get" id="bnCyexNAWsN}xyb7taH"> <field name="VAR" id="~J%;V(L_kdEvs*qQ~IBk">Ausgabetext</field> </block> </value> </block> </statement> <next> <block type="comment" id="mDHc|DBRr51nE8XeHB">
                      <field name="COMMENT">Flur</field>
                      <next>
                      <block type="controls_if" id="W50K|L9rUZ7j%YS7S26H">
                      <value name="IF0">
                      <block type="logic_compare" id="bznXcs(PYerfY|p.tcj">
                      <field name="OP">EQ</field>
                      <value name="A">
                      <block type="get_value" id="-gei;oNvi;cY7T%]c:|"> <field name="ATTR">val</field> <field name="OID">alexa2.0.History.name</field> </block> </value> <value name="B"> <block type="text" id="|pQKH4O!;YfvapWjdkrQ"> <field name="TEXT">Flur</field> </block> </value> </block> </value> <statement name="DO0"> <block type="control" id="]b)sZp,{Xv0YuzH1s.X)"> <mutation xmlns="http://www.w3.org/1999/xhtml" delay_input="false"></mutation> <field name="OID">alexa2.0.Echo-Devices.XXX.Commands.ssml</field> <field name="WITH_DELAY">FALSE</field> <value name="VALUE"> <block type="variables_get" id="3mw_T}b_CW|}j0XUAWlQ"> <field name="VAR" id="~J%;V(L_kdEvs*qQ~IBk">Ausgabetext</field> </block> </value> </block> </statement> <next> <block type="comment" id="#tN~zg61IsMw]DodsqV0"> <field name="COMMENT">Gästezimmer</field> <next> <block type="controls_if" id="g*?G|Wk98SP,fF#~@.DW"> <value name="IF0"> <block type="logic_compare" id="jS#T#,6$9#^Ne$048-x">
                      <field name="OP">EQ</field>
                      <value name="A">
                      <block type="get_value" id="ZOETTZ^TH,)wA;WoSQ:?">
                      <field name="ATTR">val</field>
                      <field name="OID">alexa2.0.History.name</field>
                      </block>
                      </value>
                      <value name="B">
                      <block type="text" id="=RM
                      =?4Iq6%q!@8uBJ]6">
                      <field name="TEXT">Gästezimmer</field>
                      </block>
                      </value>
                      </block>
                      </value>
                      <statement name="DO0">
                      <block type="control" id="?/@ICyV_A~Le~]P]+jaV">
                      <mutation xmlns="http://www.w3.org/1999/xhtml" delay_input="false"></mutation>
                      <field name="OID">alexa2.0.Echo-Devices.XXX.Commands.ssml</field>
                      <field name="WITH_DELAY">FALSE</field>
                      <value name="VALUE">
                      <block type="variables_get" id="Ri6x|2|F%=P}T|aw+S%"> <field name="VAR" id="~J%;V(L_kdEvs*qQ~IBk">Ausgabetext</field> </block> </value> </block> </statement> </block> </next> </block> </next> </block> </next> </block> </next> </block> </next> </block> </next> </block> </next> </block> </next> </block> </next> </block> </next> </block> </next> </block> </statement> <next> <block type="debug" id="S(nJ=3w67ayn/{bF]icJ" disabled="true"> <field name="Severity">log</field> <value name="TEXT"> <shadow xmlns="http://www.w3.org/1999/xhtml" type="text" id="+;gROYIhif%4n~j.}Nhz"> <field name="TEXT">test</field> </shadow> <block type="variables_get" id="@,rV[(ci[uW6uGM36,]">
                      <field name="VAR" id="~J%;V(L_kdEvs
                      qQ~IBk">Ausgabetext</field>
                      </block>
                      </value>
                      </block>
                      </next>
                      </block>
                      </next>
                      </block>
                      </statement>
                      </block>
                      </next>
                      </block>
                      </next>
                      </block>
                      </next>
                      </block>
                      </next>
                      </block>
                      </xml>

                      und einmal die kurze

                      Status_Lampen.png


                      <xml xmlns="https://developers.google.com/blockly/xml">
                      <variables>
                      <variable id="~J%;V(L_kdEvsqQ~IBk">Ausgabetext</variable>
                      </variables>
                      <block type="comment" id="cU,}hA#oC@+|ueGSN6{" x="-837" y="-838"> <field name="COMMENT">Alexa, sind noch Lampen eingeschaltet</field> <next> <block type="comment" id="4PKyNb9DKivCB/%Q6R@v"> <field name="COMMENT">Alexa, ist noch Licht eingeschaltet</field> <next> <block type="control" id="@J7@ob/rsR9OCYN+!hI7"> <mutation xmlns="http://www.w3.org/1999/xhtml" delay_input="false"></mutation> <field name="OID">alexa2.0.History.#trigger</field> <field name="WITH_DELAY">FALSE</field> <value name="VALUE"> <block type="logic_boolean" id="oI]KS-#7{Lh(W#]MB7C">
                      <field name="BOOL">TRUE</field>
                      </block>
                      </value>
                      <next>
                      <block type="controls_if" id="{_JT|3Mpv
                      tSOVWD3Pz6">
                      <value name="IF0">
                      <block type="logic_compare" id="D?,QGBBwauCm,Qte=Q-">
                      <field name="OP">EQ</field>
                      <value name="A">
                      <block type="get_value" id="]irLwLWGul].x{m.#.@"> <field name="ATTR">val</field> <field name="OID">javascript.0.Eigene_Datenpunkte.Status.Lampen.Lampen_die_an_sind</field> </block> </value> <value name="B"> <block type="math_number" id="5LL6xi4F_7}-aEi^jHY@"> <field name="NUM">0</field> </block> </value> </block> </value> <statement name="DO0"> <block type="variables_set" id="5VFfHYTB!S7A^A*?SicA"> <field name="VAR" id="~J%;V(L_kdEvs*qQ~IBk">Ausgabetext</field> <value name="VALUE"> <block type="text_join" id="4?k[0reCRn.mjkxHg41~"> <mutation items="3"></mutation> <value name="ADD0"> <block type="text" id="NgpEM1aq.?1o;p,vmj.">
                      <field name="TEXT"><speak><voice name="Alexa"></field>
                      </block>
                      </value>
                      <value name="ADD1">
                      <block type="get_value" id="Vh/8rxU]yD!3mT}0y[eC">
                      <field name="ATTR">val</field>
                      <field name="OID">javascript.0.Eigene_Datenpunkte.Status.Lampen.Lampen_sind_wo_an</field>
                      </block>
                      </value>
                      <value name="ADD2">
                      <block type="text" id="nbjQLM
                      ~Fd1@ly;mL|Z*">
                      <field name="TEXT"></voice></speak></field>
                      </block>
                      </value>
                      </block>
                      </value>
                      <next>
                      <block type="control_ex" id="+x0q7E?Hft)ajTWnsbCG">
                      <field name="TYPE">false</field>
                      <field name="CLEAR_RUNNING">FALSE</field>
                      <value name="OID">
                      <shadow xmlns="http://www.w3.org/1999/xhtml" type="field_oid" id="jnJO@~-TZSnZH4eTlWi^">
                      <field name="oid">Object ID</field>
                      </shadow>
                      <block type="text_join" id="Uc(C1DhkN=(Ej:3;/_{">
                      <mutation items="3"></mutation>
                      <value name="ADD0">
                      <block type="text" id="3N=uEC@l
                      )_nr#{g4uNp">
                      <field name="TEXT">alexa2.0.Echo-Devices.</field>
                      </block>
                      </value>
                      <value name="ADD1">
                      <block type="get_value" id="mTQ}3#/=?3VG-}4O,m-">
                      <field name="ATTR">val</field>
                      <field name="OID">alexa2.0.History.serialNumber</field>
                      </block>
                      </value>
                      <value name="ADD2">
                      <block type="text" id="E|q29/u43a=DeTghbcsC">
                      <field name="TEXT">.Commands.ssml</field>
                      </block>
                      </value>
                      </block>
                      </value>
                      <value name="VALUE">
                      <shadow xmlns="http://www.w3.org/1999/xhtml" type="logic_boolean" id="Xul}ZCl#TwB{^r7um)n{">
                      <field name="BOOL">TRUE</field>
                      </shadow>
                      <block type="variables_get" id="D_FnDB|lSUf55^mbVG7]">
                      <field name="VAR" id="~J%;V(L_kdEvs
                      qQ~IBk">Ausgabetext</field>
                      </block>
                      </value>
                      <value name="DELAY_MS">
                      <shadow type="math_number" id="N@fDKf#STgixesQWvdkZ">
                      <field name="NUM">500</field>
                      </shadow>
                      </value>
                      <next>
                      <block type="debug" id=".{Ew66Z]MiR,{4e08hvp" disabled="true">
                      <field name="Severity">log</field>
                      <value name="TEXT">
                      <shadow xmlns="http://www.w3.org/1999/xhtml" type="text" id="+;gROYIhif%4n~j.}Nhz">
                      <field name="TEXT">test</field>
                      </shadow>
                      <block type="variables_get" id="H2iPnI=xf$iC3jL9$mQV">
                      <field name="VAR" id="~J%;V(L_kdEvsqQ~IBk">Ausgabetext</field>
                      </block>
                      </value>
                      </block>
                      </next>
                      </block>
                      </next>
                      </block>
                      </statement>
                      <next>
                      <block type="controls_if" id="N+F+/fYbDeMZL#(HaEo|">
                      <value name="IF0">
                      <block type="logic_compare" id="T+)nZ(]w4LgDY/|?p56g">
                      <field name="OP">NEQ</field>
                      <value name="A">
                      <block type="get_value" id="k=BXdEuQo7?Mo%bdfdng">
                      <field name="ATTR">val</field>
                      <field name="OID">javascript.0.Eigene_Datenpunkte.Status.Lampen.Lampen_die_an_sind</field>
                      </block>
                      </value>
                      <value name="B">
                      <block type="math_number" id="j-blGyC;V4jTLHKvikXr">
                      <field name="NUM">0</field>
                      </block>
                      </value>
                      </block>
                      </value>
                      <statement name="DO0">
                      <block type="variables_set" id="mk,--n%8x}e1WshOCBc.">
                      <field name="VAR" id="~J%;V(L_kdEvs
                      qQ~IBk">Ausgabetext</field>
                      <value name="VALUE">
                      <block type="text_join" id="Ew3VTw7qG|Fx:}vq3hIR">
                      <mutation items="5"></mutation>
                      <value name="ADD0">
                      <block type="text" id="L(r$t@)3fal36K.]Oag.">
                      <field name="TEXT"><speak><voice name="Alexa"></field>
                      </block>
                      </value>
                      <value name="ADD1">
                      <block type="text" id="Lo0@rGsN^gt1iZ#@~A/7">
                      <field name="TEXT">Im Moment sind im </field>
                      </block>
                      </value>
                      <value name="ADD2">
                      <block type="get_value" id="i?[Ze,W23|M`_S5@d?;q">
                      <field name="ATTR">val</field>
                      <field name="OID">javascript.0.Eigene_Datenpunkte.Status.Lampen.Lampen_sind_wo_an</field>
                      </block>
                      </value>
                      <value name="ADD3">
                      <block type="text" id="NqEob9;8UT11wT`dCQi#">
                      <field name="TEXT">eingeschaltete Lampen</field>
                      </block>
                      </value>
                      <value name="ADD4">
                      <block type="text" id="-9oSLmZYA~kWjO#/VdCp">
                      <field name="TEXT"></voice></speak></field>
                      </block>
                      </value>
                      </block>
                      </value>
                      <next>
                      <block type="control_ex" id="AmH$dRclYraFxYn_M[@N">
                      <field name="TYPE">false</field>
                      <field name="CLEAR_RUNNING">FALSE</field>
                      <value name="OID">
                      <shadow xmlns="http://www.w3.org/1999/xhtml" type="field_oid" id="jnJO@~-TZSnZH4eTlWi^">
                      <field name="oid">Object ID</field>
                      </shadow>
                      <block type="text_join" id="UzlVgfT#m#ZF~KKfJRD">
                      <mutation items="3"></mutation>
                      <value name="ADD0">
                      <block type="text" id="X{Xt
                      :vkWZD-xQ-@GOTb">
                      <field name="TEXT">alexa2.0.Echo-Devices.</field>
                      </block>
                      </value>
                      <value name="ADD1">
                      <block type="get_value" id="lev,hwALzsP%~ck[Gq(@">
                      <field name="ATTR">val</field>
                      <field name="OID">alexa2.0.History.serialNumber</field>
                      </block>
                      </value>
                      <value name="ADD2">
                      <block type="text" id="b/=7G)A}}r/0L,~}#8lZ">
                      <field name="TEXT">.Commands.ssml</field>
                      </block>
                      </value>
                      </block>
                      </value>
                      <value name="VALUE">
                      <shadow xmlns="http://www.w3.org/1999/xhtml" type="logic_boolean" id="Xul}ZCl#TwB{^r7um)n{">
                      <field name="BOOL">TRUE</field>
                      </shadow>
                      <block type="variables_get" id="f(wOW[koP;iSAE;2ith">
                      <field name="VAR" id="~J%;V(L_kdEvs
                      qQ~IBk">Ausgabetext</field>
                      </block>
                      </value>
                      <value name="DELAY_MS">
                      <shadow type="math_number" id="@[ja$X%TAqP8Vx/RP(.m">
                      <field name="NUM">500</field>
                      </shadow>
                      </value>
                      <next>
                      <block type="debug" id="S(nJ=3w67ayn/{bF]icJ" disabled="true">
                      <field name="Severity">log</field>
                      <value name="TEXT">
                      <shadow xmlns="http://www.w3.org/1999/xhtml" type="text" id="+;gROYIhif%4n~j.}Nhz">
                      <field name="TEXT">test</field>
                      </shadow>
                      <block type="variables_get" id="@,rV[(ci[u`W6uGM36,]">
                      <field name="VAR" id="~J%;V(L_kdEvs*qQ~IBk">Ausgabetext</field>
                      </block>
                      </value>
                      </block>
                      </next>
                      </block>
                      </next>
                      </block>
                      </statement>
                      </block>
                      </next>
                      </block>
                      </next>
                      </block>
                      </next>
                      </block>
                      </next>
                      </block>
                      </xml>

                      machen im Endeffekt aber beide das gleiche
                      iot Brauchst du um das an Alexa weiter zugeben, also hier das Script auswählen

                      iot.png

                      dann in der Alexa app eine Routine anlegen und das Script auswählen
                      wie zum Beispiel,
                      Alexa, sind noch Lampen eingeschaltet
                      Alexa, ist noch Licht eingeschaltet
                      sind dann halt zwei Routinen auf dasselbe Script

                      Routine.PNG

                      nur über die History geht es nicht so richtig sauber, schreibt ja auch schon dslraser weiter vorne.
                      Mehrere Abfragen geht auch ohne Probleme man muss halt nur die Datenpunkte haben oder sie sich selber befüllen.

                      wetter.png

                      nur eine Temperatur abfragen geht auch ohne Routine oder Script, nur den Datenpunkt im iot hinzufügen

                      multi.png

                      hier geht dann Alexa, wie ist die Temperatur von Multisensor Wohnzimmer oder auch Alexa, Temperatur Multisensor Wohnzimmer.
                      Geräte steuern also An und Aus macht iot es muss auch keine Routine erstellt werden.

                      iot2.png

                      und zum Schluss immer Alexa, Geräte suchen, nicht vergessen

                      und die Luxus variante gibt es von @dslraser dann hier Fenster und andere Geräte zählen opt. Alexa Ansagen

                      vielleicht Hilft es ja was weiter

                      Gruß Michael

                      G 1 Antwort Letzte Antwort
                      0
                      • dslraserD dslraser

                        @Info sagte in Alexa Routinen zum Schalten von Geräten:

                        Ich lese aus dem ALEXA2 History die Anfrage mit. Trigger, Ausgabe und alles ist kein Akt.
                        ABER Alexa antwortet erstmal das sie keine Ahnung hat wie der Status des Pools ist oder das sie das Gerät nicht kennt. DAS würde ich gerne unterbinden. Und am liebsten ohne etliche Skills die genau auf den Wortlaut x hören.

                        Ich kenne dazu keine Möglichkeit.

                        Irgendwie auch logisch, das Alexa mit "ich kenne das Gerät nicht" usw...antwortet, denn sie kennt es ja tatsächlich nicht. Funktionieren wird Dein Script dann trotzdem, weil das ja nur auf die History reagiert...Nur die erste Antwort von Alexa nervt halt. Deshalb gehe ich nicht den Weg über die History, sondern lege meistens über den iot-Adapter mehrere SmartGeräte/SmartNamen an, die dann eine echte Routinen in der Amazon App auslösen, z.B. löst dann ein Button der aktualisiert wird mein Blockly/Script aus und gibt mir das wieder was ich will.

                        GaspodeG Offline
                        GaspodeG Offline
                        Gaspode
                        schrieb am zuletzt editiert von
                        #11

                        @dslraser said in Alexa Routinen zum Schalten von Geräten:

                        Irgendwie auch logisch, das Alexa mit "ich kenne das Gerät nicht" usw...antwortet, denn sie kennt es ja tatsächlich nicht. Funktionieren wird Dein Script dann trotzdem, weil das ja nur auf die History reagiert...Nur die erste Antwort von Alexa nervt halt.

                        Diese Antwort lässt sich zwar nicht komplett unterbinden, aber per Routine verändern.
                        Ich löse das so, dass ich für alle Sprachbefehle, die ein Script per History triggern sollen, eine Routine anlege, die als einzige Reaktion eine Sprachausgabe macht. Also z.B. würde die Routine auf den Sprchbefehl "wer hat angerufen" reagieren und als einzige Reakton auf dem angegebenen Echo sagen "Moment, ich sehe nach". Die eigentliche Aussage wird dann per ioBroker Script gemacht, dass auf die History mit "wer hat angerufen" triggert. Die Routine muss übrigens nur ein einziges Mal in der Alexa App angelegt werden.

                        G 1 Antwort Letzte Antwort
                        0
                        • GaspodeG Gaspode

                          @dslraser said in Alexa Routinen zum Schalten von Geräten:

                          Irgendwie auch logisch, das Alexa mit "ich kenne das Gerät nicht" usw...antwortet, denn sie kennt es ja tatsächlich nicht. Funktionieren wird Dein Script dann trotzdem, weil das ja nur auf die History reagiert...Nur die erste Antwort von Alexa nervt halt.

                          Diese Antwort lässt sich zwar nicht komplett unterbinden, aber per Routine verändern.
                          Ich löse das so, dass ich für alle Sprachbefehle, die ein Script per History triggern sollen, eine Routine anlege, die als einzige Reaktion eine Sprachausgabe macht. Also z.B. würde die Routine auf den Sprchbefehl "wer hat angerufen" reagieren und als einzige Reakton auf dem angegebenen Echo sagen "Moment, ich sehe nach". Die eigentliche Aussage wird dann per ioBroker Script gemacht, dass auf die History mit "wer hat angerufen" triggert. Die Routine muss übrigens nur ein einziges Mal in der Alexa App angelegt werden.

                          G Offline
                          G Offline
                          G.Hawk
                          schrieb am zuletzt editiert von
                          #12

                          @Alexi
                          Das habe ich auch so gemacht, aber hast du mal gesehen, dass der Datenpunkt Summery dann sofort wieder gelöscht wird, wenn eine Routine darauf startet?

                          GaspodeG 1 Antwort Letzte Antwort
                          0
                          • M Michi68

                            @Martin-0
                            Hallo,
                            vielleicht ist das so etwas einfacher zu verstehen.
                            Um eine Abfrage zu stellen brauchst du nur ein Script, hier mal ein Beispiel, Ausgabe ist immer auf dem Gerät das du ansprichst.

                            einmal die lange variante
                            Status_Lampen2.png


                            <xml xmlns="https://developers.google.com/blockly/xml">
                            <variables>
                            <variable id="~J%;V(L_kdEvsqQ~IBk">Ausgabetext</variable>
                            <variable type="timeout" id="timeout">timeout</variable>
                            <variable type="timeout" id="timeout2">timeout2</variable>
                            </variables>
                            <block type="comment" id="cU,}hA#oC@+|ueGSN6{" x="-837" y="-838"> <field name="COMMENT">Alexa, sind noch Lampen eingeschaltet</field> <next> <block type="comment" id="4PKyNb9DKivCB/%Q6R@v"> <field name="COMMENT">Alexa, ist noch Licht eingeschaltet</field> <next> <block type="control" id="@J7@ob/rsR9OCYN+!hI7"> <mutation xmlns="http://www.w3.org/1999/xhtml" delay_input="false"></mutation> <field name="OID">alexa2.0.History.#trigger</field> <field name="WITH_DELAY">FALSE</field> <value name="VALUE"> <block type="logic_boolean" id="oI]KS-#7{Lh(W#]MB7C">
                            <field name="BOOL">TRUE</field>
                            </block>
                            </value>
                            <next>
                            <block type="controls_if" id="{_JT|3Mpv
                            tSOVWD3Pz6">
                            <value name="IF0">
                            <block type="logic_compare" id="D?,QGBBwauCm,Qte=Q-">
                            <field name="OP">EQ</field>
                            <value name="A">
                            <block type="get_value" id="]irLwLWGul].x{m.#.@"> <field name="ATTR">val</field> <field name="OID">javascript.0.Eigene_Datenpunkte.Status.Lampen.Lampen_die_an_sind</field> </block> </value> <value name="B"> <block type="math_number" id="5LL6xi4F_7}-aEi^jHY@"> <field name="NUM">0</field> </block> </value> </block> </value> <statement name="DO0"> <block type="variables_set" id="5VFfHYTB!S7A^A*?SicA"> <field name="VAR" id="~J%;V(L_kdEvs*qQ~IBk">Ausgabetext</field> <value name="VALUE"> <block type="text_join" id="4?k[0reCRn.mjkxHg41~"> <mutation items="3"></mutation> <value name="ADD0"> <block type="text" id="NgpEM1aq.?1o;p,vmj.">
                            <field name="TEXT"><speak><voice name="Alexa"></field>
                            </block>
                            </value>
                            <value name="ADD1">
                            <block type="get_value" id="Vh/8rxU]yD!3mT}0y[eC">
                            <field name="ATTR">val</field>
                            <field name="OID">javascript.0.Eigene_Datenpunkte.Status.Lampen.Lampen_sind_wo_an</field>
                            </block>
                            </value>
                            <value name="ADD2">
                            <block type="text" id="nbjQLM
                            ~Fd1@ly;mL|Z*">
                            <field name="TEXT"></voice></speak></field>
                            </block>
                            </value>
                            </block>
                            </value>
                            <next>
                            <block type="timeouts_settimeout" id="^c,bQ)^![(HGz2QrWw/u">
                            <field name="NAME">timeout</field>
                            <field name="DELAY">500</field>
                            <field name="UNIT">ms</field>
                            <statement name="STATEMENT">
                            <block type="comment" id="3e5[cR-lQ2P@g3-V]T.">
                            <field name="COMMENT">Wohnzimmer</field>
                            <next>
                            <block type="controls_if" id="KauxWUEJAP2sp)D%Cdm9">
                            <value name="IF0">
                            <block type="logic_compare" id="F4MK(fbY8WU[yWO)@Z~O">
                            <field name="OP">EQ</field>
                            <value name="A">
                            <block type="get_value" id="Oe@)VM+1Y_1YJn?6xyl"> <field name="ATTR">val</field> <field name="OID">alexa2.0.History.name</field> </block> </value> <value name="B"> <block type="text" id="Q8@T8q|P]D*WR6aG#*j0"> <field name="TEXT">Wohnzimmer</field> </block> </value> </block> </value> <statement name="DO0"> <block type="control" id="r|w?GKF2R8A%WSX@AP[|"> <mutation xmlns="http://www.w3.org/1999/xhtml" delay_input="false"></mutation> <field name="OID">alexa2.0.Echo-Devices.XXX.Commands.ssml</field> <field name="WITH_DELAY">FALSE</field> <value name="VALUE"> <block type="variables_get" id="HTcKd2V9F)=k:Ae4mS}F"> <field name="VAR" id="~J%;V(L_kdEvs*qQ~IBk">Ausgabetext</field> </block> </value> </block> </statement> <next> <block type="comment" id="Lg@:ha-a2x,0rfhC.]_="> <field name="COMMENT">Küche</field> <next> <block type="controls_if" id="DTWD3KK_f2CmowWl}Dw+"> <value name="IF0"> <block type="logic_compare" id="*r~k%Po!vzUQHybU)sv">
                            <field name="OP">EQ</field>
                            <value name="A">
                            <block type="get_value" id="285L,qT@eWkZS(#hgXnl">
                            <field name="ATTR">val</field>
                            <field name="OID">alexa2.0.History.name</field>
                            </block>
                            </value>
                            <value name="B">
                            <block type="text" id="w!HtM,nb,KI1aqaOeI36">
                            <field name="TEXT">Küche</field>
                            </block>
                            </value>
                            </block>
                            </value>
                            <statement name="DO0">
                            <block type="control" id="_H{%k4b|sj!:P^rDu%};">
                            <mutation xmlns="http://www.w3.org/1999/xhtml" delay_input="false"></mutation>
                            <field name="OID">alexa2.0.Echo-Devices.XXX.Commands.ssml</field>
                            <field name="WITH_DELAY">FALSE</field>
                            <value name="VALUE">
                            <block type="variables_get" id="~51B8(3{stq1BpR1J~p%">
                            <field name="VAR" id="~J%;V(L_kdEvs
                            qQ~IBk">Ausgabetext</field>
                            </block>
                            </value>
                            </block>
                            </statement>
                            <next>
                            <block type="comment" id="?k8YL[;!mE5;-NddVTc"> <field name="COMMENT">Schlafzimmer</field> <next> <block type="controls_if" id="zyeAn3wMc!;hYZDhK)hy"> <value name="IF0"> <block type="logic_compare" id="bq=B-rG}sw}7gG1{/Y-."> <field name="OP">EQ</field> <value name="A"> <block type="get_value" id="ZrS-l8E!}8.4{,qM9i">
                            <field name="ATTR">val</field>
                            <field name="OID">alexa2.0.History.name</field>
                            </block>
                            </value>
                            <value name="B">
                            <block type="text" id="te+gSwhWiVR4,scYV%ca">
                            <field name="TEXT">Schlafzimmer</field>
                            </block>
                            </value>
                            </block>
                            </value>
                            <statement name="DO0">
                            <block type="control" id="grH6#whY1.N-q[pLM5X.">
                            <mutation xmlns="http://www.w3.org/1999/xhtml" delay_input="false"></mutation>
                            <field name="OID">alexa2.0.Echo-Devices.XXX.Commands.ssml</field>
                            <field name="WITH_DELAY">FALSE</field>
                            <value name="VALUE">
                            <block type="variables_get" id="[hMf^;p|,CaZVyd+qTm~">
                            <field name="VAR" id="~J%;V(L_kdEvs
                            qQ~IBk">Ausgabetext</field>
                            </block>
                            </value>
                            </block>
                            </statement>
                            <next>
                            <block type="comment" id="zB.uUF.v)YSQB%fh-NeN">
                            <field name="COMMENT">Badezimmer</field>
                            <next>
                            <block type="controls_if" id="yLDA;+i/I+kd:0zZE}WS">
                            <value name="IF0">
                            <block type="logic_compare" id="c!s}w1%u#jEsW#BP^],=">
                            <field name="OP">EQ</field>
                            <value name="A">
                            <block type="get_value" id="ANko_h~ho^4}^aa=9sS">
                            <field name="ATTR">val</field>
                            <field name="OID">alexa2.0.History.name</field>
                            </block>
                            </value>
                            <value name="B">
                            <block type="text" id="O,6A4Ym6Pm;LnGW{aHh:">
                            <field name="TEXT">Badezimmer</field>
                            </block>
                            </value>
                            </block>
                            </value>
                            <statement name="DO0">
                            <block type="control" id="tg_[?#}w5X(T6O@aJwK8">
                            <mutation xmlns="http://www.w3.org/1999/xhtml" delay_input="false"></mutation>
                            <field name="OID">alexa2.0.Echo-Devices.XXX.Commands.ssml</field>
                            <field name="WITH_DELAY">FALSE</field>
                            <value name="VALUE">
                            <block type="variables_get" id=";#p5#I+i.f#xUjF#U7)@">
                            <field name="VAR" id="~J%;V(L_kdEvs
                            qQ~IBk">Ausgabetext</field>
                            </block>
                            </value>
                            </block>
                            </statement>
                            <next>
                            <block type="comment" id="Z^qFzd.$Eq69H^BadO9t">
                            <field name="COMMENT">Flur</field>
                            <next>
                            <block type="controls_if" id="M7hV07aa/l?O]8?~Q1;">
                            <value name="IF0">
                            <block type="logic_compare" id="Kh%.^Ls~FUNBCw.S!;5"> <field name="OP">EQ</field> <value name="A"> <block type="get_value" id="jQ)Is^0?xsU%Gp=LLE"> <field name="ATTR">val</field> <field name="OID">alexa2.0.History.name</field> </block> </value> <value name="B"> <block type="text" id="bVIu?*Y3KEq}V}ehCWF."> <field name="TEXT">Flur</field> </block> </value> </block> </value> <statement name="DO0"> <block type="control" id="DA3W]TJ_CX$)2O3}Ca|~"> <mutation xmlns="http://www.w3.org/1999/xhtml" delay_input="false"></mutation> <field name="OID">alexa2.0.Echo-Devices.XXX.Commands.ssml</field> <field name="WITH_DELAY">FALSE</field> <value name="VALUE"> <block type="variables_get" id="?n:m6}Y4|gYD7,oulgk#"> <field name="VAR" id="~J%;V(L_kdEvs*qQ~IBk">Ausgabetext</field> </block> </value> </block> </statement> <next> <block type="comment" id="t3]i)L+2B.Jnfa2eap,:"> <field name="COMMENT">Gästezimmer</field> <next> <block type="controls_if" id="TO9RT7C9la!v9ZgSMcs4"> <value name="IF0"> <block type="logic_compare" id="~cyXuqsTmYgp5o=wWmm)"> <field name="OP">EQ</field> <value name="A"> <block type="get_value" id="p%xttIq4BmLwwKxz__+">
                            <field name="ATTR">val</field>
                            <field name="OID">alexa2.0.History.name</field>
                            </block>
                            </value>
                            <value name="B">
                            <block type="text" id="~K5Qg^xQEePp(z.M]wU2">
                            <field name="TEXT">Gästezimmer</field>
                            </block>
                            </value>
                            </block>
                            </value>
                            <statement name="DO0">
                            <block type="control" id="yNv9Ae7e^u;=HgPlo_6b">
                            <mutation xmlns="http://www.w3.org/1999/xhtml" delay_input="false"></mutation>
                            <field name="OID">alexa2.0.Echo-Devices.XXX.Commands.ssml</field>
                            <field name="WITH_DELAY">FALSE</field>
                            <value name="VALUE">
                            <block type="variables_get" id="Fa52rB4f[7U3aHZ8eZA"> <field name="VAR" id="~J%;V(L_kdEvs*qQ~IBk">Ausgabetext</field> </block> </value> </block> </statement> </block> </next> </block> </next> </block> </next> </block> </next> </block> </next> </block> </next> </block> </next> </block> </next> </block> </next> </block> </next> </block> </next> </block> </statement> <next> <block type="debug" id=".{Ew66Z]MiR,{4e08hvp" disabled="true"> <field name="Severity">log</field> <value name="TEXT"> <shadow xmlns="http://www.w3.org/1999/xhtml" type="text" id="+;gROYIhif%4n~j.}Nhz"> <field name="TEXT">test</field> </shadow> <block type="variables_get" id="H2iPnI=xf$iC3jL9$mQV"> <field name="VAR" id="~J%;V(L_kdEvs*qQ~IBk">Ausgabetext</field> </block> </value> </block> </next> </block> </next> </block> </statement> <next> <block type="controls_if" id="N+F+/fYbDeMZL#(HaEo|"> <value name="IF0"> <block type="logic_compare" id="T+)nZ(]w4LgDY/|?p56g"> <field name="OP">NEQ</field> <value name="A"> <block type="get_value" id="k=BXdEuQo7?Mo%bdfdng"> <field name="ATTR">val</field> <field name="OID">javascript.0.Eigene_Datenpunkte.Status.Lampen.Lampen_die_an_sind</field> </block> </value> <value name="B"> <block type="math_number" id="j-blGyC;V4jTLHKvikXr"> <field name="NUM">0</field> </block> </value> </block> </value> <statement name="DO0"> <block type="variables_set" id="mk,--n%8x}e1WshOCBc."> <field name="VAR" id="~J%;V(L_kdEvs*qQ~IBk">Ausgabetext</field> <value name="VALUE"> <block type="text_join" id="Ew3VTw7qG|Fx:}vq3hIR"> <mutation items="5"></mutation> <value name="ADD0"> <block type="text" id="L(r$t@)3fal36K.]Oag."> <field name="TEXT">&lt;speak&gt;&lt;voice name="Alexa"&gt;</field> </block> </value> <value name="ADD1"> <block type="text" id="Lo0@rGsN^gt1iZ#@~A/7"> <field name="TEXT">Im Moment sind im </field> </block> </value> <value name="ADD2"> <block type="get_value" id="i?[Ze,W23|M_S5@d?;q">
                            <field name="ATTR">val</field>
                            <field name="OID">javascript.0.Eigene_Datenpunkte.Status.Lampen.Lampen_sind_wo_an</field>
                            </block>
                            </value>
                            <value name="ADD3">
                            <block type="text" id="NqEob9;8UT11wTdCQi#"> <field name="TEXT">eingeschaltete Lampen</field> </block> </value> <value name="ADD4"> <block type="text" id="-9oSLmZYA~kWjO#/VdCp"> <field name="TEXT">&lt;/voice&gt;&lt;/speak&gt;</field> </block> </value> </block> </value> <next> <block type="timeouts_settimeout" id="YUcn[QksR=DsW0nE^6~;"> <field name="NAME">timeout2</field> <field name="DELAY">500</field> <field name="UNIT">ms</field> <statement name="STATEMENT"> <block type="comment" id="~/NGTn@Mn185A#A@}8|#"> <field name="COMMENT">Wohnzimmer</field> <next> <block type="controls_if" id="t/iFREg+aB[Tg|fNABO1"> <value name="IF0"> <block type="logic_compare" id="D(x#GpMhMaD67h~IXyLv"> <field name="OP">EQ</field> <value name="A"> <block type="get_value" id="+}2st9y5DfUl-#ll]Z}:"> <field name="ATTR">val</field> <field name="OID">alexa2.0.History.name</field> </block> </value> <value name="B"> <block type="text" id=";}C_.s[i7I4,Veg*qcG)"> <field name="TEXT">Wohnzimmer</field> </block> </value> </block> </value> <statement name="DO0"> <block type="control" id="K:5m9f*LTG}^bDe*EMRM"> <mutation xmlns="http://www.w3.org/1999/xhtml" delay_input="false"></mutation> <field name="OID">alexa2.0.Echo-Devices.XXX.Commands.ssml</field> <field name="WITH_DELAY">FALSE</field> <value name="VALUE"> <block type="variables_get" id="$oM=t$]eZXT[~+[[FM87"> <field name="VAR" id="~J%;V(L_kdEvs*qQ~IBk">Ausgabetext</field> </block> </value> </block> </statement> <next> <block type="comment" id="T-*4J_}8s|[qg1JO7rZB"> <field name="COMMENT">Küche</field> <next> <block type="controls_if" id="ncx,@hS5whA03;Ip5;VA"> <value name="IF0"> <block type="logic_compare" id="Q.RwM6/fds:jBUCp:wUU"> <field name="OP">EQ</field> <value name="A"> <block type="get_value" id="+DUh%F)wI-Arbp;uhIJO"> <field name="ATTR">val</field> <field name="OID">alexa2.0.History.name</field> </block> </value> <value name="B"> <block type="text" id="PVeTUK8X:tB-(u13[+pC"> <field name="TEXT">Küche</field> </block> </value> </block> </value> <statement name="DO0"> <block type="control" id="_:8l4dLKjuOI@p_I@/qI"> <mutation xmlns="http://www.w3.org/1999/xhtml" delay_input="false"></mutation> <field name="OID">alexa2.0.Echo-Devices.XXX.Commands.ssml</field> <field name="WITH_DELAY">FALSE</field> <value name="VALUE"> <block type="variables_get" id=")!9E6@!U?T#0iZ8?rtU">
                            <field name="VAR" id="~J%;V(L_kdEvs
                            qQ~IBk">Ausgabetext</field>
                            </block>
                            </value>
                            </block>
                            </statement>
                            <next>
                            <block type="comment" id="rnL!p!!mhI[hPHPE,^8Y">
                            <field name="COMMENT">Schlafzimmer</field>
                            <next>
                            <block type="controls_if" id="15Q%R0g[m.$Q#SiqV,tx">
                            <value name="IF0">
                            <block type="logic_compare" id="Mr.EdOG:^c[0n[eUPq@">
                            <field name="OP">EQ</field>
                            <value name="A">
                            <block type="get_value" id="NNWi7X3~PA1~?bB.o1z%">
                            <field name="ATTR">val</field>
                            <field name="OID">alexa2.0.History.name</field>
                            </block>
                            </value>
                            <value name="B">
                            <block type="text" id="MNDwMm~j]|[/(L|yNzR4">
                            <field name="TEXT">Schlafzimmer</field>
                            </block>
                            </value>
                            </block>
                            </value>
                            <statement name="DO0">
                            <block type="control" id=")kA0gFFA]g2:yn@o=gJQ">
                            <mutation xmlns="http://www.w3.org/1999/xhtml" delay_input="false"></mutation>
                            <field name="OID">alexa2.0.Echo-Devices.XXX.Commands.ssml</field>
                            <field name="WITH_DELAY">FALSE</field>
                            <value name="VALUE">
                            <block type="variables_get" id="3B}%@Yz[li)JZjP,Ylqr">
                            <field name="VAR" id="~J%;V(L_kdEvsqQ~IBk">Ausgabetext</field>
                            </block>
                            </value>
                            </block>
                            </statement>
                            <next>
                            <block type="comment" id="]ua=kK~)+chG).Mnyh7w">
                            <field name="COMMENT">Badezimmer</field>
                            <next>
                            <block type="controls_if" id="Z:Gocl?5n,AY)W%/@m4e">
                            <value name="IF0">
                            <block type="logic_compare" id="m6g}@gs
                            B9l
                            +iVI_]}b">
                            <field name="OP">EQ</field>
                            <value name="A">
                            <block type="get_value" id="M;]frUPdx-7ZESpG.,,x">
                            <field name="ATTR">val</field>
                            <field name="OID">alexa2.0.History.name</field>
                            </block>
                            </value>
                            <value name="B">
                            <block type="text" id="0:D*?Zgedt*[@sv!0W%n">
                            <field name="TEXT">Badezimmer</field>
                            </block>
                            </value>
                            </block>
                            </value>
                            <statement name="DO0">
                            <block type="control" id="DeMs)NQDVQ}.^sj(/%6w">
                            <mutation xmlns="http://www.w3.org/1999/xhtml" delay_input="false"></mutation>
                            <field name="OID">alexa2.0.Echo-Devices.XXX.Commands.ssml</field>
                            <field name="WITH_DELAY">FALSE</field>
                            <value name="VALUE">
                            <block type="variables_get" id="bnCyexNAWsN}xyb7taH"> <field name="VAR" id="~J%;V(L_kdEvs*qQ~IBk">Ausgabetext</field> </block> </value> </block> </statement> <next> <block type="comment" id="mDHc|DBRr51nE8XeHB">
                            <field name="COMMENT">Flur</field>
                            <next>
                            <block type="controls_if" id="W50K|L9rUZ7j%YS7S26H">
                            <value name="IF0">
                            <block type="logic_compare" id="bznXcs(PYerfY|p.tcj">
                            <field name="OP">EQ</field>
                            <value name="A">
                            <block type="get_value" id="-gei;oNvi;cY7T%]c:|"> <field name="ATTR">val</field> <field name="OID">alexa2.0.History.name</field> </block> </value> <value name="B"> <block type="text" id="|pQKH4O!;YfvapWjdkrQ"> <field name="TEXT">Flur</field> </block> </value> </block> </value> <statement name="DO0"> <block type="control" id="]b)sZp,{Xv0YuzH1s.X)"> <mutation xmlns="http://www.w3.org/1999/xhtml" delay_input="false"></mutation> <field name="OID">alexa2.0.Echo-Devices.XXX.Commands.ssml</field> <field name="WITH_DELAY">FALSE</field> <value name="VALUE"> <block type="variables_get" id="3mw_T}b_CW|}j0XUAWlQ"> <field name="VAR" id="~J%;V(L_kdEvs*qQ~IBk">Ausgabetext</field> </block> </value> </block> </statement> <next> <block type="comment" id="#tN~zg61IsMw]DodsqV0"> <field name="COMMENT">Gästezimmer</field> <next> <block type="controls_if" id="g*?G|Wk98SP,fF#~@.DW"> <value name="IF0"> <block type="logic_compare" id="jS#T#,6$9#^Ne$048-x">
                            <field name="OP">EQ</field>
                            <value name="A">
                            <block type="get_value" id="ZOETTZ^TH,)wA;WoSQ:?">
                            <field name="ATTR">val</field>
                            <field name="OID">alexa2.0.History.name</field>
                            </block>
                            </value>
                            <value name="B">
                            <block type="text" id="=RM
                            =?4Iq6%q!@8uBJ]6">
                            <field name="TEXT">Gästezimmer</field>
                            </block>
                            </value>
                            </block>
                            </value>
                            <statement name="DO0">
                            <block type="control" id="?/@ICyV_A~Le~]P]+jaV">
                            <mutation xmlns="http://www.w3.org/1999/xhtml" delay_input="false"></mutation>
                            <field name="OID">alexa2.0.Echo-Devices.XXX.Commands.ssml</field>
                            <field name="WITH_DELAY">FALSE</field>
                            <value name="VALUE">
                            <block type="variables_get" id="Ri6x|2|F%=P}T|aw+S%"> <field name="VAR" id="~J%;V(L_kdEvs*qQ~IBk">Ausgabetext</field> </block> </value> </block> </statement> </block> </next> </block> </next> </block> </next> </block> </next> </block> </next> </block> </next> </block> </next> </block> </next> </block> </next> </block> </next> </block> </next> </block> </statement> <next> <block type="debug" id="S(nJ=3w67ayn/{bF]icJ" disabled="true"> <field name="Severity">log</field> <value name="TEXT"> <shadow xmlns="http://www.w3.org/1999/xhtml" type="text" id="+;gROYIhif%4n~j.}Nhz"> <field name="TEXT">test</field> </shadow> <block type="variables_get" id="@,rV[(ci[uW6uGM36,]">
                            <field name="VAR" id="~J%;V(L_kdEvs
                            qQ~IBk">Ausgabetext</field>
                            </block>
                            </value>
                            </block>
                            </next>
                            </block>
                            </next>
                            </block>
                            </statement>
                            </block>
                            </next>
                            </block>
                            </next>
                            </block>
                            </next>
                            </block>
                            </next>
                            </block>
                            </xml>

                            und einmal die kurze

                            Status_Lampen.png


                            <xml xmlns="https://developers.google.com/blockly/xml">
                            <variables>
                            <variable id="~J%;V(L_kdEvsqQ~IBk">Ausgabetext</variable>
                            </variables>
                            <block type="comment" id="cU,}hA#oC@+|ueGSN6{" x="-837" y="-838"> <field name="COMMENT">Alexa, sind noch Lampen eingeschaltet</field> <next> <block type="comment" id="4PKyNb9DKivCB/%Q6R@v"> <field name="COMMENT">Alexa, ist noch Licht eingeschaltet</field> <next> <block type="control" id="@J7@ob/rsR9OCYN+!hI7"> <mutation xmlns="http://www.w3.org/1999/xhtml" delay_input="false"></mutation> <field name="OID">alexa2.0.History.#trigger</field> <field name="WITH_DELAY">FALSE</field> <value name="VALUE"> <block type="logic_boolean" id="oI]KS-#7{Lh(W#]MB7C">
                            <field name="BOOL">TRUE</field>
                            </block>
                            </value>
                            <next>
                            <block type="controls_if" id="{_JT|3Mpv
                            tSOVWD3Pz6">
                            <value name="IF0">
                            <block type="logic_compare" id="D?,QGBBwauCm,Qte=Q-">
                            <field name="OP">EQ</field>
                            <value name="A">
                            <block type="get_value" id="]irLwLWGul].x{m.#.@"> <field name="ATTR">val</field> <field name="OID">javascript.0.Eigene_Datenpunkte.Status.Lampen.Lampen_die_an_sind</field> </block> </value> <value name="B"> <block type="math_number" id="5LL6xi4F_7}-aEi^jHY@"> <field name="NUM">0</field> </block> </value> </block> </value> <statement name="DO0"> <block type="variables_set" id="5VFfHYTB!S7A^A*?SicA"> <field name="VAR" id="~J%;V(L_kdEvs*qQ~IBk">Ausgabetext</field> <value name="VALUE"> <block type="text_join" id="4?k[0reCRn.mjkxHg41~"> <mutation items="3"></mutation> <value name="ADD0"> <block type="text" id="NgpEM1aq.?1o;p,vmj.">
                            <field name="TEXT"><speak><voice name="Alexa"></field>
                            </block>
                            </value>
                            <value name="ADD1">
                            <block type="get_value" id="Vh/8rxU]yD!3mT}0y[eC">
                            <field name="ATTR">val</field>
                            <field name="OID">javascript.0.Eigene_Datenpunkte.Status.Lampen.Lampen_sind_wo_an</field>
                            </block>
                            </value>
                            <value name="ADD2">
                            <block type="text" id="nbjQLM
                            ~Fd1@ly;mL|Z*">
                            <field name="TEXT"></voice></speak></field>
                            </block>
                            </value>
                            </block>
                            </value>
                            <next>
                            <block type="control_ex" id="+x0q7E?Hft)ajTWnsbCG">
                            <field name="TYPE">false</field>
                            <field name="CLEAR_RUNNING">FALSE</field>
                            <value name="OID">
                            <shadow xmlns="http://www.w3.org/1999/xhtml" type="field_oid" id="jnJO@~-TZSnZH4eTlWi^">
                            <field name="oid">Object ID</field>
                            </shadow>
                            <block type="text_join" id="Uc(C1DhkN=(Ej:3;/_{">
                            <mutation items="3"></mutation>
                            <value name="ADD0">
                            <block type="text" id="3N=uEC@l
                            )_nr#{g4uNp">
                            <field name="TEXT">alexa2.0.Echo-Devices.</field>
                            </block>
                            </value>
                            <value name="ADD1">
                            <block type="get_value" id="mTQ}3#/=?3VG-}4O,m-">
                            <field name="ATTR">val</field>
                            <field name="OID">alexa2.0.History.serialNumber</field>
                            </block>
                            </value>
                            <value name="ADD2">
                            <block type="text" id="E|q29/u43a=DeTghbcsC">
                            <field name="TEXT">.Commands.ssml</field>
                            </block>
                            </value>
                            </block>
                            </value>
                            <value name="VALUE">
                            <shadow xmlns="http://www.w3.org/1999/xhtml" type="logic_boolean" id="Xul}ZCl#TwB{^r7um)n{">
                            <field name="BOOL">TRUE</field>
                            </shadow>
                            <block type="variables_get" id="D_FnDB|lSUf55^mbVG7]">
                            <field name="VAR" id="~J%;V(L_kdEvs
                            qQ~IBk">Ausgabetext</field>
                            </block>
                            </value>
                            <value name="DELAY_MS">
                            <shadow type="math_number" id="N@fDKf#STgixesQWvdkZ">
                            <field name="NUM">500</field>
                            </shadow>
                            </value>
                            <next>
                            <block type="debug" id=".{Ew66Z]MiR,{4e08hvp" disabled="true">
                            <field name="Severity">log</field>
                            <value name="TEXT">
                            <shadow xmlns="http://www.w3.org/1999/xhtml" type="text" id="+;gROYIhif%4n~j.}Nhz">
                            <field name="TEXT">test</field>
                            </shadow>
                            <block type="variables_get" id="H2iPnI=xf$iC3jL9$mQV">
                            <field name="VAR" id="~J%;V(L_kdEvsqQ~IBk">Ausgabetext</field>
                            </block>
                            </value>
                            </block>
                            </next>
                            </block>
                            </next>
                            </block>
                            </statement>
                            <next>
                            <block type="controls_if" id="N+F+/fYbDeMZL#(HaEo|">
                            <value name="IF0">
                            <block type="logic_compare" id="T+)nZ(]w4LgDY/|?p56g">
                            <field name="OP">NEQ</field>
                            <value name="A">
                            <block type="get_value" id="k=BXdEuQo7?Mo%bdfdng">
                            <field name="ATTR">val</field>
                            <field name="OID">javascript.0.Eigene_Datenpunkte.Status.Lampen.Lampen_die_an_sind</field>
                            </block>
                            </value>
                            <value name="B">
                            <block type="math_number" id="j-blGyC;V4jTLHKvikXr">
                            <field name="NUM">0</field>
                            </block>
                            </value>
                            </block>
                            </value>
                            <statement name="DO0">
                            <block type="variables_set" id="mk,--n%8x}e1WshOCBc.">
                            <field name="VAR" id="~J%;V(L_kdEvs
                            qQ~IBk">Ausgabetext</field>
                            <value name="VALUE">
                            <block type="text_join" id="Ew3VTw7qG|Fx:}vq3hIR">
                            <mutation items="5"></mutation>
                            <value name="ADD0">
                            <block type="text" id="L(r$t@)3fal36K.]Oag.">
                            <field name="TEXT"><speak><voice name="Alexa"></field>
                            </block>
                            </value>
                            <value name="ADD1">
                            <block type="text" id="Lo0@rGsN^gt1iZ#@~A/7">
                            <field name="TEXT">Im Moment sind im </field>
                            </block>
                            </value>
                            <value name="ADD2">
                            <block type="get_value" id="i?[Ze,W23|M`_S5@d?;q">
                            <field name="ATTR">val</field>
                            <field name="OID">javascript.0.Eigene_Datenpunkte.Status.Lampen.Lampen_sind_wo_an</field>
                            </block>
                            </value>
                            <value name="ADD3">
                            <block type="text" id="NqEob9;8UT11wT`dCQi#">
                            <field name="TEXT">eingeschaltete Lampen</field>
                            </block>
                            </value>
                            <value name="ADD4">
                            <block type="text" id="-9oSLmZYA~kWjO#/VdCp">
                            <field name="TEXT"></voice></speak></field>
                            </block>
                            </value>
                            </block>
                            </value>
                            <next>
                            <block type="control_ex" id="AmH$dRclYraFxYn_M[@N">
                            <field name="TYPE">false</field>
                            <field name="CLEAR_RUNNING">FALSE</field>
                            <value name="OID">
                            <shadow xmlns="http://www.w3.org/1999/xhtml" type="field_oid" id="jnJO@~-TZSnZH4eTlWi^">
                            <field name="oid">Object ID</field>
                            </shadow>
                            <block type="text_join" id="UzlVgfT#m#ZF~KKfJRD">
                            <mutation items="3"></mutation>
                            <value name="ADD0">
                            <block type="text" id="X{Xt
                            :vkWZD-xQ-@GOTb">
                            <field name="TEXT">alexa2.0.Echo-Devices.</field>
                            </block>
                            </value>
                            <value name="ADD1">
                            <block type="get_value" id="lev,hwALzsP%~ck[Gq(@">
                            <field name="ATTR">val</field>
                            <field name="OID">alexa2.0.History.serialNumber</field>
                            </block>
                            </value>
                            <value name="ADD2">
                            <block type="text" id="b/=7G)A}}r/0L,~}#8lZ">
                            <field name="TEXT">.Commands.ssml</field>
                            </block>
                            </value>
                            </block>
                            </value>
                            <value name="VALUE">
                            <shadow xmlns="http://www.w3.org/1999/xhtml" type="logic_boolean" id="Xul}ZCl#TwB{^r7um)n{">
                            <field name="BOOL">TRUE</field>
                            </shadow>
                            <block type="variables_get" id="f(wOW[koP;iSAE;2ith">
                            <field name="VAR" id="~J%;V(L_kdEvs
                            qQ~IBk">Ausgabetext</field>
                            </block>
                            </value>
                            <value name="DELAY_MS">
                            <shadow type="math_number" id="@[ja$X%TAqP8Vx/RP(.m">
                            <field name="NUM">500</field>
                            </shadow>
                            </value>
                            <next>
                            <block type="debug" id="S(nJ=3w67ayn/{bF]icJ" disabled="true">
                            <field name="Severity">log</field>
                            <value name="TEXT">
                            <shadow xmlns="http://www.w3.org/1999/xhtml" type="text" id="+;gROYIhif%4n~j.}Nhz">
                            <field name="TEXT">test</field>
                            </shadow>
                            <block type="variables_get" id="@,rV[(ci[u`W6uGM36,]">
                            <field name="VAR" id="~J%;V(L_kdEvs*qQ~IBk">Ausgabetext</field>
                            </block>
                            </value>
                            </block>
                            </next>
                            </block>
                            </next>
                            </block>
                            </statement>
                            </block>
                            </next>
                            </block>
                            </next>
                            </block>
                            </next>
                            </block>
                            </next>
                            </block>
                            </xml>

                            machen im Endeffekt aber beide das gleiche
                            iot Brauchst du um das an Alexa weiter zugeben, also hier das Script auswählen

                            iot.png

                            dann in der Alexa app eine Routine anlegen und das Script auswählen
                            wie zum Beispiel,
                            Alexa, sind noch Lampen eingeschaltet
                            Alexa, ist noch Licht eingeschaltet
                            sind dann halt zwei Routinen auf dasselbe Script

                            Routine.PNG

                            nur über die History geht es nicht so richtig sauber, schreibt ja auch schon dslraser weiter vorne.
                            Mehrere Abfragen geht auch ohne Probleme man muss halt nur die Datenpunkte haben oder sie sich selber befüllen.

                            wetter.png

                            nur eine Temperatur abfragen geht auch ohne Routine oder Script, nur den Datenpunkt im iot hinzufügen

                            multi.png

                            hier geht dann Alexa, wie ist die Temperatur von Multisensor Wohnzimmer oder auch Alexa, Temperatur Multisensor Wohnzimmer.
                            Geräte steuern also An und Aus macht iot es muss auch keine Routine erstellt werden.

                            iot2.png

                            und zum Schluss immer Alexa, Geräte suchen, nicht vergessen

                            und die Luxus variante gibt es von @dslraser dann hier Fenster und andere Geräte zählen opt. Alexa Ansagen

                            vielleicht Hilft es ja was weiter

                            Gruß Michael

                            G Offline
                            G Offline
                            G.Hawk
                            schrieb am zuletzt editiert von
                            #13

                            @Michi68
                            Super danke. Welchen Typ verwende ich denn im IOT wenn ich ein Skript auslösen will bzw was ist der Trigger?

                            M 1 Antwort Letzte Antwort
                            0
                            • G G.Hawk

                              @Alexi
                              Das habe ich auch so gemacht, aber hast du mal gesehen, dass der Datenpunkt Summery dann sofort wieder gelöscht wird, wenn eine Routine darauf startet?

                              GaspodeG Offline
                              GaspodeG Offline
                              Gaspode
                              schrieb am zuletzt editiert von Gaspode
                              #14

                              @Martin-0 said in Alexa Routinen zum Schalten von Geräten:

                              @Alexi
                              Das habe ich auch so gemacht, aber hast du mal gesehen, dass der Datenpunkt Summery dann sofort wieder gelöscht wird, wenn eine Routine darauf startet?

                              Es geht doch nur darum, das Event zu triggern. Also per JScript z.B. so:
                              (Sorry, mit Blockly kann ich nicht dienen, aber das Prinzip sollte klar werden)

                              on('alexa2.0.History.json'/*json*/, function (json) {
                              
                                  let jsonObj = JSON.parse(json.state.val); 
                                  let summary = jsonObj.summary;
                                  let echoID = 'alexa2.0.Echo-Devices.' + jsonObj.serialNumber;
                                  
                                  if (jsonObj.status == "SUCCESS") {
                                      if (summary == "wer hat angerufen") {
                                          setStateDelayed(echoID+".Commands.speak", "Das geht dich überhaupt nix an!", 1000, true);
                                      }
                                  }
                                  else if (summary == "wer hat angerufen")
                              });
                              
                              G 1 Antwort Letzte Antwort
                              0
                              • GaspodeG Gaspode

                                @Martin-0 said in Alexa Routinen zum Schalten von Geräten:

                                @Alexi
                                Das habe ich auch so gemacht, aber hast du mal gesehen, dass der Datenpunkt Summery dann sofort wieder gelöscht wird, wenn eine Routine darauf startet?

                                Es geht doch nur darum, das Event zu triggern. Also per JScript z.B. so:
                                (Sorry, mit Blockly kann ich nicht dienen, aber das Prinzip sollte klar werden)

                                on('alexa2.0.History.json'/*json*/, function (json) {
                                
                                    let jsonObj = JSON.parse(json.state.val); 
                                    let summary = jsonObj.summary;
                                    let echoID = 'alexa2.0.Echo-Devices.' + jsonObj.serialNumber;
                                    
                                    if (jsonObj.status == "SUCCESS") {
                                        if (summary == "wer hat angerufen") {
                                            setStateDelayed(echoID+".Commands.speak", "Das geht dich überhaupt nix an!", 1000, true);
                                        }
                                    }
                                    else if (summary == "wer hat angerufen")
                                });
                                
                                G Offline
                                G Offline
                                G.Hawk
                                schrieb am zuletzt editiert von
                                #15

                                @Alexi
                                OK
                                Die Frage ist folgende:
                                Lege ich einen Datenpunkt an, der z.B heißt: Garagentor öffnen. Diesen wurde ich dann in iot einbinden und diesen als Trigger für ein Skript nehmen?

                                Ich habe drei Systemvariablen in der CCU die stimmen müssen bevor Alexa das Garagentor öffnen darf.

                                Ich schreibe also ein Blockly: Wenn die Bedingungen stimmen, dann Garagentor.state auf wahr.

                                Ich will es nur nicht so kompliziert machen, deswegen die Frage, ob ich dieses Skript einfach so in iot starten kann, also über eine Routine oder ob ich einen Datenpunkt anlege der als Trigger für das Skript dient.

                                GaspodeG 1 Antwort Letzte Antwort
                                0
                                • G G.Hawk

                                  @Alexi
                                  OK
                                  Die Frage ist folgende:
                                  Lege ich einen Datenpunkt an, der z.B heißt: Garagentor öffnen. Diesen wurde ich dann in iot einbinden und diesen als Trigger für ein Skript nehmen?

                                  Ich habe drei Systemvariablen in der CCU die stimmen müssen bevor Alexa das Garagentor öffnen darf.

                                  Ich schreibe also ein Blockly: Wenn die Bedingungen stimmen, dann Garagentor.state auf wahr.

                                  Ich will es nur nicht so kompliziert machen, deswegen die Frage, ob ich dieses Skript einfach so in iot starten kann, also über eine Routine oder ob ich einen Datenpunkt anlege der als Trigger für das Skript dient.

                                  GaspodeG Offline
                                  GaspodeG Offline
                                  Gaspode
                                  schrieb am zuletzt editiert von Gaspode
                                  #16

                                  @Martin-0
                                  Wenn ich dich richtig verstehe, willst du doch einen Echo etwas fragen bzw. etwas zu ihm sagen und dann eine von einem Script generierte Antwort bekommen, oder?

                                  Wenn ja, kopiere doch mal zum Verständnis folgenden Code in ein JScript:

                                  on('alexa2.0.History.json'/*json*/, function (json) {
                                      let jsonObj = JSON.parse(json.state.val); 
                                      let summary = jsonObj.summary;
                                      let echoID = 'alexa2.0.Echo-Devices.' + jsonObj.serialNumber;
                                      log (echoID+": "+summary);
                                  });
                                  

                                  Wenn du jetzt zu irgendeinem Echo etwas sagst, wirst du eine entsprechende Ausgabe bekommen. Die kannst du verarbeiten und einen Echos sagen lassen, was du willst (s. Beispiel oben).

                                  Das Problem: Da die Echos mit dem Text nix anfabngen können, kommen Meldungen wie "Kenn ich nicht", "weiß ich nicht", etc. Um das abzustellen, musst du für jeden Text, den du sagen willst eine "leere" Routine in der Alexa App anlegen.

                                  1 Antwort Letzte Antwort
                                  0
                                  • G G.Hawk

                                    @Michi68
                                    Super danke. Welchen Typ verwende ich denn im IOT wenn ich ein Skript auslösen will bzw was ist der Trigger?

                                    M Offline
                                    M Offline
                                    Michi68
                                    schrieb am zuletzt editiert von
                                    #17

                                    @Martin-0
                                    Auf das Beispiel von mir oben bezogen ist der Auslöser

                                    trigger.png

                                    In iot wählst du das Script selbst aus

                                    iot_auswahl.png

                                    Sieh dir mal die Screenshots oben genauer an dann verstehst du das schon, ist ganz einfach

                                    G dslraserD 2 Antworten Letzte Antwort
                                    0
                                    • M Michi68

                                      @Martin-0
                                      Auf das Beispiel von mir oben bezogen ist der Auslöser

                                      trigger.png

                                      In iot wählst du das Script selbst aus

                                      iot_auswahl.png

                                      Sieh dir mal die Screenshots oben genauer an dann verstehst du das schon, ist ganz einfach

                                      G Offline
                                      G Offline
                                      G.Hawk
                                      schrieb am zuletzt editiert von
                                      #18

                                      @Michi68
                                      Also ich gebe mir wirklich Mühe, aber was macht den der Trigger rescan?
                                      Ich will ja nicht bei jeder Aktualisierung alle Skripte laufen lassen.

                                      Ich hatte jetzt gedacht ich mach mir einfach einen Datenpunkt als Schalter, binde diesen in den iot ein und benutze ihn bei einer Routine, der dann einfach ein skript ausführt.
                                      Oder bin ich total auf dem Holzweg?

                                      dslraserD 2 Antworten Letzte Antwort
                                      0
                                      • M Michi68

                                        @Martin-0
                                        Auf das Beispiel von mir oben bezogen ist der Auslöser

                                        trigger.png

                                        In iot wählst du das Script selbst aus

                                        iot_auswahl.png

                                        Sieh dir mal die Screenshots oben genauer an dann verstehst du das schon, ist ganz einfach

                                        dslraserD Offline
                                        dslraserD Offline
                                        dslraser
                                        Forum Testing Most Active
                                        schrieb am zuletzt editiert von dslraser
                                        #19

                                        @Michi68 sagte in Alexa Routinen zum Schalten von Geräten:

                                        In iot wählst du das Script selbst aus

                                        Du schaltest scriptEnabled ? (das ist keine gute Idee)
                                        Beim Neustart des JS Adapter oder ioBroker selbst werden dann diese Scripte alle ausgeführt.
                                        Das wird auch ausdrücklich nicht empfohlen.

                                        M 1 Antwort Letzte Antwort
                                        0
                                        • G G.Hawk

                                          @Michi68
                                          Also ich gebe mir wirklich Mühe, aber was macht den der Trigger rescan?
                                          Ich will ja nicht bei jeder Aktualisierung alle Skripte laufen lassen.

                                          Ich hatte jetzt gedacht ich mach mir einfach einen Datenpunkt als Schalter, binde diesen in den iot ein und benutze ihn bei einer Routine, der dann einfach ein skript ausführt.
                                          Oder bin ich total auf dem Holzweg?

                                          dslraserD Offline
                                          dslraserD Offline
                                          dslraser
                                          Forum Testing Most Active
                                          schrieb am zuletzt editiert von dslraser
                                          #20

                                          @Martin-0 sagte in Alexa Routinen zum Schalten von Geräten:

                                          Ich hatte jetzt gedacht ich mach mir einfach einen Datenpunkt als Schalter, binde diesen in den iot ein und benutze ihn bei einer Routine, der dann einfach ein skript ausführt.
                                          Oder bin ich total auf dem Holzweg?

                                          so ist es richtig.
                                          (ich nehme immer Button und triggere auf wurde aktualisiert. Im iot Adapter Switch einstellen.)

                                          1 Antwort Letzte Antwort
                                          0
                                          Antworten
                                          • In einem neuen Thema antworten
                                          Anmelden zum Antworten
                                          • Älteste zuerst
                                          • Neuste zuerst
                                          • Meiste Stimmen


                                          Support us

                                          ioBroker
                                          Community Adapters
                                          Donate

                                          327

                                          Online

                                          32.7k

                                          Benutzer

                                          82.4k

                                          Themen

                                          1.3m

                                          Beiträge
                                          Community
                                          Impressum | Datenschutz-Bestimmungen | Nutzungsbedingungen | Einwilligungseinstellungen
                                          ioBroker Community 2014-2025
                                          logo
                                          • Anmelden

                                          • Du hast noch kein Konto? Registrieren

                                          • Anmelden oder registrieren, um zu suchen
                                          • Erster Beitrag
                                            Letzter Beitrag
                                          0
                                          • Home
                                          • Aktuell
                                          • Tags
                                          • Ungelesen 0
                                          • Kategorien
                                          • Unreplied
                                          • Beliebt
                                          • GitHub
                                          • Docu
                                          • Hilfe