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

  • Standard: (Kein Skin)
  • Kein Skin
Einklappen
ioBroker Logo
  1. ioBroker Community Home
  2. Deutsch
  3. Tester
  4. jarvis v3.2.x - just another remarkable vis

NEWS

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

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

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

jarvis v3.2.x - just another remarkable vis

Geplant Angeheftet Gesperrt Verschoben Tester
899 Beiträge 44 Kommentatoren 252.0k Aufrufe 42 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.
  • D der-eine

    @mcu ah ok das ist dann quasi normal. 👍

    M Online
    M Online
    MCU
    schrieb am zuletzt editiert von
    #775

    @der-eine Ja genau. Das wird sich evtl mal ändern, aber dauert noch sehr sehr lange.
    Hat einen technischen Hintergrund, mit dem man dann scripts direkt im Speicher ändert. (v4, v5??)

    NUC i7 64GB mit Proxmox ---- https://mcuiobroker.gitbook.io/jarvis-infos/ Aktualisierungen der Doku auf Instagram verfolgen -> https://www.instagram.com/mcuiobroker
    Wenn Euch mein Vorschlag geholfen hat, bitte rechts "^" klicken.

    D 1 Antwort Letzte Antwort
    0
    • M MCU

      @der-eine Ja genau. Das wird sich evtl mal ändern, aber dauert noch sehr sehr lange.
      Hat einen technischen Hintergrund, mit dem man dann scripts direkt im Speicher ändert. (v4, v5??)

      D Offline
      D Offline
      der-eine
      schrieb am zuletzt editiert von
      #776

      @mcu hab mich nur gewundert weil es nicht von Anfang an so war. Hab nicht bemerkt das es erst seitdem ich Skripts nutze ist.

      M 1 Antwort Letzte Antwort
      0
      • D der-eine

        @mcu hab mich nur gewundert weil es nicht von Anfang an so war. Hab nicht bemerkt das es erst seitdem ich Skripts nutze ist.

        M Online
        M Online
        MCU
        schrieb am zuletzt editiert von
        #777

        @der-eine Dafür gibt es diesen Hinweis
        1e65980e-e10b-4201-b5cc-f1c26d088c33-image.png

        NUC i7 64GB mit Proxmox ---- https://mcuiobroker.gitbook.io/jarvis-infos/ Aktualisierungen der Doku auf Instagram verfolgen -> https://www.instagram.com/mcuiobroker
        Wenn Euch mein Vorschlag geholfen hat, bitte rechts "^" klicken.

        1 Antwort Letzte Antwort
        0
        • M MCU

          @muhlatte

          Habe einfach die Version von github geladen, ich hoffe das passt.

          Ja, das passt.

          Zeig mal die DPs so dass man version und signature sehen kann.

          • Upload von jarvis (console ioBroker) -> iob upload jarvis
          • Sicherung vom System (jarvis) machen
          • einmal das Verzeichnis löschen /opt/iobroker/iobroker-data/jarvis
            -> jarvis neu starten
          M Offline
          M Offline
          muhlatte
          schrieb am zuletzt editiert von
          #778

          @mcu
          Alles gemacht, leider ohne Erfolg. Datenpunkte vor dem Prozedere

          f00201e7-ca14-4ef1-931e-1342a5b90f21-image.png

          und dann noch danach
          cbacefd3-ea4a-4320-9cea-6d9ab79073cb-image.png

          mit jarvis neu starten meinst du den Adapter neu starten, richtig? Dank dir für all die Tipps!

          M 2 Antworten Letzte Antwort
          0
          • M Offline
            M Offline
            muhlatte
            schrieb am zuletzt editiert von muhlatte
            #779

            sorry doppelpost aufgrund overload

            M 1 Antwort Letzte Antwort
            0
            • M muhlatte

              @mcu
              Alles gemacht, leider ohne Erfolg. Datenpunkte vor dem Prozedere

              f00201e7-ca14-4ef1-931e-1342a5b90f21-image.png

              und dann noch danach
              cbacefd3-ea4a-4320-9cea-6d9ab79073cb-image.png

              mit jarvis neu starten meinst du den Adapter neu starten, richtig? Dank dir für all die Tipps!

              M Online
              M Online
              MCU
              schrieb am zuletzt editiert von
              #780

              @muhlatte Ja Adapter / Instanz neu starten.
              Wie sieht der Inhalt vom DP scripts aus? -> code-tags
              Kannst du mal die Notifications auslagern, bzw. löschen falls sie nicht mehr gebraucht werden.

              Die beiden DPs wurden nicht von Jarvis bestätigt -> sind rot nicht weiß

              NUC i7 64GB mit Proxmox ---- https://mcuiobroker.gitbook.io/jarvis-infos/ Aktualisierungen der Doku auf Instagram verfolgen -> https://www.instagram.com/mcuiobroker
              Wenn Euch mein Vorschlag geholfen hat, bitte rechts "^" klicken.

              1 Antwort Letzte Antwort
              0
              • M muhlatte

                @mcu
                Alles gemacht, leider ohne Erfolg. Datenpunkte vor dem Prozedere

                f00201e7-ca14-4ef1-931e-1342a5b90f21-image.png

                und dann noch danach
                cbacefd3-ea4a-4320-9cea-6d9ab79073cb-image.png

                mit jarvis neu starten meinst du den Adapter neu starten, richtig? Dank dir für all die Tipps!

                M Online
                M Online
                MCU
                schrieb am zuletzt editiert von MCU
                #781

                Doppelt Post Overload

                NUC i7 64GB mit Proxmox ---- https://mcuiobroker.gitbook.io/jarvis-infos/ Aktualisierungen der Doku auf Instagram verfolgen -> https://www.instagram.com/mcuiobroker
                Wenn Euch mein Vorschlag geholfen hat, bitte rechts "^" klicken.

                1 Antwort Letzte Antwort
                0
                • M muhlatte

                  sorry doppelpost aufgrund overload

                  M Online
                  M Online
                  MCU
                  schrieb am zuletzt editiert von MCU
                  #782

                  @muhlatte Und immer Cache löschen auf allen benutzten / aktiven Geräten!

                  NUC i7 64GB mit Proxmox ---- https://mcuiobroker.gitbook.io/jarvis-infos/ Aktualisierungen der Doku auf Instagram verfolgen -> https://www.instagram.com/mcuiobroker
                  Wenn Euch mein Vorschlag geholfen hat, bitte rechts "^" klicken.

                  1 Antwort Letzte Antwort
                  1
                  • M Offline
                    M Offline
                    muhlatte
                    schrieb am zuletzt editiert von muhlatte
                    #783

                    @MCU
                    DP scripts sieht folgendermaßen aus

                    {
                      "version": 3.2,
                      "signature": 7813676603462119,
                      "scripts": {}
                    }
                    

                    Ich habe immer den Cache des einen Gerätes gelöscht auf dem ich gerade war, hatte aber nacheinander auch schon die anderen gelöscht gehabt im Rahmen meines Umstiegs auf rc12 (weil die Verbindung eh gestreikt hat).

                    die 5 archivierten notifications hab ich gelöscht, klammer ist jetzt leer (trotzdem rot).

                    UPDATE:
                    Ich werd' verrückt, es hat tatsächlich daran gelegen, dass ich nicht alle Instanzen zu hatte. Dann bei Cache löschen der letzten aktiven Instanz hats geklappt! Vielen lieben Dank! 🤝 💋
                    --> vielleicht hat mein aktiver pihole da auch mit reingespuckt, den hab ich nämlich auch noch aus gemacht!

                    Jetzt muss ich es nur noch hinbekommen, dass das Widget auch wirklich ausblendet, aber das ist dann der nächste Step.
                    Vielleicht eine Frage dazu, Mit meinem Script

                    window.Socket.subscribeState('0_userdata.0.Alarmanlage.Alarmanlagen_Steuerung_Einblendung', ({ err, state }) => {
                    	if (err){
                    	   console.log('Error DP holen');
                    	}else{
                    		if (state.val) {
                    			displayOffObj['2db1b208-cedd-41a7-9382-141fbf2a82ae']=false;
                    		}else{
                    			displayOffObj['2db1b208-cedd-41a7-9382-141fbf2a82ae']=true;
                    		}
                    		widgetsActualize();
                    	}
                    });
                    

                    schaltet er dann instantan die Anzeige des Widgets aus sobald ich den obigen Datenpunkt ändere, richtig?

                    M 1 Antwort Letzte Antwort
                    0
                    • M muhlatte

                      @MCU
                      DP scripts sieht folgendermaßen aus

                      {
                        "version": 3.2,
                        "signature": 7813676603462119,
                        "scripts": {}
                      }
                      

                      Ich habe immer den Cache des einen Gerätes gelöscht auf dem ich gerade war, hatte aber nacheinander auch schon die anderen gelöscht gehabt im Rahmen meines Umstiegs auf rc12 (weil die Verbindung eh gestreikt hat).

                      die 5 archivierten notifications hab ich gelöscht, klammer ist jetzt leer (trotzdem rot).

                      UPDATE:
                      Ich werd' verrückt, es hat tatsächlich daran gelegen, dass ich nicht alle Instanzen zu hatte. Dann bei Cache löschen der letzten aktiven Instanz hats geklappt! Vielen lieben Dank! 🤝 💋
                      --> vielleicht hat mein aktiver pihole da auch mit reingespuckt, den hab ich nämlich auch noch aus gemacht!

                      Jetzt muss ich es nur noch hinbekommen, dass das Widget auch wirklich ausblendet, aber das ist dann der nächste Step.
                      Vielleicht eine Frage dazu, Mit meinem Script

                      window.Socket.subscribeState('0_userdata.0.Alarmanlage.Alarmanlagen_Steuerung_Einblendung', ({ err, state }) => {
                      	if (err){
                      	   console.log('Error DP holen');
                      	}else{
                      		if (state.val) {
                      			displayOffObj['2db1b208-cedd-41a7-9382-141fbf2a82ae']=false;
                      		}else{
                      			displayOffObj['2db1b208-cedd-41a7-9382-141fbf2a82ae']=true;
                      		}
                      		widgetsActualize();
                      	}
                      });
                      

                      schaltet er dann instantan die Anzeige des Widgets aus sobald ich den obigen Datenpunkt ändere, richtig?

                      M Online
                      M Online
                      MCU
                      schrieb am zuletzt editiert von
                      #784

                      @muhlatte In scripts ist nur ein Eintrag -> @import "http:...."
                      Programm einstellungen sind im script!

                      NUC i7 64GB mit Proxmox ---- https://mcuiobroker.gitbook.io/jarvis-infos/ Aktualisierungen der Doku auf Instagram verfolgen -> https://www.instagram.com/mcuiobroker
                      Wenn Euch mein Vorschlag geholfen hat, bitte rechts "^" klicken.

                      M 1 Antwort Letzte Antwort
                      0
                      • M MCU

                        @muhlatte In scripts ist nur ein Eintrag -> @import "http:...."
                        Programm einstellungen sind im script!

                        M Offline
                        M Offline
                        muhlatte
                        schrieb am zuletzt editiert von
                        #785

                        @MCU
                        Jo der obige Code steckt bei mir in WidgetAusblendenScript.js auf dem jarvis user Ordner. Im scripts DP ist der Eintrag nun drin also gehe ich davon aus es hat geklappt. nur das Ausblenden über den

                        0_userdata.0.Alarmanlage.Alarmanlagen_Steuerung_Einblendung
                        

                        klappt noch nicht. Ich gehe davon aus dass der false oder true sein muss, korrekt?

                        M 1 Antwort Letzte Antwort
                        0
                        • M muhlatte

                          @MCU
                          Jo der obige Code steckt bei mir in WidgetAusblendenScript.js auf dem jarvis user Ordner. Im scripts DP ist der Eintrag nun drin also gehe ich davon aus es hat geklappt. nur das Ausblenden über den

                          0_userdata.0.Alarmanlage.Alarmanlagen_Steuerung_Einblendung
                          

                          klappt noch nicht. Ich gehe davon aus dass der false oder true sein muss, korrekt?

                          M Online
                          M Online
                          MCU
                          schrieb am zuletzt editiert von MCU
                          #786

                          @muhlatte Nicht unbedingt, man muss es halt definieren, wie man es braucht
                          Wie ist denn der Type vom DP
                          So wie es oben beim subscribe definiert ist muss es boolean sein und bei true wird das Widget angezeigt.

                          NUC i7 64GB mit Proxmox ---- https://mcuiobroker.gitbook.io/jarvis-infos/ Aktualisierungen der Doku auf Instagram verfolgen -> https://www.instagram.com/mcuiobroker
                          Wenn Euch mein Vorschlag geholfen hat, bitte rechts "^" klicken.

                          M 1 Antwort Letzte Antwort
                          0
                          • M MCU

                            @muhlatte Nicht unbedingt, man muss es halt definieren, wie man es braucht
                            Wie ist denn der Type vom DP
                            So wie es oben beim subscribe definiert ist muss es boolean sein und bei true wird das Widget angezeigt.

                            M Offline
                            M Offline
                            muhlatte
                            schrieb am zuletzt editiert von
                            #787

                            @MCU
                            Jo genau so hab ich es gemacht nur passiert leider nichts wenn ich von false auf true schalte, es wird immer angezeigt. Ich gehe davon aus, dass die ID auch richtig ist, oder?

                            2cf94620-912d-44a7-9416-88cc398a685a-image.png

                            M 2 Antworten Letzte Antwort
                            0
                            • M muhlatte

                              @MCU
                              Jo genau so hab ich es gemacht nur passiert leider nichts wenn ich von false auf true schalte, es wird immer angezeigt. Ich gehe davon aus, dass die ID auch richtig ist, oder?

                              2cf94620-912d-44a7-9416-88cc398a685a-image.png

                              M Online
                              M Online
                              MCU
                              schrieb am zuletzt editiert von
                              #788

                              @muhlatte Ja geht nicht, schaue ich mir an. Liegt irgendwo im Programm. Melde mich.

                              NUC i7 64GB mit Proxmox ---- https://mcuiobroker.gitbook.io/jarvis-infos/ Aktualisierungen der Doku auf Instagram verfolgen -> https://www.instagram.com/mcuiobroker
                              Wenn Euch mein Vorschlag geholfen hat, bitte rechts "^" klicken.

                              1 Antwort Letzte Antwort
                              0
                              • M muhlatte

                                @MCU
                                Jo genau so hab ich es gemacht nur passiert leider nichts wenn ich von false auf true schalte, es wird immer angezeigt. Ich gehe davon aus, dass die ID auch richtig ist, oder?

                                2cf94620-912d-44a7-9416-88cc398a685a-image.png

                                M Online
                                M Online
                                MCU
                                schrieb am zuletzt editiert von
                                #789

                                @muhlatte Doch funktioniert, hatte falsche script-Bezeichnung.
                                Stell mal bitte das komplette Script rein.
                                Und einmal den scripts-Eintrag

                                NUC i7 64GB mit Proxmox ---- https://mcuiobroker.gitbook.io/jarvis-infos/ Aktualisierungen der Doku auf Instagram verfolgen -> https://www.instagram.com/mcuiobroker
                                Wenn Euch mein Vorschlag geholfen hat, bitte rechts "^" klicken.

                                M 1 Antwort Letzte Antwort
                                0
                                • M MCU

                                  @muhlatte Doch funktioniert, hatte falsche script-Bezeichnung.
                                  Stell mal bitte das komplette Script rein.
                                  Und einmal den scripts-Eintrag

                                  M Offline
                                  M Offline
                                  muhlatte
                                  schrieb am zuletzt editiert von
                                  #790

                                  @MCU
                                  WidgetAusblendenScript.js

                                  Importbefehl in scripts:
                                  @import"https://192.168.178.96:8400/user/WidgetAusblendenScript.js";

                                  M 1 Antwort Letzte Antwort
                                  0
                                  • M muhlatte

                                    @MCU
                                    WidgetAusblendenScript.js

                                    Importbefehl in scripts:
                                    @import"https://192.168.178.96:8400/user/WidgetAusblendenScript.js";

                                    M Online
                                    M Online
                                    MCU
                                    schrieb am zuletzt editiert von MCU
                                    #791

                                    @muhlatte Das kann nicht funktionieren.

                                    // **************************************************
                                    // widgetDisplay.js v1.0.0
                                    //
                                    // Beispiel Widget ausblenden mit ioBroker DP-Objekt
                                    // **************************************************
                                    // Copyright ©MCU 
                                    
                                    /* Objekt zum Speichern von WidgetID und Zustand */
                                    let displayOffObj ={}; 
                                    
                                    let pagePosArr = [];
                                    
                                    let arrDeskWidgets = []; // Widgets Array mit widgetIDs und Posdaten vom grid
                                    
                                    /* ioBroker DP Änderungen */
                                    
                                    window.Socket.subscribeState('0_userdata.0.Alarmanlage.Alarmanlagen_Steuerung_Einblendung', ({ err, state }) => {
                                    	if (err){
                                    	   console.log('Error DP holen');
                                    	}else{
                                    		if (state.val) {
                                    			displayOffObj['2db1b208-cedd-41a7-9382-141fbf2a82ae']=false;
                                    		}else{
                                    			displayOffObj['2db1b208-cedd-41a7-9382-141fbf2a82ae']=true;
                                    		}
                                    		widgetsActualize();
                                    	}
                                    });  
                                    
                                    /* hier kann man mehrere ioBroker DPs abfragen */
                                    // window.Socket.subscribeState('0_userdata.0.DP.condition2', ....
                                    
                                    // window.Socket.subscribeState('0_userdata.0.DP.condition3', ....
                                    
                                    // !!! AB HIER NICHTS VERÄNDERN !!!
                                    
                                    docReady(function() {
                                    	widgetsActualize();
                                    	document.addEventListener("click", function (event) {
                                    		widgetsActualize();
                                       });
                                    });
                                    
                                    
                                    function widgetsActualize(){
                                    	containerDesktop();
                                    	for (let widget in displayOffObj){
                                    		if (displayOffObj[widget]){
                                    			widgetDisplayOff(widget,true); // Allgemeines
                                    		}else{
                                    			widgetDisplayOff(widget,false);
                                    		}				
                                    	}
                                    }
                                    
                                    function containerDesktop(){
                                    	let doc = document.getElementsByClassName('container desktop');
                                    	if (doc.length >0){
                                    		let widgetsPos = doc[0].getElementsByClassName('box');
                                    		//console.log('POS: ' +widgetsPos);
                                    		let arr = [];
                                    		for (let i=0;i<widgetsPos.length;i++){
                                    			let posObj = {};
                                    			posObj.rowStart=widgetsPos[i].style.gridRowStart;
                                    			posObj.colStart=widgetsPos[i].style.gridColumnStart;
                                    			posObj.rowEnd=widgetsPos[i].style.gridRowEnd;
                                    			posObj.colEnd=widgetsPos[i].style.gridColumnEnd;
                                    			let widgetCL = widgetsPos[i].getElementsByClassName('jarvis-widget')[0].classList;
                                    			for (let y=0;y<widgetCL.length;y++){
                                    				if (widgetCL[y].indexOf('jarvis-widget-') >=0 && widgetCL[y].length > 49){
                                    					posObj.widgetID = widgetCL[y].substr(14, widgetCL[y].length-14); // widgetID vom Widget wird übergeben */
                                    					break;
                                    				}
                                    			}
                                    			arr.push(posObj);
                                    		}
                                    		arrDeskWidgets = arr;
                                    		//pagePos(arr);
                                    	}else{
                                    		arrDeskWidgets = [];
                                    	}
                                    	
                                    }
                                    
                                    
                                    function pagePos(arrDesk){
                                    	
                                    	for (let i=0; i< arrDesk.length;i++){
                                    		let rowEnd =0;
                                    		let rowStart =parseInt(arrDesk[i].rowStart)-1;
                                    		if (arrDesk[i].rowEnd.indexOf('span')>=0){
                                    			rowEnd = parseInt(arrDesk[i].rowEnd.replace('span',''));
                                    		}
                                    		let colEnd =0;
                                    		let colStart =parseInt(arrDesk[i].colStart)-1;
                                    		if (arrDesk[i].colEnd.indexOf('span')>=0){
                                    			colEnd = parseInt(arrDesk[i].colEnd.replace('span',''));
                                    		}
                                    		for (let row = rowStart; row< rowStart+rowEnd;row++){ 
                                    			if (pagePosArr[row] == undefined){
                                    				pagePosArr.push(['','','','','','','','','','','','']);
                                    			}
                                    			for (let x = colStart; x< colStart+colEnd;x++){
                                    				if (pagePosArr[row][x] == ''){
                                    					pagePosArr[row][x]= arrDesk[i].widgetID;
                                    				}
                                    			}
                                    		}
                                    	}	
                                    }
                                    
                                    function widgetDisplayOff(widgetID,displayOff){
                                    	let doc = document.getElementsByClassName('container desktop');
                                    	if (doc.length >0){
                                    		let widgetsPos = doc[0].getElementsByClassName('box');
                                    		let usedOrder = 0;
                                    		for (let i=0; i<arrDeskWidgets.length;i++){
                                    			if (arrDeskWidgets[i].widgetID == widgetID){
                                    				usedOrder = i;
                                    				let widgetContainer = widgetsPos[usedOrder].getElementsByClassName('jarvis-widget-container');
                                    				if (displayOff){
                                    					widgetContainer[0].style.display='none';
                                    				}else{
                                    					widgetContainer[0].style.display='inherit';
                                    				}
                                    				break;
                                    			}
                                    		}
                                    	}
                                    	
                                    }
                                    
                                    
                                    function docReady(fn) {
                                        // see if DOM is already available
                                        if (document.readyState === "complete" || document.readyState === "interactive") {
                                            // call on next available tick
                                            setTimeout(fn, 1000);
                                        } else {
                                            document.addEventListener("DOMContentLoaded", fn);
                                        }
                                    }  
                                    

                                    Bei weiteren Fragen dazu bitte auf den anderen Thread wechseln.
                                    https://forum.iobroker.net/topic/52228/howto-zusatz-programme-fuer-jarvis-v3

                                    NUC i7 64GB mit Proxmox ---- https://mcuiobroker.gitbook.io/jarvis-infos/ Aktualisierungen der Doku auf Instagram verfolgen -> https://www.instagram.com/mcuiobroker
                                    Wenn Euch mein Vorschlag geholfen hat, bitte rechts "^" klicken.

                                    M 1 Antwort Letzte Antwort
                                    0
                                    • M MCU

                                      @muhlatte Das kann nicht funktionieren.

                                      // **************************************************
                                      // widgetDisplay.js v1.0.0
                                      //
                                      // Beispiel Widget ausblenden mit ioBroker DP-Objekt
                                      // **************************************************
                                      // Copyright ©MCU 
                                      
                                      /* Objekt zum Speichern von WidgetID und Zustand */
                                      let displayOffObj ={}; 
                                      
                                      let pagePosArr = [];
                                      
                                      let arrDeskWidgets = []; // Widgets Array mit widgetIDs und Posdaten vom grid
                                      
                                      /* ioBroker DP Änderungen */
                                      
                                      window.Socket.subscribeState('0_userdata.0.Alarmanlage.Alarmanlagen_Steuerung_Einblendung', ({ err, state }) => {
                                      	if (err){
                                      	   console.log('Error DP holen');
                                      	}else{
                                      		if (state.val) {
                                      			displayOffObj['2db1b208-cedd-41a7-9382-141fbf2a82ae']=false;
                                      		}else{
                                      			displayOffObj['2db1b208-cedd-41a7-9382-141fbf2a82ae']=true;
                                      		}
                                      		widgetsActualize();
                                      	}
                                      });  
                                      
                                      /* hier kann man mehrere ioBroker DPs abfragen */
                                      // window.Socket.subscribeState('0_userdata.0.DP.condition2', ....
                                      
                                      // window.Socket.subscribeState('0_userdata.0.DP.condition3', ....
                                      
                                      // !!! AB HIER NICHTS VERÄNDERN !!!
                                      
                                      docReady(function() {
                                      	widgetsActualize();
                                      	document.addEventListener("click", function (event) {
                                      		widgetsActualize();
                                         });
                                      });
                                      
                                      
                                      function widgetsActualize(){
                                      	containerDesktop();
                                      	for (let widget in displayOffObj){
                                      		if (displayOffObj[widget]){
                                      			widgetDisplayOff(widget,true); // Allgemeines
                                      		}else{
                                      			widgetDisplayOff(widget,false);
                                      		}				
                                      	}
                                      }
                                      
                                      function containerDesktop(){
                                      	let doc = document.getElementsByClassName('container desktop');
                                      	if (doc.length >0){
                                      		let widgetsPos = doc[0].getElementsByClassName('box');
                                      		//console.log('POS: ' +widgetsPos);
                                      		let arr = [];
                                      		for (let i=0;i<widgetsPos.length;i++){
                                      			let posObj = {};
                                      			posObj.rowStart=widgetsPos[i].style.gridRowStart;
                                      			posObj.colStart=widgetsPos[i].style.gridColumnStart;
                                      			posObj.rowEnd=widgetsPos[i].style.gridRowEnd;
                                      			posObj.colEnd=widgetsPos[i].style.gridColumnEnd;
                                      			let widgetCL = widgetsPos[i].getElementsByClassName('jarvis-widget')[0].classList;
                                      			for (let y=0;y<widgetCL.length;y++){
                                      				if (widgetCL[y].indexOf('jarvis-widget-') >=0 && widgetCL[y].length > 49){
                                      					posObj.widgetID = widgetCL[y].substr(14, widgetCL[y].length-14); // widgetID vom Widget wird übergeben */
                                      					break;
                                      				}
                                      			}
                                      			arr.push(posObj);
                                      		}
                                      		arrDeskWidgets = arr;
                                      		//pagePos(arr);
                                      	}else{
                                      		arrDeskWidgets = [];
                                      	}
                                      	
                                      }
                                      
                                      
                                      function pagePos(arrDesk){
                                      	
                                      	for (let i=0; i< arrDesk.length;i++){
                                      		let rowEnd =0;
                                      		let rowStart =parseInt(arrDesk[i].rowStart)-1;
                                      		if (arrDesk[i].rowEnd.indexOf('span')>=0){
                                      			rowEnd = parseInt(arrDesk[i].rowEnd.replace('span',''));
                                      		}
                                      		let colEnd =0;
                                      		let colStart =parseInt(arrDesk[i].colStart)-1;
                                      		if (arrDesk[i].colEnd.indexOf('span')>=0){
                                      			colEnd = parseInt(arrDesk[i].colEnd.replace('span',''));
                                      		}
                                      		for (let row = rowStart; row< rowStart+rowEnd;row++){ 
                                      			if (pagePosArr[row] == undefined){
                                      				pagePosArr.push(['','','','','','','','','','','','']);
                                      			}
                                      			for (let x = colStart; x< colStart+colEnd;x++){
                                      				if (pagePosArr[row][x] == ''){
                                      					pagePosArr[row][x]= arrDesk[i].widgetID;
                                      				}
                                      			}
                                      		}
                                      	}	
                                      }
                                      
                                      function widgetDisplayOff(widgetID,displayOff){
                                      	let doc = document.getElementsByClassName('container desktop');
                                      	if (doc.length >0){
                                      		let widgetsPos = doc[0].getElementsByClassName('box');
                                      		let usedOrder = 0;
                                      		for (let i=0; i<arrDeskWidgets.length;i++){
                                      			if (arrDeskWidgets[i].widgetID == widgetID){
                                      				usedOrder = i;
                                      				let widgetContainer = widgetsPos[usedOrder].getElementsByClassName('jarvis-widget-container');
                                      				if (displayOff){
                                      					widgetContainer[0].style.display='none';
                                      				}else{
                                      					widgetContainer[0].style.display='inherit';
                                      				}
                                      				break;
                                      			}
                                      		}
                                      	}
                                      	
                                      }
                                      
                                      
                                      function docReady(fn) {
                                          // see if DOM is already available
                                          if (document.readyState === "complete" || document.readyState === "interactive") {
                                              // call on next available tick
                                              setTimeout(fn, 1000);
                                          } else {
                                              document.addEventListener("DOMContentLoaded", fn);
                                          }
                                      }  
                                      

                                      Bei weiteren Fragen dazu bitte auf den anderen Thread wechseln.
                                      https://forum.iobroker.net/topic/52228/howto-zusatz-programme-fuer-jarvis-v3

                                      M Offline
                                      M Offline
                                      muhlatte
                                      schrieb am zuletzt editiert von
                                      #792

                                      @mcu
                                      Ok mache ich dann. Leider hat die Änderung nicht funktioniert, in der Console wird

                                      Failed to load resource: net::ERR_SSL_PROTOCOL_ERROR
                                      

                                      78ac3c09-8754-41ed-a29a-023a06d2d47c-image.png

                                      angezeigt.

                                      M 1 Antwort Letzte Antwort
                                      0
                                      • M muhlatte

                                        @mcu
                                        Ok mache ich dann. Leider hat die Änderung nicht funktioniert, in der Console wird

                                        Failed to load resource: net::ERR_SSL_PROTOCOL_ERROR
                                        

                                        78ac3c09-8754-41ed-a29a-023a06d2d47c-image.png

                                        angezeigt.

                                        M Online
                                        M Online
                                        MCU
                                        schrieb am zuletzt editiert von MCU
                                        #793

                                        @muhlatte Du hast den Inhalt der Datei einfach nur geändert und gespeichert?
                                        War der Fehler vorher auch?
                                        Hast du denn https?
                                        7cdd131f-f9f6-497f-bae4-084b99ef9709-image.png
                                        Nicht einschalten, wenn du es nicht hattest -> http://... verwenden
                                        Was steht im jarvis-scripts Verzeichnis?
                                        956d2afc-e546-4e9a-8f37-96b472e24651-image.png

                                        NUC i7 64GB mit Proxmox ---- https://mcuiobroker.gitbook.io/jarvis-infos/ Aktualisierungen der Doku auf Instagram verfolgen -> https://www.instagram.com/mcuiobroker
                                        Wenn Euch mein Vorschlag geholfen hat, bitte rechts "^" klicken.

                                        M 1 Antwort Letzte Antwort
                                        0
                                        • M MCU

                                          @hohenbostler
                                          Im Standard -> Nein.
                                          Mit Zusatzprogrammen -> zurzeit Nein.
                                          Grundsätzlich -> ja

                                          Bitte den Hintergrund erklären.

                                          H Offline
                                          H Offline
                                          Hohenbostler
                                          schrieb am zuletzt editiert von
                                          #794

                                          @mcu sagte in jarvis v3.2.x - just another remarkable vis:

                                          @hohenbostler
                                          Im Standard -> Nein.
                                          Mit Zusatzprogrammen -> zurzeit Nein.
                                          Grundsätzlich -> ja

                                          Bitte den Hintergrund erklären.

                                          Mh naja ich würde halt immer wieder gerne das jarvis automatisch die Tabs wechselt in einem gewissen intervall. Weiss nicht was ich da als Hintergrund angeben soll.

                                          Mein Tablet hängt an der Wand und soll halt alle ( naja nicht alle nur ausgewählte ) Tabs immer wieder durchlaufen.

                                          M 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

                                          562

                                          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
                                          • Aktuell
                                          • Tags
                                          • Ungelesen 0
                                          • Kategorien
                                          • Unreplied
                                          • Beliebt
                                          • GitHub
                                          • Docu
                                          • Hilfe