Skip to content
  • Aktuell
  • Tags
  • 0 Ungelesen 0
  • Kategorien
  • Unreplied
  • Beliebt
  • GitHub
  • Docu
  • Hilfe
Skins
  • Light
  • Brite
  • Cerulean
  • Cosmo
  • Flatly
  • Journal
  • Litera
  • Lumen
  • Lux
  • Materia
  • Minty
  • Morph
  • Pulse
  • Sandstone
  • Simplex
  • Sketchy
  • Spacelab
  • United
  • Yeti
  • Zephyr
  • Dark
  • Cyborg
  • Darkly
  • Quartz
  • Slate
  • Solar
  • Superhero
  • Vapor

  • Standard: (Kein Skin)
  • Kein Skin
Einklappen
ioBroker Logo
  1. ioBroker Community Home
  2. Deutsch
  3. Praktische Anwendungen (Showcase)
  4. [Vorstellung] Meine dritte VIS

NEWS

  • UPDATE 31.10.: Amazon Alexa - ioBroker Skill läuft aus ?
    apollon77A
    apollon77
    48
    3
    8.1k

  • Monatsrückblick – September 2025
    BluefoxB
    Bluefox
    13
    1
    1.9k

  • Neues Video "KI im Smart Home" - ioBroker plus n8n
    BluefoxB
    Bluefox
    15
    1
    2.1k

[Vorstellung] Meine dritte VIS

Geplant Angeheftet Gesperrt Verschoben Praktische Anwendungen (Showcase)
visvis projekte
640 Beiträge 83 Kommentatoren 184.7k Aufrufe 117 Watching
  • Älteste zuerst
  • Neuste zuerst
  • Meiste Stimmen
Antworten
  • In einem neuen Thema antworten
Anmelden zum Antworten
Dieses Thema wurde gelöscht. Nur Nutzer mit entsprechenden Rechten können es sehen.
  • K Kuddel

    @maximal1981 meinst du die Anzeige der laufenden Adapter ?

    Hier mein aktuelles Skript (java):

    // Liest die ioBroker Adapter aus und legt verschiedenen State's an.
    
    schedule('*/10 * * * * *', 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;
       
       //Variablen zurücksetzen
       var counter =0;
       var on = 0
       var manuell=0	
    
       var cacheSelector = $('[id=system.adapter.*.alive]');    
       cacheSelector.each(function(id, i) { 
    
           //Instanzen ausklammer
           var check1 = id.indexOf('system.adapter.coronavirus-statistics.0.alive');
       	var check2 = id.indexOf('system.adapter.daswetter.0.alive');
       	var check3 = id.indexOf('system.adapter.dwd.0.alive');
       	var check4 = id.indexOf('system.adapter.ical.0.alive');
       	var check5 = id.indexOf('system.adapter.ical.1.alive');
       	var check6 = id.indexOf('system.adapter.ical.2.alive');
       	var check7 = id.indexOf('system.adapter.feiertage.0.alive');
       	var check8 = id.indexOf('system.adapter.kodi.0.alive');
       	var check9 = id.indexOf('system.adapter.snmp.1.alive');
           var check10 = id.indexOf('system.adapter.yamaha.0.alive');
       	var check11 = id.indexOf('system.adapter.vis.0.alive');
    
           var check = check1 + check2 + check3 + check4 + check5 + check6 + check7 + check8 + check9 + check10 + check11;
    
           //Abfrage nur ausführen, wenn Instanz nicht ausgeklammert ist
           if(check == -11){
               var devicename = getObject(id).common.name; 
    
               //console.log(devicename);
                          
       		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";
       		
       		//Uptime
       		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);
       		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 ";}
       		
       		//Arbeitsspeicher etc.
       		//var total = getState("system.adapter." + devicenameName + ".memHeapTotal").val;
       		//var used = getState("system.adapter." + devicenameName + ".memHeapUsed").val;
       		//var rss = getState("system.adapter." + devicenameName + ".memRss").val;
       		
       		//Connection Status
       		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";
       		}
       		
       		//////////////////////////
       		// Icon-Pfad definieren //
       		//////////////////////////
    
       		//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";}
               //Homepilot
               if (instanzname == 'homepilot20.0 alive') {var bild = "/vis.0/VIS/Meine_Icons/Adapter_Icons/homepilot.png";}
       		//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
       		////////////////////////
    
       		//Corona-Statistics
       		if (instanzname == 'coronavirus-statistics.0 alive') {devicenameName='Corona'; manuell=1}
       		//DasWetter
       		if (instanzname == 'daswetter.0 alive') {devicenameName='DasWetter'; manuell=1}
       		//DWD
       		if (instanzname == 'dwd.0 alive') {devicenameName='DWD'; manuell=1}
       		//Fullybrowser
       		if (instanzname == 'fullybrowser.0 alive') {devicenameName='FullyKiosk'; 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}
               //Homepilot
               if (instanzname == 'homepilot20.0 alive') {devicenameName='Homepilot'; manuell=1}
       		//Linux-Control
       		if (instanzname == 'linux-control.0 alive') {devicenameName='Linux-Ctr.'; manuell=1}
       		//MiHome-Vacuum -> NoNo
       		if (instanzname == 'mihome-vacuum.0 alive') {devicenameName='Nono'; manuell=1}
               //MiHome-Vacuum -> Dusty
       		if (instanzname == 'mihome-vacuum.1 alive') {devicenameName='Dusty'; 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='QNAP-B'; manuell=1}
       		//SNMP.1
       		if (instanzname == 'snmp.1 alive') {devicenameName='QNAP-Archiv'; manuell=1}
               //SNMP.2
       		if (instanzname == 'snmp.2 alive') {devicenameName='Brother'; manuell=1}
       		//Spotify
       		if (instanzname == 'spotify-premium.0 alive') {devicenameName='Spotify'; manuell=1}
       		//Tankerkoenig
       		if (instanzname == 'tankerkoenig.0 alive') {devicenameName='Tankerk.'; manuell=1}
       		//Tashscheduler
       		if (instanzname == 'trashschedule.0 alive') {devicenameName='Trashsched.'; 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}
       		//XPEnology
       		if (instanzname == 'synology.1 alive') {devicenameName='XPEnology'; 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);}
       else{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);        
       }
    });   
    

    maximal1981M Offline
    maximal1981M Offline
    maximal1981
    schrieb am zuletzt editiert von
    #499

    @kuddel danke schön

    1 Antwort Letzte Antwort
    0
    • K Kuddel

      @maximal1981 meinst du die Anzeige der laufenden Adapter ?

      Hier mein aktuelles Skript (java):

      // Liest die ioBroker Adapter aus und legt verschiedenen State's an.
      
      schedule('*/10 * * * * *', 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;
         
         //Variablen zurücksetzen
         var counter =0;
         var on = 0
         var manuell=0	
      
         var cacheSelector = $('[id=system.adapter.*.alive]');    
         cacheSelector.each(function(id, i) { 
      
             //Instanzen ausklammer
             var check1 = id.indexOf('system.adapter.coronavirus-statistics.0.alive');
         	var check2 = id.indexOf('system.adapter.daswetter.0.alive');
         	var check3 = id.indexOf('system.adapter.dwd.0.alive');
         	var check4 = id.indexOf('system.adapter.ical.0.alive');
         	var check5 = id.indexOf('system.adapter.ical.1.alive');
         	var check6 = id.indexOf('system.adapter.ical.2.alive');
         	var check7 = id.indexOf('system.adapter.feiertage.0.alive');
         	var check8 = id.indexOf('system.adapter.kodi.0.alive');
         	var check9 = id.indexOf('system.adapter.snmp.1.alive');
             var check10 = id.indexOf('system.adapter.yamaha.0.alive');
         	var check11 = id.indexOf('system.adapter.vis.0.alive');
      
             var check = check1 + check2 + check3 + check4 + check5 + check6 + check7 + check8 + check9 + check10 + check11;
      
             //Abfrage nur ausführen, wenn Instanz nicht ausgeklammert ist
             if(check == -11){
                 var devicename = getObject(id).common.name; 
      
                 //console.log(devicename);
                            
         		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";
         		
         		//Uptime
         		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);
         		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 ";}
         		
         		//Arbeitsspeicher etc.
         		//var total = getState("system.adapter." + devicenameName + ".memHeapTotal").val;
         		//var used = getState("system.adapter." + devicenameName + ".memHeapUsed").val;
         		//var rss = getState("system.adapter." + devicenameName + ".memRss").val;
         		
         		//Connection Status
         		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";
         		}
         		
         		//////////////////////////
         		// Icon-Pfad definieren //
         		//////////////////////////
      
         		//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";}
                 //Homepilot
                 if (instanzname == 'homepilot20.0 alive') {var bild = "/vis.0/VIS/Meine_Icons/Adapter_Icons/homepilot.png";}
         		//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
         		////////////////////////
      
         		//Corona-Statistics
         		if (instanzname == 'coronavirus-statistics.0 alive') {devicenameName='Corona'; manuell=1}
         		//DasWetter
         		if (instanzname == 'daswetter.0 alive') {devicenameName='DasWetter'; manuell=1}
         		//DWD
         		if (instanzname == 'dwd.0 alive') {devicenameName='DWD'; manuell=1}
         		//Fullybrowser
         		if (instanzname == 'fullybrowser.0 alive') {devicenameName='FullyKiosk'; 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}
                 //Homepilot
                 if (instanzname == 'homepilot20.0 alive') {devicenameName='Homepilot'; manuell=1}
         		//Linux-Control
         		if (instanzname == 'linux-control.0 alive') {devicenameName='Linux-Ctr.'; manuell=1}
         		//MiHome-Vacuum -> NoNo
         		if (instanzname == 'mihome-vacuum.0 alive') {devicenameName='Nono'; manuell=1}
                 //MiHome-Vacuum -> Dusty
         		if (instanzname == 'mihome-vacuum.1 alive') {devicenameName='Dusty'; 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='QNAP-B'; manuell=1}
         		//SNMP.1
         		if (instanzname == 'snmp.1 alive') {devicenameName='QNAP-Archiv'; manuell=1}
                 //SNMP.2
         		if (instanzname == 'snmp.2 alive') {devicenameName='Brother'; manuell=1}
         		//Spotify
         		if (instanzname == 'spotify-premium.0 alive') {devicenameName='Spotify'; manuell=1}
         		//Tankerkoenig
         		if (instanzname == 'tankerkoenig.0 alive') {devicenameName='Tankerk.'; manuell=1}
         		//Tashscheduler
         		if (instanzname == 'trashschedule.0 alive') {devicenameName='Trashsched.'; 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}
         		//XPEnology
         		if (instanzname == 'synology.1 alive') {devicenameName='XPEnology'; 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);}
         else{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);        
         }
      });   
      

      D Offline
      D Offline
      djsirius
      schrieb am zuletzt editiert von djsirius
      #500

      Ich habe den Fehler gefunden!

      Gruß

      djsirius

      1 Antwort Letzte Antwort
      0
      • K Kuddel

        Hallo zusammen,

        nach meiner zweiten VIS folgt jetzt meine dritte VIS.

        Die größte Neuerung ist ein komplett neues Menü mit Hilfe des Top App Bar Widget. Vielen Dank an dieser Stelle an @Scrounger.

        Bestimmt sind immer noch ein paar Fehler drin, aber fertig wird man ja eh nie.

        Vieles habe ich aus meiner zweiten VIS übernommen, so dass die Screenshots aus dem Thread oben auch fast noch alle aktuell sind.

        Screenshots:


        Startseite
        90372124-cd0b-40d0-ae6e-b8286ee25672-grafik.png

        Menü
        52f11cf6-b7f3-49c8-9344-b1a0f89d0eaa-grafik.png
        e766325b-8727-48c0-b6e7-9f773f4f246b-grafik.png

        BVB Details
        423488b3-1367-4ebf-b28e-8b730970dfae-grafik.png

        Tablet Details
        ac924af2-ac1c-4069-a59e-6a68c8775a3f-grafik.png

        System -> ioBroker
        eb9f518b-c318-4a00-a66e-6879959792a4-grafik.png

        System -> Homematic
        1aaaed6f-8e59-4cdc-8bfd-c26185f1c28b-grafik.png

        System -> Netzwerk
        622fd166-ec5b-4ff3-9cbe-d5a81fd5332b-grafik.png

        System -> Geräte
        f20ab8dd-18f2-446e-94ac-55a74765e1ca-grafik.png

        Details VU
        9cdd9c50-f62a-4e3c-b01a-f911d2e8388d-grafik.png

        System -> Logs
        e190e53e-2a68-4e6d-ae7e-a48d069f809f-grafik.png

        System -> VMware
        34ffe501-5b74-4b2c-9092-2e1a8ed9f99e-grafik.png

        Erdgeschoss -> Wohnzimmer
        18c3b9dc-75e4-41c9-9338-ef3c827f4c86-grafik.png

        Garten -> Bewässerung
        160a9338-d885-42be-8ae8-2d0daa67a8f1-grafik.png

        Wetter
        840f00c2-b9bb-4f94-be9d-9bb5b0330947-grafik.png

        Staubsauger
        1343f5bc-1514-44d2-8754-9a6eff483708-grafik.png

        Echo Geräte
        aebe9414-69fe-46ef-86b9-9125b66e2f1d-grafik.png

        Mutlimedia -> TV
        d3549b5b-2178-48de-aa40-86c03343a04d-grafik.png

        Damit die Navigation und alle Widgets funktionieren, wird vor dem Import der DP

        javascript.0.VIS-Steuerung.Aktuelle_VIS_Seite
        

        benöigt.

        Ebenso sind natürlich alle von mir verwendeten Widgets wichitg:

        ad5673c8-1694-4fe5-9839-ca55c4dd920d-grafik.png
        aba96ff9-f4c4-4291-a479-95ce40906c5b-grafik.png

        Anleitung zum Import der kompletten VIS inkl. meiner Icons:


        2020-08-17-VIS_v3.zip
        Meine_Icons.zip

        1. meine_icons.zip entpacken
        2. 2020-08-17-vis_v3.zip entpacken
        3. Die beiden VIS-Datein und die den Icons Ordner zu einem neuen Zip Archiv zusammefügen
        4. Wie gewohnt das neue Archiv im VIS Editor importieren

        Anleitung zum Import meiner Skripte:


        Voraussetzung für den Skript Import

        • Adapter: Mail, Pushover
        • Objekte für meine Skripts

        Objekte anlegen

        Alle Objekte, mit denen ich in meinen Skripten arbeite, können mit einem Javascript erstellt werden:
        objekte.txt

        • Den Inhalt der TXT-Datei in ein neues Javascript kopieren
        • Das Skript starten
        • Alle Objekte werden angelegt
        • Das Skript wieder stoppen

        Import

        1. Download der Datei 2020-03-17-scripts.zip
        2. Eigene Skripte in Zip Datei exportieren
        3. Beide Archive entpacken und dann die Skripte / Gruppen in einem gemeinsamen Archiv zusammenführen
        4. Import des neu erstellten Archivs

        Bei Fragen einfach im Thread stellen 😉

        Das nächste Projekt wird dann eine VIS fürs Smartphone

        RouwdyR Offline
        RouwdyR Offline
        Rouwdy
        schrieb am zuletzt editiert von
        #501

        @kuddel hallo kuddel ich bin absoluter frischling was das programmieren hier angeht und versuche nun so pö a pö schlau zu werden, mein problem ist schon denke fehlendes grundwissen 😞 , wie genau importiere ich wo genau deine objekte / skripte ? einen mail-adapter hab ich so wie auch die von dir vorgeschlagenen adapter

        Wirklich "WAHRE" Kameradschaft oder Freundschaft wird erst in der Not erkannt.
        Alles andere ist leider meist eine mehr oder weniger flüchtige Bekanntschaft.

        W 1 Antwort Letzte Antwort
        0
        • RouwdyR Rouwdy

          @kuddel hallo kuddel ich bin absoluter frischling was das programmieren hier angeht und versuche nun so pö a pö schlau zu werden, mein problem ist schon denke fehlendes grundwissen 😞 , wie genau importiere ich wo genau deine objekte / skripte ? einen mail-adapter hab ich so wie auch die von dir vorgeschlagenen adapter

          W Offline
          W Offline
          WeiserWolf
          schrieb am zuletzt editiert von
          #502

          @rouwdy Als erstes installierst du mal den Adapter "Script Engine" und startest danach den ioBroker neu. Anschließend erscheint links in der Übersicht der Bereich Skripte.
          Dort gehst du oben auf die drei Punkte --> Skripts importieren und ziehst die heruntergeladene ZIP-Datei per Drag&Drop in den Uploadbereich. Danach sind schon einmal alle Skripts importiert. Dort liegt dann ein Skript "Objekte_anlegen"
          Das startest du einmal kurz und kannst es danach wieder beenden. Dieses Skript legt sämtliche Datenpunkte im Bereich "Objekte" an (javascript.0 in den einzelnen Unterordner sortiert)
          Evtl ist auch hier ein Neustart des ioBroker bzw. der Script-Engine erforderlich.
          Ist zumindest bei mir öfter mal der Fall wenn ich neue Adapter installiere o.ä.

          RouwdyR 1 Antwort Letzte Antwort
          0
          • W WeiserWolf

            @rouwdy Als erstes installierst du mal den Adapter "Script Engine" und startest danach den ioBroker neu. Anschließend erscheint links in der Übersicht der Bereich Skripte.
            Dort gehst du oben auf die drei Punkte --> Skripts importieren und ziehst die heruntergeladene ZIP-Datei per Drag&Drop in den Uploadbereich. Danach sind schon einmal alle Skripts importiert. Dort liegt dann ein Skript "Objekte_anlegen"
            Das startest du einmal kurz und kannst es danach wieder beenden. Dieses Skript legt sämtliche Datenpunkte im Bereich "Objekte" an (javascript.0 in den einzelnen Unterordner sortiert)
            Evtl ist auch hier ein Neustart des ioBroker bzw. der Script-Engine erforderlich.
            Ist zumindest bei mir öfter mal der Fall wenn ich neue Adapter installiere o.ä.

            RouwdyR Offline
            RouwdyR Offline
            Rouwdy
            schrieb am zuletzt editiert von
            #503

            @weiserwolf said in [Vorstellung] Meine dritte VIS:

            Script Engine

            Dank Dir @weiserwolf , werd es ausprobieren.

            Wirklich "WAHRE" Kameradschaft oder Freundschaft wird erst in der Not erkannt.
            Alles andere ist leider meist eine mehr oder weniger flüchtige Bekanntschaft.

            1 Antwort Letzte Antwort
            0
            • maximal1981M Offline
              maximal1981M Offline
              maximal1981
              schrieb am zuletzt editiert von maximal1981
              #504

              Hallo,

              ich habe gerade ein komisches Phänomen.
              Am Abend wird der Rolladen nicht zur korrekten Zeit herunter gefahren. Jedoch sieht laut mir theoretisch alles richtig aus.

              2021-06-19 20:18:00.443  - info: javascript.0 (1506) script.js.smarthome.rolladen.rolladen_tag_nacht: +++ Sonnenuntergang -30: Wonhzimmer Seite auf 0% +++
              

              Unbenannt.PNG

              Selbst die Ausgabe/debug des Cron sieht richtig aus.

              2021-06-19 20:32:02.320  - warn: javascript.0 (1506) script.js.smarthome.rolladen.rolladen_tag_nacht: 31 20 * * *
              

              Zeit am Tablet bzw. ioBroker stimmt auch, was man ja auch im Log sehen kann, dass sie nicht mit der Schließzeit übereinstimmt.

              Jemand eine Idee?

              lg

              K 1 Antwort Letzte Antwort
              0
              • maximal1981M maximal1981

                Hallo,

                ich habe gerade ein komisches Phänomen.
                Am Abend wird der Rolladen nicht zur korrekten Zeit herunter gefahren. Jedoch sieht laut mir theoretisch alles richtig aus.

                2021-06-19 20:18:00.443  - info: javascript.0 (1506) script.js.smarthome.rolladen.rolladen_tag_nacht: +++ Sonnenuntergang -30: Wonhzimmer Seite auf 0% +++
                

                Unbenannt.PNG

                Selbst die Ausgabe/debug des Cron sieht richtig aus.

                2021-06-19 20:32:02.320  - warn: javascript.0 (1506) script.js.smarthome.rolladen.rolladen_tag_nacht: 31 20 * * *
                

                Zeit am Tablet bzw. ioBroker stimmt auch, was man ja auch im Log sehen kann, dass sie nicht mit der Schließzeit übereinstimmt.

                Jemand eine Idee?

                lg

                K Offline
                K Offline
                Kuddel
                schrieb am zuletzt editiert von
                #505

                @maximal1981 kurzer check, ob ich das Problem richtig verstanden habe:

                Die Rolladen sollen um 20:31 Uhr (30 Min vor dem Sonnenuntergang) heruterfahren.

                Der entsprechende Log-Eintrag kommt aver schon um 20:18 Uhr.

                Das sieht für mich so aus, als wenn sich der Cron-Job nicht die richtige Zeit zieht.

                1 Antwort Letzte Antwort
                0
                • maximal1981M Offline
                  maximal1981M Offline
                  maximal1981
                  schrieb am zuletzt editiert von
                  #506

                  ich werde es mal weiter beobachten

                  1 Antwort Letzte Antwort
                  0
                  • H Offline
                    H Offline
                    HoTi
                    schrieb am zuletzt editiert von HoTi
                    #507

                    Hallo zusammen,

                    ich bin auch neu hier und wollte mich mal an die VIS machen, da die Anzeige der Daten für meine Frau erstmal das wichtigste ist. Vorher habe ich alles mit FHEM und TabletUI gemacht, aber da fange ich jetzt nicht wieder mit an.

                    Nun scheitere ich allerdings schon am Import und zwar an den ICONS.
                    Ich meine sie liegen richtig:

                    9f57950c-620b-48b6-9b8e-7bfcdaa5f9a4-image.png

                    aber angezeigt wird mir nix 😞

                    5788ca19-bbf4-49ed-98e8-8ef8b6fd99f6-image.png

                    Was mache ich nun falsch? Nun verbringe ich schon 3 Tage damit, weil ich euch nicht mit so einer Kleinigkeit nerven wollte, aber langsam verzweifle ich.

                    edit
                    Na gut, habe nun rausgefunden das die Wetter ICONS vom Widget kommen, aber die werden trotzdem nicht angezeigt. Bei den Widget Einstellungen von DasWetter schon.
                    Viele Grüße
                    Tim

                    sigi234S 1 Antwort Letzte Antwort
                    0
                    • H HoTi

                      Hallo zusammen,

                      ich bin auch neu hier und wollte mich mal an die VIS machen, da die Anzeige der Daten für meine Frau erstmal das wichtigste ist. Vorher habe ich alles mit FHEM und TabletUI gemacht, aber da fange ich jetzt nicht wieder mit an.

                      Nun scheitere ich allerdings schon am Import und zwar an den ICONS.
                      Ich meine sie liegen richtig:

                      9f57950c-620b-48b6-9b8e-7bfcdaa5f9a4-image.png

                      aber angezeigt wird mir nix 😞

                      5788ca19-bbf4-49ed-98e8-8ef8b6fd99f6-image.png

                      Was mache ich nun falsch? Nun verbringe ich schon 3 Tage damit, weil ich euch nicht mit so einer Kleinigkeit nerven wollte, aber langsam verzweifle ich.

                      edit
                      Na gut, habe nun rausgefunden das die Wetter ICONS vom Widget kommen, aber die werden trotzdem nicht angezeigt. Bei den Widget Einstellungen von DasWetter schon.
                      Viele Grüße
                      Tim

                      sigi234S Online
                      sigi234S Online
                      sigi234
                      Forum Testing Most Active
                      schrieb am zuletzt editiert von
                      #508

                      @hoti

                      Welche Vis Version?
                      Welche Icons?
                      Eigene musst du immer mit den Dateimanager hochladen!

                      Bitte benutzt das Voting rechts unten im Beitrag wenn er euch geholfen hat.
                      Immer Daten sichern!

                      H 1 Antwort Letzte Antwort
                      0
                      • sigi234S sigi234

                        @hoti

                        Welche Vis Version?
                        Welche Icons?
                        Eigene musst du immer mit den Dateimanager hochladen!

                        H Offline
                        H Offline
                        HoTi
                        schrieb am zuletzt editiert von
                        #509

                        @sigi234

                        Ja habe ich auch gemacht. Ich Depp habe nicht Kapiert das die Wetter ICONS nicht in "Meine_Icons" liegen.

                        Aber die Wetter ICONS werden nicht angezeigt weil er die auf einer mir Unbekannten IP Adresse sucht. Wo verdammt muss ich das nur ändern?

                        b18d0c5b-3b58-41bf-8390-e2e20fa957de-image.png

                        GlasfaserG 1 Antwort Letzte Antwort
                        0
                        • H HoTi

                          @sigi234

                          Ja habe ich auch gemacht. Ich Depp habe nicht Kapiert das die Wetter ICONS nicht in "Meine_Icons" liegen.

                          Aber die Wetter ICONS werden nicht angezeigt weil er die auf einer mir Unbekannten IP Adresse sucht. Wo verdammt muss ich das nur ändern?

                          b18d0c5b-3b58-41bf-8390-e2e20fa957de-image.png

                          GlasfaserG Offline
                          GlasfaserG Offline
                          Glasfaser
                          schrieb am zuletzt editiert von
                          #510

                          @hoti

                          https://forum.iobroker.net/topic/30497/vorstellung-meine-dritte-vis/322

                          Synology 918+ 16GB - ioBroker in Docker v9 , VISO auf Trekstor Primebook C13 13,3" , Hikvision Domkameras mit Surveillance Station .. CCU RaspberryMatic in Synology VM .. Zigbee CC2538+CC2592 .. Sonoff .. KNX .. Modbus ..

                          H 1 Antwort Letzte Antwort
                          0
                          • GlasfaserG Glasfaser

                            @hoti

                            https://forum.iobroker.net/topic/30497/vorstellung-meine-dritte-vis/322

                            H Offline
                            H Offline
                            HoTi
                            schrieb am zuletzt editiert von
                            #511

                            @glasfaser
                            Danke.
                            Habe die IP Adresse raus genommen und schon geht es auch.

                            aber irgendwas mach ich noch falsch. Ich habe ganz viele solche überlagerungen:
                            009c5090-c5f2-468c-abf0-d6d7bb717c78-image.png

                            und sowas, im Editor sieht es so aus:

                            177f0cc7-f2d1-425e-8ef2-65fe945eacde-image.png

                            und auf der Webseite dann so:
                            44dcee97-d795-4dba-a5f7-44c397fe7eec-image.png

                            K 1 Antwort Letzte Antwort
                            0
                            • H HoTi

                              @glasfaser
                              Danke.
                              Habe die IP Adresse raus genommen und schon geht es auch.

                              aber irgendwas mach ich noch falsch. Ich habe ganz viele solche überlagerungen:
                              009c5090-c5f2-468c-abf0-d6d7bb717c78-image.png

                              und sowas, im Editor sieht es so aus:

                              177f0cc7-f2d1-425e-8ef2-65fe945eacde-image.png

                              und auf der Webseite dann so:
                              44dcee97-d795-4dba-a5f7-44c397fe7eec-image.png

                              K Offline
                              K Offline
                              Kuddel
                              schrieb am zuletzt editiert von Kuddel
                              #512

                              @hoti ich arbeite oft mit Sichtbarkeiten.

                              Wenn in deiner Umgebung die verwendeten Datenpunkte nicht vorhanden sind, werden immer alle Objekte angezeigt

                              Da hilft nur eines: Schritt für Schritt anpassen

                              1 Antwort Letzte Antwort
                              0
                              • maximal1981M Offline
                                maximal1981M Offline
                                maximal1981
                                schrieb am zuletzt editiert von
                                #513

                                @HoTi
                                wie schon @Kuddel erwähnt hat, es gibt viele Ebenen. Ich habe die Icons Anfangs hin und her geschoben um an die anderen Schichten zu kommen, aber das ist nicht notwendig.
                                Jedes Widget auf einer Seite ist ein Widget in sich. Das muss man immer beachten, und die Ebenen lassen sich im Widget-Editor sehr gut bearbeiten.

                                Unbenannt.PNG

                                Würde mal empfehlen mit der Hauptseite 0000 anzufangen, ich habe viel gelernt, durch dieses VIS, und du hast sicher etliches anzupassen. Den zu 99% passen die Adapter nicht zu deinen, der Aufbau nicht mit deinen vorhandenen Gegebenheiten überein. Mit "etwas" Einarbeitung wird das, aber wenn du so wie ich Neuland betrittst, stelle dich darauf ein, dass hier etliche Zeit reinfließt.

                                Ich habe die Scripte nach Bedarf eingeschaltet und angepasst, da man sonst Zuviel Müll im Log produziert.
                                Nach 2 Monaten habe ich das schon unter anderem im Schlafzimmer umgesetzt (ich arbeite aber nur zeitweise an der Umsetzung):
                                Unbenannt.PNG

                                Man muss auch die IP nicht zwingend wissen, bzw. war das noch nie notwendig.
                                Ich liefere mal Beispiele:

                                • Wetter: /adapter/daswetter/icons/tiempo-weather/galeria1/1.png
                                • Flot:
                                /flot/index.html?l%5B0%5D%5Bid%5D=tado.0.122768.Weather.outsideTemperature.celsius&l%5B0%5D%5Boffset%5D=0&l%5B0%5D%5Baggregate%5D=minmax&l%5B0%5D%5Bcolor%5D=%23FF0000&l%5B0%5D%5Bmin%5D=-20&l%5B0%5D%5Bmax%5D=40&l%5B0%5D%5Bthickness%5D=3&l%5B0%5D%5Bshadowsize%5D=3&l%5B0%5D%5Bunit%5D=%C2%B0C&l%5B0%5D%5Byaxe%5D=right&l%5B0%5D%5Bxaxe%5D=bottom&l%5B0%5D%5BignoreNull%5D=true&l%5B0%5D%5BafterComma%5D=0&l%5B0%5D%5Bdashes%5D=false&l%5B0%5D%5BdashLength%5D=10&l%5B0%5D%5BspaceLength%5D=10&l%5B0%5D%5Bfill%5D=0&l%5B0%5D%5Bmultiplicator%5D=1&timeType=relative&relativeEnd=now&range=10080&live=300&aggregateType=step&aggregateSpan=300&window_bg=%23212121&bg=2&barLabels=topover&hoverDetail=true&timeFormat=%25H%3A%25M+%25a&useComma=false&zoom=false&noedit=true&animation=0&m%5B0%5D%5Bl%5D=0&m%5B0%5D%5Bv%5D=0&m%5B0%5D%5Bf%5D=0&m%5B0%5D%5Bc%5D=black&m%5B0%5D%5Bt%5D=3&m%5B0%5D%5Bs%5D=3&m%5B0%5D%5Bd%5D=&m%5B0%5D%5Bp%5D=l&m%5B0%5D%5Bpy%5D=0&m%5B0%5D%5Bfc%5D=%23FF0000&m%5B0%5D%5Bfs%5D=&m%5B0%5D%5Bvl%5D=0&start=2019-02-09&start_time=15%3A48&end=2019-02-09&end_time=16%3A00&noBorder=noborder&x_labels_color=ffffff&y_labels_color=ffffff&barFontColor=white&titlePos=top%3A35%3Bleft%3A50&titleSize=40px&legColumns=0&legBgOpacity=0&legBg=black&width=380&height=230&border_width=1&titleColor=%23ffffff
                                
                                • ...
                                1 Antwort Letzte Antwort
                                1
                                • K Kuddel

                                  Hallo zusammen,

                                  nach meiner zweiten VIS folgt jetzt meine dritte VIS.

                                  Die größte Neuerung ist ein komplett neues Menü mit Hilfe des Top App Bar Widget. Vielen Dank an dieser Stelle an @Scrounger.

                                  Bestimmt sind immer noch ein paar Fehler drin, aber fertig wird man ja eh nie.

                                  Vieles habe ich aus meiner zweiten VIS übernommen, so dass die Screenshots aus dem Thread oben auch fast noch alle aktuell sind.

                                  Screenshots:


                                  Startseite
                                  90372124-cd0b-40d0-ae6e-b8286ee25672-grafik.png

                                  Menü
                                  52f11cf6-b7f3-49c8-9344-b1a0f89d0eaa-grafik.png
                                  e766325b-8727-48c0-b6e7-9f773f4f246b-grafik.png

                                  BVB Details
                                  423488b3-1367-4ebf-b28e-8b730970dfae-grafik.png

                                  Tablet Details
                                  ac924af2-ac1c-4069-a59e-6a68c8775a3f-grafik.png

                                  System -> ioBroker
                                  eb9f518b-c318-4a00-a66e-6879959792a4-grafik.png

                                  System -> Homematic
                                  1aaaed6f-8e59-4cdc-8bfd-c26185f1c28b-grafik.png

                                  System -> Netzwerk
                                  622fd166-ec5b-4ff3-9cbe-d5a81fd5332b-grafik.png

                                  System -> Geräte
                                  f20ab8dd-18f2-446e-94ac-55a74765e1ca-grafik.png

                                  Details VU
                                  9cdd9c50-f62a-4e3c-b01a-f911d2e8388d-grafik.png

                                  System -> Logs
                                  e190e53e-2a68-4e6d-ae7e-a48d069f809f-grafik.png

                                  System -> VMware
                                  34ffe501-5b74-4b2c-9092-2e1a8ed9f99e-grafik.png

                                  Erdgeschoss -> Wohnzimmer
                                  18c3b9dc-75e4-41c9-9338-ef3c827f4c86-grafik.png

                                  Garten -> Bewässerung
                                  160a9338-d885-42be-8ae8-2d0daa67a8f1-grafik.png

                                  Wetter
                                  840f00c2-b9bb-4f94-be9d-9bb5b0330947-grafik.png

                                  Staubsauger
                                  1343f5bc-1514-44d2-8754-9a6eff483708-grafik.png

                                  Echo Geräte
                                  aebe9414-69fe-46ef-86b9-9125b66e2f1d-grafik.png

                                  Mutlimedia -> TV
                                  d3549b5b-2178-48de-aa40-86c03343a04d-grafik.png

                                  Damit die Navigation und alle Widgets funktionieren, wird vor dem Import der DP

                                  javascript.0.VIS-Steuerung.Aktuelle_VIS_Seite
                                  

                                  benöigt.

                                  Ebenso sind natürlich alle von mir verwendeten Widgets wichitg:

                                  ad5673c8-1694-4fe5-9839-ca55c4dd920d-grafik.png
                                  aba96ff9-f4c4-4291-a479-95ce40906c5b-grafik.png

                                  Anleitung zum Import der kompletten VIS inkl. meiner Icons:


                                  2020-08-17-VIS_v3.zip
                                  Meine_Icons.zip

                                  1. meine_icons.zip entpacken
                                  2. 2020-08-17-vis_v3.zip entpacken
                                  3. Die beiden VIS-Datein und die den Icons Ordner zu einem neuen Zip Archiv zusammefügen
                                  4. Wie gewohnt das neue Archiv im VIS Editor importieren

                                  Anleitung zum Import meiner Skripte:


                                  Voraussetzung für den Skript Import

                                  • Adapter: Mail, Pushover
                                  • Objekte für meine Skripts

                                  Objekte anlegen

                                  Alle Objekte, mit denen ich in meinen Skripten arbeite, können mit einem Javascript erstellt werden:
                                  objekte.txt

                                  • Den Inhalt der TXT-Datei in ein neues Javascript kopieren
                                  • Das Skript starten
                                  • Alle Objekte werden angelegt
                                  • Das Skript wieder stoppen

                                  Import

                                  1. Download der Datei 2020-03-17-scripts.zip
                                  2. Eigene Skripte in Zip Datei exportieren
                                  3. Beide Archive entpacken und dann die Skripte / Gruppen in einem gemeinsamen Archiv zusammenführen
                                  4. Import des neu erstellten Archivs

                                  Bei Fragen einfach im Thread stellen 😉

                                  Das nächste Projekt wird dann eine VIS fürs Smartphone

                                  H Offline
                                  H Offline
                                  HoTi
                                  schrieb am zuletzt editiert von HoTi
                                  #514

                                  @kuddel

                                  Hallo Kuddel,

                                  ich versuche gerade dein VIS "voranzupassen" also im Texteditor.
                                  Kannst du mir sagen was bei dir hinter deinen IP Adressen steckt? Dann kann ich das bei mir passend anpassen, wenn ich das Gerät auch habe.

                                  Folgende IP Adressen habe ich in deinem Code gefunden
                                  192.168.4.1
                                  192.168.4.10
                                  192.168.4.11
                                  192.168.4.12
                                  192.168.4.17
                                  192.168.4.20
                                  192.168.4.24
                                  192.168.4.25
                                  192.168.4.34
                                  192.168.4.35
                                  192.168.4.37
                                  192.168.4.39
                                  192.168.4.41
                                  192.168.4.42
                                  192.168.4.45
                                  192.168.4.5
                                  192.168.4.60
                                  192.168.4.61
                                  192.168.4.62
                                  192.168.4.64
                                  192.168.4.65
                                  192.168.4.66
                                  192.168.4.67
                                  192.168.4.71
                                  192.168.4.72

                                  K 1 Antwort Letzte Antwort
                                  0
                                  • H HoTi

                                    @kuddel

                                    Hallo Kuddel,

                                    ich versuche gerade dein VIS "voranzupassen" also im Texteditor.
                                    Kannst du mir sagen was bei dir hinter deinen IP Adressen steckt? Dann kann ich das bei mir passend anpassen, wenn ich das Gerät auch habe.

                                    Folgende IP Adressen habe ich in deinem Code gefunden
                                    192.168.4.1
                                    192.168.4.10
                                    192.168.4.11
                                    192.168.4.12
                                    192.168.4.17
                                    192.168.4.20
                                    192.168.4.24
                                    192.168.4.25
                                    192.168.4.34
                                    192.168.4.35
                                    192.168.4.37
                                    192.168.4.39
                                    192.168.4.41
                                    192.168.4.42
                                    192.168.4.45
                                    192.168.4.5
                                    192.168.4.60
                                    192.168.4.61
                                    192.168.4.62
                                    192.168.4.64
                                    192.168.4.65
                                    192.168.4.66
                                    192.168.4.67
                                    192.168.4.71
                                    192.168.4.72

                                    K Offline
                                    K Offline
                                    Kuddel
                                    schrieb am zuletzt editiert von Kuddel
                                    #515

                                    @HoTi
                                    192.168.4.1 FritzBox
                                    192.168.4.10 WinNAS (WindowsNAS)
                                    192.168.4.11 Xpenology (virtuelles Synology NAS)
                                    192.168.4.12 SynologyNAS
                                    192.168.4.17 Tablet
                                    192.168.4.20 QNAP-NAS
                                    192.168.4.24 VU+_TV_Recever
                                    192.168.4.25 Logitech_Harmony_Hub
                                    192.168.4.34
                                    192.168.4.35
                                    192.168.4.37
                                    192.168.4.39
                                    192.168.4.41 ESX-Test-1
                                    192.168.4.42 ESX-Test-2
                                    192.168.4.45 ESX-NUC
                                    192.168.4.5 CCU
                                    192.168.4.60
                                    192.168.4.61
                                    192.168.4.62 Unifi-Switch-Rack
                                    192.168.4.64 Unifi-Switch-Wohnzimmer
                                    192.168.4.65 Unifi-AP-OG
                                    192.168.4.66 Unifi-AP-EG
                                    192.168.4.67 Unifi-AP-Pavillon
                                    192.168.4.71 Kamera-Balkon
                                    192.168.4.72 Kamera-Haustuer

                                    Die IPs ohne Beschreibung habe ich aktuell nicht mehr in Verwendung und weiß daher nicht mehr, weclhes Geräte sie zum Zeitpunkt des Hochladens der VIS verwendet haben.

                                    H 1 Antwort Letzte Antwort
                                    0
                                    • K Kuddel

                                      @HoTi
                                      192.168.4.1 FritzBox
                                      192.168.4.10 WinNAS (WindowsNAS)
                                      192.168.4.11 Xpenology (virtuelles Synology NAS)
                                      192.168.4.12 SynologyNAS
                                      192.168.4.17 Tablet
                                      192.168.4.20 QNAP-NAS
                                      192.168.4.24 VU+_TV_Recever
                                      192.168.4.25 Logitech_Harmony_Hub
                                      192.168.4.34
                                      192.168.4.35
                                      192.168.4.37
                                      192.168.4.39
                                      192.168.4.41 ESX-Test-1
                                      192.168.4.42 ESX-Test-2
                                      192.168.4.45 ESX-NUC
                                      192.168.4.5 CCU
                                      192.168.4.60
                                      192.168.4.61
                                      192.168.4.62 Unifi-Switch-Rack
                                      192.168.4.64 Unifi-Switch-Wohnzimmer
                                      192.168.4.65 Unifi-AP-OG
                                      192.168.4.66 Unifi-AP-EG
                                      192.168.4.67 Unifi-AP-Pavillon
                                      192.168.4.71 Kamera-Balkon
                                      192.168.4.72 Kamera-Haustuer

                                      Die IPs ohne Beschreibung habe ich aktuell nicht mehr in Verwendung und weiß daher nicht mehr, weclhes Geräte sie zum Zeitpunkt des Hochladens der VIS verwendet haben.

                                      H Offline
                                      H Offline
                                      HoTi
                                      schrieb am zuletzt editiert von
                                      #516

                                      @kuddel
                                      Super vielen Dank!

                                      1 Antwort Letzte Antwort
                                      0
                                      • K Kuddel

                                        Hallo zusammen,

                                        nach meiner zweiten VIS folgt jetzt meine dritte VIS.

                                        Die größte Neuerung ist ein komplett neues Menü mit Hilfe des Top App Bar Widget. Vielen Dank an dieser Stelle an @Scrounger.

                                        Bestimmt sind immer noch ein paar Fehler drin, aber fertig wird man ja eh nie.

                                        Vieles habe ich aus meiner zweiten VIS übernommen, so dass die Screenshots aus dem Thread oben auch fast noch alle aktuell sind.

                                        Screenshots:


                                        Startseite
                                        90372124-cd0b-40d0-ae6e-b8286ee25672-grafik.png

                                        Menü
                                        52f11cf6-b7f3-49c8-9344-b1a0f89d0eaa-grafik.png
                                        e766325b-8727-48c0-b6e7-9f773f4f246b-grafik.png

                                        BVB Details
                                        423488b3-1367-4ebf-b28e-8b730970dfae-grafik.png

                                        Tablet Details
                                        ac924af2-ac1c-4069-a59e-6a68c8775a3f-grafik.png

                                        System -> ioBroker
                                        eb9f518b-c318-4a00-a66e-6879959792a4-grafik.png

                                        System -> Homematic
                                        1aaaed6f-8e59-4cdc-8bfd-c26185f1c28b-grafik.png

                                        System -> Netzwerk
                                        622fd166-ec5b-4ff3-9cbe-d5a81fd5332b-grafik.png

                                        System -> Geräte
                                        f20ab8dd-18f2-446e-94ac-55a74765e1ca-grafik.png

                                        Details VU
                                        9cdd9c50-f62a-4e3c-b01a-f911d2e8388d-grafik.png

                                        System -> Logs
                                        e190e53e-2a68-4e6d-ae7e-a48d069f809f-grafik.png

                                        System -> VMware
                                        34ffe501-5b74-4b2c-9092-2e1a8ed9f99e-grafik.png

                                        Erdgeschoss -> Wohnzimmer
                                        18c3b9dc-75e4-41c9-9338-ef3c827f4c86-grafik.png

                                        Garten -> Bewässerung
                                        160a9338-d885-42be-8ae8-2d0daa67a8f1-grafik.png

                                        Wetter
                                        840f00c2-b9bb-4f94-be9d-9bb5b0330947-grafik.png

                                        Staubsauger
                                        1343f5bc-1514-44d2-8754-9a6eff483708-grafik.png

                                        Echo Geräte
                                        aebe9414-69fe-46ef-86b9-9125b66e2f1d-grafik.png

                                        Mutlimedia -> TV
                                        d3549b5b-2178-48de-aa40-86c03343a04d-grafik.png

                                        Damit die Navigation und alle Widgets funktionieren, wird vor dem Import der DP

                                        javascript.0.VIS-Steuerung.Aktuelle_VIS_Seite
                                        

                                        benöigt.

                                        Ebenso sind natürlich alle von mir verwendeten Widgets wichitg:

                                        ad5673c8-1694-4fe5-9839-ca55c4dd920d-grafik.png
                                        aba96ff9-f4c4-4291-a479-95ce40906c5b-grafik.png

                                        Anleitung zum Import der kompletten VIS inkl. meiner Icons:


                                        2020-08-17-VIS_v3.zip
                                        Meine_Icons.zip

                                        1. meine_icons.zip entpacken
                                        2. 2020-08-17-vis_v3.zip entpacken
                                        3. Die beiden VIS-Datein und die den Icons Ordner zu einem neuen Zip Archiv zusammefügen
                                        4. Wie gewohnt das neue Archiv im VIS Editor importieren

                                        Anleitung zum Import meiner Skripte:


                                        Voraussetzung für den Skript Import

                                        • Adapter: Mail, Pushover
                                        • Objekte für meine Skripts

                                        Objekte anlegen

                                        Alle Objekte, mit denen ich in meinen Skripten arbeite, können mit einem Javascript erstellt werden:
                                        objekte.txt

                                        • Den Inhalt der TXT-Datei in ein neues Javascript kopieren
                                        • Das Skript starten
                                        • Alle Objekte werden angelegt
                                        • Das Skript wieder stoppen

                                        Import

                                        1. Download der Datei 2020-03-17-scripts.zip
                                        2. Eigene Skripte in Zip Datei exportieren
                                        3. Beide Archive entpacken und dann die Skripte / Gruppen in einem gemeinsamen Archiv zusammenführen
                                        4. Import des neu erstellten Archivs

                                        Bei Fragen einfach im Thread stellen 😉

                                        Das nächste Projekt wird dann eine VIS fürs Smartphone

                                        H Offline
                                        H Offline
                                        HoTi
                                        schrieb am zuletzt editiert von
                                        #517

                                        @kuddel

                                        Kannst du mir den Blockly code vom Tablet nochmal extrahieren.
                                        den kann ich bei mir nicht ändern.

                                        6204c306-e0fb-4119-85ad-00e302d38a65-image.png

                                        K 1 Antwort Letzte Antwort
                                        0
                                        • H HoTi

                                          @kuddel

                                          Kannst du mir den Blockly code vom Tablet nochmal extrahieren.
                                          den kann ich bei mir nicht ändern.

                                          6204c306-e0fb-4119-85ad-00e302d38a65-image.png

                                          K Offline
                                          K Offline
                                          Kuddel
                                          schrieb am zuletzt editiert von
                                          #518

                                          @HoTi

                                          tablet_blockly_skript.txt

                                          H 1 Antwort Letzte Antwort
                                          0
                                          Antworten
                                          • In einem neuen Thema antworten
                                          Anmelden zum Antworten
                                          • Älteste zuerst
                                          • Neuste zuerst
                                          • Meiste Stimmen


                                          Support us

                                          ioBroker
                                          Community Adapters
                                          Donate

                                          716

                                          Online

                                          32.4k

                                          Benutzer

                                          81.4k

                                          Themen

                                          1.3m

                                          Beiträge
                                          Community
                                          Impressum | Datenschutz-Bestimmungen | Nutzungsbedingungen
                                          ioBroker Community 2014-2025
                                          logo
                                          • Anmelden

                                          • Du hast noch kein Konto? Registrieren

                                          • Anmelden oder registrieren, um zu suchen
                                          • Erster Beitrag
                                            Letzter Beitrag
                                          0
                                          • Aktuell
                                          • Tags
                                          • Ungelesen 0
                                          • Kategorien
                                          • Unreplied
                                          • Beliebt
                                          • GitHub
                                          • Docu
                                          • Hilfe