Skip to content
  • Home
  • 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

Community Forum

  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.4k

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

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

[Vorstellung] Meine dritte VIS

Geplant Angeheftet Gesperrt Verschoben Praktische Anwendungen (Showcase)
visvis projekte
640 Beiträge 83 Kommentatoren 185.3k 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

    @chriss2007 dann schauen wir un das mal an. Poste mal bitte einen Screenshot vom Logo und gib mal deinen DP zu Anwesenheit an

    C Offline
    C Offline
    chriss2007
    schrieb am zuletzt editiert von chriss2007
    #567

    @kuddel 2.jpg 1.jpg

    habe Ihre anwesenheit auf meine erst mal gemacht zum rum testen, aber auch auf Ihrer ist das gleiche verhalten mit dem Logo.

    K 1 Antwort Letzte Antwort
    0
    • C chriss2007

      @kuddel 2.jpg 1.jpg

      habe Ihre anwesenheit auf meine erst mal gemacht zum rum testen, aber auch auf Ihrer ist das gleiche verhalten mit dem Logo.

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

      @chriss2007 check mal color bei CSS-Ränder. Da ist auch noch ein DP hinterlegt

      ef5da4fa-67c4-4ce5-9de2-04e05031e5d2-grafik.png

      C 1 Antwort Letzte Antwort
      0
      • K Kuddel

        @chriss2007 check mal color bei CSS-Ränder. Da ist auch noch ein DP hinterlegt

        ef5da4fa-67c4-4ce5-9de2-04e05031e5d2-grafik.png

        C Offline
        C Offline
        chriss2007
        schrieb am zuletzt editiert von
        #569

        @kuddel dort habe ich diese jeweils auch angepasst gehabt.

        K 1 Antwort Letzte Antwort
        0
        • C chriss2007

          @kuddel dort habe ich diese jeweils auch angepasst gehabt.

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

          @chriss2007 dann bleibt nur noch

          f97e6cf7-0c24-4933-b1d3-1d151cd2baea-grafik.png

          C 2 Antworten Letzte Antwort
          0
          • K Kuddel

            @chriss2007 dann bleibt nur noch

            f97e6cf7-0c24-4933-b1d3-1d151cd2baea-grafik.png

            C Offline
            C Offline
            chriss2007
            schrieb am zuletzt editiert von
            #571

            @kuddel habe mal die Anwesenheit komplett neu gemacht. Jetzt gehen die logos einwandfrei.

            1 Antwort Letzte Antwort
            1
            • K Kuddel

              @chriss2007 dann bleibt nur noch

              f97e6cf7-0c24-4933-b1d3-1d151cd2baea-grafik.png

              C Offline
              C Offline
              chriss2007
              schrieb am zuletzt editiert von
              #572

              @kuddel Ich muss dich noch mal stören, einzie wo es jetzt noch hängt an der uptime von motioneye und der ccu. der schreibt mir keine werde in denn Datenpunkt. anscheinend klappt die abfrage nicht. wenn ich in Putty abfrage geht es einwandfrei!

              uptime.jpg

              K 1 Antwort Letzte Antwort
              0
              • C chriss2007

                @kuddel Ich muss dich noch mal stören, einzie wo es jetzt noch hängt an der uptime von motioneye und der ccu. der schreibt mir keine werde in denn Datenpunkt. anscheinend klappt die abfrage nicht. wenn ich in Putty abfrage geht es einwandfrei!

                uptime.jpg

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

                @chriss2007 die Abfrage ich mittlweile aus BLockly herausgelöst und verwendet dafür den Adapter Linux-Control.

                Da kann man dann eigene Befehle hinterlegen

                C 1 Antwort Letzte Antwort
                1
                • K Kuddel

                  @chriss2007 die Abfrage ich mittlweile aus BLockly herausgelöst und verwendet dafür den Adapter Linux-Control.

                  Da kann man dann eigene Befehle hinterlegen

                  C Offline
                  C Offline
                  chriss2007
                  schrieb am zuletzt editiert von
                  #574

                  @kuddel den Adapter habe ich mir auch schon angeschaut, aber will dort auch nicht. anscheinend hat es mit der ssh zu tun. ich finde aber nicht die ursache dafür

                  K 1 Antwort Letzte Antwort
                  0
                  • C chriss2007

                    @kuddel den Adapter habe ich mir auch schon angeschaut, aber will dort auch nicht. anscheinend hat es mit der ssh zu tun. ich finde aber nicht die ursache dafür

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

                    @chriss2007 was meldet der Adapter denn, wenn du was anfragen willst?

                    C 1 Antwort Letzte Antwort
                    1
                    • K Kuddel

                      @chriss2007 was meldet der Adapter denn, wenn du was anfragen willst?

                      C Offline
                      C Offline
                      chriss2007
                      schrieb am zuletzt editiert von
                      #576

                      @kuddel der Adapter sagt laut Protokoll das er fertig ist, aber Datenpunkt ist leer
                      Protokol.jpg objekt.jpg adapter.jpg

                      K 1 Antwort Letzte Antwort
                      0
                      • C chriss2007

                        @kuddel der Adapter sagt laut Protokoll das er fertig ist, aber Datenpunkt ist leer
                        Protokol.jpg objekt.jpg adapter.jpg

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

                        @chriss2007 so sieht es bei mir aus für z.B. meine CCU

                        3f14e53c-6293-4bea-83b8-1966a18b744d-grafik.png

                        CPU

                        grep 'cpu ' /proc/stat | awk '{usage=($2+$4)*100/($2+$4+$5)} {printf("%.2f\n",usage)}'
                        

                        RAM

                        free | grep Mem | awk '{usage=($3/$2 * 100.0)} END {printf("%.2f\n",usage)}'
                        

                        Uptime

                        awk '{printf("%u Tage, %02u Std, %02u Min\n",int($1/60/60/24),int($1%(60*60*24)/60/60),int(($1%(60*60))/60))}' /proc/uptime
                        
                        C 2 Antworten Letzte Antwort
                        1
                        • K Kuddel

                          @chriss2007 so sieht es bei mir aus für z.B. meine CCU

                          3f14e53c-6293-4bea-83b8-1966a18b744d-grafik.png

                          CPU

                          grep 'cpu ' /proc/stat | awk '{usage=($2+$4)*100/($2+$4+$5)} {printf("%.2f\n",usage)}'
                          

                          RAM

                          free | grep Mem | awk '{usage=($3/$2 * 100.0)} END {printf("%.2f\n",usage)}'
                          

                          Uptime

                          awk '{printf("%u Tage, %02u Std, %02u Min\n",int($1/60/60/24),int($1%(60*60*24)/60/60),int(($1%(60*60))/60))}' /proc/uptime
                          
                          C Offline
                          C Offline
                          chriss2007
                          schrieb am zuletzt editiert von
                          #578

                          @kuddel fehler gefunden und läuft auch jetzt.

                          1 Antwort Letzte Antwort
                          0
                          • K Kuddel

                            @chriss2007 so sieht es bei mir aus für z.B. meine CCU

                            3f14e53c-6293-4bea-83b8-1966a18b744d-grafik.png

                            CPU

                            grep 'cpu ' /proc/stat | awk '{usage=($2+$4)*100/($2+$4+$5)} {printf("%.2f\n",usage)}'
                            

                            RAM

                            free | grep Mem | awk '{usage=($3/$2 * 100.0)} END {printf("%.2f\n",usage)}'
                            

                            Uptime

                            awk '{printf("%u Tage, %02u Std, %02u Min\n",int($1/60/60/24),int($1%(60*60*24)/60/60),int(($1%(60*60))/60))}' /proc/uptime
                            
                            C Offline
                            C Offline
                            chriss2007
                            schrieb am zuletzt editiert von
                            #579

                            @kuddel Du hast die Adapter abfrage drin. kann man es ändern das unter 0_Userdata diese erstellt? aktuell sind die im javascript.

                            K 1 Antwort Letzte Antwort
                            0
                            • C chriss2007

                              @kuddel Du hast die Adapter abfrage drin. kann man es ändern das unter 0_Userdata diese erstellt? aktuell sind die im javascript.

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

                              @chriss2007

                              // 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('0_userdata.0.adapter_infos.Anzahl', 0, { name: 'Anzahl', desc: 'Anzahl der Adapter', type: 'number', unit: '', min: '0', max: '255', role: '',read: true, write: true });
                                 createState('0_userdata.0.adapter_infos.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.synology.1.alive');
                                     var check11 = id.indexOf('system.adapter.yamaha.0.alive');
                                 	var check12 = id.indexOf('system.adapter.vis.0.alive');
                              
                                     var check = check1 + check2 + check3 + check4 + check5 + check6 + check7 + check8 + check9 + check10 + check11 + check12;
                              
                                     //Abfrage nur ausführen, wenn Instanz nicht ausgeklammert ist
                                     if(check == -12){
                                         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="0_userdata.0.adapter_infos.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}
                                         // Synology
                                         if (instanzname == 'synology.0 alive') {devicenameName='XPEnology'; 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="0_userdata.0.adapter_infos.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="0_userdata.0.adapter_infos.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="0_userdata.0.adapter_infos.Adapter"+counter.toString()+".Uptime";          
                                 		createState(devicename, 'empty', { name: 'Uptime', desc: '', type: 'string', role: '',read: true, write: true });
                                 		setStateDelayed(devicename, uptime, 800);
                                 		//MemUsed setzen
                                 		//devicename="0_userdata.0.adapter_infos.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="0_userdata.0.adapter_infos.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="0_userdata.0.adapter_infos.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="0_userdata.0.adapter_infos.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="0_userdata.0.vis-status.alle_adapter_gestartet";
                                 if(on == counter){setState(visstatus, true);}
                                 //if(on == counter -1){setState(visstatus, true);}
                                 else{setState(visstatus, false);}
                                 
                                 
                                 setStateDelayed('0_userdata.0.adapter_infos.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:"0_userdata.0.adapter_infos.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);        
                                 }
                              });   
                              

                              1 Antwort Letzte Antwort
                              1
                              • C Offline
                                C Offline
                                chriss2007
                                schrieb am zuletzt editiert von chriss2007
                                #581

                                Habe die Ursache gefunden, ein Adapter hat es nicht richtig Runtergeschmiesen.

                                Kann mir wer helfen von euch? Ich habe das Problem seit dem ich denn IOT Adapter installiert habe. Wenn dieser Installiert ist erstellt er bei der Adapter Abfrage nur bis "Adapter4". Habe Ihne Test halber deinstalliert. Da erstellt er alle bis ca 32....cloud.jpg

                                K 1 Antwort Letzte Antwort
                                0
                                • D djsirius

                                  @kuddel ich traue es mich gar nicht zur schreiben, aber die Rolladen fahren runter aber nicht hoch! :thinking_face:

                                  A Offline
                                  A Offline
                                  Aachen1305
                                  schrieb am zuletzt editiert von Aachen1305
                                  #582

                                  @djsirius ich habe genau das selbe Problem, wie Du. Die Rollos fahren runter, aber nicht hoch. Hast Du Du da schon ne Lösung gefunden?

                                  C 2 Antworten Letzte Antwort
                                  0
                                  • A Aachen1305

                                    @djsirius ich habe genau das selbe Problem, wie Du. Die Rollos fahren runter, aber nicht hoch. Hast Du Du da schon ne Lösung gefunden?

                                    C Offline
                                    C Offline
                                    chriss2007
                                    schrieb am zuletzt editiert von
                                    #583

                                    @aachen1305 mit denn Rollos hat das bei mir nix zu tun! ich kann dir auch leider nicht helfen da ich bei mir direkt über die HM-IP Aktoren dort Arbeite.

                                    1 Antwort Letzte Antwort
                                    0
                                    • A Aachen1305

                                      @djsirius ich habe genau das selbe Problem, wie Du. Die Rollos fahren runter, aber nicht hoch. Hast Du Du da schon ne Lösung gefunden?

                                      C Offline
                                      C Offline
                                      chriss2007
                                      schrieb am zuletzt editiert von
                                      #584

                                      @aachen1305 Kannst ja aber mal erzählen was genau das Problem ist und welche Geräte du nutzt? und was du an Fehler bekommst.

                                      A 1 Antwort Letzte Antwort
                                      0
                                      • C chriss2007

                                        @aachen1305 Kannst ja aber mal erzählen was genau das Problem ist und welche Geräte du nutzt? und was du an Fehler bekommst.

                                        A Offline
                                        A Offline
                                        Aachen1305
                                        schrieb am zuletzt editiert von
                                        #585

                                        @chriss2007
                                        ich arbeite mit den Xiaomi Fenstersensoren sowie Shelly 2.5 für die Rollos. Das Lustige ist ja dass ich keine Fehler angezeigt bekomme. Die Rollos fahren abends runter wie es sein soll, aber am nächsten Morgen nicht mehr hoch.
                                        Ich werde heute abend das Skript einfach mal neu installieren und schauen ob es dann klappt.

                                        C 1 Antwort Letzte Antwort
                                        0
                                        • C chriss2007

                                          Habe die Ursache gefunden, ein Adapter hat es nicht richtig Runtergeschmiesen.

                                          Kann mir wer helfen von euch? Ich habe das Problem seit dem ich denn IOT Adapter installiert habe. Wenn dieser Installiert ist erstellt er bei der Adapter Abfrage nur bis "Adapter4". Habe Ihne Test halber deinstalliert. Da erstellt er alle bis ca 32....cloud.jpg

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

                                          @chriss2007 anbei einmal meine aktuell verwendete Version zur Abfrage der Adapter

                                          // 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('0_userdata.0.adapter_infos.Anzahl', 0, { name: 'Anzahl', desc: 'Anzahl der Adapter', type: 'number', unit: '', min: '0', max: '255', role: '',read: true, write: true });
                                             createState('0_userdata.0.adapter_infos.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.synology.1.alive');
                                                 var check11 = id.indexOf('system.adapter.yamaha.0.alive');
                                             	var check12 = id.indexOf('system.adapter.vis.0.alive');
                                          
                                                 var check = check1 + check2 + check3 + check4 + check5 + check6 + check7 + check8 + check9 + check10 + check11 + check12;
                                          
                                                 //Abfrage nur ausführen, wenn Instanz nicht ausgeklammert ist
                                                 if(check == -12){
                                                     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="0_userdata.0.adapter_infos.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 = "/vis.0/VIS_v3/Meine_Icons/Adapter_Icons/homematic.png";}
                                             		//HomeMatic
                                             		if (instanzname == 'hm-rpc.0 alive') {var bild = "/vis.0/VIS_v3/Meine_Icons/Adapter_Icons/homematic.png";}
                                             		//HomeMatic-IP
                                             		if (instanzname == 'hm-rpc.1 alive') {var bild = "/vis.0/VIS_v3/Meine_Icons/Adapter_Icons/homematic_ip.jpg";}
                                                     //Homepilot
                                                     if (instanzname == 'homepilot20.0 alive') {var bild = "/vis.0/VIS_v3/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}
                                                     // Synology
                                                     if (instanzname == 'synology.0 alive') {devicenameName='XPEnology'; 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="0_userdata.0.adapter_infos.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="0_userdata.0.adapter_infos.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="0_userdata.0.adapter_infos.Adapter"+counter.toString()+".Uptime";          
                                             		createState(devicename, 'empty', { name: 'Uptime', desc: '', type: 'string', role: '',read: true, write: true });
                                             		setStateDelayed(devicename, uptime, 800);
                                             		//MemUsed setzen
                                             		//devicename="0_userdata.0.adapter_infos.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="0_userdata.0.adapter_infos.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="0_userdata.0.adapter_infos.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="0_userdata.0.adapter_infos.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="0_userdata.0.vis-status.alle_adapter_gestartet";
                                             if(on == counter){setState(visstatus, true);}
                                             //if(on == counter -1){setState(visstatus, true);}
                                             else{setState(visstatus, false);}
                                             
                                             
                                             setStateDelayed('0_userdata.0.adapter_infos.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:"0_userdata.0.adapter_infos.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);        
                                             }
                                          });   
                                          

                                          Du müsstest den Adapter wohl von der Abfrage ausklammer, da er keinen Alive Objekt hat.

                                          Bitte unter Zeile 29 ergänzen:

                                          var check13 = id.indexOf('system.adapter.cloud.0.alive');
                                          

                                          und in Zeile 30

                                          var check = check1 + check2 + check3 + check4 + check5 + check6 + check7 + check8 + check9 + check10 + check11 + check12 + check13;
                                          

                                          Dann wird der Adapter nicht mehr abgefragt

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


                                          Support us

                                          ioBroker
                                          Community Adapters
                                          Donate

                                          271

                                          Online

                                          32.4k

                                          Benutzer

                                          81.4k

                                          Themen

                                          1.3m

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

                                          • Du hast noch kein Konto? Registrieren

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