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

donate donate
  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.5k

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

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

[Vorstellung] Meine dritte VIS

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

    @marhal das ist meine aktuelle Version:

    // Liest die ioBroker Adapter aus und legt verschiedenen State's an.
    
    //on({id:"system.adapter.admin.0.uptime",change:'any'}, function (obj) {
    on({id:"system.adapter.admin.0.uptime",change:'any'}, function (obj) {
       createState('Adapter.Anzahl', 0, { name: 'Anzahl', desc: 'Anzahl der Adapter', type: 'number', unit: '', min: '0', max: '255', role: '',read: true, write: true });
       createState('Adapter.AdapterNummer', 0, { name: 'Adapter zum schalten', desc: 'Adapter zum schalten', type: 'number', unit: '', min: '0', max: '255', role: '',read: true, write: true });    
       //var counterAlt = getState("javascript.0.Adapter.Anzahl").val;
       var counter =0;
       var on = 0
       var manuell=0	
    
       var cacheSelector = $('[id=system.adapter.*.alive]');    
       cacheSelector.each(function(id, i) {        
           var devicename = getObject(id).common.name; 
       	
       	//Instanzen ausklammern
       	instanz0 = devicename.indexOf('daswetter');
       	instanz1 = devicename.indexOf('dwd');
           instanz2 = devicename.indexOf('ical');
       	instanz3 = devicename.indexOf('feiertage');
       	instanz4 = devicename.indexOf('snmp.1');
           instanz5 = devicename.indexOf('vis.0');
           instanz6 = devicename.indexOf('yamaha.0');
       	if(instanz0 !=0 && instanz1 != 0 && instanz2 !=0 && instanz3 != 0 && instanz4 != 0 && instanz5 !=0 && instanz6 !=0){
       	
       		var devicenameName=devicename;
       		var instanzname=getObject(id).common.name;
       		var test = devicenameName;
       		var devicename_array = devicenameName.split(' ');        
       		devicenameName = devicename_array[0];
       		counter = counter+1; 
       			
       		var strStatePath = "system.adapter." + devicenameName + ".alive";
       		if (isState(strStatePath, true)) {
       			var uptime = getState("system.adapter." + devicenameName + ".uptime").val;
       			var tage = Math.floor(uptime / (24*3600));
       			var stunden = Math.floor((uptime % (24*3600))/3600);
       			var minuten = Math.floor((uptime % (3600))/60);
       			//var sekunden = Math.floor(uptime % 60);      
       			if (stunden < 10) {stunden = "0"+stunden};
                   if (minuten < 10) {minuten = "0"+minuten};				
       			if (tage == 1) {uptime = tage.toString()+" Tag, "+stunden.toString()+" Std, "+minuten.toString()+" Min ";};
       			if (tage != 1) {uptime = tage.toString()+" Tage, "+stunden.toString()+" Std, "+minuten.toString()+" Min ";}
       			//var total = getState("system.adapter." + devicenameName + ".memHeapTotal").val;
       			//var used = getState("system.adapter." + devicenameName + ".memHeapUsed").val;
       			//var rss = getState("system.adapter." + devicenameName + ".memRss").val;
       			var connect = getState("system.adapter." + devicenameName + ".alive").val;            
    
       			if(connect == false){var con = 0;}
       			else {                
       				var con = 1;
       				var strStatePath = devicenameName + ".info.connection";
       				if (isState(strStatePath, true)) {
       					var connectS = getState(devicenameName + ".info.connection").val;
       					if (connectS == false) {
       						con = 2;
       					}                                                                        
       				} 
       			}
       			if(con==1) {on = on + 1}
       								  
       		}       
       		
       		devicename="Adapter.Adapter"+counter.toString()+".KompletterNameAdapter";
       		createState(devicename, 'empty', { name: 'Kompletter Name des Adapters', desc: '', type: 'string', role: '',read: true, write: true }); 
       		setStateDelayed(devicename, devicenameName, 800);
       		
       		var contentstring = devicenameName;
       		var suchstring = /(ical)/g; 
       		var suchergebnis = suchstring.test( contentstring );
       		
       		if (suchergebnis != true) {
       			var devicename_array = devicenameName.split('.');        
       			devicenameName = devicename_array[0];
       		}    
    
       		if (devicenameName == "daswetter") {
       			var bild = "/" + devicenameName + ".admin/" + devicenameName + "com.png";
       		} else if (suchergebnis != false) {
       			var devicename_array = devicenameName.split('.');        
       			var icalName = devicename_array[0];        
       			var bild = "/" + icalName + ".admin/" + icalName + ".png";
       		} else {
       			var bild = "/" + devicenameName + ".admin/" + devicenameName + ".png";
       		}
       		
       		//Alexa2
       		if (devicenameName == 'alexa2') {var bild = "/" + devicenameName + ".admin/" + "alexa.png";}
       		//FritzDECT
       		if (devicenameName == 'fritzdect') {var bild = "/" + devicenameName + ".admin/" + "fritzdect_logo.png";}
       		//FullyBrowser
       		if (devicenameName == 'fullybrowser') {var bild = "/" + devicenameName + ".admin/" + "fully.png";}
       		//HM-Rega
       		//if (devicenameName == 'hm-rega') {var bild = "/" + devicenameName + ".admin/" + "homematic.png";}
       		if (devicenameName == 'hm-rega') {var bild = "/vis.0/VIS/Meine_Icons/Adapter_Icons/homematic.gif";}
       		//HomeMatic
       		//if (instanzname == 'hm-rpc.0 alive') {var bild = "/" + devicenameName + ".admin/" + "homematic.png";}
       		if (instanzname == 'hm-rpc.0 alive') {var bild = "/vis.0/VIS/Meine_Icons/Adapter_Icons/homematic.gif";}
       		//HomeMatic-IP
       		//if (instanzname == 'hm-rpc.1 alive') {var bild = "/" + devicenameName + ".admin/" + "homematic.png";}
       		if (instanzname == 'hm-rpc.1 alive') {var bild = "/vis.0/VIS/Meine_Icons/Adapter_Icons/homematic_ip.jpg";}
       		//UPNP
       		if (devicenameName == 'upnp') {var bild = "/" + devicenameName + ".admin/" + "upnp-discovery.png";}
               //Pushover.1
       		if (instanzname == 'pushover.1 alive') {var bild = "/mihome-vacuum.admin/mihome-vacuum.png";}
               //Pushover.2
       		if (instanzname == 'pushover.2 alive') {var bild = "/daswetter.admin/daswettercom.png";}
       		
    
    
               ///////////////////////
       		//AdapterName anpassen
               ////////////////////////
       		            
               //DasWetter
       		if (instanzname == 'daswetter.0 alive') {devicenameName='DasWetter'; manuell=1}
       		//DWD
       		if (instanzname == 'dwd.0 alive') {devicenameName='DWD'; manuell=1}
       		//HM-REGA
       		if (instanzname == 'hm-rega.0 alive') {devicenameName='HM-Rega'; manuell=1}			
       		//HM-RPC.0
       		if (instanzname == 'hm-rpc.0 alive') {devicenameName='HomeMatic'; manuell=1}
       		//HM-RPC.1
       		if (instanzname == 'hm-rpc.1 alive') {devicenameName='HM-IP'; manuell=1}
       		//MiHome-Vacuum
       		if (instanzname == 'mihome-vacuum.0 alive') {devicenameName='Nono'; manuell=1}
       		//Pushover
       		if (instanzname == 'pushover.0 alive') {devicenameName='Pushover.0'; manuell=1}
       		if (instanzname == 'pushover.1 alive') {devicenameName='Pushover.1'; manuell=1}
       		if (instanzname == 'pushover.2 alive') {devicenameName='Pushover.2'; manuell=1}
       		//Simple-API
       		if (instanzname == 'simple-api.0 alive') {devicenameName='Simple-API'; manuell=1}
       		//SNMP.0
       		if (instanzname == 'snmp.0 alive') {devicenameName='SNMP.0'; manuell=1}
       		//SNMP.1
       		if (instanzname == 'snmp.1 alive') {devicenameName='SNMP.1'; manuell=1}
               //Spotify
               if (instanzname == 'spotify-premium.0 alive') {devicenameName='Spotify'; 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);}
       if(on < counter -1){setState(visstatus, false);}
       
       
       setStateDelayed('Adapter.Anzahl', counter, 800);
    
       function isState(strStatePath, strict) {
           let mSelector;
           if (strict) {
               mSelector = $('state[id=' + strStatePath + '$]');
           } else {
               mSelector = $('state[id=' + strStatePath + ']');
           }
           if (mSelector.length > 0) {
               return true;
           } else {
               return false;
           }
       }  
    }); 
    
    on({id:"javascript.0.Adapter.AdapterNummer", change: 'any'}, function (dpobj) {
       if (getState("javascript.0.Adapter.AdapterNummer").val != 0) {        
           const instanz = "javascript." + instance;
           var adapterNummer = getState(instanz + ".Adapter.AdapterNummer").val;
           var adapter = getState(instanz + ".Adapter.Adapter" + adapterNummer + ".KompletterNameAdapter").val; // Name und Instanz des Adapters 
           var idAdapter = "system.adapter." + adapter;
           
           var obj = getObject(idAdapter);
           if (dpobj.state.val == false) {
               obj.common.enabled = true;  // Adapter einschalten
           } else if (dpobj.state.val == true) {
               obj.common.enabled = false;  // Adapter ausschalten
           }
           setObject(idAdapter, obj);
           setStateDelayed('javascript.0.Adapter.AdapterNummer', 0, 800);        
       }
    });   
    

    I Offline
    I Offline
    Idefix01
    schrieb am zuletzt editiert von
    #523

    @kuddel

    Hallöchen, Ich habe mal versucht die Subitem Menü Variante zu übernehmen. Denn dieses nimmt wesentlich weniger Platz weg bei der Darstellung auf einem Tablet. Aber irgendwie zeigt er mir es nicht richtig an.
    Kannst du mir sagen was eventuell fehlt oder noch falsch ist?

    Menu.jpg

    GlasfaserG 1 Antwort Letzte Antwort
    0
    • I Idefix01

      @kuddel

      Hallöchen, Ich habe mal versucht die Subitem Menü Variante zu übernehmen. Denn dieses nimmt wesentlich weniger Platz weg bei der Darstellung auf einem Tablet. Aber irgendwie zeigt er mir es nicht richtig an.
      Kannst du mir sagen was eventuell fehlt oder noch falsch ist?

      Menu.jpg

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

      @idefix01 sagte in [Vorstellung] Meine dritte VIS:

      Aber irgendwie zeigt er mir es nicht richtig an.

      Steht alles hier im Thread :
      https://forum.iobroker.net/topic/30497/vorstellung-meine-dritte-vis/466

      @Kuddel die Frage danach wiederholt sich hier :)

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

      K 1 Antwort Letzte Antwort
      0
      • GlasfaserG Glasfaser

        @idefix01 sagte in [Vorstellung] Meine dritte VIS:

        Aber irgendwie zeigt er mir es nicht richtig an.

        Steht alles hier im Thread :
        https://forum.iobroker.net/topic/30497/vorstellung-meine-dritte-vis/466

        @Kuddel die Frage danach wiederholt sich hier :)

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

        @glasfaser ja stimmt. Wenn ich mal Zeit habe, schreibe ich eine kleine Doku dafür

        GlasfaserG 1 Antwort Letzte Antwort
        0
        • K Kuddel

          @glasfaser ja stimmt. Wenn ich mal Zeit habe, schreibe ich eine kleine Doku dafür

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

          @kuddel sagte in [Vorstellung] Meine dritte VIS:

          Wenn ich mal Zeit habe,

          Du kannst auch solange in deinem Startpost den Hinweis dazu verlinken ;)

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

          1 Antwort Letzte Antwort
          0
          • A Offline
            A Offline
            Altersrentner
            schrieb am zuletzt editiert von
            #527

            Hallo Kuddel,
            Super Projekt.
            Gibt es eine Dokumentation wie die Beregnung funktioniert?
            Mit freundlichen Grüßen
            Michael

            K 1 Antwort Letzte Antwort
            0
            • A Altersrentner

              Hallo Kuddel,
              Super Projekt.
              Gibt es eine Dokumentation wie die Beregnung funktioniert?
              Mit freundlichen Grüßen
              Michael

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

              @altersrentner

              Hier der Thread zur Bewässerung:

              https://forum.iobroker.net/topic/33573/vorlage-gartenbewässerung-mit-6-ventilen

              A 1 Antwort Letzte Antwort
              0
              • K Kuddel

                @altersrentner

                Hier der Thread zur Bewässerung:

                https://forum.iobroker.net/topic/33573/vorlage-gartenbewässerung-mit-6-ventilen

                A Offline
                A Offline
                Altersrentner
                schrieb am zuletzt editiert von
                #529

                @kuddel Danke für die Unterlagen.
                Scheint recht kompliziert zu sein.
                Tasmota Aktoren habe ich nicht.
                Meine Ventile werden über HomeMatic HMW-IO-12Sw 7-DR angesteuert.
                Kann das funktionieren?
                Mit freundlichen Grüßen
                Michael

                K 1 Antwort Letzte Antwort
                0
                • A Altersrentner

                  @kuddel Danke für die Unterlagen.
                  Scheint recht kompliziert zu sein.
                  Tasmota Aktoren habe ich nicht.
                  Meine Ventile werden über HomeMatic HMW-IO-12Sw 7-DR angesteuert.
                  Kann das funktionieren?
                  Mit freundlichen Grüßen
                  Michael

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

                  @altersrentner HM Wired verwendest du?

                  Ja kann man verwenden. Da HM Wired aber leider keine Einschaltdauer unterstützt, kann die Ausfallautomatik (iobroker stürzt während der Bewässerung ab) nicht verwendet werden.

                  A 1 Antwort Letzte Antwort
                  0
                  • K Kuddel

                    @altersrentner HM Wired verwendest du?

                    Ja kann man verwenden. Da HM Wired aber leider keine Einschaltdauer unterstützt, kann die Ausfallautomatik (iobroker stürzt während der Bewässerung ab) nicht verwendet werden.

                    A Offline
                    A Offline
                    Altersrentner
                    schrieb am zuletzt editiert von
                    #531

                    @kuddel sagte in [Vorstellung] Meine dritte VIS:

                    Da HM Wired aber leider keine Einschaltdauer unterstützt, kann die Ausfallautomatik (iobroker stürzt während der Bewässerung ab) nicht verwendet werden.

                    Gibt es bei HM Aktoren die das ermöglichen?
                    MfG Michael

                    K 1 Antwort Letzte Antwort
                    0
                    • A Altersrentner

                      @kuddel sagte in [Vorstellung] Meine dritte VIS:

                      Da HM Wired aber leider keine Einschaltdauer unterstützt, kann die Ausfallautomatik (iobroker stürzt während der Bewässerung ab) nicht verwendet werden.

                      Gibt es bei HM Aktoren die das ermöglichen?
                      MfG Michael

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

                      @altersrentner ja.

                      Ich verwende bei mir den HM-LC-Sw4-DR für meine Bewässerung.

                      A 1 Antwort Letzte Antwort
                      0
                      • K Kuddel

                        @altersrentner ja.

                        Ich verwende bei mir den HM-LC-Sw4-DR für meine Bewässerung.

                        A Offline
                        A Offline
                        Altersrentner
                        schrieb am zuletzt editiert von
                        #533

                        @kuddel
                        Hallo Kuddel,
                        Ich habe in meiner Haussteuerung zur Zeit 9 Ventile die über
                        HM Wired angesteuert werden. Weitere Ventile sind in Planung.
                        Die Ventile werden in der VIS bei Bedarf ein und ausgeschaltet.
                        Deine Steuerung ist sehr speziell und komplex und für mich zu umfangreich.
                        Ich hätte Interesse an dem Timer und an der Möglichkeit mehrere Ventile automatisch
                        nacheinander zu schalten. Gibt es eine Möglichkeit diese zwei Steuerungen zu separieren,
                        so das ich sie nutzen könnte.
                        Da ich nicht so der Prammierprofi bin, würde ich ein Skript und etwas Unterstützung benötigen.
                        Wäre das möglich?
                        Mit freundlichen Grüßen
                        Michael

                        K 1 Antwort Letzte Antwort
                        0
                        • A Altersrentner

                          @kuddel
                          Hallo Kuddel,
                          Ich habe in meiner Haussteuerung zur Zeit 9 Ventile die über
                          HM Wired angesteuert werden. Weitere Ventile sind in Planung.
                          Die Ventile werden in der VIS bei Bedarf ein und ausgeschaltet.
                          Deine Steuerung ist sehr speziell und komplex und für mich zu umfangreich.
                          Ich hätte Interesse an dem Timer und an der Möglichkeit mehrere Ventile automatisch
                          nacheinander zu schalten. Gibt es eine Möglichkeit diese zwei Steuerungen zu separieren,
                          so das ich sie nutzen könnte.
                          Da ich nicht so der Prammierprofi bin, würde ich ein Skript und etwas Unterstützung benötigen.
                          Wäre das möglich?
                          Mit freundlichen Grüßen
                          Michael

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

                          @altersrentner die entsprechenden Blöcke aus meinem Skript rausziehen wäre wieder ernormer Aufwand mit testen etc. für mich.

                          Vllt. versuchst du einfach mein Skript zum laufen zu bekommen.

                          Im Thread dazu helfen wir die natürlich gern bei Fragen.

                          1 Antwort Letzte Antwort
                          0
                          • D Offline
                            D Offline
                            djsirius
                            schrieb am zuletzt editiert von
                            #535

                            @Kuddel

                            Ich habe seit ein paar Wochen Probleme mit deinem Rollladen Script. Die Rollladen fahren weder hoch noch runter.

                            Ich habe an dem Script nichts verändert. Ich habe auch alle Datenpunkte neu im Script eingelesen, leider ohne Erfolg. :-(

                            Kannst du mir eventuell sagen, woran das liegt?

                            Vielen Dank!

                            Gruß

                            djsirius

                            sigi234S 1 Antwort Letzte Antwort
                            0
                            • D djsirius

                              @Kuddel

                              Ich habe seit ein paar Wochen Probleme mit deinem Rollladen Script. Die Rollladen fahren weder hoch noch runter.

                              Ich habe an dem Script nichts verändert. Ich habe auch alle Datenpunkte neu im Script eingelesen, leider ohne Erfolg. :-(

                              Kannst du mir eventuell sagen, woran das liegt?

                              Vielen Dank!

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

                              @djsirius
                              Hast du Updates gemacht?

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

                              D 1 Antwort Letzte Antwort
                              0
                              • sigi234S sigi234

                                @djsirius
                                Hast du Updates gemacht?

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

                                @sigi234 zum Teil. Ich bin aber noch auf js-controller 3.2.16
                                Und Script Engine auf 5.1.3

                                Gruß

                                djsirius

                                K 1 Antwort Letzte Antwort
                                0
                                • D djsirius

                                  @sigi234 zum Teil. Ich bin aber noch auf js-controller 3.2.16
                                  Und Script Engine auf 5.1.3

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

                                  @djsirius hier die aktuelle Version von meinem Zeiten-Skript:

                                  Objekte (per Javascript erstellen) unter 0_userdata.0

                                  // Zeiten
                                  //  Sonne
                                  createState('0_userdata.0.zeiten.sonnenuntergang', {type: 'string',name: 'sonnenuntergang',unit: 'Uhr'});
                                  createState('0_userdata.0.zeiten.sonnenaufgang', {type: 'string',name: 'sonnenaufgang',unit: 'Uhr'});
                                  createState('0_userdata.0.zeiten.rolladen.rolladen_cron_restart', {type: 'string',name: 'rolladen_cron_restart', unit: 'Uhr'});
                                  //  Nachtlänge
                                  createState('0_userdata.0.zeiten.nachtlaenge.nachtlaenge', {type: 'string',name: 'nachtlaenge',unit: 'Std'});
                                  createState('0_userdata.0.zeiten.nachtlaenge.nachtlaenge_fortschritt', {type: 'number',name: 'nachtlaenge_fortschritt',unit: '%'});
                                  createState('0_userdata.0.zeiten.nachtlaenge.nachtlaenge_in_minuten', {type: 'number',name: 'nachtlaenge_in_minuten',unit: 'Min'});
                                  createState('0_userdata.0.zeiten.nachtlaenge.nachtlaenge_keinlicht', {type: 'string',name: 'nachtlaenge_keinlicht',unit: 'Std'});
                                  //  Rolladen
                                  createState('0_userdata.0.zeiten.rolladen.rolladen_cron_restart', {type: 'string',name: 'rolladen_cron_restart'});
                                  createState('0_userdata.0.zeiten.rolladen.rolladen_oeffnen', {type: 'string',name: 'rolladen_oeffnen',unit: 'Uhr'});
                                  createState('0_userdata.0.zeiten.rolladen.rolladen_oeffnen_verzoegerung', {type: 'number',name: 'rolladen_oeffnen_verzoegerung',unit: 'Min'});
                                  createState('0_userdata.0.zeiten.rolladen.rolladen_schliessen', {type: 'string',name: 'rolladen_schliessen',unit: 'Uhr'});
                                  createState('0_userdata.0.zeiten.rolladen.rolladen_schliessen_verzoegerung', {type: 'number',name: 'rolladen_schliessen_verzoegerung',unit: 'Min'});
                                  // Tageslänge
                                  createState('0_userdata.0.zeiten.tageslaenge.tageslaenge', {type: 'string',name: 'tageslaenge',unit: 'Std'});
                                  createState('0_userdata.0.zeiten.tageslaenge.tageslaenge_differenz', {type: 'string',name: 'tageslaenge_differenz',unit: 'Min'});
                                  createState('0_userdata.0.zeiten.tageslaenge.tageslaenge_fortschritt', {type: 'number',name: 'tageslaenge_fortschritt',unit: '%'});
                                  createState('0_userdata.0.zeiten.tageslaenge.tageslaenge_in_minuten', {type: 'number',name: 'tageslaenge_in_minuten',unit: 'Min'});
                                  createState('0_userdata.0.zeiten.tageslaenge.tageslaenge_in_minuten_gestern', {type: 'number',name: 'tageslaenge_in_minuten_gestern',unit: 'Min'});
                                  createState('0_userdata.0.zeiten.tageslaenge.tageslaenge_tageslicht', {type: 'string',name: 'tageslaenge_tageslicht',unit: 'Std'});
                                  createState('0_userdata.0.zeiten.tageslaenge.tageslaenge_tageslicht_in_minuten', {type: 'string',name: 'tageslaenge_tageslicht_in_minuten',unit: 'Min'});
                                  

                                  Blockly Export:
                                  rolladen_tag_nacht.txt

                                  D 1 Antwort Letzte Antwort
                                  0
                                  • K Kuddel

                                    @djsirius hier die aktuelle Version von meinem Zeiten-Skript:

                                    Objekte (per Javascript erstellen) unter 0_userdata.0

                                    // Zeiten
                                    //  Sonne
                                    createState('0_userdata.0.zeiten.sonnenuntergang', {type: 'string',name: 'sonnenuntergang',unit: 'Uhr'});
                                    createState('0_userdata.0.zeiten.sonnenaufgang', {type: 'string',name: 'sonnenaufgang',unit: 'Uhr'});
                                    createState('0_userdata.0.zeiten.rolladen.rolladen_cron_restart', {type: 'string',name: 'rolladen_cron_restart', unit: 'Uhr'});
                                    //  Nachtlänge
                                    createState('0_userdata.0.zeiten.nachtlaenge.nachtlaenge', {type: 'string',name: 'nachtlaenge',unit: 'Std'});
                                    createState('0_userdata.0.zeiten.nachtlaenge.nachtlaenge_fortschritt', {type: 'number',name: 'nachtlaenge_fortschritt',unit: '%'});
                                    createState('0_userdata.0.zeiten.nachtlaenge.nachtlaenge_in_minuten', {type: 'number',name: 'nachtlaenge_in_minuten',unit: 'Min'});
                                    createState('0_userdata.0.zeiten.nachtlaenge.nachtlaenge_keinlicht', {type: 'string',name: 'nachtlaenge_keinlicht',unit: 'Std'});
                                    //  Rolladen
                                    createState('0_userdata.0.zeiten.rolladen.rolladen_cron_restart', {type: 'string',name: 'rolladen_cron_restart'});
                                    createState('0_userdata.0.zeiten.rolladen.rolladen_oeffnen', {type: 'string',name: 'rolladen_oeffnen',unit: 'Uhr'});
                                    createState('0_userdata.0.zeiten.rolladen.rolladen_oeffnen_verzoegerung', {type: 'number',name: 'rolladen_oeffnen_verzoegerung',unit: 'Min'});
                                    createState('0_userdata.0.zeiten.rolladen.rolladen_schliessen', {type: 'string',name: 'rolladen_schliessen',unit: 'Uhr'});
                                    createState('0_userdata.0.zeiten.rolladen.rolladen_schliessen_verzoegerung', {type: 'number',name: 'rolladen_schliessen_verzoegerung',unit: 'Min'});
                                    // Tageslänge
                                    createState('0_userdata.0.zeiten.tageslaenge.tageslaenge', {type: 'string',name: 'tageslaenge',unit: 'Std'});
                                    createState('0_userdata.0.zeiten.tageslaenge.tageslaenge_differenz', {type: 'string',name: 'tageslaenge_differenz',unit: 'Min'});
                                    createState('0_userdata.0.zeiten.tageslaenge.tageslaenge_fortschritt', {type: 'number',name: 'tageslaenge_fortschritt',unit: '%'});
                                    createState('0_userdata.0.zeiten.tageslaenge.tageslaenge_in_minuten', {type: 'number',name: 'tageslaenge_in_minuten',unit: 'Min'});
                                    createState('0_userdata.0.zeiten.tageslaenge.tageslaenge_in_minuten_gestern', {type: 'number',name: 'tageslaenge_in_minuten_gestern',unit: 'Min'});
                                    createState('0_userdata.0.zeiten.tageslaenge.tageslaenge_tageslicht', {type: 'string',name: 'tageslaenge_tageslicht',unit: 'Std'});
                                    createState('0_userdata.0.zeiten.tageslaenge.tageslaenge_tageslicht_in_minuten', {type: 'string',name: 'tageslaenge_tageslicht_in_minuten',unit: 'Min'});
                                    

                                    Blockly Export:
                                    rolladen_tag_nacht.txt

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

                                    @kuddel Vielen Dank!

                                    Ich habe das jetzt mal importiert. Leider bekomme ich Fehlermeldungen.

                                    Hast Du eventuell irgendwelche Datenpunkte vergessen, die ich anlegen muss?

                                    Weihnachtszeit hat z.B. gefehlt.

                                    2021-08-19 15_15_37-objects - ioBroker.png 2021-08-19 15_15_11-javascript - ioBroker.png

                                    Vielen Dank!

                                    Gruß

                                    djsirius

                                    K 1 Antwort Letzte Antwort
                                    0
                                    • D djsirius

                                      @kuddel Vielen Dank!

                                      Ich habe das jetzt mal importiert. Leider bekomme ich Fehlermeldungen.

                                      Hast Du eventuell irgendwelche Datenpunkte vergessen, die ich anlegen muss?

                                      Weihnachtszeit hat z.B. gefehlt.

                                      2021-08-19 15_15_37-objects - ioBroker.png 2021-08-19 15_15_11-javascript - ioBroker.png

                                      Vielen Dank!

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

                                      @djsirius kann gut sein, das da doch noch Datenpuknkte fehlen, aber das sieht man ja direkt in den Warnings im Log.

                                      Damit das Skript erst einmal fehlerfrei läuft, übernimm einfach mal meine Werte

                                      33785792-b0c1-49f4-9a18-2e8fe62abddb-grafik.png

                                      D 1 Antwort Letzte Antwort
                                      0
                                      • K Kuddel

                                        @djsirius kann gut sein, das da doch noch Datenpuknkte fehlen, aber das sieht man ja direkt in den Warnings im Log.

                                        Damit das Skript erst einmal fehlerfrei läuft, übernimm einfach mal meine Werte

                                        33785792-b0c1-49f4-9a18-2e8fe62abddb-grafik.png

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

                                        @kuddel

                                        Mein Script rechnet die Änderungen von rolladen_schliessen_verzoegerung nicht um. Die Uhrzeit bleibt immer auf 22:00 Uhr.

                                        Bei rolladen_oeffnen_verzoegerung funktioniert das.

                                        Ich blicke bei dem Script auch nicht durch, wo der Fehler ist. :-(

                                        15:39:31.575	error	javascript.0 (4917) script.js.smarthome.rolladen.rollladen_tag_nacht_neu: TypeError: Cannot read property 'length' of null
                                        15:39:31.575	error	javascript.0 (4917) at subsequenceFromStartLast (script.js.smarthome.rolladen.rollladen_tag_nacht_neu:5:22)
                                        15:39:31.576	error	javascript.0 (4917) at Object.<anonymous> (script.js.smarthome.rolladen.rollladen_tag_nacht_neu:180:22)
                                        

                                        Gruß

                                        djsirius

                                        K 1 Antwort Letzte Antwort
                                        0
                                        • D djsirius

                                          @kuddel

                                          Mein Script rechnet die Änderungen von rolladen_schliessen_verzoegerung nicht um. Die Uhrzeit bleibt immer auf 22:00 Uhr.

                                          Bei rolladen_oeffnen_verzoegerung funktioniert das.

                                          Ich blicke bei dem Script auch nicht durch, wo der Fehler ist. :-(

                                          15:39:31.575	error	javascript.0 (4917) script.js.smarthome.rolladen.rollladen_tag_nacht_neu: TypeError: Cannot read property 'length' of null
                                          15:39:31.575	error	javascript.0 (4917) at subsequenceFromStartLast (script.js.smarthome.rolladen.rollladen_tag_nacht_neu:5:22)
                                          15:39:31.576	error	javascript.0 (4917) at Object.<anonymous> (script.js.smarthome.rolladen.rollladen_tag_nacht_neu:180:22)
                                          
                                          K Offline
                                          K Offline
                                          Kuddel
                                          schrieb am zuletzt editiert von Kuddel
                                          #542

                                          @djsirius

                                          15:39:31.576	error	javascript.0 (4917) at Object.<anonymous> (script.js.smarthome.rolladen.rollladen_tag_nacht_neu:180:22)
                                          

                                          Das Skript hat ein Problem in Zeile 180, Zeichen 22.

                                          Das bebzieht sich auf meinen Rollo-Aktor in der Küchen.

                                          Den Block

                                          6dd1ab4f-5c69-44fa-a217-56d802560751-grafik.png

                                          kannst du eigentlich direkt deaktivieren.

                                          D 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

                                          743

                                          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