NEWS
Problem mit Adapter_Infos
-
Hallo alle Zusammen
ich habe Probleme mit dem Adapter_Info Skript
15:29:45.863 warn javascript.0 (834) script.js.java.abfragen.adapter_infos: Object "system.adapter.vis.0.alive" does not exist 15:29:45.866 error javascript.0 (834) at script.js.java.abfragen.adapter_infos:14:39 15:29:45.866 error javascript.0 (834) at Object.<anonymous> (script.js.java.abfragen.adapter_infos:13:19)// Liest die ioBroker Adapter aus und legt verschiedenen State's an. //on({id:"system.adapter.admin.0.uptime",change:'any'}, function (obj) { on({id:"system.adapter.admin.0.uptime",change:'any'}, function (obj) { createState('Adapter.Anzahl', 0, { name: 'Anzahl', desc: 'Anzahl der Adapter', type: 'number', unit: '', min: '0', max: '255', role: '',read: true, write: true }); createState('Adapter.AdapterNummer', 0, { name: 'Adapter zum schalten', desc: 'Adapter zum schalten', type: 'number', unit: '', min: '0', max: '255', role: '',read: true, write: true }); //var counterAlt = getState("javascript.0.Adapter.Anzahl").val; var counter =0; var on = 0 var manuell=0 var cacheSelector = $('[id=system.adapter.*.alive]'); cacheSelector.each(function(id, i) { var devicename = getObject(id).common.name; //Instanzen ausklammern instanz0 = devicename.indexOf('daswetter'); instanz1 = devicename.indexOf('dwd'); instanz2 = devicename.indexOf('ical'); instanz3 = devicename.indexOf('feiertage'); instanz4 = devicename.indexOf('snmp.1'); instanz5 = devicename.indexOf('synology'); instanz6 = devicename.indexOf('vis'); if(instanz0 !=0 && instanz1 != 0 && instanz2 !=0 && instanz3 != 0 && instanz4 != 0 && instanz5 !=0 && instanz6 != 0){ var devicenameName=devicename; var instanzname=getObject(id).common.name; var test = devicenameName; var devicename_array = devicenameName.split(' '); devicenameName = devicename_array[0]; counter = counter+1; var strStatePath = "system.adapter." + devicenameName + ".alive"; if (isState(strStatePath, true)) { var uptime = getState("system.adapter." + devicenameName + ".uptime").val; var tage = Math.floor(uptime / (24*3600)); var stunden = Math.floor((uptime % (24*3600))/3600); var minuten = Math.floor((uptime % (3600))/60); //var sekunden = Math.floor(uptime % 60); if (stunden < 10) {stunden = "0"+stunden}; if (minuten < 10) {minuten = "0"+minuten}; if (tage == 1) {uptime = tage.toString()+" Tag, "+stunden.toString()+" Std, "+minuten.toString()+" Min ";}; if (tage != 1) {uptime = tage.toString()+" Tage, "+stunden.toString()+" Std, "+minuten.toString()+" Min ";} //var total = getState("system.adapter." + devicenameName + ".memHeapTotal").val; //var used = getState("system.adapter." + devicenameName + ".memHeapUsed").val; //var rss = getState("system.adapter." + devicenameName + ".memRss").val; var connect = getState("system.adapter." + devicenameName + ".alive").val; if(connect == false){var con = 0;} else { var con = 1; var strStatePath = devicenameName + ".info.connection"; if (isState(strStatePath, true)) { var connectS = getState(devicenameName + ".info.connection").val; if (connectS == false) { con = 2; } } } if(con==1) {on = on + 1} } devicename="Adapter.Adapter"+counter.toString()+".KompletterNameAdapter"; createState(devicename, 'empty', { name: 'Kompletter Name des Adapters', desc: '', type: 'string', role: '',read: true, write: true }); setStateDelayed(devicename, devicenameName, 800); var contentstring = devicenameName; var suchstring = /(ical)/g; var suchergebnis = suchstring.test( contentstring ); if (suchergebnis != true) { var devicename_array = devicenameName.split('.'); devicenameName = devicename_array[0]; } if (devicenameName == "daswetter") { var bild = "/" + devicenameName + ".admin/" + devicenameName + "com.png"; } else if (suchergebnis != false) { var devicename_array = devicenameName.split('.'); var icalName = devicename_array[0]; var bild = "/" + icalName + ".admin/" + icalName + ".png"; } else { var bild = "/" + devicenameName + ".admin/" + devicenameName + ".png"; } //Alexa2 if (devicenameName == 'alexa2') {var bild = "/" + devicenameName + ".admin/" + "alexa.png";} //FritzDECT if (devicenameName == 'fritzdect') {var bild = "/" + devicenameName + ".admin/" + "fritzdect_logo.png";} //FullyBrowser if (devicenameName == 'fullybrowser') {var bild = "/" + devicenameName + ".admin/" + "fully.png";} //HM-Rega //if (devicenameName == 'hm-rega') {var bild = "/" + devicenameName + ".admin/" + "homematic.png";} if (devicenameName == 'hm-rega') {var bild = "/vis.0/VIS/Meine_Icons/Adapter_Icons/homematic.gif";} //HomeMatic //if (instanzname == 'hm-rpc.0 alive') {var bild = "/" + devicenameName + ".admin/" + "homematic.png";} if (instanzname == 'hm-rpc.0 alive') {var bild = "/vis.0/VIS/Meine_Icons/Adapter_Icons/homematic.gif";} //HomeMatic-IP //if (instanzname == 'hm-rpc.1 alive') {var bild = "/" + devicenameName + ".admin/" + "homematic.png";} if (instanzname == 'hm-rpc.1 alive') {var bild = "/vis.0/VIS/Meine_Icons/Adapter_Icons/homematic_ip.jpg";} //UPNP if (devicenameName == 'upnp') {var bild = "/" + devicenameName + ".admin/" + "upnp-discovery.png";} //Pushover.1 if (instanzname == 'pushover.1 alive') {var bild = "/mihome-vacuum.admin/mihome-vacuum.png";} //Pushover.2 if (instanzname == 'pushover.2 alive') {var bild = "/daswetter.admin/daswettercom.png";} //AdapterName anpassen //DasWetter if (instanzname == 'daswetter.0 alive') {devicenameName='DasWetter'; manuell=1} //DWD if (instanzname == 'dwd.0 alive') {devicenameName='DWD'; manuell=1} //HM-REGA if (instanzname == 'hm-rega.0 alive') {devicenameName='HM-Rega'; manuell=1} //HM-RPC.0 if (instanzname == 'hm-rpc.0 alive') {devicenameName='HomeMatic'; manuell=1} //HM-RPC.1 if (instanzname == 'hm-rpc.1 alive') {devicenameName='HM-IP'; manuell=1} //MiHome-Vacuum if (instanzname == 'mihome-vacuum.0 alive') {devicenameName='Nono'; manuell=1} //Pushover if (instanzname == 'pushover.0 alive') {devicenameName='Pushover.0'; manuell=1} if (instanzname == 'pushover.1 alive') {devicenameName='Pushover.1'; manuell=1} if (instanzname == 'pushover.2 alive') {devicenameName='Pushover.2'; manuell=1} //Simple-API if (instanzname == 'simple-api.0 alive') {devicenameName='Simple-API'; manuell=1} //SNMP.0 if (instanzname == 'snmp.0 alive') {devicenameName='SNMP.0'; manuell=1} //SNMP.1 if (instanzname == 'snmp.1 alive') {devicenameName='SNMP.1'; manuell=1} //TR-064.0 if (instanzname == 'tr-064.0 alive') {devicenameName='TR-064.0'; manuell=1} //TR-064.1 if (instanzname == 'tr-064.1 alive') {devicenameName='TR-064.1'; manuell=1} //Instanz-Namen setzen if(manuell!=1) {devicenameName = devicenameName.substring(0, 1).toUpperCase() + devicenameName.substring(1).toLowerCase();} //devicenameName = devicenameName.substring(0, 1).toUpperCase() + devicenameName.substring(1).toLowerCase(); devicename="Adapter.Adapter"+counter.toString()+".NameInstanz"; createState(devicename, 'empty', { name: 'Name des Geräts', desc: '', type: 'string', role: '',read: true, write: true }); setStateDelayed(devicename, devicenameName, 800); //Bild Pfad setzen devicename="Adapter.Adapter"+counter.toString()+".Bild"; createState(devicename, 'empty', { name: 'Speicherort Bild', desc: '', type: 'string', role: '',read: true, write: true }); setStateDelayed(devicename, bild, 800); //Uptime setzen devicename="Adapter.Adapter"+counter.toString()+".Uptime"; createState(devicename, 'empty', { name: 'Uptime', desc: '', type: 'string', role: '',read: true, write: true }); setStateDelayed(devicename, uptime, 800); //MemUsed setzen //devicename="Adapter.Adapter"+counter.toString()+".MemUsed"; //createState(devicename, 0, { name: 'Link MemUsed', desc: '', type: 'number', role: '',read: true, write: true }); //setStateDelayed(devicename, used, 800); //MemToal setzen //devicename="Adapter.Adapter"+counter.toString()+".MemTotal"; //createState(devicename, 0, { name: 'Link MemTotal', desc: '', type: 'number', role: '',read: true, write: true }); //setStateDelayed(devicename, total, 800); //MemRSS setzen //devicename="Adapter.Adapter"+counter.toString()+".MemRSS"; //createState(devicename, 0, { name: 'Link MemRSS', desc: '', type: 'number', role: '',read: true, write: true }); //setStateDelayed(devicename, rss, 800); //Connected setzen devicename="Adapter.Adapter"+counter.toString()+".Connected"; createState(devicename, 0, { name: 'Status Adapter', desc: '', type: 'number', role: '',read: true, write: true }); setStateDelayed(devicename, con, 800); //Wert zurücksetzen var manuell=0 } }); //Adaptet Icon Übersicht visstatus="javascript.0.VIS-Status.alle_adapter_gestartet"; if(on == counter){setState(visstatus, true);} if(on == counter -1){setState(visstatus, true);} if(on < counter -1){setState(visstatus, false);} setStateDelayed('Adapter.Anzahl', counter, 800); function isState(strStatePath, strict) { let mSelector; if (strict) { mSelector = $('state[id=' + strStatePath + '$]'); } else { mSelector = $('state[id=' + strStatePath + ']'); } if (mSelector.length > 0) { return true; } else { return false; } } }); on({id:"javascript.0.Adapter.AdapterNummer", change: 'any'}, function (dpobj) { if (getState("javascript.0.Adapter.AdapterNummer").val != 0) { const instanz = "javascript." + instance; var adapterNummer = getState(instanz + ".Adapter.AdapterNummer").val; var adapter = getState(instanz + ".Adapter.Adapter" + adapterNummer + ".KompletterNameAdapter").val; // Name und Instanz des Adapters var idAdapter = "system.adapter." + adapter; var obj = getObject(idAdapter); if (dpobj.state.val == false) { obj.common.enabled = true; // Adapter einschalten } else if (dpobj.state.val == true) { obj.common.enabled = false; // Adapter ausschalten } setObject(idAdapter, obj); setStateDelayed('javascript.0.Adapter.AdapterNummer', 0, 800); } });Kann mir hier jemand sagen was ich falsch mache ??
LG Daniel
-
@dg19222 sagte in Problem mit Adapter_Infos:
if(instanz0 !=0 && instanz1 != 0 && instanz2 !=0 && instanz3 != 0 && instanz4 != 0 && instanz5 !=0 && instanz6 != 0){
Du willst sie ausklammern
instanz0 <0 && instanz1 <0.... -
Hallo alle Zusammen
ich habe Probleme mit dem Adapter_Info Skript
15:29:45.863 warn javascript.0 (834) script.js.java.abfragen.adapter_infos: Object "system.adapter.vis.0.alive" does not exist 15:29:45.866 error javascript.0 (834) at script.js.java.abfragen.adapter_infos:14:39 15:29:45.866 error javascript.0 (834) at Object.<anonymous> (script.js.java.abfragen.adapter_infos:13:19)// Liest die ioBroker Adapter aus und legt verschiedenen State's an. //on({id:"system.adapter.admin.0.uptime",change:'any'}, function (obj) { on({id:"system.adapter.admin.0.uptime",change:'any'}, function (obj) { createState('Adapter.Anzahl', 0, { name: 'Anzahl', desc: 'Anzahl der Adapter', type: 'number', unit: '', min: '0', max: '255', role: '',read: true, write: true }); createState('Adapter.AdapterNummer', 0, { name: 'Adapter zum schalten', desc: 'Adapter zum schalten', type: 'number', unit: '', min: '0', max: '255', role: '',read: true, write: true }); //var counterAlt = getState("javascript.0.Adapter.Anzahl").val; var counter =0; var on = 0 var manuell=0 var cacheSelector = $('[id=system.adapter.*.alive]'); cacheSelector.each(function(id, i) { var devicename = getObject(id).common.name; //Instanzen ausklammern instanz0 = devicename.indexOf('daswetter'); instanz1 = devicename.indexOf('dwd'); instanz2 = devicename.indexOf('ical'); instanz3 = devicename.indexOf('feiertage'); instanz4 = devicename.indexOf('snmp.1'); instanz5 = devicename.indexOf('synology'); instanz6 = devicename.indexOf('vis'); if(instanz0 !=0 && instanz1 != 0 && instanz2 !=0 && instanz3 != 0 && instanz4 != 0 && instanz5 !=0 && instanz6 != 0){ var devicenameName=devicename; var instanzname=getObject(id).common.name; var test = devicenameName; var devicename_array = devicenameName.split(' '); devicenameName = devicename_array[0]; counter = counter+1; var strStatePath = "system.adapter." + devicenameName + ".alive"; if (isState(strStatePath, true)) { var uptime = getState("system.adapter." + devicenameName + ".uptime").val; var tage = Math.floor(uptime / (24*3600)); var stunden = Math.floor((uptime % (24*3600))/3600); var minuten = Math.floor((uptime % (3600))/60); //var sekunden = Math.floor(uptime % 60); if (stunden < 10) {stunden = "0"+stunden}; if (minuten < 10) {minuten = "0"+minuten}; if (tage == 1) {uptime = tage.toString()+" Tag, "+stunden.toString()+" Std, "+minuten.toString()+" Min ";}; if (tage != 1) {uptime = tage.toString()+" Tage, "+stunden.toString()+" Std, "+minuten.toString()+" Min ";} //var total = getState("system.adapter." + devicenameName + ".memHeapTotal").val; //var used = getState("system.adapter." + devicenameName + ".memHeapUsed").val; //var rss = getState("system.adapter." + devicenameName + ".memRss").val; var connect = getState("system.adapter." + devicenameName + ".alive").val; if(connect == false){var con = 0;} else { var con = 1; var strStatePath = devicenameName + ".info.connection"; if (isState(strStatePath, true)) { var connectS = getState(devicenameName + ".info.connection").val; if (connectS == false) { con = 2; } } } if(con==1) {on = on + 1} } devicename="Adapter.Adapter"+counter.toString()+".KompletterNameAdapter"; createState(devicename, 'empty', { name: 'Kompletter Name des Adapters', desc: '', type: 'string', role: '',read: true, write: true }); setStateDelayed(devicename, devicenameName, 800); var contentstring = devicenameName; var suchstring = /(ical)/g; var suchergebnis = suchstring.test( contentstring ); if (suchergebnis != true) { var devicename_array = devicenameName.split('.'); devicenameName = devicename_array[0]; } if (devicenameName == "daswetter") { var bild = "/" + devicenameName + ".admin/" + devicenameName + "com.png"; } else if (suchergebnis != false) { var devicename_array = devicenameName.split('.'); var icalName = devicename_array[0]; var bild = "/" + icalName + ".admin/" + icalName + ".png"; } else { var bild = "/" + devicenameName + ".admin/" + devicenameName + ".png"; } //Alexa2 if (devicenameName == 'alexa2') {var bild = "/" + devicenameName + ".admin/" + "alexa.png";} //FritzDECT if (devicenameName == 'fritzdect') {var bild = "/" + devicenameName + ".admin/" + "fritzdect_logo.png";} //FullyBrowser if (devicenameName == 'fullybrowser') {var bild = "/" + devicenameName + ".admin/" + "fully.png";} //HM-Rega //if (devicenameName == 'hm-rega') {var bild = "/" + devicenameName + ".admin/" + "homematic.png";} if (devicenameName == 'hm-rega') {var bild = "/vis.0/VIS/Meine_Icons/Adapter_Icons/homematic.gif";} //HomeMatic //if (instanzname == 'hm-rpc.0 alive') {var bild = "/" + devicenameName + ".admin/" + "homematic.png";} if (instanzname == 'hm-rpc.0 alive') {var bild = "/vis.0/VIS/Meine_Icons/Adapter_Icons/homematic.gif";} //HomeMatic-IP //if (instanzname == 'hm-rpc.1 alive') {var bild = "/" + devicenameName + ".admin/" + "homematic.png";} if (instanzname == 'hm-rpc.1 alive') {var bild = "/vis.0/VIS/Meine_Icons/Adapter_Icons/homematic_ip.jpg";} //UPNP if (devicenameName == 'upnp') {var bild = "/" + devicenameName + ".admin/" + "upnp-discovery.png";} //Pushover.1 if (instanzname == 'pushover.1 alive') {var bild = "/mihome-vacuum.admin/mihome-vacuum.png";} //Pushover.2 if (instanzname == 'pushover.2 alive') {var bild = "/daswetter.admin/daswettercom.png";} //AdapterName anpassen //DasWetter if (instanzname == 'daswetter.0 alive') {devicenameName='DasWetter'; manuell=1} //DWD if (instanzname == 'dwd.0 alive') {devicenameName='DWD'; manuell=1} //HM-REGA if (instanzname == 'hm-rega.0 alive') {devicenameName='HM-Rega'; manuell=1} //HM-RPC.0 if (instanzname == 'hm-rpc.0 alive') {devicenameName='HomeMatic'; manuell=1} //HM-RPC.1 if (instanzname == 'hm-rpc.1 alive') {devicenameName='HM-IP'; manuell=1} //MiHome-Vacuum if (instanzname == 'mihome-vacuum.0 alive') {devicenameName='Nono'; manuell=1} //Pushover if (instanzname == 'pushover.0 alive') {devicenameName='Pushover.0'; manuell=1} if (instanzname == 'pushover.1 alive') {devicenameName='Pushover.1'; manuell=1} if (instanzname == 'pushover.2 alive') {devicenameName='Pushover.2'; manuell=1} //Simple-API if (instanzname == 'simple-api.0 alive') {devicenameName='Simple-API'; manuell=1} //SNMP.0 if (instanzname == 'snmp.0 alive') {devicenameName='SNMP.0'; manuell=1} //SNMP.1 if (instanzname == 'snmp.1 alive') {devicenameName='SNMP.1'; manuell=1} //TR-064.0 if (instanzname == 'tr-064.0 alive') {devicenameName='TR-064.0'; manuell=1} //TR-064.1 if (instanzname == 'tr-064.1 alive') {devicenameName='TR-064.1'; manuell=1} //Instanz-Namen setzen if(manuell!=1) {devicenameName = devicenameName.substring(0, 1).toUpperCase() + devicenameName.substring(1).toLowerCase();} //devicenameName = devicenameName.substring(0, 1).toUpperCase() + devicenameName.substring(1).toLowerCase(); devicename="Adapter.Adapter"+counter.toString()+".NameInstanz"; createState(devicename, 'empty', { name: 'Name des Geräts', desc: '', type: 'string', role: '',read: true, write: true }); setStateDelayed(devicename, devicenameName, 800); //Bild Pfad setzen devicename="Adapter.Adapter"+counter.toString()+".Bild"; createState(devicename, 'empty', { name: 'Speicherort Bild', desc: '', type: 'string', role: '',read: true, write: true }); setStateDelayed(devicename, bild, 800); //Uptime setzen devicename="Adapter.Adapter"+counter.toString()+".Uptime"; createState(devicename, 'empty', { name: 'Uptime', desc: '', type: 'string', role: '',read: true, write: true }); setStateDelayed(devicename, uptime, 800); //MemUsed setzen //devicename="Adapter.Adapter"+counter.toString()+".MemUsed"; //createState(devicename, 0, { name: 'Link MemUsed', desc: '', type: 'number', role: '',read: true, write: true }); //setStateDelayed(devicename, used, 800); //MemToal setzen //devicename="Adapter.Adapter"+counter.toString()+".MemTotal"; //createState(devicename, 0, { name: 'Link MemTotal', desc: '', type: 'number', role: '',read: true, write: true }); //setStateDelayed(devicename, total, 800); //MemRSS setzen //devicename="Adapter.Adapter"+counter.toString()+".MemRSS"; //createState(devicename, 0, { name: 'Link MemRSS', desc: '', type: 'number', role: '',read: true, write: true }); //setStateDelayed(devicename, rss, 800); //Connected setzen devicename="Adapter.Adapter"+counter.toString()+".Connected"; createState(devicename, 0, { name: 'Status Adapter', desc: '', type: 'number', role: '',read: true, write: true }); setStateDelayed(devicename, con, 800); //Wert zurücksetzen var manuell=0 } }); //Adaptet Icon Übersicht visstatus="javascript.0.VIS-Status.alle_adapter_gestartet"; if(on == counter){setState(visstatus, true);} if(on == counter -1){setState(visstatus, true);} if(on < counter -1){setState(visstatus, false);} setStateDelayed('Adapter.Anzahl', counter, 800); function isState(strStatePath, strict) { let mSelector; if (strict) { mSelector = $('state[id=' + strStatePath + '$]'); } else { mSelector = $('state[id=' + strStatePath + ']'); } if (mSelector.length > 0) { return true; } else { return false; } } }); on({id:"javascript.0.Adapter.AdapterNummer", change: 'any'}, function (dpobj) { if (getState("javascript.0.Adapter.AdapterNummer").val != 0) { const instanz = "javascript." + instance; var adapterNummer = getState(instanz + ".Adapter.AdapterNummer").val; var adapter = getState(instanz + ".Adapter.Adapter" + adapterNummer + ".KompletterNameAdapter").val; // Name und Instanz des Adapters var idAdapter = "system.adapter." + adapter; var obj = getObject(idAdapter); if (dpobj.state.val == false) { obj.common.enabled = true; // Adapter einschalten } else if (dpobj.state.val == true) { obj.common.enabled = false; // Adapter ausschalten } setObject(idAdapter, obj); setStateDelayed('javascript.0.Adapter.AdapterNummer', 0, 800); } });Kann mir hier jemand sagen was ich falsch mache ??
LG Daniel
-
@dg19222 sagte: Object "system.adapter.vis.0.alive" does not exist
Starte mal die Javascript-Instanz neu. Offenbar hat sie noch ungültige Zustände im Puffer.
Hey! Du scheinst an dieser Unterhaltung interessiert zu sein, hast aber noch kein Konto.
Hast du es satt, bei jedem Besuch durch die gleichen Beiträge zu scrollen? Wenn du dich für ein Konto anmeldest, kommst du immer genau dorthin zurück, wo du zuvor warst, und kannst dich über neue Antworten benachrichtigen lassen (entweder per E-Mail oder Push-Benachrichtigung). Du kannst auch Lesezeichen speichern und Beiträge positiv bewerten, um anderen Community-Mitgliedern deine Wertschätzung zu zeigen.
Mit deinem Input könnte dieser Beitrag noch besser werden 💗
Registrieren Anmelden
