NEWS
Fenster und andere Geräte zählen opt. Alexa Ansagen
-
@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:
-
@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.
-
Ich hab den Objekt baum nun komplett gelöscht, nun passts
-
@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. -
@dslraser said in Fenster und andere Geräte zählen opt. Alexa Ansagen:
Das könnte man in iQontrol z.B. so nutzen:
Wie bekommst du denn die Schrift in eine kleine Kachel? Wenn ich die schmal und breit mache, verschwindet der Text.
-
@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) -
@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
-
@FuXXz2
ich habe es so:
Beispiel -
@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) -
@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 FeaturesTrotzdem 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. -
@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.
Die andere Ansicht ist die vergrößerte auf Vollbild (oben rechts in der Ecke geklickt)
Eingerichtet über Wert
-
@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ß
-
@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.
-
@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   </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?
-
@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. -
@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)
Hier wird das html zusammengebaut
-
@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. -
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
-
@sandro_gera sagte in Fenster und andere Geräte zählen opt. Alexa Ansagen:
Dabei bekomme ich im Log folgende Fehlermeldung:
in Zeile 350 fehlt z.B. hinten ein Semikolon bei
Wandlampe-Wohnzimmer
-
@sandro_gera sagte in Fenster und andere Geräte zählen opt. Alexa Ansagen:
Hallo ich habe gerade nach dem folgenden Alias Skript meine Aliasse erstellen wollen.
Es gibt auch eine neuere Version vom Script.
https://github.com/xCruziX/ioBroker-Creating-Alias/blob/master/CreateAlias.js