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

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

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

jarvis v3.2.x - just another remarkable vis

Geplant Angeheftet Gesperrt Verschoben Tester
904 Beiträge 44 Kommentatoren 255.4k 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.
  • 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 ---- Jarvis Infos Aktualisierungen der Doku auf Instagram verfolgen -> mcuiobroker Instagram
      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 ---- Jarvis Infos Aktualisierungen der Doku auf Instagram verfolgen -> mcuiobroker Instagram
            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 ---- Jarvis Infos Aktualisierungen der Doku auf Instagram verfolgen -> mcuiobroker Instagram
              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 ---- Jarvis Infos Aktualisierungen der Doku auf Instagram verfolgen -> mcuiobroker Instagram
                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! :handshake: :kiss:
                  --> 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! :handshake: :kiss:
                    --> 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 ---- Jarvis Infos Aktualisierungen der Doku auf Instagram verfolgen -> mcuiobroker Instagram
                    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 ---- Jarvis Infos Aktualisierungen der Doku auf Instagram verfolgen -> mcuiobroker Instagram
                        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 ---- Jarvis Infos Aktualisierungen der Doku auf Instagram verfolgen -> mcuiobroker Instagram
                            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 ---- Jarvis Infos Aktualisierungen der Doku auf Instagram verfolgen -> mcuiobroker Instagram
                              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 ---- Jarvis Infos Aktualisierungen der Doku auf Instagram verfolgen -> mcuiobroker Instagram
                                  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 ---- Jarvis Infos Aktualisierungen der Doku auf Instagram verfolgen -> mcuiobroker Instagram
                                      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
                                        • H Hohenbostler

                                          @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 Online
                                          M Online
                                          MCU
                                          schrieb am zuletzt editiert von
                                          #795

                                          @hohenbostler Also man muss ein Programm schreiben, in dem ein Array definiert ist und eine Zeit angegeben wird, wie lange ein Tab stehen bleiben soll. Ein weiteres Array für die devices, damit nur bestimmte Devices auswählen kann.
                                          Und dann lässt man die Schleife laufen für die einzelnen TabId' s.

                                          jarvis.0.clients.*.setTabId für alle aktiven Devices und definieren Devices setzen

                                          Dann muss darauf achten, dass bei Berührung vom Tablet / Gerät / Device ein Pause der Schleife von einer definierten Zeit 1min gestartet wird.

                                          NUC i7 64GB mit Proxmox ---- Jarvis Infos Aktualisierungen der Doku auf Instagram verfolgen -> mcuiobroker Instagram
                                          Wenn Euch mein Vorschlag geholfen hat, bitte rechts "^" klicken.

                                          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

                                          792

                                          Online

                                          32.4k

                                          Benutzer

                                          81.5k

                                          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