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. Cloud Dienste
  4. Neuer Adapter: iobroker.alexa2

NEWS

  • UPDATE 31.10.: Amazon Alexa - ioBroker Skill läuft aus ?
    apollon77A
    apollon77
    48
    3
    8.7k

  • Monatsrückblick – September 2025
    BluefoxB
    Bluefox
    13
    1
    2.2k

  • Neues Video "KI im Smart Home" - ioBroker plus n8n
    BluefoxB
    Bluefox
    16
    1
    3.1k

Neuer Adapter: iobroker.alexa2

Geplant Angeheftet Gesperrt Verschoben Cloud Dienste
581 Beiträge 76 Kommentatoren 163.8k Aufrufe 3 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.
  • apollon77A Offline
    apollon77A Offline
    apollon77
    schrieb am zuletzt editiert von
    #448

    @Granten:

    Hallo,

    wie ist es möglich über Alexa und die Routinen Werte eines Objekts abzurufen? `
    Routinen Gar nicht meines Wissens nach.

    Gesendet vom Handy …

    Beitrag hat geholfen? Votet rechts unten im Beitrag :-) https://paypal.me/Apollon77 / https://github.com/sponsors/Apollon77

    • Debug-Log für Instanz einschalten? Admin -> Instanzen -> Expertenmodus -> Instanz aufklappen - Loglevel ändern
    • Logfiles auf Platte /opt/iobroker/log/… nutzen, Admin schneidet Zeilen ab
    1 Antwort Letzte Antwort
    0
    • apollon77A Offline
      apollon77A Offline
      apollon77
      schrieb am zuletzt editiert von
      #449

      @haselchen:

      @apollon77

      Ich habe über den Adapter Bluetooth Datenpunkte meiner gespeichterten Geräte mit Alexa.

      Nun verbinde ich eines, trotzdem bleibt der Datenpunkt connected auf false.

      Er ändert sich auch nicht automatisch wenn ich den "Button" drücke oder als Wert selber true eingebe.

      Habe ich da was übersehen? `
      Bluetooth Status wird aktuell noch nur beim Adapter Start aktualisiert. Im GitHub abstimmen bitte. Issue gib’s schon.

      Gesendet vom Handy …

      Beitrag hat geholfen? Votet rechts unten im Beitrag :-) https://paypal.me/Apollon77 / https://github.com/sponsors/Apollon77

      • Debug-Log für Instanz einschalten? Admin -> Instanzen -> Expertenmodus -> Instanz aufklappen - Loglevel ändern
      • Logfiles auf Platte /opt/iobroker/log/… nutzen, Admin schneidet Zeilen ab
      1 Antwort Letzte Antwort
      0
      • haselchenH Offline
        haselchenH Offline
        haselchen
        Most Active
        schrieb am zuletzt editiert von
        #450

        Alles klar, danke für die schnelle Antwort .

        Synology DS218+ & 2 x Fujitsu Esprimo (VM/Container) + FritzBox7590 + 2 AVM 3000 Repeater & Homematic & HUE & Osram & Xiaomi, NPM 10.9.4, Nodejs 22.21.0 ,JS Controller 7.0.7 ,Admin 7.7.19

        1 Antwort Letzte Antwort
        0
        • sissiwupS Offline
          sissiwupS Offline
          sissiwup
          schrieb am zuletzt editiert von
          #451

          Hallo,

          habe leider das Update auf Alexa 2 gemacht.

          Wie komme ich denn auf den Alexa 1 Adapter zurück?

          Vlt. stehe ich auch auf dem Schlauch: Habe jetzt Alexa zugemüllt mit technischen Geräten, die nie zu steuern sind Z.B. HM RCV 50 BidCoS RF 21.LEVEL

          und div. andere.

          Ich hatte bisher im Alexa nur eine Hand voll Geräte aufgenommen und auch alle mit neuen Namen.

          Diese sind teilweise übernommen worden (nicht alle korrekt geschrieben aber immerhin).

          Wie füge ich denn einzelne Geräte zu Alexa 2 hinzu, wie ändere ich den Namen (oder geht das nur über die Objekt-Sicht?)

          Der Alexa 1 Adapter war erheblich einfacher zu bedienen.

          Noch eine Frage: Warum sind so ca. 30% der Geräte offline. Muster für mich nicht erkennbar ein paar Schalter, eine Rollo, ein paar Szenen…

          Hat sich etwas beim cloud-Adapter geändert? Wie ist das Zusammenspiel?

          MfG

          Sissi

          –-----------------------------------------

          1 CCU3 1 CCU2-Gateway 1 LanGateway 1 Pi-Gateway 1 I7 für ioBroker/MySQL


          1 Antwort Letzte Antwort
          0
          • apollon77A Offline
            apollon77A Offline
            apollon77
            schrieb am zuletzt editiert von
            #452

            Bei den smart devices unterscheiden sich Version 1 und 2 nicht. Die Liste ist die gleiche die auch in der alexa app angezeigt wird. Wenn du da schon „Müll“ drin hast dann wird der auch da angezeigt. Also schau mal in die App. Und wenn musst du da aufräumen.

            Gesendet vom Handy …

            Beitrag hat geholfen? Votet rechts unten im Beitrag :-) https://paypal.me/Apollon77 / https://github.com/sponsors/Apollon77

            • Debug-Log für Instanz einschalten? Admin -> Instanzen -> Expertenmodus -> Instanz aufklappen - Loglevel ändern
            • Logfiles auf Platte /opt/iobroker/log/… nutzen, Admin schneidet Zeilen ab
            1 Antwort Letzte Antwort
            0
            • dslraserD Offline
              dslraserD Offline
              dslraser
              Forum Testing Most Active
              schrieb am zuletzt editiert von
              #453

              Hat mal Jemand ein kurzes Blockly Beispiel wie ich den History trigger sinnvoll nutze ?

              Ich möchte eine Abfrage an einem Echo starten und dann von genau dem gleichen Echo eine Antwort bekommen.

              PS: also Konkret frage ich einen Echo z.B. im Wohnzimmer ob alle Fenster geschlossen sind und bekomme dann aus einem bestehenden Datenpunkt (Fensterscript) die offenen Fenster angesagt. Nur wie steuere ich jetzt Speak, das die Rückmeldung auch vom gleichen Echo kommt, ohne das ich einen angeben muß ? Ich denke ich müsste den History trigger auf wahr triggern, aber wann bzw. an welcher Stelle ? Der angefragte Echo hat ja nicht zwangsläufig als letzter gesabbelt…

              PS: ich habe es nun hinbekommen. Falls es Jemand nachbauen möchte, hier einmal eine Temperaturabfrage und die Abfrage nach offenen Fenstern/ Türen (mit dem Fensterscript aus dem Forum)

              Bei mir reichen die 500 ms und Alexa antwortet brav an dem Echo wo sie gefragt wurde.

              3822_temperaturabfrage.jpg

              https://youtu.be/Zv1blw2ASF4

              3822_abfrage_offene_fenster.jpg

              https://youtu.be/8g6xmpQW8ew

              1 Antwort Letzte Antwort
              0
              • Matten MattenM Offline
                Matten MattenM Offline
                Matten Matten
                schrieb am zuletzt editiert von
                #454

                @csamaggi:

                Danke sigi das war wieder mal so nah und doch so fern die Funktion hatte ich nicht in betracht gezogen.

                Danke für den Antsoss.

                Was natürlich noch etwas geiler wäre wenn der IO prüft in einem Script und sie dann eben nur das jeweilige ausspricht mal sehen ob man dass hin bekommt.

                MFG Maggi `

                Hab ich wie folgt programmiert

                3476_sprachausgabe.jpg

                Gruß

                Matten Matten

                ioBroker auf Beelink mit WIN10 home|CCU3 (Raspberrymatic)|Neato BotVac D3|HYPERION Ambilight auf RPI3 und RPI ZeroW|HA-Bridge|Milight LED|Nodered&Redmatic|VU Duo2 & Solo se V2

                1 Antwort Letzte Antwort
                0
                • sigi234S Online
                  sigi234S Online
                  sigi234
                  Forum Testing Most Active
                  schrieb am zuletzt editiert von
                  #455

                  COOL :)

                  Kannst du mir das exportieren?

                  Wobei mir das Objekt noch nicht klar ist….

                  Bitte benutzt das Voting rechts unten im Beitrag wenn er euch geholfen hat.
                  Immer Daten sichern!

                  1 Antwort Letzte Antwort
                  0
                  • dslraserD Offline
                    dslraserD Offline
                    dslraser
                    Forum Testing Most Active
                    schrieb am zuletzt editiert von
                    #456

                    na ja, da das Fensterscript hier aus dem Forum (ich glaube von Pix) über die Gewerke bei mir eh läuft, sind ja bei jeder Veränderung die geöffneten Fenster schon als Ausgabe vorhanden. Aufbereit als Texxt für Sayit und Telegram.

                    Nur diese Punkte greife ich bei mir ab.

                    1 Antwort Letzte Antwort
                    0
                    • Matten MattenM Offline
                      Matten MattenM Offline
                      Matten Matten
                      schrieb am zuletzt editiert von
                      #457

                      @sigi234:

                      COOL :)

                      Kannst du mir das exportieren?

                      Wobei mir das Objekt noch nicht klar ist…. `

                      hab es noch etwas optimiert
                      3476_blockly.txt

                      ioBroker auf Beelink mit WIN10 home|CCU3 (Raspberrymatic)|Neato BotVac D3|HYPERION Ambilight auf RPI3 und RPI ZeroW|HA-Bridge|Milight LED|Nodered&Redmatic|VU Duo2 & Solo se V2

                      1 Antwort Letzte Antwort
                      0
                      • B Offline
                        B Offline
                        Blackeye
                        schrieb am zuletzt editiert von
                        #458

                        Hallo zusammen,

                        ich habe den Adapter installiert, bekomme aber bei allen Geräte nur den Status (enable) und den Punkt delete.

                        Ich habe alle möglichen Geräte und bei allen gleiche Ergebnis. Ich wollte eigentlich nur die Geräte steuern die über den SmartHub des Echo2 direkt eingebunden sind um meine anderen Hubs in den Keller legen zu können.

                        Und mit der Sprachausgabe werde ich direkt testen wenn ich zu Hause bin, wäre super!!!!!

                        Danke

                        1 Antwort Letzte Antwort
                        0
                        • apollon77A Offline
                          apollon77A Offline
                          apollon77
                          schrieb am zuletzt editiert von
                          #459

                          @Blackeye:

                          Hallo zusammen,

                          ich habe den Adapter installiert, bekomme aber bei allen Geräte nur den Status (enable) und den Punkt delete.

                          Ich habe alle möglichen Geräte und bei allen gleiche Ergebnis. Ich wollte eigentlich nur die Geräte steuern die über den SmartHub des Echo2 direkt eingebunden sind um meine anderen Hubs in den Keller legen zu können.

                          Und mit der Sprachausgabe werde ich direkt testen wenn ich zu Hause bin, wäre super!!!!!

                          Danke `

                          Steuern kommt noch im nächsten Update oder so. Im Github bitte für das Issue abstimmen.

                          Was ist denn dieser "SmartHub"?

                          Edit:

                          Aaahhhhh: Da im Plus-Modell ein Smart-Home-Hub implementiert ist, muss dieser nicht zusätzlich angeschafft und eingerichtet werden. Es unterstützt den Zigbee-Standard, so dass alle Komponenten nach diesem Standard damit genutzt werden können.

                          Da ich sowas nicht habe wird es interessant … SInd denn die Geräte die du per Smarthub angeschlossen hast bei den "Smart-Home-Devices" zu finden?

                          Wenn ja hätte ich bitte gern mal das Debug Log vom Adapter

                          Beitrag hat geholfen? Votet rechts unten im Beitrag :-) https://paypal.me/Apollon77 / https://github.com/sponsors/Apollon77

                          • Debug-Log für Instanz einschalten? Admin -> Instanzen -> Expertenmodus -> Instanz aufklappen - Loglevel ändern
                          • Logfiles auf Platte /opt/iobroker/log/… nutzen, Admin schneidet Zeilen ab
                          1 Antwort Letzte Antwort
                          0
                          • lobomauL Offline
                            lobomauL Offline
                            lobomau
                            schrieb am zuletzt editiert von
                            #460

                            @dslraser:

                            na ja, da das Fensterscript hier aus dem Forum (ich glaube von Pix) über die Gewerke bei mir eh läuft, sind ja bei jeder Veränderung die geöffneten Fenster schon als Ausgabe vorhanden. Aufbereit als Texxt für Sayit und Telegram.

                            Nur diese Punkte greife ich bei mir ab. `
                            Ja, nutze ich auch. Ich kann leider deine Bilder oben nicht vergrößern. Kannst du dein Blockly als Export reinstellen?

                            Host: NUC8i3 mit Proxmox:

                            • ioBroker CT Debian 13, npm 10.9.4, nodejs 22.21.0
                            • Slave: Pi4
                            1 Antwort Letzte Antwort
                            0
                            • dslraserD Offline
                              dslraserD Offline
                              dslraser
                              Forum Testing Most Active
                              schrieb am zuletzt editiert von
                              #461

                              @lobomau:

                              @dslraser:

                              na ja, da das Fensterscript hier aus dem Forum (ich glaube von Pix) über die Gewerke bei mir eh läuft, sind ja bei jeder Veränderung die geöffneten Fenster schon als Ausgabe vorhanden. Aufbereit als Texxt für Sayit und Telegram.

                              Nur diese Punkte greife ich bei mir ab. Ja, nutze ich auch. Ich kann leider deine Bilder oben nicht vergrößern. Kannst du dein Blockly als Export reinstellen?

                              Ich nutze zwei Gewerke, einmal Fensterdrehgriffe und einmal Fensterkontakte. (ich habe deshalb zwei Fensterscripte laufen, da kannst Du dann eins aus dem Blockly raus nehmen. Ich habe die einfachen Kontakte im Erdgeschoß und die Drehgriffe im Keller)

                              Ich habe dieses Blockly, bzw. das Script in den Cloud Adapter eingefügt, das kann dann heißen wie es will, danach dann in der Alexa App Geräte suchen lassen und über eine Routine das eingefügte Gerät(script) ansprechen.

                              Hier der Blockly Export für die Ansage über Alexa Speak

                              ! ````
                              <xml xmlns="http://www.w3.org/1999/xhtml"><block type="control" id="@J7@ob/rsR9OCYN+!hI7" x="-162" y="-188"><mutation 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="timeouts_settimeout" id="xA_MJ^@=AB=-WtDTe(3}"><field name="NAME">timeout</field> <field name="DELAY">500</field> <field name="UNIT">ms</field> <statement name="STATEMENT"><block type="comment" id="s30b2{fSQ:a0uC3+QWU"><field name="COMMENT">Wohnzimmer</field>
                              <next><block type="controls_if" id="l(E24=q]l]b,GJDj4dSj"><value name="IF0"><block type="logic_compare" id="MKwJn0C!O]xc!~.9|B*"><field name="OP">EQ</field> <value name="A"><block type="get_value" id="p-SHbJ5Dmwr6djxg2ohH"><field name="ATTR">val</field> <field name="OID">alexa2.0.History.name</field></block></value> <value name="B"><block type="text" id="?}A;8(IyMF%F@(t]Kc~+"><field name="TEXT">Wohnzimmer</field></block></value></block></value> <statement name="DO0"><block type="control" id=")M^jLcZ!hCpj,X={-nV"><mutation delay_input="false"></mutation>
                              <field name="OID">alexa2.0.Echo-Devices.xxx.Commands.speak</field>
                              <field name="WITH_DELAY">FALSE</field>
                              <value name="VALUE"><block type="text_join" id="4?k[0reCRn.mjkxHg41~"><mutation items="3"></mutation>
                              <value name="ADD0"><block type="text" id="75Z)WnYF@;38~bIM;pA"><field name="TEXT">Im Moment sind</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.zählen_Fensterkontakte.textFensterkontakteaufAnsage</field></block></value> <value name="ADD2"><block type="get_value" id="E{tPb{Ec!is/-%_U9^ba"><field name="ATTR">val</field> <field name="OID">javascript.0.zählen_Fensterdrehgriffe.textFensterdrehgriffeaufAnsage</field></block></value></block></value></block></statement> <next><block type="comment" id="As,dG(xO[B@wIYcyAG?h"><field name="COMMENT">Küche</field> <next><block type="controls_if" id="wrH-}P(84mn7Y/rg8A[."><value name="IF0"><block type="logic_compare" id="kg.QKB751NaS#Ihk1Vlg"><field name="OP">EQ</field> <value name="A"><block type="get_value" id="qnTz1Oe31sq:NXjmbxIJ"><field name="ATTR">val</field> <field name="OID">alexa2.0.History.name</field></block></value> <value name="B"><block type="text" id="3=W.?c8BZN+QrGX4xL}h"><field name="TEXT">Küche</field></block></value></block></value> <statement name="DO0"><block type="control" id="}?dK++*V.7JQcjG{3uhB"><mutation delay_input="false"></mutation> <field name="OID">alexa2.0.Echo-Devices.xxx.Commands.speak</field> <field name="WITH_DELAY">FALSE</field> <value name="VALUE"><block type="text_join" id="eE.L((.HuB3vE_4=e#-q"><mutation items="3"></mutation> <value name="ADD0"><block type="text" id="PRh;5QARrxn}K}cvS^"><field name="TEXT">Im Moment sind</field></block></value>
                              <value name="ADD1"><block type="get_value" id="[R~H:5)[.)a!9mnnr;U}"><field name="ATTR">val</field>
                              <field name="OID">javascript.0.zählen_Fensterkontakte.textFensterkontakteaufAnsage</field></block></value>
                              <value name="ADD2"><block type="get_value" id="]DyrNm:29uG:o{IGwdq8"><field name="ATTR">val</field>
                              <field name="OID">javascript.0.zählen_Fensterdrehgriffe.textFensterdrehgriffeaufAnsage</field></block></value></block></value></block></statement>
                              <next><block type="comment" id="_amxz6B=9F}_2uEGsK}"><field name="COMMENT">Badezimmer</field> <next><block type="controls_if" id=".n7JtGwDJDGfaeyl!8*B"><value name="IF0"><block type="logic_compare" id="I-@9%{Ng!%}9rE#IESc;"><field name="OP">EQ</field> <value name="A"><block type="get_value" id="c?dSeG!fu]W8UO@?D4I3"><field name="ATTR">val</field> <field name="OID">alexa2.0.History.name</field></block></value> <value name="B"><block type="text" id="MivGV@*kt)3rY9COKpKA"><field name="TEXT">Badezimmer</field></block></value></block></value> <statement name="DO0"><block type="control" id="zTwXc~r8Ldt0u-5TNcVn"><mutation delay_input="false"></mutation> <field name="OID">alexa2.0.Echo-Devices.xxx.Commands.speak</field> <field name="WITH_DELAY">FALSE</field> <value name="VALUE"><block type="text_join" id="oVpPd?8wyu_,Zl8uR
                              x"><mutation items="3"></mutation>
                              <value name="ADD0"><block type="text" id="5DQf2PxM}5U]YfhsCe!H"><field name="TEXT">Im Moment sind</field></block></value>
                              <value name="ADD1"><block type="get_value" id="xX/ccwLyk|@ksY}Zt=M^"><field name="ATTR">val</field>
                              <field name="OID">javascript.0.zählen_Fensterkontakte.textFensterkontakteaufAnsage</field></block></value>
                              <value name="ADD2"><block type="get_value" id="l,u{D%[Ft^szW:RgT%"><field name="ATTR">val</field>
                              <field name="OID">javascript.0.zählen_Fensterdrehgriffe.textFensterdrehgriffeaufAnsage</field></block></value></block></value></block></statement>
                              <next><block type="comment" id="CJNG59[?CJ|U-=Bf]c)z"><field name="COMMENT">Gästezimmer</field>
                              <next><block type="controls_if" id="OC]k1_}iDlExQPVc=(ib"><value name="IF0"><block type="logic_compare" id="OBIXw6hJ@]2XrHBIz5h"><field name="OP">EQ</field> <value name="A"><block type="get_value" id="=x~5W)ns/VV;c|RFqQcE"><field name="ATTR">val</field> <field name="OID">alexa2.0.History.name</field></block></value> <value name="B"><block type="text" id="IxW:hplIvDQm1ax=@X+M"><field name="TEXT">Gästezimmer</field></block></value></block></value> <statement name="DO0"><block type="control" id="g+2]wvsrhR8vxv7c,kJ_"><mutation delay_input="false"></mutation> <field name="OID">alexa2.0.Echo-Devices.xxx.Commands.speak</field> <field name="WITH_DELAY">FALSE</field> <value name="VALUE"><block type="text_join" id="-8@wDdu%@L++1NL0%kv"><mutation items="3"></mutation>
                              <value name="ADD0"><block type="text" id="u5JAG8YXkEe-WquJT-Cv"><field name="TEXT">Im Moment sind</field></block></value>
                              <value name="ADD1"><block type="get_value" id="Xh@YzGzw}dndnT!PR4,a"><field name="ATTR">val</field>
                              <field name="OID">javascript.0.zählen_Fensterkontakte.textFensterkontakteaufAnsage</field></block></value>
                              <value name="ADD2"><block type="get_value" id="!;FYe%8oL9Phuo01s(o/"><field name="ATTR">val</field>
                              <field name="OID">javascript.0.zählen_Fensterdrehgriffe.textFensterdrehgriffeaufAnsage</field></block></value></block></value></block></statement>
                              <next><block type="comment" id="C6,wSh?BEZ,G:B9Tl@#w"><field name="COMMENT">Flur</field>
                              <next><block type="controls_if" id="l/g@UNw6pzeQ6_698R:-"><value name="IF0"><block type="logic_compare" id="=Z)D6qrCzY2oU/fVV93A"><field name="OP">EQ</field>
                              <value name="A"><block type="get_value" id="StsaG2CB;5f5wIvH,kE"><field name="ATTR">val</field>
                              <field name="OID">alexa2.0.History.name</field></block></value>
                              <value name="B"><block type="text" id="7N;yy7cC=tE}MYOFfF6"><field name="TEXT">Flur</field></block></value></block></value> <statement name="DO0"><block type="control" id="5#-V887QhCCSAzI+twok"><mutation delay_input="false"></mutation> <field name="OID">alexa2.0.Echo-Devices.xxx.Commands.speak</field> <field name="WITH_DELAY">FALSE</field> <value name="VALUE"><block type="text_join" id="Sr6ZKH|w+@i!r-:RGE5|"><mutation items="3"></mutation> <value name="ADD0"><block type="text" id="@WD{DbpE(L1Is#/Am]"><field name="TEXT">Im Moment sind</field></block></value> <value name="ADD1"><block type="get_value" id="PQ/N3,cUuzqo^LRP;a@)"><field name="ATTR">val</field> <field name="OID">javascript.0.zählen_Fensterkontakte.textFensterkontakteaufAnsage</field></block></value> <value name="ADD2"><block type="get_value" id="7Pq_Us,t=Z4jvPOSPzqp"><field name="ATTR">val</field> <field name="OID">javascript.0.zählen_Fensterdrehgriffe.textFensterdrehgriffeaufAnsage</field></block></value></block></value></block></statement> <next><block type="comment" id="qKD3bDxHV;NBtuFFs|e."><field name="COMMENT">Schlafzimmer</field> <next><block type="controls_if" id="iMz(H}c1#NO@KVNnhnlQ"><value name="IF0"><block type="logic_compare" id="zvyyAWvaYdxt8YZt,0O"><field name="OP">EQ</field>
                              <value name="A"><block type="get_value" id="mEF)naqwJ#xLCe1NeKO:"><field name="ATTR">val</field>
                              <field name="OID">alexa2.0.History.name</field></block></value>
                              <value name="B"><block type="text" id="F7::fb4cokeJJD:fk~pV"><field name="TEXT">Schlafzimmer</field></block></value></block></value>
                              <statement name="DO0"><block type="control" id="{2s/h/xpkm]F+1ik-f4m"><mutation delay_input="false"></mutation>
                              <field name="OID">alexa2.0.Echo-Devices.xxx.Commands.speak</field>
                              <field name="WITH_DELAY">FALSE</field>
                              <value name="VALUE"><block type="text_join" id="_UREy=Dns%1
                              3p{#}QG%"><mutation items="3"></mutation>
                              <value name="ADD0"><block type="text" id="DS8D]@iPZ0H#VUlSn#?Q"><field name="TEXT">Im Moment sind</field></block></value>
                              <value name="ADD1"><block type="get_value" id=":h6wum1yXIpr!:hKJ3G7"><field name="ATTR">val</field>
                              <field name="OID">javascript.0.zählen_Fensterkontakte.textFensterkontakteaufAnsage</field></block></value>
                              <value name="ADD2"><block type="get_value" id="g|Kl.rrqN3ZN;v8{1)0?"><field name="ATTR">val</field>
                              <field name="OID">javascript.0.zählen_Fensterdrehgriffe.textFensterdrehgriffeaufAnsage</field></block></value></block></value></block></statement>
                              <next><block type="comment" id="wIYZ1bLOSjFi=NxT9WcM"><field name="COMMENT">Keller-Flur</field>
                              <next><block type="controls_if" id="%EEK(pKJ%lGo)32cR7qF"><value name="IF0"><block type="logic_compare" id="7Mb(anM]kR9056)gxqnW"><field name="OP">EQ</field>
                              <value name="A"><block type="get_value" id="xF~b7{fV||4n}zB-}.u"><field name="ATTR">val</field> <field name="OID">alexa2.0.History.name</field></block></value> <value name="B"><block type="text" id="VH^2CJsPGOd!6hGoqdK4"><field name="TEXT">Keller-Flur</field></block></value></block></value> <statement name="DO0"><block type="control" id="F_[xezXeyr~*(A=q.YFJ"><mutation delay_input="false"></mutation> <field name="OID">alexa2.0.Echo-Devices.xxx.Commands.speak</field> <field name="WITH_DELAY">FALSE</field> <value name="VALUE"><block type="text_join" id="IY=qE)N;}#H)@3FMX?."><mutation items="3"></mutation>
                              <value name="ADD0"><block type="text" id="RJC)ht0vVqRW(FvnbW"><field name="TEXT">Im Moment sind</field></block></value> <value name="ADD1"><block type="get_value" id="h1n!;q1L]DJlW{5:R2]"><field name="ATTR">val</field>
                              <field name="OID">javascript.0.zählen_Fensterkontakte.textFensterkontakteaufAnsage</field></block></value>
                              <value name="ADD2"><block type="get_value" id="-80qQ]o?r@+~CQr7Oq]r"><field name="ATTR">val</field>
                              <field name="OID">javascript.0.zählen_Fensterdrehgriffe.textFensterdrehgriffeaufAnsage</field></block></value></block></value></block></statement>
                              <next><block type="comment" id="E#D1a/,rcHdm3?Nx^:q"><field name="COMMENT">Werkstatt</field> <next><block type="controls_if" id="=s~d:-WIg1#TE^zf9[4"><value name="IF0"><block type="logic_compare" id="
                              :X%VM^+2MoYl-:u!WK"><field name="OP">EQ</field> <value name="A"><block type="get_value" id="6fnRWyK0;P(.x;H{)22T"><field name="ATTR">val</field> <field name="OID">alexa2.0.History.name</field></block></value> <value name="B"><block type="text" id="S:#keRENw1gGjHWLUD!-"><field name="TEXT">Werkstatt</field></block></value></block></value> <statement name="DO0"><block type="control" id="ql@4(PNtjS_AM0bEqD+"><mutation delay_input="false"></mutation>
                              <field name="OID">alexa2.0.Echo-Devices.xxx.Commands.speak</field>
                              <field name="WITH_DELAY">FALSE</field>
                              <value name="VALUE"><block type="text_join" id="Han]KF1f.0IrY!Qc3Enb"><mutation items="3"></mutation>
                              <value name="ADD0"><block type="text" id="PXcu~o={]-N^S0)SE=}"><field name="TEXT">Im Moment sind</field></block></value> <value name="ADD1"><block type="get_value" id="8vb98[j)NrH4+s7#|A@"><field name="ATTR">val</field>
                              <field name="OID">javascript.0.zählen_Fensterkontakte.textFensterkontakteaufAnsage</field></block></value>
                              <value name="ADD2"><block type="get_value" id="-Zpr897`o1FR+Bo=|cFu"><field name="ATTR">val</field>
                              <field name="OID">javascript.0.zählen_Fensterdrehgriffe.textFensterdrehgriffeaufAnsage</field></block></value></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></next></block></next></block></next></block></next></block></statement></block></next></block></xml>

                              
                              Und hier noch die Scripte dazu: Fensterdrehgriffe
                              
                              >! ````
                              /* System Zahl Fensterdrehgriffe
                              >! zählt die Fensterdrehgriffe in allen Räumen und meldet die offenen Fensterdrehgriffe namentlich
                              Daten kommen vom Gewerk 'Fensterdrehgriffe'
                              >! erstellt: 17.06.2015 nach diesem Vorbild: http://forum.iobroker.net/viewtopic.php?f=21&t=869&sid=f9ba5657489ff431a1990884f90779c1#p6564
                              05.08.2015 STATE aus der Ausgabe entfernt nach Idee von stephan61 http://forum.iobroker.org/viewtopic.php?f=21&t=473&start=20#p9267
                              02.12.2015 Fehler beseitigt bei Anzahl Fensterdrehgriffe, wenn offen (Unterscheidung RHS und TFK)
                                         Überprüfung des Zustandes (function Fensterdrehgriffestatus) und Übergabe an Text
                              25.01.2016 Fensterdrehgriffe Nummer in Log korrigiert (+1)
                              02.03.2016 Ansage für TTS aufbereitet
                              02.07.2016 Regulärer Ausdruck (gierig) bei Aufbereitung für Ansage
                              */
                              >! function Fensterdrehgriffestatus(zustand) {
                                  var meldung;
                                  switch (zustand) {
                                      case 1:
                                          meldung = 'gekippt';
                                      break;
                                      case 2:
                                          meldung = 'offen';
                                      break;
                                      case true:
                                          meldung = 'TFK offen';
                                      break;
                                      default:
                                          meldung = 'geschlossen';
                                      break;
                                  }
                                  return(meldung);
                              }
                              >! createState('zählen_Fensterdrehgriffe.anzahlFensterdrehgriffe', {     // wenn benötigt: Anzahl der vorhandenen Fensterdrehgriffe
                                  type: 'number',
                                  min: 0,
                                  def: 0,
                                  role: 'value'
                              });
                              createState('zählen_Fensterdrehgriffe.anzahlFensterdrehgriffeauf', {  // Anzahl der Fensterdrehgriffe, die auf sind als Variable unter Javascript.0 anlegen
                                  type: 'number',
                                  min: 0,
                                  def: 0,
                                  role: 'value'
                              });
                              createState('zählen_Fensterdrehgriffe.textFensterdrehgriffeauf', {      // Anzahl der offenen Fensterdrehgriffe und deren Namen als Variable unter Javascript.0 anlegen
                                  type: 'string',
                                  def: ' ',
                                  role: 'value'
                              });    
                              >! var cacheSelectorState  = $('channel[state.id=*.STATE](functions="Fensterdrehgriffe")');
                              >! function countFensterdrehgriffe(obj) {
                                   // Setzt die Zähler vor dem Durchlauf aller Elemente *.STATE im Gewerk Fensterdrehgriffe auf 0
                                  var anzahlFensterdrehgriffe = 0;
                                  var anzahlFensterdrehgriffeauf = 0;
                                  var textFensterdrehgriffeauf = [];
                              >!     log('Auslösender Aktor: ' + obj.id + ': ' + obj.newState.val);              // Info im Log, welcher Zustand sich geändert hat
                              
                                  cacheSelectorState.each(function (id, i) {                                  // Schleife für jedes gefundenen Element *.STATE im Gewerk Fensterdrehgriffe
                                      var status = getState(id).val;                                          // Zustand *.STATE abfragen (jedes Element)
                                      var obj    = getObject(id);
                                      var name = getObject(id).common.name;
                                      var devicename = name.substring(0, name.indexOf(".STATE"));             //.state aus Text entfernen
                                      if (status /*TFK*/ || status === 1 || status === 2 /*RHS*/) {  // wenn Zustand offen, dann wird die Anzahl der Fensterdrehgriffe hochgezählt
                                           ++anzahlFensterdrehgriffeauf;
                                           textFensterdrehgriffeauf.push(devicename + ' (' + Fensterdrehgriffestatus(status) + ')');  // Name und Zustand zum Array hinzufügen
                                      }                
                                      log('Fensterdrehgriffe #' + (i+1) + ': ' + devicename + ' ' + Fensterdrehgriffestatus(status)/* + ' (' + status + ' / ' + typeof status + ')'*/);
                                      ++anzahlFensterdrehgriffe;                                                        // Zählt die Anzahl der vorhandenen Fensterdrehgriffe unabhängig vom Status
                                  }); 
                              
                                  // Schleife ist durchlaufen. Im Log wird der aktuelle Status (Anzahl, davon an) ausgegeben
                                      log("Text: " + textFensterdrehgriffeauf);
                                      log("Anzahl Fensterdrehgriffe: " + anzahlFensterdrehgriffe + " - davon Fensterdrehgriffe auf: " +  anzahlFensterdrehgriffeauf);
                              >!     // die ermittelten Werte werden als javascript.0\. Variable in ioBroker gespeichert (z.B. für die Verarbeitung in VIS)
                                  setState("zählen_Fensterdrehgriffe.textFensterdrehgriffeauf", textFensterdrehgriffeauf.join(',\n'));    // Schreibt die aktuelle Namen der offenen Fensterdrehgriffe
                                  setState("zählen_Fensterdrehgriffe.anzahlFensterdrehgriffeauf", textFensterdrehgriffeauf.length);         // Schreibt die aktuelle Anzahl der offenen Fensterdrehgriffe
                                  setState("zählen_Fensterdrehgriffe.anzahlFensterdrehgriffe", anzahlFensterdrehgriffe);                    // Schreibt die aktuelle Anzahl der vorhandene Elemente im Gewerk Fensterdrehgriffe
                              }
                              >! cacheSelectorState.on(function(obj) {    // bei Zustandänderung *. STATE im Gewerk Fensterdrehgriffe
                                  countFensterdrehgriffe(obj);
                              });
                              >! // Variable für Ansage aufbereiten
                              createState('zählen_Fensterdrehgriffe.textFensterdrehgriffeaufAnsage', {
                                  type: 'string',
                                  def: ' ',
                                  role: 'value'
                              });  
                              // Anzahl der Fensterdrehgriffe, die auf sind, für Ansage aufbereitet
                              var idQuelle = 'javascript.0.zählen_Fensterdrehgriffe.textFensterdrehgriffeauf',
                                  idAnsage = 'javascript.0.zählen_Fensterdrehgriffe.textFensterdrehgriffeaufAnsage';
                              >! on(idQuelle, function (obj) {
                                  var text = obj.state.val;
                                  //text = text.replace(/RHS/g, 'Fenster');
                                  text = text.replace(/TFK/g, 'Reedkontakt');
                                  text = (text.length > 1) ? 'Geöffnete Fenster im Keller: ' + text : 'Alle Fenster im Keller geschlossen';
                                  setState(idAnsage, text);
                              });
                              >! //on({id: "javascript.0.zählen_Fensterdrehgriffe.textFensterdrehgriffeaufAnsage"/*zählen_Fensterdrehgriffe.textFensterdrehgriffeaufAnsage*/, change: "ne"}, function (obj) {
                              //  var value = obj.state.val;
                              //  var oldValue = obj.oldState.val;
                              //  sendTo("telegram", "send", {
                              //      text: getState("javascript.0.zählen_Fensterdrehgriffe.textFensterdrehgriffeaufAnsage").val,
                              //      disable_notification:   true
                              //  });
                              //});
                              

                              Fensterkontakte

                              ! ````
                              createState('zählen_Fensterkontakte.anzahlFensterkontakte', { // wenn benötigt: Anzahl der vorhandenen Fensterkontakte
                              type: 'number',
                              min: 0,
                              def: 0,
                              role: 'value'
                              });
                              createState('zählen_Fensterkontakte.anzahlFensterkontakteauf', { // Anzahl der Fensterkontakte, die auf sind als Variable unter Javascript.0 anlegen
                              type: 'number',
                              min: 0,
                              def: 0,
                              role: 'value'
                              });
                              createState('zählen_Fensterkontakte.textFensterkontakteauf', { // Anzahl der offenen Fensterkontakte und deren Namen als Variable unter Javascript.0 anlegen
                              type: 'string',
                              def: '',
                              role: 'value'
                              });
                              ! var cacheSelectorState = $('channelstate.id=*.STATE');
                              ! function countFensterkontakte(obj) {
                              // Setzt die Zähler vor dem Durchlauf aller Elemente *.STATE im Gewerk Fensterkontakte auf 0
                              var anzahlFensterkontakte = 0;
                              var anzahlFensterkontakteauf = 0;
                              var textFensterkontakteauf = [];
                              ! log('Auslösender Aktor: ' + obj.id + ': ' + obj.newState.val); // Info im Log, welcher Zustand sich geändert hat
                              ! cacheSelectorState.each(function (id, i) { // Schleife für jedes gefundenen Element .STATE im Gewerk Fensterkontakte
                              var status = getState(id).val; // Zustand .STATE abfragen (jedes Element)
                              var obj = getObject(id);
                              var name = getObject(id).common.name;
                              var devicename = name.substring(0, name.indexOf(".STATE")); //.state aus Text entfernen
                              if ( status === 1 || status === 2) { // wenn Zustand offen, dann wird die Anzahl der Fensterkontakte hochgezählt
                              ++anzahlFensterkontakteauf;
                              textFensterkontakteauf.push(devicename ); // Name und Zustand zum Array hinzufügen
                              }
                              log('Fensterkontakte #' + (i+1) + ': ' + devicename + ' ' /
                              + ' (' + status + ' / ' + typeof status + ')'
                              /);
                              ++anzahlFensterkontakte; // Zählt die Anzahl der vorhandenen Fensterkontakte unabhängig vom Status
                              });
                              ! // Schleife ist durchlaufen. Im Log wird der aktuelle Status (Anzahl, davon an) ausgegeben
                              log("Text: " + textFensterkontakteauf);
                              log("Anzahl Fensterkontakte: " + anzahlFensterkontakte + " - davon Fensterkontakte auf: " + textFensterkontakteauf.length);
                              ! // die ermittelten Werte werden als javascript.0. Variable in ioBroker gespeichert (z.B. für die Verarbeitung in VIS)
                              setState("zählen_Fensterkontakte.textFensterkontakteauf", textFensterkontakteauf.join(', ')); // Schreibt die aktuelle Namen der offenen Fensterkontakte
                              setState("zählen_Fensterkontakte.anzahlFensterkontakteauf", textFensterkontakteauf.length); // Schreibt die aktuelle Anzahl der offenen Fensterkontakte
                              setState("zählen_Fensterkontakte.anzahlFensterkontakte", anzahlFensterkontakte); // Schreibt die aktuelle Anzahl der vorhandene Elemente im Gewerk Fensterkontakte
                              }
                              ! cacheSelectorState.on(function(obj) { // bei Zustandänderung *. STATE im Gewerk Fensterkontakte
                              countFensterkontakte(obj);
                              });
                              ! // Variable für Ansage aufbereiten
                              createState('zählen_Fensterkontakte.textFensterkontakteaufAnsage', {
                              type: 'string',
                              def: '',
                              role: 'value'
                              });
                              // Anzahl der Fensterkontakte, die auf sind, für Ansage aufbereitet
                              var idQuelle = 'javascript.0.zählen_Fensterkontakte.textFensterkontakteauf',
                              idAnsage = 'javascript.0.zählen_Fensterkontakte.textFensterkontakteaufAnsage';
                              ! on(idQuelle, function (obj) {
                              var text = obj.state.val;
                              text = (text.length > 1) ? 'Geöffnete Fenster im Erdgeschoss: ' + text : 'Alle Fenster im Erdgeschoss geschlossen';
                              setState(idAnsage, text);
                              });
                              ! // on({id: "javascript.0.zählen_Fensterkontakte.textFensterkontakteaufAnsage"/zählen_Fensterkontakte.textFensterkontakteaufAnsage/, change: "ne"}, function (obj) {
                              // var value = obj.state.val;
                              // var oldValue = obj.oldState.val;
                              // sendTo("telegram", "send", {
                              // text: getState("javascript.0.zählen_Fensterkontakte.textFensterkontakteaufAnsage").val,
                              // disable_notification: true
                              // });
                              //});

                              
                              Telegram ist hier nur auskommentiert…
                              
                              PS: ich baue mir gerade die Ausgabe im Fensterscript (und auch Licht/Steckdosen usw.--- also auch für andere Gewerke) so um, das die Ausgabe für den Alexa2 Adapter für speak etwas schöner sind, habe ich bisher nur für Telegram genutzt)
                              1 Antwort Letzte Antwort
                              0
                              • H Offline
                                H Offline
                                Hc-Yami
                                schrieb am zuletzt editiert von
                                #462

                                Guten Tag,

                                vielen Dank für diesen astreinen Adapter! :)

                                Wirklich tolle Arbeit!

                                Ich hätte jedoch die Frage, ob es möglich ist, zu erkennen ob der Wecker klingelt. Hintergrund ist, dass ich es gerne realisieren würde, dass wenn der Alexa Wecker klingelt, eine bestimmte WLAN-Glühbirne an geht.

                                Grüße!

                                1 Antwort Letzte Antwort
                                0
                                • apollon77A Offline
                                  apollon77A Offline
                                  apollon77
                                  schrieb am zuletzt editiert von
                                  #463

                                  @Hc-Yami:

                                  Ich hätte jedoch die Frage, ob es möglich ist, zu erkennen ob der Wecker klingelt. Hintergrund ist, dass ich es gerne realisieren würde, dass wenn der Alexa Wecker klingelt, eine bestimmte WLAN-Glühbirne an geht. `

                                  Wecker wird noch kommen, aber das "starten" eines Weckers habe ich bisher noch nicht hinbekommen. Das "mach Wecker aus" bekommen wir hin :-)

                                  Beitrag hat geholfen? Votet rechts unten im Beitrag :-) https://paypal.me/Apollon77 / https://github.com/sponsors/Apollon77

                                  • Debug-Log für Instanz einschalten? Admin -> Instanzen -> Expertenmodus -> Instanz aufklappen - Loglevel ändern
                                  • Logfiles auf Platte /opt/iobroker/log/… nutzen, Admin schneidet Zeilen ab
                                  1 Antwort Letzte Antwort
                                  0
                                  • dslraserD Offline
                                    dslraserD Offline
                                    dslraser
                                    Forum Testing Most Active
                                    schrieb am zuletzt editiert von
                                    #464

                                    Ich habe hier noch ein Beispiel für die Lichtabfrage und Ausgabe über speak gebaut. Ich habe nur Philips Hue und den Adapter dazu im Einsatz. Polling habe ich im Hue Adapter etwas kürzer gestellt. Die erstellten Hue Räume habe ich nur noch dem Gewerk Licht und dem Raum zugeordnet.

                                    Scripte sind hier im Forum zusammengesucht und etwas an die Abfrage angepasst.

                                    Vielleicht braucht es Jemand. Scripte schiebe ich gleich nach.

                                    Script zum Licht prüfen (Philips Hue - level)

                                    ! ````
                                    //Lichter Status
                                    var logging = true;
                                    ! var idAnzahlEin = 'javascript.0.Status.Lichter.Anzahl_ein',
                                    idAnzahl = 'javascript.0.Status.Lichter.Anzahl',
                                    idText = 'javascript.0.Status.Lichter.Text',
                                    idRaum = 'javascript.0.Status.Lichter.Raum',
                                    idAnsage = 'javascript.0.Status.Lichter.Ansage';
                                    ! // Ab hier nix mehr ändern
                                    createState(idAnzahl, { // wenn benötigt: Anzahl der vorhandenen Lichter
                                    type: 'number',
                                    name: 'Anzahl aller Lichter',
                                    min: 0,
                                    def: 0,
                                    role: 'value'
                                    });
                                    createState(idAnzahlEin, { // Anzahl der Lichter, die an sind als Variable unter Javascript.0 anlegen
                                    type: 'number',
                                    name: 'Anzahl der eingeschalteten Lichter',
                                    min: 0,
                                    def: 0,
                                    role: 'value'
                                    });
                                    createState(idText, { // Anzahl der eingeschalteten Lichter und deren Namen als Variable unter Javascript.0 anlegen
                                    type: 'string',
                                    name: 'Eingeschaltete Lichter',
                                    desc: 'Namen der eingeschalteten Lichter',
                                    def: ' ',
                                    role: 'value'
                                    });
                                    createState(idAnsage, {
                                    type: 'string',
                                    name: 'Eingeschaltete Lichter (Ansage)',
                                    desc: 'Namen der eingeschalteten Lichter (für Ansage aufbereitet)',
                                    def: ' ',
                                    role: 'value'
                                    });
                                    createState(idRaum, { // Räume, in denen Lichter brennen
                                    type: 'string',
                                    name: 'Räume mit eingeschalteten Lichter',
                                    desc: 'Namen der Räume, in denen Lichter eingeschaltet sind',
                                    def: ' ',
                                    role: 'value'
                                    });
                                    ! var cacheSelectorState = $('channelstate.id=*.state'); // Gewerk Licht
                                    var cacheSelectorLevel = $('channelstate.id=*.level');
                                    ! function checkDevices(obj) {
                                    // Setzt die Zähler vor dem Durchlauf aller Elemente *.state im Gewerk Licht auf 0
                                    var anzahlLichterAn = 0;
                                    var anzahlLichter = 0;
                                    var textLichterAn = [];
                                    var textRaum = [];
                                    if (logging) {
                                    log('++++++ Lichter Anzahl ++++ ');
                                    log('#### SCHALTER ##### ');
                                    }
                                    cacheSelectorState.each(function (id, i) { // Schleife für jedes gefundenen Element *.state im Gewerk Licht
                                    var obj = getObject(id);
                                    var name = getObject(id).common.name;
                                    var status = getState(id).val; // Zustand *.state abfragen (jedes Element)
                                    var devicename = name.substring(0, name.indexOf(".state")); //.state aus Text entfernen
                                    var raumname = getObject(id, "rooms");
                                    ! // ########## Abfrage ob Virtueller Kanal? VK oder : im Namen)
                                    //if ( (devicename.search(/(CUX)|(K2)|(K3)|(VK)|(:)/ig) == -1) ) {
                                    if (logging) {
                                    log('-------');
                                    log('Kanal: ' + name);
                                    log('Status: ' + status);
                                    }
                                    if (status) { // wenn Zustand = true, dann wird die ANzahl der Lichter hochgezählt
                                    ++anzahlLichterAn;
                                    textLichterAn.push(devicename); // Zu Array hinzufügen
                                    textRaum.push(raumname.enumNames);
                                    }
                                    ++anzahlLichter; // Zählt die Anzahl der vorhandenen Lichter unabhängig vom Status
                                    // } // ENDE VK-Abfrage
                                    });
                                    ! if (logging) log('#### DIMMER ##### ');
                                    cacheSelectorLevel.each(function (id, i) { // Schleife für jedes gefundenen Element *.level im Gewerk Licht
                                    var obj = getObject(id);
                                    var name = getObject(id).common.name;
                                    var status = getState(id).val; // Zustand *.level abfragen (jedes Element)
                                    var devicename = name.substring(0, name.indexOf(".level")); //.level aus Text entfernen
                                    var raumname = getObject(id, "rooms");
                                    ! //########## Abfrage ob Virtueller Kanal? VK oder : im Namen)
                                    if ( (devicename.search(/(CUX)|(K2)|(K3)|(V10)|(VK)|(:)/ig) == -1) ) { // Geräte mit diesen Strings im namen nicht beachten
                                    ! if (logging) {
                                    log('-------');
                                    log('Kanal: ' + name);
                                    log('Status: ' + status + '%');
                                    }
                                    if (parseFloat(status) > 0) { // Wenn Dimmwert über 0
                                    ++anzahlLichterAn;
                                    textLichterAn.push(devicename); // Zu Array hinzufügen
                                    textRaum.push(raumname.enumNames);
                                    }
                                    ++anzahlLichter; // Zählt die Anzahl der vorhandenen Lichter unabhängig vom Status
                                    } // Ende Abfrage VK
                                    });
                                    ! // Array mit Lichternamen sortieren
                                    textLichterAn.sort();
                                    textRaum.sort();
                                    // Schleife ist durchlaufen. Im Log wird der aktuelle Status (Anzahl, davon an) ausgegeben
                                    if (logging) log("Text: " + textLichterAn);
                                    if (logging) log("Anzahl Lichter: " + anzahlLichter + " # davon Lichter an: " + anzahlLichterAn);
                                    // die ermittelten Werte werden als javascript.0. Variable in ioBroker gespeichert (z.B. für die Verarbeitung in VIS)
                                    setState(idText, textLichterAn.join(', und ')); // Schreibt die aktuelle Namen der eingeschalteten Lichter
                                    setState(idAnzahlEin, textLichterAn.length); // Schreibt die aktuelle Anzahl der eingeschalteten Lichter
                                    setState(idAnzahl, anzahlLichter); // Schreibt die aktuelle Anzahl der vorhandene Elemente im Gewerk Licht
                                    //setState(idRaum, textRaum.join(',
                                    ')); // Räume, in denen Licht brennt
                                    setState(idRaum, textRaum.join(', und ')); // Räume, in denen Licht brennt
                                    }
                                    ! // Trigger
                                    cacheSelectorState.on(function(obj) { // bei Zustandänderung *.state im Gewerk Licht
                                    if (logging) log('Auslösender Schalter: ' + obj.id + ': ' + obj.state.val); // Info im Log, welcher Zustand sich geändert hat
                                    checkDevices();
                                    });
                                    cacheSelectorLevel.on(function(obj) { // bei Zustandänderung *.level im Gewerk Licht
                                    if (logging) log('Auslösender Dimmer: ' + obj.id + ': ' + obj.state.val); // Info im Log, welcher Zustand sich geändert hat
                                    checkDevices();
                                    });
                                    ! function main() {
                                    setTimeout(function(){
                                    if (logging) log('Auslöser Skriptstart');
                                    checkDevices();
                                    }, 2000);
                                    }
                                    ! main(); // Skriptstart-Auslöser
                                    ! // Aufbereitung für Ansage
                                    //function strip_tags(data) {
                                    //var rueckgabe = data.replace(/( |<([^>]+)>)/ig, " ");
                                    //return(rueckgabe);
                                    //}
                                    ! on(idText, function (obj) {
                                    var text = obj.state.val;
                                    text = (text.length > 1) ? '' + text : 'alle Lampen ausgeschaltet';
                                    setState(idAnsage, text);
                                    });

                                    
                                    Blockly Export Lichtabfrage und Ausgabe über speak (bei mehreren ECHOS kommt die Ausgabe am gefragten ECHO–-ich habe hier viele drinn :D )
                                    
                                    >! ````
                                     <xml xmlns="http://www.w3.org/1999/xhtml"><block type="control" id="@J7@ob/rsR9OCYN+!hI7" x="-187" y="-162"><mutation 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.Status.Lichter.Anzahl_ein</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">Ausgabetext</field>
                                                <value name="VALUE"><block type="text_join" id="4?k[0reCRn.mjkxHg41~"><mutation items="2"></mutation>
                                                    <value name="ADD0"><block type="text" id="75Z)Wn`YF@;38~bIM;pA"><field name="TEXT">aktuell sind</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.Status.Lichter.Ansage</field></block></value></block></value> 
                                                <next><block type="timeouts_settimeout" id="xA_MJ^@=AB=-WtDTe(3}"><field name="NAME">timeout</field>
                                                    <field name="DELAY">500</field>
                                                    <field name="UNIT">ms</field>
                                                    <statement name="STATEMENT"><block type="comment" id="s30b2{fSQ:a0uC3`+QWU"><field name="COMMENT">Wohnzimmer</field>
                                                        <next><block type="controls_if" id="l(E24=q]l]b,GJDj4dSj"><value name="IF0"><block type="logic_compare" id="MKwJn0C!O]xc!~.9|B`*"><field name="OP">EQ</field>
                                                                <value name="A"><block type="get_value" id="p-SHbJ5Dmwr6djxg2ohH"><field name="ATTR">val</field>
                                                                    <field name="OID">alexa2.0.History.name</field></block></value> 
                                                                <value name="B"><block type="text" id="?}A;8(IyMF%F@(t]Kc~+"><field name="TEXT">Wohnzimmer</field></block></value></block></value> 
                                                            <statement name="DO0"><block type="control" id=")M^jLcZ!hCpj,X={-`nV"><mutation delay_input="false"></mutation>
                                                                <field name="OID">alexa2.0.Echo-Devices.XXX.Commands.speak</field>
                                                                <field name="WITH_DELAY">FALSE</field>
                                                                <value name="VALUE"><block type="variables_get" id="p)bNOdcZFVoq1e^M5V-."><field name="VAR">Ausgabetext</field></block></value></block></statement> 
                                                            <next><block type="comment" id="As,dG(xO[B@wIYcyAG?h"><field name="COMMENT">Küche</field>
                                                                <next><block type="controls_if" id="wrH-}P(84mn7Y/rg8A[."><value name="IF0"><block type="logic_compare" id="kg.QKB751NaS#Ihk1Vlg"><field name="OP">EQ</field>
                                                                        <value name="A"><block type="get_value" id="qnTz1Oe31sq:NXjmbxIJ"><field name="ATTR">val</field>
                                                                            <field name="OID">alexa2.0.History.name</field></block></value> 
                                                                        <value name="B"><block type="text" id="3=W.?c8BZN+QrGX4xL}h"><field name="TEXT">Küche</field></block></value></block></value> 
                                                                    <statement name="DO0"><block type="control" id="}?dK++*V.7JQcjG{3uhB"><mutation delay_input="false"></mutation>
                                                                        <field name="OID">alexa2.0.Echo-Devices.XXXXXX.Commands.speak</field>
                                                                        <field name="WITH_DELAY">FALSE</field>
                                                                        <value name="VALUE"><block type="variables_get" id="qHoN]~u1FI@iDQs*2C2v"><field name="VAR">Ausgabetext</field></block></value></block></statement> 
                                                                    <next><block type="comment" id="_amxz6B=9F}_2uEGsK}`"><field name="COMMENT">Badezimmer</field>
                                                                        <next><block type="controls_if" id=".n7JtGwDJDGfaeyl!8*B"><value name="IF0"><block type="logic_compare" id="I-@9%{Ng!%}9rE#IESc;"><field name="OP">EQ</field>
                                                                                <value name="A"><block type="get_value" id="c?dSeG!fu]W8UO@?D4I3"><field name="ATTR">val</field>
                                                                                    <field name="OID">alexa2.0.History.name</field></block></value> 
                                                                                <value name="B"><block type="text" id="MivGV@*kt)3rY9COKpKA"><field name="TEXT">Badezimmer</field></block></value></block></value> 
                                                                            <statement name="DO0"><block type="control" id="zTwXc~r8Ldt0u-5TNcVn"><mutation delay_input="false"></mutation>
                                                                                <field name="OID">alexa2.0.Echo-Devices.XXXXX.Commands.speak</field>
                                                                                <field name="WITH_DELAY">FALSE</field>
                                                                                <value name="VALUE"><block type="variables_get" id="*X*~qQG3]~[NC{WMMndW"><field name="VAR">Ausgabetext</field></block></value></block></statement> 
                                                                            <next><block type="comment" id="CJNG59[?CJ|U-=Bf]c)z"><field name="COMMENT">Gästezimmer</field>
                                                                                <next><block type="controls_if" id="OC]k1_}iDlExQPVc=(ib"><value name="IF0"><block type="logic_compare" id="OBIXw6hJ@]2Xr`HBIz5h"><field name="OP">EQ</field>
                                                                                        <value name="A"><block type="get_value" id="=x~5W)ns/VV;c|RFqQcE"><field name="ATTR">val</field>
                                                                                            <field name="OID">alexa2.0.History.name</field></block></value> 
                                                                                        <value name="B"><block type="text" id="IxW:hplIvDQm1ax=@X+M"><field name="TEXT">Gästezimmer</field></block></value></block></value> 
                                                                                    <statement name="DO0"><block type="control" id="g+2]wvsrhR8vxv7c,kJ_"><mutation delay_input="false"></mutation>
                                                                                        <field name="OID">alexa2.0.Echo-Devices.XXXXXX.Commands.speak</field>
                                                                                        <field name="WITH_DELAY">FALSE</field>
                                                                                        <value name="VALUE"><block type="variables_get" id="5q6/z~S`0DeJ6sYrWhj1"><field name="VAR">Ausgabetext</field></block></value></block></statement> 
                                                                                    <next><block type="comment" id="C6,wSh?BEZ,G:B9Tl@#w"><field name="COMMENT">Flur</field>
                                                                                        <next><block type="controls_if" id="l/g@UNw6pzeQ6_698R:-"><value name="IF0"><block type="logic_compare" id="=Z)D6qrCzY2oU/fVV93A"><field name="OP">EQ</field>
                                                                                                <value name="A"><block type="get_value" id="StsaG2CB;*5f5wIvH,kE"><field name="ATTR">val</field>
                                                                                                    <field name="OID">alexa2.0.History.name</field></block></value> 
                                                                                                <value name="B"><block type="text" id="7N;yy7cC=tE`}MYOFfF6"><field name="TEXT">Flur</field></block></value></block></value> 
                                                                                            <statement name="DO0"><block type="control" id="5#-V887QhCCSAzI+twok"><mutation delay_input="false"></mutation>
                                                                                                <field name="OID">alexa2.0.Echo-Devices.XXXXX.Commands.speak</field>
                                                                                                <field name="WITH_DELAY">FALSE</field>
                                                                                                <value name="VALUE"><block type="variables_get" id="NurE:%K_z!^Vlj(fn5qI"><field name="VAR">Ausgabetext</field></block></value></block></statement> 
                                                                                            <next><block type="comment" id="qKD3bDxHV;NBtuFFs|e."><field name="COMMENT">Schlafzimmer</field>
                                                                                                <next><block type="controls_if" id="iMz(H}c1#NO@KVNnhnlQ"><value name="IF0"><block type="logic_compare" id="z`vyyAWvaYdxt8YZt,0O"><field name="OP">EQ</field>
                                                                                                        <value name="A"><block type="get_value" id="mEF)naqwJ#xLCe1NeKO:"><field name="ATTR">val</field>
                                                                                                            <field name="OID">alexa2.0.History.name</field></block></value> 
                                                                                                        <value name="B"><block type="text" id="F7::fb4cokeJJD:fk~pV"><field name="TEXT">Schlafzimmer</field></block></value></block></value> 
                                                                                                    <statement name="DO0"><block type="control" id="{2s/h/xpkm]F+1ik-f4m"><mutation delay_input="false"></mutation>
                                                                                                        <field name="OID">alexa2.0.Echo-Devices.XXXXXXX.Commands.speak</field>
                                                                                                        <field name="WITH_DELAY">FALSE</field>
                                                                                                        <value name="VALUE"><block type="variables_get" id="ft7Uf33@IB1zu_xdTAxn"><field name="VAR">Ausgabetext</field></block></value></block></statement> 
                                                                                                    <next><block type="comment" id="wIYZ1bLOSjFi=NxT9WcM"><field name="COMMENT">Keller-Flur</field>
                                                                                                        <next><block type="controls_if" id="%EEK(pKJ%lGo)32cR7qF"><value name="IF0"><block type="logic_compare" id="7Mb(anM]kR9056)gxqnW"><field name="OP">EQ</field>
                                                                                                                <value name="A"><block type="get_value" id="xF~b7`{fV||4n}zB-}.u"><field name="ATTR">val</field>
                                                                                                                    <field name="OID">alexa2.0.History.name</field></block></value> 
                                                                                                                <value name="B"><block type="text" id="VH^2CJsPGOd!6hGoqdK4"><field name="TEXT">Keller-Flur</field></block></value></block></value> 
                                                                                                            <statement name="DO0"><block type="control" id="F_[xezXeyr~*(A=q.YFJ"><mutation delay_input="false"></mutation>
                                                                                                                <field name="OID">alexa2.0.Echo-Devices.XXXXXXXX.Commands.speak</field>
                                                                                                                <field name="WITH_DELAY">FALSE</field>
                                                                                                                <value name="VALUE"><block type="variables_get" id="SjtrIJ?gA20oj88N|srb"><field name="VAR">Ausgabetext</field></block></value></block></statement> 
                                                                                                            <next><block type="comment" id="E#D1a/,rcH`dm3?Nx^:q"><field name="COMMENT">Werkstatt</field>
                                                                                                                <next><block type="controls_if" id="=s~d:-WIg1#TE`^zf9[4"><value name="IF0"><block type="logic_compare" id="*:X%VM^+2MoYl-:u!WK`"><field name="OP">EQ</field>
                                                                                                                        <value name="A"><block type="get_value" id="6fnRWyK0;P(.x;H{)22T"><field name="ATTR">val</field>
                                                                                                                            <field name="OID">alexa2.0.History.name</field></block></value> 
                                                                                                                        <value name="B"><block type="text" id="S:#keRENw1gGjHWLUD!-"><field name="TEXT">Werkstatt</field></block></value></block></value> 
                                                                                                                    <statement name="DO0"><block type="control" id="ql@`4(PNtjS_AM0bEqD+"><mutation delay_input="false"></mutation>
                                                                                                                        <field name="OID">alexa2.0.Echo-Devices.XXXXXXXXX.Commands.speak</field>
                                                                                                                        <field name="WITH_DELAY">FALSE</field>
                                                                                                                        <value name="VALUE"><block type="variables_get" id="P[ojMqQDVRouu#vN~{[%"><field name="VAR">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></next></block></next></block></next></block></next></block></statement></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.Status.Lichter.Anzahl_ein</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">Ausgabetext</field>
                                                    <value name="VALUE"><block type="text_join" id="Ew3VTw7qG|Fx:}vq3hIR"><mutation items="3"></mutation>
                                                        <value name="ADD0"><block type="text" id="Lo0@rGsN^gt1iZ#@~A/7"><field name="TEXT">Im Moment sind im</field></block></value> 
                                                        <value name="ADD1"><block type="get_value" id="i?[Ze,W23|M`_S5@d?;q"><field name="ATTR">val</field>
                                                            <field name="OID">javascript.0.Status.Lichter.Raum</field></block></value> 
                                                        <value name="ADD2"><block type="text" id="NqEob9;8UT11wT`dCQi#"><field name="TEXT">eingeschaltete Lampen</field></block></value></block></value> 
                                                    <next><block type="timeouts_settimeout" id="^c,bQ)^![(HGz2QrWw/u"><field name="NAME">timeout2</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 delay_input="false"></mutation>
                                                                    <field name="OID">alexa2.0.Echo-Devices.XXX.Commands.speak</field>
                                                                    <field name="WITH_DELAY">FALSE</field>
                                                                    <value name="VALUE"><block type="variables_get" id="HTcKd2V9F)=k:Ae4mS}F"><field name="VAR">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 delay_input="false"></mutation>
                                                                            <field name="OID">alexa2.0.Echo-Devices.XXXXXX.Commands.speak</field>
                                                                            <field name="WITH_DELAY">FALSE</field>
                                                                            <value name="VALUE"><block type="variables_get" id="~51B8(3{stq1BpR1J~p%"><field name="VAR">Ausgabetext</field></block></value></block></statement> 
                                                                        <next><block type="comment" id="0Y;8c=RG%f;qqP2yyjbm"><field name="COMMENT">Badezimmer</field>
                                                                            <next><block type="controls_if" id="JS`zfpqZ~NiBhWxa_;gH"><value name="IF0"><block type="logic_compare" id="-7AVWpsa42LalJseqzv{"><field name="OP">EQ</field>
                                                                                    <value name="A"><block type="get_value" id="cm6sMr|*pCsxx{9uCMrm"><field name="ATTR">val</field>
                                                                                        <field name="OID">alexa2.0.History.name</field></block></value> 
                                                                                    <value name="B"><block type="text" id="7+szyIbBBP!dtC~D1h)O"><field name="TEXT">Badezimmer</field></block></value></block></value> 
                                                                                <statement name="DO0"><block type="control" id="Hg;Dq%gJEXg{SLV;t6{6"><mutation delay_input="false"></mutation>
                                                                                    <field name="OID">alexa2.0.Echo-Devices.XXXXXXXXXX.Commands.speak</field>
                                                                                    <field name="WITH_DELAY">FALSE</field>
                                                                                    <value name="VALUE"><block type="variables_get" id="*lX{ZM`VBTc}A`1!gM9H"><field name="VAR">Ausgabetext</field></block></value></block></statement> 
                                                                                <next><block type="comment" id=":Ka+W*uwIV:h(pjzq_h,"><field name="COMMENT">Gästezimmer</field>
                                                                                    <next><block type="controls_if" id="Ug#8mH1FI!icK/)QEYjQ"><value name="IF0"><block type="logic_compare" id=")@76q4MZ/}oCH_mLKWO4"><field name="OP">EQ</field>
                                                                                            <value name="A"><block type="get_value" id="iI-HkvUXFC@;;_+[TcRP"><field name="ATTR">val</field>
                                                                                                <field name="OID">alexa2.0.History.name</field></block></value> 
                                                                                            <value name="B"><block type="text" id="#:=Dp]Dt1gil*WOPj/h{"><field name="TEXT">Gästezimmer</field></block></value></block></value> 
                                                                                        <statement name="DO0"><block type="control" id="yoHnz^WG58=+X)|S-u8#"><mutation delay_input="false"></mutation>
                                                                                            <field name="OID">alexa2.0.Echo-Devices.XXXXXXXXXX.Commands.speak</field>
                                                                                            <field name="WITH_DELAY">FALSE</field>
                                                                                            <value name="VALUE"><block type="variables_get" id="Y8LHCPPH..OnEJN^sjFQ"><field name="VAR">Ausgabetext</field></block></value></block></statement> 
                                                                                        <next><block type="comment" id="!40Mmgu)T0A3-qPaF9yO"><field name="COMMENT">Flur</field>
                                                                                            <next><block type="controls_if" id="b/SgE1YjT,ld[nn}{%RH"><value name="IF0"><block type="logic_compare" id="c)SjW;jeX|#Fh/Cha,,3"><field name="OP">EQ</field>
                                                                                                    <value name="A"><block type="get_value" id="H9=}F/!XKY9UBnnbr~D/"><field name="ATTR">val</field>
                                                                                                        <field name="OID">alexa2.0.History.name</field></block></value> 
                                                                                                    <value name="B"><block type="text" id="r^EgI!FQ;-DPWFF_D!C1"><field name="TEXT">Flur</field></block></value></block></value> 
                                                                                                <statement name="DO0"><block type="control" id=";7jyou9f+V(`5**;CDV?"><mutation delay_input="false"></mutation>
                                                                                                    <field name="OID">alexa2.0.Echo-Devices.XXXXX.Commands.speak</field>
                                                                                                    <field name="WITH_DELAY">FALSE</field>
                                                                                                    <value name="VALUE"><block type="variables_get" id="Q_k9kSJVNP5e%a8((xhe"><field name="VAR">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="Zr`S-l8E!}8.4{,qM9*i"><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 delay_input="false"></mutation>
                                                                                                            <field name="OID">alexa2.0.Echo-Devices.XXXXXXXXXX.Commands.speak</field>
                                                                                                            <field name="WITH_DELAY">FALSE</field>
                                                                                                            <value name="VALUE"><block type="variables_get" id="[hMf^;p|,CaZVyd+qTm~"><field name="VAR">Ausgabetext</field></block></value></block></statement> 
                                                                                                        <next><block type="comment" id="N3@K2BRC7C5N9daBycv_"><field name="COMMENT">Keller-Flur</field>
                                                                                                            <next><block type="controls_if" id="HPxOdxs4N%j2umWTfUNG"><value name="IF0"><block type="logic_compare" id="DX=kCQ/,E6kqYsQ}/=[e"><field name="OP">EQ</field>
                                                                                                                    <value name="A"><block type="get_value" id="XionPRa91nQ16NK(N9+."><field name="ATTR">val</field>
                                                                                                                        <field name="OID">alexa2.0.History.name</field></block></value> 
                                                                                                                    <value name="B"><block type="text" id="ZB}mEWERKZ/fb~*Lwd1A"><field name="TEXT">Keller-Flur</field></block></value></block></value> 
                                                                                                                <statement name="DO0"><block type="control" id="kPLG+9decg*iGUm87`-2"><mutation delay_input="false"></mutation>
                                                                                                                    <field name="OID">alexa2.0.Echo-Devices.XXXXXXXXXXX.Commands.speak</field>
                                                                                                                    <field name="WITH_DELAY">FALSE</field>
                                                                                                                    <value name="VALUE"><block type="variables_get" id="}.I+7-Frw4fjj1-N[AeP"><field name="VAR">Ausgabetext</field></block></value></block></statement> 
                                                                                                                <next><block type="comment" id="C~L9w[G_b.Hb*%7oT~aE"><field name="COMMENT">Werkstatt</field>
                                                                                                                    <next><block type="controls_if" id="`;ot|i:*)I|EwW@zS,B2"><value name="IF0"><block type="logic_compare" id="H!ldSYtR|C|^VcqxS;Xt"><field name="OP">EQ</field>
                                                                                                                            <value name="A"><block type="get_value" id="I)o6A2U2(,A7e|4.8lo."><field name="ATTR">val</field>
                                                                                                                                <field name="OID">alexa2.0.History.name</field></block></value> 
                                                                                                                            <value name="B"><block type="text" id="s4owS.Ww){6ayek?VzFb"><field name="TEXT">Werkstatt</field></block></value></block></value> 
                                                                                                                        <statement name="DO0"><block type="control" id="5Gh*aVl-x(IPCnF@5,5/"><mutation delay_input="false"></mutation>
                                                                                                                            <field name="OID">alexa2.0.Echo-Devices.XXXXXXXXXXX.Commands.speak</field>
                                                                                                                            <field name="WITH_DELAY">FALSE</field>
                                                                                                                            <value name="VALUE"><block type="variables_get" id="dmO{yR;|g@(rZJE,HX4k"><field name="VAR">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></next></block></next></block></next></block></next></block></statement></block></next></block></statement></block></next></block></next></block></xml> 
                                    

                                    https://youtu.be/vxMiJ5cwUF8

                                    https://youtu.be/CvuJmIYVS8Y

                                    ![](</s><URL url=)<link_text text="https://uploads.tapatalk-cdn.com/201808 ... 2f092e.jpg">https://uploads.tapatalk-cdn.com/20180807/8cfed7977c53f7054827f338fb2f092e.jpg</link_text>" />![](</s><URL url=)<link_text text="https://uploads.tapatalk-cdn.com/201808 ... 932052.jpg">https://uploads.tapatalk-cdn.com/20180807/b6c5485dbd0e6cb8553d4e4af3932052.jpg</link_text>" />![](</s><URL url=)<link_text text="https://uploads.tapatalk-cdn.com/201808 ... eb5c2f.jpg">https://uploads.tapatalk-cdn.com/20180807/7c703a7f2040bcd2021d5bb5cdeb5c2f.jpg</link_text>" />~~~~

                                    1 Antwort Letzte Antwort
                                    0
                                    • B Offline
                                      B Offline
                                      Blackeye
                                      schrieb am zuletzt editiert von
                                      #465

                                      Hi,

                                      das kann ich dir leider nicht sagen, da die Geräte bei mir nicht alle mit einem Namen im Adapter zu sehen sind. Ich sehe viele Smart Geräte ohne Namen, also nur die ID Nummer. Falls du mir sagen kannst wie ich von der ID auf das Gerät schliessen kann, schaue ich gerne mal nach.

                                      @apollon77:

                                      Da ich sowas nicht habe wird es interessant … SInd denn die Geräte die du per Smarthub angeschlossen hast bei den "Smart-Home-Devices" zu finden?

                                      Wenn ja hätte ich bitte gern mal das Debug Log vom Adapter `

                                      1 Antwort Letzte Antwort
                                      0
                                      • apollon77A Offline
                                        apollon77A Offline
                                        apollon77
                                        schrieb am zuletzt editiert von
                                        #466

                                        Kannst Du Routinen in der App definieren die diese Smart-Hub-Geräte steuern können? Wenn ja leg mal so eine an.

                                        Dann stell bitte mal die Instanz den Loglevel auf Debug und schicke mir per PN das Log (aus dem Logfile auf der Platte unter /opt/iobroker/log… NICHT Admin!) vom Start des Adapters.

                                        Ich habe mit ein paar anderen gesprochen. Der Infostand ist das die Geräte da drin sind, aber wohl anders bedient werden als die "Skill-basierten" Geräte. Auch die Kontrolle scheint wohl anders zu laufen. Über Routinen könnte man ggf noch einen zweiten Weg sehen.

                                        Das log könnte das grob prüfen.

                                        Ansonsten wäre nur die Option:

                                        Ich brauche Zugriff auf so einen Echo habe (müsste also meine App auf meinem Handy mit diesem Amazon-Account verbinden und dann Dinge schalten damit ich die Kommandos abfangen kann um es dann ggf zu sehen wie es läuft.

                                        Beitrag hat geholfen? Votet rechts unten im Beitrag :-) https://paypal.me/Apollon77 / https://github.com/sponsors/Apollon77

                                        • Debug-Log für Instanz einschalten? Admin -> Instanzen -> Expertenmodus -> Instanz aufklappen - Loglevel ändern
                                        • Logfiles auf Platte /opt/iobroker/log/… nutzen, Admin schneidet Zeilen ab
                                        1 Antwort Letzte Antwort
                                        0
                                        • sigi234S Online
                                          sigi234S Online
                                          sigi234
                                          Forum Testing Most Active
                                          schrieb am zuletzt editiert von
                                          #467

                                          Hallo,

                                          der Adapter erkennt auch den Fire TV Stick…... :)

                                          Bitte benutzt das Voting rechts unten im Beitrag wenn er euch geholfen hat.
                                          Immer Daten sichern!

                                          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
                                          FAQ Cloud / IOT
                                          HowTo: Node.js-Update
                                          HowTo: Backup/Restore
                                          Downloads
                                          BLOG

                                          377

                                          Online

                                          32.4k

                                          Benutzer

                                          81.5k

                                          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