NEWS
Warmeldung und error im Javaskript und Admin.0
-
Hallo ich habe zwei neue Sensoren eingebunden jetzt bekomme ich jeden Tag folgenden error:
2023-10-30 17:22:51.434 error Alias subscription error. Please check your alias definitions: sourceId=zwave2.0.Node_065.Binary_Sensor.motion, sourceObj={"type":"state","common":{"role":"indicator","read":true,"write":false,"name":"Sensor state (Motion)","type":"boolean"},"native":{"nodeId":65,"valueId":{"commandClass":48,"endpoint":0,"property":"Motion"}},"from":"system.adapter.zwave2.0","user":"system.user.admin","ts":1698334268930,"_id":"zwave2.0.Node_065.Binary_Sensor.motion","acl":{"object":1636,"state":1636,"owner":"system.user.admin","ownerGroup":"system.group.administrator"}} admin.0 2023-10-30 17:22:51.437 error Alias subscription error. Please check your alias definitions: sourceId=zwave2.0.Node_065.Multilevel_Sensor.humidity, sourceObj={"type":"state","common":{"role":"value","read":true,"write":false,"name":"Humidity","type":"number","unit":"%"},"native":{"nodeId":65,"valueId":{"commandClass":49,"endpoint":0,"property":"Humidity"}},"from":"system.adapter.zwave2.0","user":"system.user.admin","ts":1698334270043,"_id":"zwave2.0.Node_065.Multilevel_Sensor.humidity","acl":{"object":1636,"state":1636,"owner":"system.user.admin","ownerGroup":"system.group.administrator"}} admin.0 2023-10-30 17:22:51.438 error Alias subscription error. Please check your alias definitions: sourceId=zwave2.0.Node_065.Multilevel_Sensor.illuminance, sourceObj={"type":"state","common":{"role":"value","read":true,"write":false,"name":"Illuminance","type":"number","unit":"Lux"},"native":{"nodeId":65,"valueId":{"commandClass":49,"endpoint":0,"property":"Illuminance"}},"from":"system.adapter.zwave2.0","user":"system.user.admin","ts":1698334269984,"_id":"zwave2.0.Node_065.Multilevel_Sensor.illuminance","acl":{"object":1636,"state":1636,"owner":"system.user.admin","ownerGroup":"system.group.administrator"}} admin.0 2023-10-30 17:22:51.438 error Alias subscription error. Please check your alias definitions: sourceId=zwave2.0.Node_065.Multilevel_Sensor.airTemperature, sourceObj={"type":"state","common":{"role":"value","read":true,"write":false,"name":"Air temperature","type":"number","unit":"°C"},"native":{"nodeId":65,"valueId":{"commandClass":49,"endpoint":0,"property":"Air temperature"}},"from":"system.adapter.zwave2.0","user":"system.user.admin","ts":1698334269209,"_id":"zwave2.0.Node_065.Multilevel_Sensor.airTemperature","acl":{"object":1636,"state":1636,"owner":"system.user.admin","ownerGroup":"system.group.administrator"}} admin.0 2023-10-30 17:22:51.439 error Alias subscription error. Please check your alias definitions: sourceId=zwave2.0.Node_064.Binary_Sensor.motion, sourceObj={"type":"state","common":{"role":"indicator","read":true,"write":false,"name":"Sensor state (Motion)","type":"boolean"},"native":{"nodeId":64,"valueId":{"commandClass":48,"endpoint":0,"property":"Motion"}},"from":"system.adapter.zwave2.0","user":"system.user.admin","ts":1697812897069,"_id":"zwave2.0.Node_064.Binary_Sensor.motion","acl":{"object":1636,"state":1636,"owner":"system.user.admin","ownerGroup":"system.group.administrator"}} admin.0 2023-10-30 17:22:51.440 error Alias subscription error. Please check your alias definitions: sourceId=zwave2.0.Node_064.Multilevel_Sensor.humidity, sourceObj={"type":"state","common":{"role":"value","read":true,"write":false,"name":"Humidity","type":"number","unit":"%","custom":{"history.0":{"enabled":true,"aliasId":"","debounceTime":0,"blockTime":0,"changesOnly":true,"changesRelogInterval":0,"changesMinDelta":0,"ignoreBelowNumber":"","disableSkippedValueLogging":false,"retention":31536000,"customRetentionDuration":365,"maxLength":960,"enableDebugLogs":false,"debounce":1000}}},"native":{"nodeId":64,"valueId":{"commandClass":49,"endpoint":0,"property":"Humidity"}},"_id":"zwave2.0.Node_064.Multilevel_Sensor.humidity","acl":{"object":1636,"state":1636,"owner":"system.user.admin","ownerGroup":"system.group.administrator"},"from":"system.adapter.zwave2.0","user":"system.user.admin","ts":1698682109486} admin.0 2023-10-30 17:22:51.441 error Alias subscription error. Please check your alias definitions: sourceId=zwave2.0.Node_064.Multilevel_Sensor.illuminance, sourceObj={"type":"state","common":{"role":"value","read":true,"write":false,"name":"Illuminance","type":"number","unit":"Lux","custom":{"history.0":{"enabled":true,"aliasId":"","debounceTime":0,"blockTime":0,"changesOnly":true,"changesRelogInterval":0,"changesMinDelta":0,"ignoreBelowNumber":"","disableSkippedValueLogging":false,"retention":31536000,"customRetentionDuration":365,"maxLength":960,"enableDebugLogs":false,"debounce":1000}}},"native":{"nodeId":64,"valueId":{"commandClass":49,"endpoint":0,"property":"Illuminance"}},"_id":"zwave2.0.Node_064.Multilevel_Sensor.illuminance","acl":{"object":1636,"state":1636,"owner":"system.user.admin","ownerGroup":"system.group.administrator"},"from":"system.adapter.zwave2.0","user":"system.user.admin","ts":1698682110366} admin.0 2023-10-30 17:22:51.442 error Alias subscription error. Please check your alias definitions: sourceId=zwave2.0.Node_064.Multilevel_Sensor.airTemperature, sourceObj={"type":"state","common":{"role":"value","read":true,"write":false,"name":"Air temperature","type":"number","unit":"°C"},"native":{"nodeId":64,"valueId":{"commandClass":49,"endpoint":0,"property":"Air temperature"}},"from":"system.adapter.zwave2.0","user":"system.user.admin","ts":1697812898332,"_id":"zwave2.0.Node_064.Multilevel_Sensor.airTemperature","acl":{"object":1636,"state":1636,"owner":"system.user.admin","ownerGroup":"system.group.administrator"}}
Ich habe folgendes Alias Skript:
/************************************************************** Github - https://github.com/xCruziX/ioBroker-Creating-Alias/blob/master/CreateAlias.js Changelog Version 1.1.3 - use callbacks in alias-path Version 1.1.2 - fix log message 'Created Alias-Path ' Version 1.1.1 - Bugfixing, clean functions Version 1.1.0 - added function for cleaning enums Version 1.0.6 - use callback functions for safety call Version 1.0.5 - decrease timeout assing enum Version 1.0.4 - Bugfixing array id lenght Version 1.0.3 - Githublink Version 1.0.2 - existsObject for Alias in the timeout - remove lowerCase enum - improved logs Version 1.0.1 - Rooms and functions casesensitive Version 1.0 **************************************************************/ /************************************** 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 = false; // 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; 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) {// Zu Ende erstellt alias(); return; } let tmpId = lisMergedIds[0]; lisMergedIds.splice(0,1); // entferne element if(!existsObject(tmpId) || bConvertExistingPath){ // not exists let obj; if(existsObject(tmpId)) obj = getObject(tmpId); else obj = {}; if(obj.type == undefined || obj.type != 'meta') obj.type = 'meta'; if(obj.common == undefined || obj.common != {}) obj.common = {}; if(obj.common.type == undefined || obj.common.type != 'meta.folder') obj.common.type = 'meta.folder'; if(obj.common.desc == undefined || obj.common.desc != 'createAliasPath') obj.common.desc = 'createAliasPath'; if(obj.common.def == undefined || obj.common.def != false) obj.common.def = false; if(obj.native == undefined || obj.native != {}) obj.native = {}; setObject(tmpId, obj, (err) =>{ if(!err){ log('Created Alias-Path ' + tmpId); path(); } else log('Error creating alias-path','error'); }); } } path(); } else alias(); } // createAliasPath(idDst); 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); }
Und dann bekomme ich noch folgende Fehlermeldung (Warung) im Javaskript:
javascript.0 2023-10-30 17:16:14.634 warn State "alias.0.Wohnzimmer.Alexa.speak" not found javascript.0 2023-10-30 17:16:14.644 warn at Object.setState (/opt/iobroker/node_modules/iobroker.javascript/lib/sandbox.js:1740:20) javascript.0 2023-10-30 17:16:14.645 warn at Timeout._onTimeout (/opt/iobroker/node_modules/iobroker.javascript/lib/sandbox.js:1798:29) javascript.0 2023-10-30 17:16:14.646 warn at listOnTimeout (node:internal/timers:571:11) javascript.0 2023-10-30 17:16:14.646 warn at processTimers (node:internal/timers:512:7) javascript.0 2023-10-30 17:16:33.661 warn State "alias.0.Wohnzimmer.Alexa.speak" not found javascript.0 2023-10-30 17:16:33.662 warn at Object.setState (/opt/iobroker/node_modules/iobroker.javascript/lib/sandbox.js:1740:20) javascript.0 2023-10-30 17:16:33.663 warn at Timeout._onTimeout (/opt/iobroker/node_modules/iobroker.javascript/lib/sandbox.js:1798:29) javascript.0 2023-10-30 17:16:33.663 warn at listOnTimeout (node:internal/timers:571:11) javascript.0 2023-10-30 17:16:33.663 warn at processTimers (node:internal/timers:512:7)
Ich bin mein Skripte mehrfach durchgegangen finden aber den Datenpunkt nicht:
State "alias.0.Wohnzimmer.Alexa.speak" not found
Hat wer einen Tip für mich ?