Navigation

    Logo
    • Register
    • Login
    • Search
    • Recent
    • Tags
    • Unread
    • Categories
    • Unreplied
    • Popular
    • GitHub
    • Docu
    • Hilfe
    1. Home
    2. Deutsch
    3. Skripten / Logik
    4. JavaScript
    5. Warmeldung und error im Javaskript und Admin.0

    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

    Warmeldung und error im Javaskript und Admin.0

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

      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 ?

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

      Support us

      ioBroker
      Community Adapters
      Donate

      605
      Online

      31.8k
      Users

      80.0k
      Topics

      1.3m
      Posts

      1
      1
      122
      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