Navigation

    Logo
    • Register
    • Login
    • Search
    • Recent
    • Tags
    • Unread
    • Categories
    • Unreplied
    • Popular
    • GitHub
    • Docu
    • Hilfe
    1. Home
    2. Deutsch
    3. Skripten / Logik
    4. Blockly
    5. Fenster und andere Geräte zählen opt. Alexa Ansagen

    NEWS

    • Neuer Blog: Fotos und Eindrücke aus Solingen

    • ioBroker@Smart Living Forum Solingen, 14.06. - Agenda added

    • ioBroker goes Matter ... Matter Adapter in Stable

    Fenster und andere Geräte zählen opt. Alexa Ansagen

    This topic has been deleted. Only users with topic management privileges can see it.
    • dslraser
      dslraser Forum Testing Most Active @FuXXz2 last edited by dslraser

      @FuXXz2 sagte in Fenster und andere Geräte zählen opt. Alexa Ansagen:

      Kann ich den Unterordner "Haus" im Script einfach löschen (also das Wort Haus aus dem Feld) um dies los zu werden?

      Das habe ich noch nicht probiert.
      Dieses Feld war mal ein Wunsch eines Users, da er es mehrfach für mehrere Etagen nutzen wollte. Also ein Blockly mit z.B. Erdgeschoss und ein zweites Blockly mit Obergeschoss.

      Wäre es nicht irgendwie möglich über das Script Lichter zu schalten? Also ich bekomme z.B. von Telegram eine Nachricht, dass Licht X und Y an sind. Jetzt müsste man irgendwie sagen können, dass er diese dann ausschaltet. Im Telegram kann man ja jeden State als Befehl senden.
      Das Gleiche bei Alexa? HConnect hat das so schön gemacht, da ist man noch so verwöhnt

      Ja, ich verstehe was Du meinst, aber worüber schalten ? (Telegram ? oder über den HTML Code ?)
      Das Blockly war/ist zur Status Anzeige und Ansage über Alexa sowie den Versand über Telegram oder E-Mail gedacht. Es gibt Datenpunkte als Text und HTML zur Anzeige in z.B. iQontrol/jarvis und andere VIS...
      An den HTML Datenpunkten verändere ich gerade noch Kleinigkeiten.

      F 1 Reply Last reply Reply Quote 0
      • F
        FuXXz2 @dslraser last edited by

        @dslraser
        Ich kenne mich zu wenig aus aber das Script weiß ja durch den Datenpunkt, welche Lichter noch an sind. Kann man das nicht über Telegram irgendwie mit senden.
        Dort kann ich ja einfach /hm-rpc.0.OEQ0653132.1.STATE false eingeben, um zu schalten.
        Gebe ich im Telegram /cmds ein, habe ich sogar Buttons zum schalten der Geräte.
        1.jpg

        Es würde theoretisch schon reichen, wenn das Script bei der Telegram Nachricht ein /cmds mit dran hängt.

        1 Reply Last reply Reply Quote 0
        • Stephan Schleich
          Stephan Schleich @dslraser last edited by Stephan Schleich

          @dslraser sagte in Fenster und andere Geräte zählen opt. Alexa Ansagen:

          @Stephan-Schleich sagte in Fenster und andere Geräte zählen opt. Alexa Ansagen:

          @dslraser in welchem intervall läuft das blockly eigentlich?

          In gar keinem. Es aktualisiert die Werte, sobald sich ein Wert ändert.

          Dann scheint beim aktualisieren ein Problem zu bestehen, hab nur eine drinnen, keine zwei:
          d6b5bfc6-74f5-408b-8986-7050866bca5e-image.png
          56b37e36-a04c-4e57-b703-9aa10d399fee-image.png

          dslraser 1 Reply Last reply Reply Quote 0
          • dslraser
            dslraser Forum Testing Most Active @Stephan Schleich last edited by

            @Stephan-Schleich sagte in Fenster und andere Geräte zählen opt. Alexa Ansagen:

            keine zwei:

            Zeig mal bitte Deine Aufzählung von den Batterien.

            Stephan Schleich 1 Reply Last reply Reply Quote 0
            • Stephan Schleich
              Stephan Schleich @dslraser last edited by

              @dslraser 4dbade1c-b144-4b9e-aaab-901e258d5ebd-image.png

              Ich hab den Objekt baum nun komplett gelöscht, nun passts

              dslraser 1 Reply Last reply Reply Quote 0
              • dslraser
                dslraser Forum Testing Most Active @Stephan Schleich last edited by

                @Stephan-Schleich
                das Blockly zählt nicht Deine alias, sondern die alias die Deiner Aufzählung zugeordnet sind. Manchmal gibt es in den Aufzählungen von "früheren Probierdatenpunkten" aber auch Leichen.

                1 Reply Last reply Reply Quote 0
                • F
                  FuXXz2 @dslraser last edited by

                  @dslraser said in Fenster und andere Geräte zählen opt. Alexa Ansagen:

                  Das könnte man in iQontrol z.B. so nutzen:

                  2020-11-08 10.36.52.jpg

                  Wie bekommst du denn die Schrift in eine kleine Kachel? Wenn ich die schmal und breit mache, verschwindet der Text.

                  dslraser 1 Reply Last reply Reply Quote 0
                  • dslraser
                    dslraser Forum Testing Most Active @FuXXz2 last edited by

                    @FuXXz2 sagte in Fenster und andere Geräte zählen opt. Alexa Ansagen:

                    Wie bekommst du denn die Schrift in eine kleine Kachel? Wenn ich die schmal und breit mache, verschwindet der Text.

                    https://forum.iobroker.net/post/517951

                    Ansonsten erstellt die Version 1.0 diese custom Daten für iQontrol aber auch schon selbst.
                    (vorher alle Datenpunkte löschen, wenn Deine Datenpunkte mit einer älteren Version des Blockly erstellt wurden, dann mit dem Blockly 1.0 neu erstellen lassen)

                    F 1 Reply Last reply Reply Quote 0
                    • F
                      FuXXz2 @dslraser last edited by FuXXz2

                      @dslraser
                      Danke.

                      iQontrol macht es hier einen echt nicht leicht. Ich versuche nun seit Stunden einfach eine Kachel zu haben, die den Status anzeigt.
                      Diese soll immer so groß sein, wie deine Tabelle auch ist.
                      In Jarvis, 1 Klick. In iQontrol ist das glaube ich gar nicht möglich oder? Zumindest sieht das alles kacke aus 🙂
                      Screenshot 2020-11-11 192735.jpg

                      dslraser 2 Replies Last reply Reply Quote 0
                      • dslraser
                        dslraser Forum Testing Most Active @FuXXz2 last edited by

                        @FuXXz2
                        ich habe es so:
                        Beispiel

                        Screenshot_20201111-195617_Chrome.jpg

                        F 1 Reply Last reply Reply Quote 0
                        • dslraser
                          dslraser Forum Testing Most Active @FuXXz2 last edited by dslraser

                          @FuXXz2
                          ich baue gerade eine Version so um, das nur die aktiven Geräte im HTML angezeigt werden. (Vielleicht mache ich dann auch noch die "Smiley" selbst auswählbar bzw. zum rein schreiben in den Datenpunkt. Ich muß nur irgendwie Zeit dafür finden)

                          1 Reply Last reply Reply Quote 0
                          • F
                            FuXXz2 @dslraser last edited by FuXXz2

                            @dslraser
                            das ist eine vergrößerte, also aufgeklappte Kachel oder?
                            Hast du den Datenpunkt im Feld State, URL, HTML, Background_URL oder Background_HTML eingefügt.
                            Total das durcheinander, mit den HTML Features

                            Trotzdem fehlen bei iQontrol dynamische Kacheln. 😞

                            Ne Version mit nur aktiven Geräten wäre cool, stimmt. Gerade bei Lichtern ist die Liste enorm lang.
                            Du meinst die Icons richtig? Ja Material Arts Icons sind mittlerweile ne wirklich solide Basis, finde ich.

                            dslraser 1 Reply Last reply Reply Quote 0
                            • dslraser
                              dslraser Forum Testing Most Active @FuXXz2 last edited by

                              @FuXXz2 sagte in Fenster und andere Geräte zählen opt. Alexa Ansagen:

                              Background_HTML

                              das ist bei mir eine 0,5 × 0,5 Kachel. Mit Klick darauf öffnet sich ein "Textfeld" mit dem HTML Inhalt.

                              Screenshot_20201111-215434_Chrome.jpg

                              Die andere Ansicht ist die vergrößerte auf Vollbild (oben rechts in der Ecke geklickt)

                              Screenshot_20201111-215602_Chrome.jpg

                              Eingerichtet über Wert

                              Screenshot_20201111-215833_Chrome.jpg

                              Screenshot_20201111-215901_Chrome.jpg

                              Screenshot_20201111-215919_Chrome.jpg

                              Screenshot_20201111-215946_Chrome.jpg

                              Screenshot_20201111-220004_Chrome.jpg

                              F 1 Reply Last reply Reply Quote 1
                              • F
                                FuXXz2 @dslraser last edited by FuXXz2

                                @dslraser Ok, vielen Dank. Ich versuche mal mein Glück

                                So hab es zusammen gemogelt. Die Tabellenhöhe stört nur noch ein wenig, sobald wenige Geräte gelistet sind. Dann zieht er die Zellen so groß
                                Screenshot 2020-11-11 225113.jpg

                                dslraser 1 Reply Last reply Reply Quote 0
                                • dslraser
                                  dslraser Forum Testing Most Active @FuXXz2 last edited by

                                  @FuXXz2 sagte in Fenster und andere Geräte zählen opt. Alexa Ansagen:

                                  Die Tabellenhöhe stört nur noch ein wenig, sobald wenige Geräte gelistet sind. Dann zieht er die Zellen so groß

                                  Spiel mal mit den Zellenabständen in den Datenpunkten. Versuche mal kleinere Werte.

                                  F 1 Reply Last reply Reply Quote 0
                                  • F
                                    FuXXz2 @dslraser last edited by

                                    @dslraser die Zellenabstände stehen auf 0
                                    Der Grund für das Strecken ist Table height 400px
                                    hier der Datenpunkt 0_userdata.0.Geraete_zaehlen_optional_Ansagen.Geraete_zaehlen.Tueren_zaehlen.Haus.07_html_Tueren_Liste

                                    <!DOCTYPE html><html lang="de"><head><title>Tueren</title><meta http-equiv="content-type" content="text/html; charset=utf-8"></head><body><table border="2em"  bordercolor="#3776CB" cellspacing="0em" cellpadding="0em" font-size:="2em" style="color:black ; font-family:apple ; background:rgba(255,255,255,0);" width="100%" height="400"><tbody><tr style="color:black; font-family:apple; font-weight: bold; font-size:1.2em"><td>Tueren Haus&ensp;&ensp;&ensp;</td><td>Status</td></tr><tr><td><span style="color:black;font-size:1.1em">Esszimmer Terrasse</span><td><span style="color:black;font-size:1.1em">geschlossen </span>✅<tr><td><span style="color:black;font-size:1.1em">Keller Tür</span><td><span style="color:black;font-size:1.1em">geschlossen </span>✅</table></body>
                                    

                                    Aber dafür gibt es keine Einstellung oder?

                                    dslraser 2 Replies Last reply Reply Quote 0
                                    • dslraser
                                      dslraser Forum Testing Most Active @FuXXz2 last edited by

                                      @FuXXz2
                                      in der nächsten Version gibt es den Datenpunkt auch. (ich bin die letzten Tage schon dabei die ganze Ausgabe responsiv zu gestalten, mal sehen wann das fertig wird. Jetzt am WE komme ich jedenfalls zu nix)
                                      Du kannst diese Einstellung im Blockly auch selbst verändern, dazu mußt Du die eine Funktion öffen, ich versuche gleich einen Screenshot zu machen. Ich bin aber nur am Handy.

                                      1 Reply Last reply Reply Quote 0
                                      • dslraser
                                        dslraser Forum Testing Most Active @FuXXz2 last edited by

                                        @FuXXz2 sagte in Fenster und andere Geräte zählen opt. Alexa Ansagen:

                                        Aber dafür gibt es keine Einstellung oder?

                                        hier findest Du das (jeweils die Funktion unten rechts)

                                        Screenshot_20201114-141801_Chrome.jpg

                                        Hier wird das html zusammengebaut

                                        Screenshot_20201114-142029_Chrome.jpg

                                        F 1 Reply Last reply Reply Quote 1
                                        • F
                                          FuXXz2 @dslraser last edited by

                                          @dslraser Ok hab es.
                                          Für die Lichter habe ich testweise mal eine Variabel eingefügt, klappt alles.
                                          Aber wenn du eh dabei bist, das zu integrieren, belasse ich es vorerst dabei den Wert 400 manuell zu löschen.

                                          1 Reply Last reply Reply Quote 0
                                          • S
                                            sandro_gera @dslraser last edited by sandro_gera

                                            @dslraser

                                            Hallo ich habe gerade nach dem folgenden Alias Skript meine Aliasse erstellen wollen.

                                            /**************************************************************
                                            Github - https://github.com/xCruziX/ioBroker-Creating-Alias/blob/master/CreateAlias.js
                                               			Changelog
                                            Version 1.1.4
                                            - fix error by using bCreateAliasPath and bConvertExistingPath (has no target 9/Error creating alias-path)
                                            **************************************************************/
                                             
                                            /**************************************
                                               	Flags /
                                               	Variablen
                                            ***************************************/
                                             
                                            // typeAlias = 'boolean'; // oder 'number'
                                            // read = "val == 'Ein' ? true : false"; // Erkennung "Aus" --> false erfolgt automatisch  
                                            // write = "val ? 'Ein' : 'Aus'";
                                            // nameAlias = 'Licht Haustür';
                                            // role = 'switch';
                                            // desc = 'per Script erstellt';
                                            // min = 0; // nur Zahlen
                                            // max = 100; // nur Zahlen
                                            // unit = '%'; // nur für Zahlen
                                            // states = {0: 'Aus', 1: 'Auto', 2: 'Ein'}; // Zahlen (Multistate) oder Logikwert (z.B. Aus/Ein)
                                             
                                             
                                            let bCreateAliasPath = true;  // If this flag is true, each folder is created seperately so rooms and functions can be assigned.
                                             
                                            /*
                                            Requirements: bCreateAliasPath == true
                                            If this flag is true, existing folders in the path will be converted so rooms and functions can be assigned.
                                            */
                                            let bConvertExistingPath = false;
                                             
                                            /***************************************
                                               	Don't change anything from here /
                                               	Ab hier nichts verändern
                                            ***************************************/
                                             
                                            let arEnum = [];
                                            let arId = [];
                                            let timeoutAssignEnum;
                                            var callbackAlias = undefined;
                                            function createAlias(idSrc, idDst,raum, gewerk,typeAlias, read, write, nameAlias, role, desc, min, max, unit, states) {
                                             if(!idDst.includes('alias.0.'))
                                                 idDst = 'alias.0.' + idDst;
                                             if(!existsObject(idSrc))
                                             {
                                                 log('Source-Id ' + idSrc +' does not exists.','warn');
                                                 return;
                                             }
                                             
                                             // Create the object Path for alias id, 
                                             // so you can assign rooms and function to the parents
                                             var createAliasPath = (id) => {
                                                  if(bCreateAliasPath){
                                                       let lisMergedIds = [];
                                                       let mergedId = 'alias.0';
                                                       id = id.replace(mergedId + '.', ''); // Remove prefix alias so it will not be changed
                                                       let split = id.split('.'); 
                                                       for(let i=0;i<split.length-1;i++){
                                                           mergedId += '.' + split[i];
                                                           lisMergedIds.push(mergedId);
                                                       }
                                                       
                                                       function path(){
                                                           if(lisMergedIds.length == 0) {
                                                               alias();
                                                               return;
                                                           }
                                                           let tmpId = lisMergedIds[0];
                                                           lisMergedIds.splice(0,1); // remove element
                                                           if(!existsObject(tmpId) || bConvertExistingPath){ // not exists
                                                               let obj;
                                                               if(existsObject(tmpId))
                                                                   obj = getObject(tmpId);
                                                               else
                                                                   obj = {};
                                             
                                                               let bApply = false;
                                                               if(obj != undefined){
                                                                   if(obj.type == undefined || String(obj.type) != 'meta'){
                                                                       obj.type = 'meta';
                                                                       bApply = true;
                                                                   }
                                                                   if(obj.common == undefined){
                                                                       obj.common = {};
                                                                       obj.common.type = 'meta.folder';
                                                                       bApply = true;
                                                                   }
                                                                   else if(obj.common.type == undefined || String(obj.common.type) != 'meta.folder'){
                                                                       obj.common.type = 'meta.folder';
                                                                       bApply = true;
                                                                   }
                                                                   if(obj.native == undefined){
                                                                       obj.native = {};
                                                                       bApply = true;
                                                                   }
                                                               }
                                                               else{
                                                                   path();
                                                                   log('Object is undefined');
                                                                   return;
                                                               }
                                                               
                                             
                                                               if(bApply){
                                                                   setObject(tmpId, obj, (err) =>{
                                                                   if(!err){
                                                                       log('Created Alias-Path ' + tmpId);
                                                                       path();
                                                                   }
                                                                   else
                                                                       log('Error creating alias-path','error');
                                                               });
                                                               }
                                                               else
                                                                   path();
                                                               
                                                           }
                                                       }
                                                       path();
                                                  }
                                                  else
                                                    alias();
                                             }
                                             
                                             
                                             function alias(){
                                                 // Create alias object
                                                 
                                                   if(!existsObject(idDst)){
                                                       let obj = {};
                                                       obj.type = 'state';
                                                       obj.common = getObject(idSrc).common;
                                                       obj.common.alias = {};
                                                       obj.common.alias.id = idSrc;
                                                       if(typeAlias !== undefined) 
                                                           obj.common.type = typeAlias;
                                                       if(obj.common.read !== undefined) 
                                                           obj.common.alias.read = read;
                                                       if(obj.common.write !== undefined) 
                                                           obj.common.alias.write = write;
                                                       if(nameAlias !== undefined) 
                                                           obj.common.name = nameAlias;
                                                       if(role !== undefined) 
                                                           obj.common.role = role;
                                                       if(desc !== undefined) 
                                                           obj.common.desc = desc;
                                                       if(min !== undefined) 
                                                           obj.common.min = min;
                                                       if(max !== undefined) 
                                                           obj.common.max = max;
                                                       if(unit !== undefined) 
                                                           obj.common.unit = unit;
                                                       if(states !== undefined) 
                                                           obj.common.states = states;
                                             
                                                       obj.native = {};
                                                       obj.common.custom = []; // Damit die Zuordnung zu iQontrol, Sql etc. nicht übernommen wird
                                                       log('Created Alias-State ' + idDst);
                                                       setObject(idDst, obj,(err) =>{ 
                                                           if(!err)
                                                               startAttach(); 
                                                           else
                                                               log('Error creating-alias','error');
                                                       });
                                                   }
                                                   else
                                                       startAttach();
                                             }
                                             
                                             
                                             // Save ID and Enum (room or function)
                                             var attach = (id, enu,value) => {
                                                 if(id.length == 0){
                                                     log('ID has lenght 0, can not attach to enum','warn');
                                                     return;
                                                 }
                                                 if(value.length == 0){
                                                     log('Value has lenght 0','warn');
                                                     return;
                                                 }
                                               
                                                 let sEnuId = 'enum.' + enu + '.' + value;
                                                 if(enu.length > 0 && existsObject(sEnuId)) 
                                                 {
                                                     let obj = getObject(sEnuId)
                                                     let members = obj.common.members;
                                                     if(!members.includes(id)){
                                                         arEnum.push(sEnuId);
                                                         arId.push(id);
                                                     }
                                                 }
                                                 else
                                              	      log('Can not find enum ' + sEnuId,'warn');
                                             }
                                             
                                            function startAttach(){
                                               let bRoom = raum !== undefined && raum.length > 0;
                                               let bGewerk = gewerk !== undefined && gewerk.length > 0;
                                               
                                               if(bRoom)
                                                   attach(idDst,'rooms',raum);
                                               if(bGewerk)
                                                   attach(idDst,'functions',gewerk);
                                               if(bRoom || bGewerk){
                                                       if(timeoutAssignEnum){
                                                           clearTimeout(timeoutAssignEnum);
                                                           timeoutAssignEnum = null;
                                                       }
                                                       timeoutAssignEnum = setTimeout(finishScript,100);
                                               }
                                            }
                                             
                                             createAliasPath(idDst);
                                            }
                                             
                                            function finishScript(){
                                               assignEnums();
                                            }
                                             
                                            // Add the saved IDs to the rooms/functions
                                            function assignEnums(){
                                            if(arEnum.length == 0 || arId.length == 0){
                                                 return;
                                            }
                                             
                                            if(arEnum.length != arId.length){
                                                 log('Arrays have different size','error');
                                                 return;
                                            }
                                            let mapEnumId = new Map();
                                             
                                            for(let i=0;i < arEnum.length; i++){
                                                let enu = arEnum[i];
                                                let id = arId[i];
                                                if(existsObject(id)){
                                               	 let obj = getObject(enu)
                                               	 let members;
                                               	 if(!mapEnumId.has(enu)){
                                               		 members = obj.common.members;
                                               		 mapEnumId.set(enu,members);
                                               	 }
                                               	 else
                                               		 members = mapEnumId.get(enu);    
                                               	 if(!members.includes(id)){
                                               		  log("Adding " + id + " to " + enu);
                                               		  members.push(id);
                                               	 }	      
                                                }
                                                else
                                                    log('Can not find Alias ' + id,'error');
                                            }
                                             
                                             function setMembers(members,enu,map){
                                                 let obj = getObject(enu);
                                                 obj.common.members = members;
                                                 setObject(enu,obj);
                                             }
                                             mapEnumId.forEach(setMembers);
                                            }
                                             
                                            /**********************************************************
                                               	END /
                                               	ENDE
                                            **********************************************************/
                                             
                                            //////////////////////////////
                                            //  Fenster
                                            //////////////////////////////
                                            //2 x Fenstersensoren HMIP
                                            //einfache HMIP Fenstersensoren über rpc-Adapter in function fenster_alias
                                            //{0: 'geschlossen', 1: 'geöffnet'}
                                            //createAlias('hm-rpc.0.xxx.1.STATE'/*Wohnzimmer Fenster links STATE*/, 'Fenster.Wohnzimmer_Fenster_links', undefined, 'fenster_alias', 'number', undefined, undefined, 'Wohnzimmer links', 'window.value', 'per Script erstellt', 0, 1, '',{0: 'geschlossen', 1: 'geöffnet'})
                                            //createAlias('hm-rpc.0.xxx.1.STATE'/*Küche Fenster links STATE*/, 'Fenster.Kueche_Fenster_links', undefined, 'fenster_alias', 'number',undefined, undefined, 'Küche links', 'window.value', 'per Script erstellt', 0, 1, '',{0: 'geschlossen', 1: 'geöffnet'})
                                             
                                            //2 x Fenstersensoren HM
                                            //einfache HM Fenstersensoren über rpc-Adapter in function fenster_alias
                                            //{false: 'geschlossen', true: 'geöffnet'}
                                            createAlias('deconz.0.Sensors.7.open'/*Fensterkontakt-Küche open*/, 'Fenster.Fensterkontakt_Kueche', undefined, 'fenster_alias', 'boolean', undefined, undefined, 'Fensterkontakt-Küche', 'window.value', 'per Script erstellt', undefined, undefined, undefined, {false: 'geschlossen', true: 'geöffnet'})
                                            //createAlias('hm-rpc.0.xxx.1.STATE'/*Küche Fenster links STATE*/, 'Fenster.Kueche_Fenster_links', undefined, 'fenster_alias', 'boolean',undefined, undefined, 'Küche links', 'window.value', 'per Script erstellt', undefined, undefined, undefined, {false: 'geschlossen', true: 'geöffnet'})
                                             
                                             
                                            //2 x Fensterdrehgriffe HMIP
                                            //HMIP Fensterdrehgriffe über rpc-Adapter in function fenster_alias
                                            //{0: 'geschlossen', 1: 'gekippt', 2: 'geöffnet'}
                                            //createAlias('hm-rpc.0.xxx.1.STATE'/*Keller W-Baum Fenster STATE*/, 'Fenster.Keller_Weihnachtsbaum_Fenster', undefined, 'fenster_alias', 'number',undefined, undefined, 'Keller W Baum', 'window.value', 'per Script erstellt', 0, 2, '',{0: 'geschlossen', 1: 'gekippt', 2: 'geöffnet'})
                                            //createAlias('hm-rpc.0.xxx.1.STATE'/*Keller Wohnzimmer Fenster mitte STATE*/, 'Fenster.Keller_Wohnzimmer_Fenster_mitte', undefined, 'fenster_alias', 'number',undefined, undefined, 'Keller Wohnzimmer mitte', 'window.value', 'per Script erstellt', 0, 2, '',{0: 'geschlossen', 1: 'gekippt', 2: 'geöffnet'})
                                             
                                            //2 x Fenster(Türen) Sensoren HMIP
                                            //einfache HMIP Fenstersensoren über rpc-Adapter in function tueren_alias
                                            //{0: 'geschlossen', 1: 'geöffnet'}
                                            //createAlias('hm-rpc.0.xxx.1.STATE'/*Wohnzimmer Terrassentür STATE*/, 'Tueren.Terrassentuer', undefined, 'tueren_alias', 'number',undefined, undefined, 'Terrassentür', 'window.value', 'per Script erstellt', 0, 1, '',{0: 'geschlossen', 1: 'geöffnet'})
                                            //createAlias('hm-rpc.0.xxx.1.STATE'/*Haustür STATE*/, 'Tueren.Haustuer', undefined, 'tueren_alias', 'number',undefined, undefined, 'Haustür', 'window.value', 'per Script erstellt', 0, 1, '',{0: 'geschlossen', 1: 'geöffnet'})
                                             
                                            //////////////////////////////
                                            //  Steckdosen
                                            //////////////////////////////
                                            //2 x Steckdosen
                                            //HMIP Steckdosen über rpc-Adapter in function steckdosen_alias
                                            //{false: 'aus', true: 'an'}
                                            createAlias('deconz.0.Lights.14.on'/*Steckdosenleiste-Abstellkammer on*/, 'Steckdosen.Abstellkammer.Steckdosenleiste_Abstellkammer', undefined, 'steckdosen_alias', 'boolean', undefined, undefined, 'Steckdosenleiste-Abstellkammer', 'switch', 'per Script erstellt', undefined, undefined, undefined, {false: 'aus', true: 'an'})
                                            createAlias('deconz.0.Lights.15.on'/*Computer-1-Arbeitszimmer on*/, 'Steckdosen.Arbeitszimmer.Computer_1_Arbeitszimmer', undefined, 'steckdosen_alias', 'boolean', undefined, undefined, 'Computer-1-Arbeitszimmer', 'switch', 'per Script erstellt', undefined, undefined, undefined, {false: 'aus', true: 'an'})
                                            createAlias('deconz.0.Lights.33.on'/*Computer-2-Arbeitszimmer on*/, 'Steckdosen.Arbeitszimmer.Computer_2_Arbeitszimmer', undefined, 'steckdosen_alias', 'boolean', undefined, undefined, 'Computer_2_Arbeitszimmer', 'switch', 'per Script erstellt', undefined, undefined, undefined, {false: 'aus', true: 'an'})
                                            createAlias('deconz.0.Lights.31.on'/*Dunstabzugshaube-Küche on*/, 'Steckdosen.Kueche.Dunstabzugshaube_Kueche', undefined, 'steckdosen_alias', 'boolean', undefined, undefined, 'Dunstabzugshaube-Küche', 'switch', 'per Script erstellt', undefined, undefined, undefined, {false: 'aus', true: 'an'})
                                            createAlias('deconz.0.Lights.13.on'/*Kaffeemaschine-Küche on*/, 'Steckdosen.Kueche.Kaffeemaschine_Kueche', undefined, 'steckdosen_alias', 'boolean', undefined, undefined, 'Kaffeemaschine-Küche', 'switch', 'per Script erstellt', undefined, undefined, undefined, {false: 'aus', true: 'an'})
                                            createAlias('deconz.0.Lights.12.on'/*Fernseher-Küche on*/, 'Steckdosen.Kueche.Fernseher-Kueche', undefined, 'steckdosen_alias', 'boolean', undefined, undefined, 'Fernseher-Küche', 'switch', 'per Script erstellt', undefined, undefined, undefined, {false: 'aus', true: 'an'})
                                            createAlias('deconz.0.Lights.7.on'/*Fernseher-Esszimmer on*/, 'Steckdosen.Esszimmer.Fernseher_Esszimmer', undefined, 'steckdosen_alias', 'boolean', undefined, undefined, 'Fernseher-Esszimmer', 'switch', 'per Script erstellt', undefined, undefined, undefined, {false: 'aus', true: 'an'})
                                            createAlias('deconz.0.Lights.10.on'/*Media-Wohnzimmer on*/, 'Steckdosen.Wohnzimmer.Media_Wohnzimmer', undefined, 'steckdosen_alias', 'boolean', undefined, undefined, 'Media-Wohnzimmer', 'switch', 'per Script erstellt', undefined, undefined, undefined, {false: 'aus', true: 'an'})
                                            createAlias('deconz.0.Lights.8.on'/*Netzteil-Laptop on*/, 'Steckdosen.Wohnzimmer.Netzteil_Laptop', undefined, 'steckdosen_alias', 'boolean', undefined, undefined, 'Netzteil-Laptop', 'switch', 'per Script erstellt', undefined, undefined, undefined, {false: 'aus', true: 'an'})
                                            createAlias('deconz.0.Lights.11.on'/*Fernseher-Schlafzimmer on*/, 'Steckdosen.Schlafzimmer.Fernseher_Schlafzimmer', undefined, 'steckdosen_alias', 'boolean', undefined, undefined, 'Fernseher-Schlafzimmer', 'switch', 'per Script erstellt', undefined, undefined, undefined, {false: 'aus', true: 'an'})
                                            createAlias('deconz.0.Lights.30.on'/*Pumpe-Schuppen on*/, 'Steckdosen.Schuppen.Pumpe_Schuppen', undefined, 'steckdosen_alias', 'boolean', undefined, undefined, 'Pumpe-Schuppen', 'switch', 'per Script erstellt', undefined, undefined, undefined, {false: 'aus', true: 'an'})
                                            
                                            //////////////////////////////
                                            //  Bewegungsmelder
                                            //////////////////////////////
                                            //2 x Bewegungsmelder und 2 x Präsenzmelder und 1 x Erschütterungssensor
                                            //HMIP Bewegungsmelder und Präsenzmelder über rpc-Adapter in function bewegungsmelder_alias
                                            //{false: 'inaktiv', true: 'aktiv'}
                                            //createAlias('hm-rpc.0.xxx.1.MOTION'/*Bewegungsmelder Weihnachtsbaumkeller MOTION*/, 'Bewegungsmelder.Bewegungsmelder_Weihnachtsbaumkeller', undefined, 'bewegungsmelder_alias', 'boolean', undefined, undefined, 'W Baum Keller', 'sensor.motion', 'per Script erstellt', undefined, undefined, undefined, {false: 'inaktiv', true: 'aktiv'})
                                            //createAlias('hm-rpc.0.xxx.1.MOTION'/*Bewegungsmelder Heizungskeller MOTION*/, 'Bewegungsmelder.Bewegungsmelder_Heizungskeller', undefined, 'bewegungsmelder_alias', 'boolean', undefined, undefined, 'Heizungskeller', 'sensor.motion', 'per Script erstellt', undefined, undefined, undefined, {false: 'inaktiv', true: 'aktiv'})
                                            //ab hier 2 x Präsenzmelder
                                            //createAlias('hm-rpc.0.xxx.1.PRESENCE_DETECTION_STATE'/*Präsenzmelder Badezimmer PRESENCE DETECTION STATE*/, 'Bewegungsmelder.Praesenzmelder_Badezimmer', undefined, 'bewegungsmelder_alias', 'boolean', undefined, undefined, 'Badezimmer', 'sensor.motion', 'per Script erstellt', undefined, undefined, undefined, {false: 'inaktiv', true: 'aktiv'})
                                            //createAlias('hm-rpc.0.xxx.1.PRESENCE_DETECTION_STATE'/*Präsenzmelder Dusche PRESENCE DETECTION STATE*/, 'Bewegungsmelder.Praesenzmelder_Dusche', undefined, 'bewegungsmelder_alias', 'boolean', undefined, undefined, 'Dusche', 'sensor.motion', 'per Script erstellt', undefined, undefined, undefined, {false: 'inaktiv', true: 'aktiv'})
                                            //ab hier 1 x Erschütterungssensor
                                            //createAlias('hm-rpc.0.xxx.1.MOTION'/*Briefkasten MOTION*/, 'Bewegungsmelder.Praesenzmelder_Briefkasten', undefined, 'bewegungsmelder_alias', 'boolean', undefined, undefined, 'Briefkasten', 'sensor.motion', 'per Script erstellt', undefined, undefined, undefined, {false: 'inaktiv', true: 'aktiv'})
                                             
                                            //////////////////////////////
                                            //  Licht
                                            //////////////////////////////
                                            //2 x HUE und 5 x HMIP Licht über HUE und rpc-Adapter in function licht_alias
                                            //{false: 'aus', true: 'an'}
                                            createAlias('deconz.0.Lights.29.on'/*Deckenlampe-Arbeitszimmer on*/, 'Licht.Arbeitszimmer.Deckenlampe_Arbeitszimmer', undefined, 'licht_alias', 'boolean', undefined, undefined, 'Deckenlampe-Arbeitszimmer', 'switch.light', 'per Script erstellt', undefined, undefined, undefined, {false: 'aus', true: 'an'})
                                            createAlias('deconz.0.Lights.28.on'/*Wandlampe-Arbeitszimmer on*/, 'Licht.Arbeitszimmer.Wandlampe_Arbeitszimmer', undefined, 'licht_alias', 'boolean', undefined, undefined, 'Wandlampe-Arbeitszimmer', 'switch.light', 'per Script erstellt', undefined, undefined, undefined, {false: 'aus', true: 'an'})
                                            createAlias('deconz.0.Lights.27.on'/*Deckenlampe-Badezimmer on*/, 'Licht.Badezimmer.Deckenlampe_Badezimmer', undefined, 'licht_alias', 'boolean', undefined, undefined, 'Deckenlampe-Badezimmer', 'switch.light', 'per Script erstellt', undefined, undefined, undefined, {false: 'aus', true: 'an'})
                                            createAlias('deconz.0.Lights.17.on'/*Deckenlampe-Flur on*/, 'Licht.Flur.Deckenlampe_Flur', undefined, 'licht_alias', 'boolean', undefined, undefined, 'Deckenlampe-Flur', 'switch.light', 'per Script erstellt', undefined, undefined, undefined, {false: 'aus', true: 'an'})
                                            createAlias('deconz.0.Lights.6.on'/*Lampe-Verteilung on*/, 'Licht.Flur.Lampe_Verteilung', undefined, 'licht_alias', 'boolean', undefined, undefined, 'Lampe-Verteilung', 'switch.light', 'per Script erstellt', undefined, undefined, undefined, {false: 'aus', true: 'an'})
                                            createAlias('sonoff.0.Shelly-Serienschalter-Bad.POWER1'/*Shelly-Serienschalter-Bad POWER1*/, 'Licht.Bad.Spot_Bad', undefined, 'licht_alias', 'boolean', undefined, undefined, 'Spot-Bad', 'switch.light', 'per Script erstellt', undefined, undefined, undefined, {false: 'aus', true: 'an'})
                                            createAlias('sonoff.0.Shelly-Serienschalter-Bad.POWER2'/*Shelly-Serienschalter-Bad POWER2*/, 'Licht.Bad.Sternenhimmel_Bad', undefined, 'licht_alias', 'boolean', undefined, undefined, 'Sternenhimmel-Bad', 'switch.light', 'per Script erstellt', undefined, undefined, undefined, {false: 'aus', true: 'an'})
                                            createAlias('deconz.0.Lights.20.on'/*Schrank-1-Bad on*/, 'Licht.Bad.Schrank_1_Bad', undefined, 'licht_alias', 'boolean', undefined, undefined, 'Schrank-1-Bad', 'switch.light', 'per Script erstellt', undefined, undefined, undefined, {false: 'aus', true: 'an'})
                                            createAlias('deconz.0.Lights.19.on'/*Schrank-2-Bad on*/, 'Licht.Bad.Schrank_2_Bad', undefined, 'licht_alias', 'boolean', undefined, undefined, 'Schrank-2-Bad', 'switch.light', 'per Script erstellt', undefined, undefined, undefined, {false: 'aus', true: 'an'})
                                            createAlias('sonoff.0.Sonoff-Serienschalter-Küche.POWER1'/*Sonoff-Serienschalter-Küche POWER1*/, 'Licht.Kueche.Deckenlampe_Kueche', undefined, 'licht_alias', 'boolean', undefined, undefined, 'Deckenlampe-Küche', 'switch.light', 'per Script erstellt', undefined, undefined, undefined, {false: 'aus', true: 'an'})
                                            createAlias('sonoff.0.Sonoff-Serienschalter-Küche.POWER2'/*Sonoff-Serienschalter-Küche POWER2*/, 'Licht.Kueche.Lampe_1_Kueche', undefined, 'licht_alias', 'boolean', undefined, undefined, 'Lampe-1-Küche', 'switch.light', 'per Script erstellt', undefined, undefined, undefined, {false: 'aus', true: 'an'})
                                            createAlias('deconz.0.Lights.21.on'/*Spüle-Küche on*/, 'Licht.Kueche.Spuele_Kueche', undefined, 'licht_alias', 'boolean', undefined, undefined, 'Spüle-Küche', 'switch.light', 'per Script erstellt', undefined, undefined, undefined, {false: 'aus', true: 'an'})
                                            createAlias('deconz.0.Lights.22.on'/*Sitzecke-Küche on*/, 'Licht.Kueche.Sitzecke_Küche', undefined, 'licht_alias', 'boolean', undefined, undefined, 'Sitzecke-Küche', 'switch.light', 'per Script erstellt', undefined, undefined, undefined, {false: 'aus', true: 'an'})
                                            createAlias('sonoff.0.Sonoff-Serienschalter-Esszimmer.POWER1'/*Sonoff-Serienschalter-Esszimmer POWER1*/, 'Licht.Esszimmer.Deckenlampe_1_Esszimmer', undefined, 'licht_alias', 'boolean', undefined, undefined, 'Deckenlampe-1-Esszimmer', 'switch.light', 'per Script erstellt', undefined, undefined, undefined, {false: 'aus', true: 'an'})
                                            createAlias('sonoff.0.Sonoff-Serienschalter-Esszimmer.POWER2'/*Sonoff-Serienschalter-Esszimmer POWER2*/, 'Licht.Esszimmer.Deckenlampe_2_Esszimmer', undefined, 'licht_alias', 'boolean', undefined, undefined, 'Deckenlampe-2-Esszimmer', 'switch.light', 'per Script erstellt', undefined, undefined, undefined, {false: 'aus', true: 'an'})
                                            createAlias('deconz.0.Lights.23.on'/*Schrank-1-Esszimmer on*/, 'Licht.Esszimmer.Schrank_1_Esszimmer', undefined, 'licht_alias', 'boolean', undefined, undefined, 'Schrank-1-Esszimmer', 'switch.light', 'per Script erstellt', undefined, undefined, undefined, {false: 'aus', true: 'an'})
                                            createAlias('deconz.0.Lights.2.on'/*Schrank-2-Esszimmer on*/, 'Licht.Esszimmer.Schrank_2_Esszimmer', undefined, 'licht_alias', 'boolean', undefined, undefined, 'Schrank-2-Esszimmer', 'switch.light', 'per Script erstellt', undefined, undefined, undefined, {false: 'aus', true: 'an'})
                                            createAlias('deconz.0.Lights.24.on'/*Deckenlampe-Wohnzimmer on*/, 'Licht.Wohnzimmer.Deckenlampe_Wohnzimmer', undefined, 'licht_alias', 'boolean', undefined, undefined, 'Deckenlampe-Wohnzimmer', 'switch.light', 'per Script erstellt', undefined, undefined, undefined, {false: 'aus', true: 'an'})
                                            createAlias('deconz.0.Lights.3.on'/*Wandlampe-Wohnzimmer on*/, 'Licht.Wohnzimmer.Wandlampe_Wohnzimmer', undefined, 'licht_alias', 'boolean', undefined, undefined, 'Wandlampe-Wohnzimmer, 'switch.light', 'per Script erstellt', undefined, undefined, undefined, {false: 'aus', true: 'an'})
                                            createAlias('deconz.0.Lights.9.on'/*Deckenfluter-Wohnzimmer on*/, 'Licht.Wohnzimmer.Deckenfluter_Wohnzimmer', undefined, 'licht_alias', 'boolean', undefined, undefined, 'Deckenfluter-Wohnzimmer', 'switch.light', 'per Script erstellt', undefined, undefined, undefined, {false: 'aus', true: 'an'})
                                            createAlias('deconz.0.Lights.1.on'/*Tischlampe-Wohnzimmer on*/, 'Licht.Wohnzimmer.Tischlampe_Wohnzimmer, undefined, 'licht_alias', 'boolean', undefined, undefined, 'Tischlampe-Wohnzimmer', 'switch.light', 'per Script erstellt', undefined, undefined, undefined, {false: 'aus', true: 'an'})
                                            createAlias('deconz.0.Lights.5.on'/*Deckenlampe-1-Schlafzimmer on*/, 'Licht.Schlafzimmer.Deckenlampe_1_Schlafzimmer', undefined, 'licht_alias', 'boolean', undefined, undefined, 'Deckenlampe-1-Schlafzimmer', 'switch.light', 'per Script erstellt', undefined, undefined, undefined, {false: 'aus', true: 'an'})
                                            createAlias('deconz.0.Lights.26.on'/*Deckenlampe-2-Schlafzimmer on*/, 'Licht.Schlafzimmer.Deckenlampe_2_Schlafzimmer', undefined, 'licht_alias', 'boolean', undefined, undefined, 'Deckenlampe-2-Schlafzimmer', 'switch.light', 'per Script erstellt', undefined, undefined, undefined, {false: 'aus', true: 'an'})
                                            createAlias('deconz.0.Lights.25.on'/*Deckenlampe-3-Schlafzimmer on*/, 'Licht.Schlafzimmer.Deckenlampe_3_Schlafzimmer', undefined, 'licht_alias', 'boolean', undefined, undefined, 'Deckenlampe-3-Schlafzimmer', 'switch.light', 'per Script erstellt', undefined, undefined, undefined, {false: 'aus', true: 'an'})
                                            createAlias('sonoff.0.Lampe-Kellertreppe.POWER'/*Lampe-Kellertreppe POWER*/, 'Licht.Keller.Lampe_Kellertreppe', undefined, 'licht_alias', 'boolean', undefined, undefined, 'Lampe-Kellertreppe', 'switch.light', 'per Script erstellt', undefined, undefined, undefined, {false: 'aus', true: 'an'})
                                            createAlias('deconz.0.Lights.18.on'/*Lampen-Schuppen on*/, 'Licht.Schuppen.Lampen-Schuppen', undefined, 'licht_alias', 'boolean', undefined, undefined, 'Lampen-Schuppen', 'switch.light', 'per Script erstellt', undefined, undefined, undefined, {false: 'aus', true: 'an'})
                                            
                                            //ab hier 2 x Licht HMIP Steckdosen über rpc Adapter
                                            //createAlias('hm-rpc.0.xxx.3.STATE'/*Kugellampe STATE*/, 'Licht.Wohnzimmer_Kugel_Licht', undefined, 'licht_alias', 'boolean', undefined, undefined, 'Kugellicht', 'switch.light', 'per Script erstellt', undefined, undefined, undefined, {false: 'aus', true: 'an'})
                                            //createAlias('hm-rpc.0.xxx.3.STATE'/*Gäste WC Licht STATE*/, 'Licht.Gaeste_WC_Licht', undefined, 'licht_alias', 'boolean', undefined, undefined, 'Gäste WC Licht', 'switch.light', 'per Script erstellt', undefined, undefined, undefined, {false: 'aus', true: 'an'})
                                             
                                            //////////////////////////////
                                            //  Temperaturen
                                            //////////////////////////////
                                            //HMIP 2 x Temperaturen über rpc-Adapter in function temperaturen_alias
                                            createAlias('hmip.0.devices.3014F711A0000A1A49A53E9E.channels.1.valveActualTemperature'/*valveActualTemperature*/, 'Temperaturen.Abstellkammer.Temperatur_Abstellkammer', undefined, 'temperaturen_alias', 'number', 'Math.round(val * 10) / 10', undefined, 'Abstellkammer', 'value.temperature', 'per Script erstellt', undefined, undefined, '°C', undefined)
                                            createAlias('hmip.0.devices.3014F711A0000A1A49A533E3.channels.1.valveActualTemperature'/*valveActualTemperature*/, 'Temperaturen.Arbeitszimmer.Temperatur_Arbeitszimmer', undefined, 'temperaturen_alias', 'number', 'Math.round(val * 10) / 10', undefined, 'Arbeitszimmer', 'value.temperature', 'per Script erstellt', undefined, undefined, '°C', undefined)
                                            createAlias('hmip.0.devices.3014F711A0000A1A49A533DC.channels.1.valveActualTemperature'/*valveActualTemperature*/, 'Temperaturen.Badezimmer.Temperatur_Badezimmer', undefined, 'temperaturen_alias', 'number', 'Math.round(val * 10) / 10', undefined, 'Badezimmer', 'value.temperature', 'per Script erstellt', undefined, undefined, '°C', undefined)
                                            createAlias('hmip.0.devices.3014F711A0000A1A49A53F7A.channels.1.valveActualTemperature'/*valveActualTemperature*/, 'Temperaturen.Bad.Temperatur_Bad', undefined, 'temperaturen_alias', 'number', 'Math.round(val * 10) / 10', undefined, 'Bad', 'value.temperature', 'per Script erstellt', undefined, undefined, '°C', undefined)
                                            createAlias('hmip.0.devices.3014F711A0000A1A49A536FD.channels.1.valveActualTemperature'/*valveActualTemperature*/, 'Temperaturen.Kueche.Temperatur_Kueche', undefined, 'temperaturen_alias', 'number', 'Math.round(val * 10) / 10', undefined, 'Küche', 'value.temperature', 'per Script erstellt', undefined, undefined, '°C', undefined)
                                            createAlias('hmip.0.devices.3014F711A0000A1A49A534C1.channels.1.valveActualTemperature'/*valveActualTemperature*/, 'Temperaturen.Esszimmer.Temperatur_Esszimmer_1', undefined, 'temperaturen_alias', 'number', 'Math.round(val * 10) / 10', undefined, 'Esszimmer-1', 'value.temperature', 'per Script erstellt', undefined, undefined, '°C', undefined)
                                            createAlias('hmip.0.devices.3014F711A0000A1A49A545DA.channels.1.valveActualTemperature'/*valveActualTemperature*/, 'Temperaturen.Esszimmer.Temperatur_Esszimmer_2', undefined, 'temperaturen_alias', 'number', 'Math.round(val * 10) / 10', undefined, 'Esszimmer-2', 'value.temperature', 'per Script erstellt', undefined, undefined, '°C', undefined)
                                            createAlias('hmip.0.devices.3014F711A0000A1A49A53500.channels.1.valveActualTemperature'/*valveActualTemperature*/, 'Temperaturen.Wohnzimmer.Temperatur_Wohnzimmer', undefined, 'temperaturen_alias', 'number', 'Math.round(val * 10) / 10', undefined, 'Wohnzimmer', 'value.temperature', 'per Script erstellt', undefined, undefined, '°C', undefined)
                                            createAlias('hmip.0.devices.3014F711A0000A1A49A54635.channels.1.valveActualTemperature'/*valveActualTemperature*/, 'Temperaturen.Schlafzimmer.Temperatur_Schlafzimmer_1', undefined, 'temperaturen_alias', 'number', 'Math.round(val * 10) / 10', undefined, 'Schlafzimmer-1', 'value.temperature', 'per Script erstellt', undefined, undefined, '°C', undefined)
                                            createAlias('hmip.0.devices.3014F711A0000A1A49A533DB.channels.1.valveActualTemperature'/*valveActualTemperature*/, 'Temperaturen.Schlafzimmer.Temperatur_Schlafzimmer_2', undefined, 'temperaturen_alias', 'number', 'Math.round(val * 10) / 10', undefined, 'Schlafzimmer-2', 'value.temperature', 'per Script erstellt', undefined, undefined, '°C', undefined)
                                            
                                            //////////////////////////////
                                            //  Batterien_voll_leer
                                            //////////////////////////////
                                            //2 x Batterien voll-leer über boolean Wert false/true in function batterien_voll_leer_alias
                                            createAlias('deconz.0.Sensors.7.battery'/*Fensterkontakt-Küche battery*/, 'Batterien_voll_leer.Fensterkontakt_Kueche', undefined, 'batterien_voll_leer_alias', 'boolean', undefined, undefined, 'Fensterkontakt-Küche', 'indicator.lowbat', 'per Script erstellt', undefined, undefined, undefined, {false: 'voll', true: 'leer'})
                                            createAlias('deconz.0.Sensors.3.battery'/*Bewegungsmelder battery*/, 'Batterien_voll_leer.Bewegungsmelder_Flur', undefined, 'batterien_voll_leer_alias', 'boolean', undefined, undefined, 'Bewegungsmelder-Flur', 'indicator.lowbat', 'per Script erstellt', undefined, undefined, undefined, {false: 'voll', true: 'leer'})
                                             
                                            //////////////////////////////
                                            //  Batterien_Volt
                                            //////////////////////////////
                                            //2 x Batterien Volt Anzeige in function batterien_volt_alias
                                            //createAlias('hm-rpc.0.xxx.0.OPERATING_VOLTAGE'/*Wohnzimmer Fenster links:0 OPERATING VOLTAGE*/, 'Batterien_Volt.Wohnzimmer_Fenster_links', undefined, 'batterien_volt_alias', 'number', undefined, undefined, 'Wohnzimmer Fenster links', 'value.voltage', 'per Script erstellt', undefined, undefined, 'Volt', undefined)
                                            //createAlias('hm-rpc.0.xxx.0.OPERATING_VOLTAGE'/*Küche Fenster links:0 OPERATING VOLTAGE*/, 'Batterien_Volt.Kueche_Fenster_links', undefined, 'batterien_volt_alias', 'number', undefined, undefined, 'Küche Fenster links', 'value.voltage', 'per Script erstellt', undefined, undefined, 'Volt', undefined)
                                            

                                            Dabei bekomme ich im Log folgende Fehlermeldung:

                                            javascript.0	2020-11-18 18:22:12.265	error	(2706) at processTicksAndRejections (internal/process/task_queues.js:97:5)
                                            javascript.0	2020-11-18 18:22:12.265	error	(2706) at runMicrotasks (<anonymous>)
                                            javascript.0	2020-11-18 18:22:12.264	error	(2706) at /opt/iobroker/node_modules/standard-as-callback/built/index.js:19:49
                                            javascript.0	2020-11-18 18:22:12.264	error	(2706) at tryCatcher (/opt/iobroker/node_modules/standard-as-callback/built/utils.js:11:23)
                                            javascript.0	2020-11-18 18:22:12.263	error	(2706) at /opt/iobroker/node_modules/iobroker.js-controller/lib/states/statesInRedis.js:616:17
                                            javascript.0	2020-11-18 18:22:12.263	error	(2706) at /opt/iobroker/node_modules/iobroker.javascript/main.js:1140:17
                                            javascript.0	2020-11-18 18:22:12.263	error	(2706) at /opt/iobroker/node_modules/iobroker.javascript/main.js:1559:17
                                            javascript.0	2020-11-18 18:22:12.262	error	(2706) at prepareScript (/opt/iobroker/node_modules/iobroker.javascript/main.js:1503:37)
                                            javascript.0	2020-11-18 18:22:12.262	error	(2706) at createVM (/opt/iobroker/node_modules/iobroker.javascript/main.js:1280:28)
                                            javascript.0	2020-11-18 18:22:12.261	error	(2706) at Object.createScript (vm.js:261:10)
                                            javascript.0	2020-11-18 18:22:12.261	error	(2706) at new Script (vm.js:88:7)
                                            javascript.0	2020-11-18 18:22:12.260	error	(2706) SyntaxError: missing ) after argument list
                                            javascript.0	2020-11-18 18:22:12.260	error	(2706) ^^^^^^^^^^^^^^^^^^^^^^^^
                                            javascript.0	2020-11-18 18:22:12.259	error	(2706) createAlias('deconz.0.Lights.3.on'/*Wandlampe-Wohnzimmer on*/, 'Licht.Wohnzimmer.Wandlampe_Wohnzimmer', undefined, 'licht_alias', 'boolean', undefined, undefined, 'Wandlampe-Wohnzimmer, 'switch
                                            javascript.0	2020-11-18 18:22:12.259	error	(2706) script.js.common.Test.Aliase compile failed: at script.js.common.Test.Aliase:350
                                            

                                            Ich hoffe mir kann jemand sagen wo meine Fehler liegen.

                                            Vielen dank im Voraus

                                            dslraser 2 Replies Last reply Reply Quote 0
                                            • First post
                                              Last post

                                            Support us

                                            ioBroker
                                            Community Adapters
                                            Donate

                                            542
                                            Online

                                            31.9k
                                            Users

                                            80.1k
                                            Topics

                                            1.3m
                                            Posts

                                            blockly javascript
                                            41
                                            1186
                                            349959
                                            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