Navigation

    Logo
    • Register
    • Login
    • Search
    • Recent
    • Tags
    • Unread
    • Categories
    • Unreplied
    • Popular
    • GitHub
    • Docu
    • Hilfe
    1. Home
    2. Deutsch
    3. Cloud Dienste
    4. Script "LichtAn": Erkennt von welchem Echo-Gerät Befehl kommt

    NEWS

    • ioBroker goes Matter ... Matter Adapter in Stable

    • 15. 05. Wartungsarbeiten am ioBroker Forum

    • Monatsrückblick - April 2025

    Script "LichtAn": Erkennt von welchem Echo-Gerät Befehl kommt

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

      @Stefan.Franke:

      Hallo zusammen,

      ich bin neu hier im Forum und auch neu beim ganzen Thema Haussteuerung 😉

      Seit ein paar Tagen habe ich mehrere Echo Dots; außerdem habe ich Fire TV, Harmony, Hue Lampen und vieles mehr an Technikspielzeug. Aber bisher alles einzeln verwendet. Um diesen Fuhrpark nach und nach steuern/verbinden zu können, habe ich mir ioBroker auf einem Pi installiert.

      Die erste Sache, die mir vorschwebte, ist Licht in jedem Raum direkt schalten/dimmen zu können ("Licht An!"). In der Standardkonfiguration kann Alexa das leider nicht (trotz Smart Groups, geht es bei mir nicht). Man muss immer den Raum dazusagen, was auf die Dauer nervig ist.

      Also habe ich mir die APIs angeschaut, ob es eine Möglichkeit gibt, zu erfahren, welches Echo-Gerät angesprochen wurde. Zum Glück hat Amazon diese Funktion in Form der History. Noch bevor Alexa eine Antwort gibt, steht der History-Eintrag der Anfrage über die API zur Verfügung. Man kann ihn also auslesen, wenn in ioBroker das Event ausgelöst wird. Das Event ist das Ändern eines Datenpunkt durch Alexa (in meinem Fall "Licht"). Dazu später mehr.

      Hier erstmal der Code:

      ! ```
      `//------------------------------------------------------------------------------
      // LichtAn
      //------------------------------------------------------------------------------
      // Dieses Script ermöglicht es für Sprachbefehle (wie "Licht an!") zu ermitteln,
      // welches Echo-Gerät angesprochen wurde, und dann nur die Smart Home Geräte
      // (z.B. Lampen) zu aktivieren, die im Script für dieses Echo-Gerät hinterlegt
      // sind. Eine Angabe des Raumes (wie "Licht an im Wohnzimmer!") ist mit dem
      // Script nicht mehr notwendig.
      //
      // Skript arbeitet unabhängig vom Cloud Adapter.
      //
      // Version: v0.1
      ! //------------------------------------------------------------------------------
      // Changelog:
      // v0.1: initialer Release
      ! //------------------------------------------------------------------------------
      // Einrichtung:
      // 1. cURL extrahieren, siehe
      // https://www.gehrig.info/alexa/Alexa.html
      //
      ! var csrf = 'xxxxxxxx';
      ! var cookie = 'x-amzn-dat- xxxxxxxxxxxxxx';
      ! // 2. Mapping-Tabelle konfigurieren
      //
      // Mapping-Tabelle der Echo-Geräte zu den Smart Home Geräten (z.B. Lampen).
      // Die SerialNr der Echo-Geräte sind in der Alexa-App unter
      // Settings->[Echo-Gerät]->Serial Number (vorletzter Eintrag)
      // zu finden.
      //
      // Die Object-IDs in der Aufzählung "deviceIDs" kommen aus ioBroker und können
      // direkt aus dem Objects-Reiter kopiert werden.
      //
      // Es können mehrere Smart Home Geräte jedem Echo zugeordnet werden. In der
      // Aufzählung "deviceIDs" mit Komma trennen.
      ! var mappingTable = [
      { "deviceSerialNr" : "G040FL60XXXXXXXX", "deviceIDs": ["hue.0.Philips_hue.Wohnzimmer_Stehlampe.level" ] },
      { "deviceSerialNr" : "G080FL20XXXXXXXX", "deviceIDs": ["hue.0.Philips_hue.Bad_Deckenlampe.level" ] }
      ];
      ! // 3. Datenpunkt konfigurieren (optional)
      //
      // Wenn gewünscht, Pfad und Name nach eigenen Vorstellungen anpassen.
      var idAlexaTrigger = 'productive.lichtan.alexa_trigger';
      ! // Wenn gewünscht, Name und Beschreibung (desc) für den Datenpunkt anpassen.
      createState(idAlexaTrigger, 0, forecreation, {
      name: 'Trigger für Alexa',
      desc: 'Trigger mit Level für Alexa',
      type: 'number',
      unit: '',
      role: 'value'
      });
      ! // Ende der Einrichtung.
      // Nachfolgend der eigentliche Source Code des Scripts.
      //------------------------------------------------------------------------------
      ! //------------------------------------------------------------------------------
      // Global Variables
      ! var logOn = true;
      var forecreation = false;
      ! // Node Module https verwenden
      var https = require('https');
      ! // OPTIONAL: regelmässige Wiederholungen der Abfrage
      // var cronStr = "* */6 * * *";
      ! //------------------------------------------------------------------------------
      // Funktionen
      ! // setzt die Options für den https Request
      function setOptions(path,method) {
      var options = {
      host: 'layla.amazon.de',
      path: path,
      method: method,
      timeout:10000,
      headers: {
      'User-Agent' : 'Mozilla/5.0 (Macintosh; Intel Mac OS X 10_12_4) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/57.0.2987.133 Safari/537.36',
      'Content-Type': 'text/plain',
      'csrf' : csrf,
      'Cookie' : cookie
      }
      };
      return options;
      }
      ! // führe den https Request aus und starte callback für Verarbeitung
      function httpsReqGet(path,callback) {
      if(logOn) log("Request " + path + " sent.");
      options = setOptions(path,"GET");
      var req = https.get(options, function getDevices(res) {
      if(logOn) log('HEADERS: ' + JSON.stringify(res.headers));
      // Buffer the body entirely for processing as a whole.
      var body = "";
      ! res.on('data', function(chunk) {
      body += chunk;
      ! });

          res.on('end', function() {
              if(!body) log("No data retrieved.","warn");
              if(logOn) log('BODY: ' + body);
      

      ! if(callback !== undefined && typeof callback === 'function') return callback(null, body);
      ! log("No valid callback.","warn");
      return log(body,"warn");
      });
      ! });
      ! req.on('error', function(e) {
      log('ERROR: ' + e.message,"warn");
      if(callback !== undefined && typeof callback === 'function') return callback(e.message, null);
      log("No valid callback.","warn");
      ok = false;
      return log("error: " + e.message,"warn");
      });
      req.end();
      }
      ! function processHistory (err,result) {
      if (err) {
      log("Error reading Alexa history.","warn");
      log("Error: " + err);
      ok = false;
      return log("No Mapping possible.","warn");
      }

      if(!result) return log("No data retrieved! Cookie incorrect?","warn");
      if(logOn) log(result);
      
      // durchsuche Mapping-Table und schalte die verknüpten Geräte
      for (var i = 0; i < mappingTable.length; i++ ) {
          if (result.indexOf(mappingTable[i].deviceSerialNr) != -1 ) {
              
              for (var j = 0; j < mappingTable[i].deviceIDs.length; j++) {
                  if(logOn) log("Set new value for device " + mappingTable[i].deviceIDs[j]);
                  setState(mappingTable[i].deviceIDs[j], getState("javascript."+instance+"."+idAlexaTrigger));
              }
              
          }
      }
      

      }

      ! // Subscriptions
      // -----------------------------------------------------------------------------
      ! on({id: "javascript."+instance+"."+idAlexaTrigger ,change:'any'}, function (obj) {
      if(logOn) log("Alexa Trigger changed: " + obj.state.val);
      main();
      });
      ! // OPTIONAL: regelmässige Wiederholungen
      // -----------------------------------------------------------------------------
      // Kommentar entfernen, wenn regelmässige Wiederholungen gewünscht sind:
      // schedule(cronStr, main);
      ! // main
      // -----------------------------------------------------------------------------
      function main() {
      httpsReqGet('/api/activities?startTime=&size=1&offset=1', processHistory);
      }
      ! // Start Skript:
      // -----------------------------------------------------------------------------
      ! // Kommentar entfernen, wenn die Abfrage zum Skriptstart ausgeführt werden soll:
      setTimeout(main, 7000); ! Wie bei anderen Scripten zu Alexa auch, muss man csrf und cookie aus dem Browser auslesen und dann ganz oben im Script im Bereich Einrichtung (Punkt 1) eintragen. Ich habe ein Script/Module für FHEM gesehen, dass sich mit Username/Passwort anmelden kann und dann das Cookie automatisch erhält. Sowas wäre natürlich besser, aber vielleicht schafft es Amazon die Funktion in nächster Zeit ohnehin einzubauen, dann bräuchte man das Script -zumindest für Lampen - nicht mehr. Insofern kann ich im moment mit dem Ansatz über Cookie leben. ! Desweiteren muss man die Verknüpfung von Echo-Gerät und Smart Home Gerät hinterlegen. Sprich, welcher Echo schaltet welche Geräte. Das passiert auch direkt am Anfang des Scripts im Bereich Einrichtung (Punkt 2). Diese Konfiguration könnte man auch automatisch aus den Smart Groups auslesen, was ich bei Interesse noch einbauen könnte. Habe ich jetzt aber erstmal weggelassen. ! Es wird automatisch ein Datenpunkt "Trigger für Alexa" erstellt. Dieser kann beliebig benannt werden. Dieser Datenpunkt muss dann über den Cloud-Adapter für Alexa sichtbar gemacht werden. Auch dort ist der Name egal. Dann in der Alexa App nach neuen Geräten suchen. Dann sollte der Schalter in der Liste der Geräte auftauchen. ! Dieses Gerät kann man dann mit Alexa steuern. Ich habe das Gerät "Licht" genannt (in der Alexa App). Sage ich also "Alexa, Licht an!", dann wird der Datenpunkt in ioBroker auf den Wert 100 gesetzt. Durch die Subscription auf diesen Datenpunkt, wird das Script gestartet (oder eigentlich die Funktion im Script; das script muss natürlich in der Script-Verwaltung von ioBroker vorher gestartet worden sein). ! Das Script liest die History von Alexa aus und kann über die SerialNr des Echos erkennen, welcher angesprochen wurde. Dann muss nur noch in der Mapping-Tabelle nachgeschaut werden, welche Geräte an/ausgeschaltet werden sollen. ! Für die Lampen habe ich den Statuswert "level" verwendet, um auch dimmen zu können. Sage ich "Licht an" sendet Alexa 100, aus ist 0, ich kann aber auch Prozentzahlen hinzufügen: "stell das Licht auf 50%". Außerdem geht so auch noch "heller"/"dunkler". Insgesamt also genauso, wie ich mir es vorstelle. ! Wie ich anfangs schon geschrieben habe, bin ich noch neu in dem ganzen Thema. Was mir zum Beispiel noch nicht ganz klar ist, wie ioBroker mit den subscription umgeht bzw. wie lange das Script läuft. Ich frage mich, ob ich noch irgendwas anderes tun muss, als es zu starten und dann läuft es für immer? Oder muss ich mit der letzten Zeile im Script Timeouts festlegen und dann per cron wieder neu starten? Würd mich freuen, wenn die Fragen jemand beantworten würde. ! Abschließend noch einige Danksagungen. Habe hier im Forum gestern Abend zwei Threads im besonderen hoch und runter gelesen und Code/Struktur/etc in mein Script übernommen: ! [http://forum.iobroker.net/viewtopic.php?f=37&amp;t=6035](http://forum.iobroker.net/viewtopic.php?f=37&amp;t=6035) (Script zum Steuern von Echos von rohr70) ! [http://forum.iobroker.net/viewtopic.php?f=37&amp;t=5943](http://forum.iobroker.net/viewtopic.php?f=37&amp;t=5943) (Script Template auch von rohr70) ! Falls ihr auch mehrere Echos habt, und eine solche Steuerung pro Raum haben wollt, die im Moment mit Smart Groups nicht funktioniert, probiert das Script einfach mal aus. ! Freue mich auf Euer Feedback und Anregungen! Sieht sehr interessant aus. :) Wozu braucht man die regelmässige Wiederholungen?[/i][/i][/i][/i] ```

      1 Reply Last reply Reply Quote 0
      • S
        Stefan.Franke last edited by

        Das mit den Wiederholungen ist im Script auskommentiert. Also cron.

        War für mich jetzt eher eine Verständnisfrage, ob es ausreicht subscription im Script anzulegen und dann einfach in iobroker das script zu starten? Läuft das Script dann für immer?

        Wenn ja, dann kann setimeout am ende und auch die auskommentierten cron-sachen aus dem script löschen, richtig?

        1 Reply Last reply Reply Quote 0
        • Dutchman
          Dutchman Developer Most Active Administrators last edited by

          Subscriptions reichen die lösen ja das Script aus eine Art von "lauschen".

          Sieht interessant aus

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

          Send from mobile device

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

            Jetzt nur noch rausfinden, wie man über API eine Szene anlegen kann und dann kann das ganze automatisch Laufen.

            Obwohl wenn ich ein Gerät "Licht" erzeuge, dann braucht man keine Szene. Nur noch die Namen von Echo irgendwie finden und dann braucht man gar nichts machen.

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

              Top!

              Nach der Funktion wurde hier im Forum schon oft gefragt.

              Jetzt müsste man es "nur" noch hinbekommen, dass das mit der Anmeldung funktioniert und man den Coockie nicht mehr manuell auslesen muss.

              1 Reply Last reply Reply Quote 0
              • S
                Stefan.Franke last edited by

                Danke für die positiven Rückmeldungen!

                Das mit dem Login hatte ich erstmal als nicht so schlimm angesehen, weil Amazon die Funktion für "Licht An" ohnehin in Planung hat.

                Aber mittlerweile habe ich noch ein weiteres Script geschrieben, dass die History nutzt, um den gesprochenen Befehl auszuwerten (so sollte es möglich sein, "an" und "aus" in manchen Situationen nicht sagen zu müssen; werde ich hier veröffentlichen, wenn es fertig ist).

                Soetwas wird Amazon wahrscheinlich nicht in nächster Zeit zur Verfügung stellen, so dass für solche Script die automatische Einwahl wirklich wichtig wird. Insofern werde ich da nochmal genauer recherchieren, wie man das hinkriegen kann.

                1 Reply Last reply Reply Quote 0
                • B
                  bz7i last edited by

                  Sauber :!: :!: :!:

                  Funktioniert super…. Danke :mrgreen:

                  1 Reply Last reply Reply Quote 0
                  • S
                    Stefan.Franke last edited by

                    Ich habe einen kleinen Bug behoben, der mir beim kopieren von ioBroker ins Forum unterlaufen ist.

                    Die CSRF wird für das Script nicht benötigt, wurde aber noch in dem Script referenziert, was zu einem Fehler führte.

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

                      Danke!

                      Ich habe die aktuelle Version installiert und es funktioniert prima. Etwas Verzögerung gegenüber den direkten Kommandos ist festzustellen.

                      Ich schalte damit auch eine Homematic Komponente mit der Endung .STATE. Funktioniert auch 😉

                      Nicht getestet, aber ich vermute auch der Szenenadapter wird damit funktionieren.

                      Begeistert!

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

                        OK. Kleine Ergänzung.

                        Daran hatte ich nicht gedacht. .STATE funktioniert. Allerdings meckert logischerweise der Javascript-Adapter:

                        javascript.0	2017-12-07 21:56:53.635	warn	Wrong type of hm-rpc.1.GEQ0134711.1.STATE: "number". Please fix, while deprecated and will not work in next versions.
                        

                        Falls Du Dein Skript noch einmal anpackst…

                        Vielleicht kannst Du prüfen, ob der Datenpunkt .LEVEL ist (dann wird wie bisher gesendet) oder .STATE (z.B. Szenen-Adapter oder Homematic). Und dann true (bei > 0) oder false (bei 0) setzen.

                        Wenn es bei Dir längere Zeit keine Änderungen gibt, bzw. Du da nichts mehr planst, passe ich das bei mir an.

                        Die Zeile

                        // Skript im Forum: http://forum.iobroker.net/posting.php?mode=reply&f=37&t=9115#pr97396
                        
                        

                        habe ich im Kopf des Skripts für mich schon ergänzt 😉

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

                          @Bluefox:

                          Nur noch die Namen von Echo irgendwie finden und dann braucht man gar nichts machen. `

                          Was meinst DU damit?

                          Die Seriennummern der Echos kann man z.B. mit dem Alexa Kommando Skript auslesen.

                          1 Reply Last reply Reply Quote 0
                          • S
                            Stefan.Franke last edited by

                            @ruhr70:

                            Falls Du Dein Skript noch einmal anpackst…

                            Vielleicht kannst Du prüfen, ob der Datenpunkt .LEVEL ist (dann wird wie bisher gesendet) oder .STATE (z.B. Szenen-Adapter oder Homematic). Und dann true (bei > 0) oder false (bei 0) setzen.

                            Wenn es bei Dir längere Zeit keine Änderungen gibt, bzw. Du da nichts mehr planst, passe ich das bei mir an.

                            Die Zeile

                            // Skript im Forum: http://forum.iobroker.net/posting.php?mode=reply&f=37&t=9115#pr97396
                            
                            

                            habe ich im Kopf des Skripts für mich schon ergänzt 😉 `

                            OK, kommt in die nächste Version. Hab auch noch einige Aufräumaktionen vor…

                            1 Reply Last reply Reply Quote 0
                            • S
                              Stefan.Franke last edited by

                              @ruhr70:

                              OK. Kleine Ergänzung.

                              Daran hatte ich nicht gedacht. .STATE funktioniert. Allerdings meckert logischerweise der Javascript-Adapter:

                              javascript.0	2017-12-07 21:56:53.635	warn	Wrong type of hm-rpc.1.GEQ0134711.1.STATE: "number". Please fix, while deprecated and will not work in next versions.
                              

                              Falls Du Dein Skript noch einmal anpackst…

                              Vielleicht kannst Du prüfen, ob der Datenpunkt .LEVEL ist (dann wird wie bisher gesendet) oder .STATE (z.B. Szenen-Adapter oder Homematic). Und dann true (bei > 0) oder false (bei 0) setzen.

                              Wenn es bei Dir längere Zeit keine Änderungen gibt, bzw. Du da nichts mehr planst, passe ich das bei mir an.

                              Die Zeile

                              // Skript im Forum: http://forum.iobroker.net/posting.php?mode=reply&f=37&t=9115#pr97396
                              
                              

                              habe ich im Kopf des Skripts für mich schon ergänzt 😉 `

                              Habe ich jetzt in der neusten Version alles eingebaut. Probier es mal aus;-)

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

                                @Stefan.Franke:

                                Habe ich jetzt in der neusten Version alles eingebaut. Probier es mal aus;-) `

                                Top! Danke 🙂

                                1 Reply Last reply Reply Quote 0
                                • E
                                  Erti1337 last edited by

                                  Ich muss hier einfach mal was dazu sagen :

                                  IHR SEIT BOMBE JUNGS ! 🙂

                                  Weiter so !

                                  1 Reply Last reply Reply Quote 0
                                  • D
                                    Dirk last edited by

                                    Guten Tag und herzlichen Dank für das Script es funktioniert hervorragend.

                                    Ich habe mehrere Alexa´s die auch "gut" genutzt werden mit dieser Funktion ist es noch etwas einfacher geworden.

                                    Da ja bald Weihnachten ist 🙂 hätte ich noch Ergänzungswünsche.

                                    Ich würde mir wünschen, dass ich bei einem Dimmer (.level) auch noch den Dimmwert mitgeben kann.

                                    Jetzt habe ich das im Cloud-Adapter gelöst - dort auf 65% gestellt. Das gilt dann aber für alle Lampen.

                                    Richtig komfortabel wäre es dann noch wenn man zu unterschiedlichen Zeiten - unterschiedliche Dimmwerte einstellen könnte.

                                    Ich versuch das an einem Beispiel zu erklären:

                                    In unserem Flur haben wir Bewegungsmelder um das Licht an zu schalten. Hier habe ich es jetzt so eingestellt, dass der Dimmwert am Tag bei 70% ist und in der Nacht bei 25%.

                                    Das hat den Vorteil wenn jemand in der Nacht mal auf das WC muss oder sich etwas zu trinken holt - im Flur nicht "Blind" wird, sondern nur eine Beleuchtung hat um den "Weg zu finden".

                                    Hoffe ich konnte das verständlich erklären.

                                    Gruß

                                    Dirk

                                    1 Reply Last reply Reply Quote 0
                                    • S
                                      Stefan.Franke last edited by

                                      @Dirk:

                                      Guten Tag und herzlichen Dank für das Script es funktioniert hervorragend.

                                      Ich habe mehrere Alexa´s die auch "gut" genutzt werden mit dieser Funktion ist es noch etwas einfacher geworden. `

                                      Freut mich!

                                      @Dirk:

                                      Ich würde mir wünschen, dass ich bei einem Dimmer (.level) auch noch den Dimmwert mitgeben kann.

                                      Jetzt habe ich das im Cloud-Adapter gelöst - dort auf 65% gestellt. Das gilt dann aber für alle Lampen.

                                      Richtig komfortabel wäre es dann noch wenn man zu unterschiedlichen Zeiten - unterschiedliche Dimmwerte einstellen könnte.

                                      Ich versuch das an einem Beispiel zu erklären:

                                      In unserem Flur haben wir Bewegungsmelder um das Licht an zu schalten. Hier habe ich es jetzt so eingestellt, dass der Dimmwert am Tag bei 70% ist und in der Nacht bei 25%.

                                      Das hat den Vorteil wenn jemand in der Nacht mal auf das WC muss oder sich etwas zu trinken holt - im Flur nicht "Blind" wird, sondern nur eine Beleuchtung hat um den "Weg zu finden". `

                                      Soweit verstanden. Wenn Du sagst "Licht An", soll es pro Gerät einen Level geben, der dann genutzt wird. (was jetzt schon geht, ist die %-Zahl mit zu sagen "Licht auf 70%")

                                      Tag und Nacht andere Level zu haben, kann ich nachvollziehen.

                                      Aber wenn Du einen Bewegungsmelder hast, brauchst Du dann überhaupt einen Sprachbefehl dafür?

                                      1 Reply Last reply Reply Quote 0
                                      • D
                                        Dirk last edited by

                                        @Stefan.Franke:

                                        Soweit verstanden. Wenn Du sagst "Licht An", soll es pro Gerät einen Level geben, der dann genutzt wird. (was jetzt schon geht, ist die %-Zahl mit zu sagen "Licht auf 70%") `

                                        Ja genau richtig. Das ist jetzt ein hoher (vielleicht auch übertriebener) Anspruch aber ich möchte - wenn möglich - auch die % nicht sagen müssen.

                                        @Stefan.Franke:

                                        Tag und Nacht andere Level zu haben, kann ich nachvollziehen.

                                        Aber wenn Du einen Bewegungsmelder hast, brauchst Du dann überhaupt einen Sprachbefehl dafür? `

                                        Einen Bewegungsmelder habe ich nur in den Fluren. Da steht auch kein ECHO. Habe ich nur als Beispiel genutzt.

                                        In den anderen Zimmern stehen ECHOs und keine Bewegungsmelder.

                                        Gruß

                                        Dirk

                                        1 Reply Last reply Reply Quote 0
                                        • N
                                          Nepomukl last edited by

                                          Guten Abend allerseits,

                                          bin jetzt umgestiegen auf Cloud-Pro, nun möchte das einfache "Licht an" nicht mehr laufen.

                                          Muss da eventuell noch etwas angepasst werden?

                                          Gruß Andreas

                                          1 Reply Last reply Reply Quote 0
                                          • Homoran
                                            Homoran Global Moderator Administrators last edited by

                                            Hast du in dem cloud Adapter den pro schlüssel eingetragen?

                                            und auch den Pro skill aktiviert?

                                            Gruß

                                            Rainer

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

                                            Support us

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

                                            984
                                            Online

                                            31.6k
                                            Users

                                            79.5k
                                            Topics

                                            1.3m
                                            Posts

                                            24
                                            104
                                            16535
                                            Loading More Posts
                                            • Oldest to Newest
                                            • Newest to Oldest
                                            • Most Votes
                                            Reply
                                            • Reply as topic
                                            Log in to reply
                                            Community
                                            Impressum | Datenschutz-Bestimmungen | Nutzungsbedingungen
                                            The ioBroker Community 2014-2023
                                            logo