Navigation

    Logo
    • Register
    • Login
    • Search
    • Recent
    • Tags
    • Unread
    • Categories
    • Unreplied
    • Popular
    • GitHub
    • Docu
    • Hilfe
    1. Home
    2. Deutsch
    3. Tester
    4. jarvis v3.2.x - just another remarkable vis

    NEWS

    • ioBroker@Smart Living Forum Solingen, 14.06. - Agenda added

    • ioBroker goes Matter ... Matter Adapter in Stable

    • Monatsrückblick - April 2025

    jarvis v3.2.x - just another remarkable vis

    This topic has been deleted. Only users with topic management privileges can see it.
    • M
      MCU @muhlatte last edited by 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 1 Reply Last reply Reply Quote 0
      • M
        muhlatte @MCU last edited by

        @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 Reply Last reply Reply Quote 0
        • M
          MCU @muhlatte last edited by MCU

          @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

          M 1 Reply Last reply Reply Quote 0
          • H
            Hohenbostler @MCU last edited by

            @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 Reply Last reply Reply Quote 0
            • M
              MCU @Hohenbostler last edited by

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

              1 Reply Last reply Reply Quote 0
              • M
                muhlatte @MCU last edited by

                @mcu
                Ja einfach nur auf dem Raspi den Inhalt überschrieben der js Datei überschrieben, dann abgespeichert,Cache gelöscht und neu geladen. Fehler war aber nach nochmaligem Testen des alten scripts auch vorher schon da.

                HTTPs habe ich nicht aktiviert.

                Kannst du mir sagen wo ich die Benutzerdaten finde? Da war ich schon bei der Anleitung drüber gestolpert. Eine schwere Geburt bei mir, sorry!

                M 1 Reply Last reply Reply Quote 0
                • M
                  MCU @muhlatte last edited by MCU

                  @muhlatte Erstmal nur mit http:// in scripts arbeiten.

                  Kannst du mir sagen wo ich die Benutzerdaten finde?

                  Welche, hast du in Jarvis in der Instanz was eingestellt?
                  Zeig mal Deine Web-Einstellugnen -> web.0
                  Und die Einstellungen von der Jarvis-Instanz jarvis.0

                  Eine schwere Geburt bei mir, sorry!

                  Kein Problem, darin erkenne ich immer, was ich in der Doku noch verbessern kann und muss. Also gerne.

                  M 1 Reply Last reply Reply Quote 0
                  • M
                    muhlatte @MCU last edited by

                    @mcu
                    fed5ef7d-6c12-47c2-abea-3d5679122dde-image.png

                    1ccf4e08-c260-48fc-ad19-69af39f98a88-image.png

                    was ich nicht finde ist diese Darstellung/das Menü
                    3e176c71-1156-4e17-b845-17fab15cf699-image.png

                    Dank dir!

                    M 1 Reply Last reply Reply Quote 0
                    • M
                      MCU @muhlatte last edited by

                      @muhlatte Dateien / Files
                      0e0dc649-277f-4842-a6f1-e1a7d52d28ba-image.png

                      M 1 Reply Last reply Reply Quote 1
                      • M
                        muhlatte @MCU last edited by

                        @MCU
                        lol da siehste mal, nutze seit 3 Jahren iobroker und habe mich noch nie dort hin verirrt 🙂

                        e2e0046b-3633-4bf2-860d-f1be3cde7b8d-image.png

                        Habe gemerkt dass das skript zu klein war -> iob upload jarvis. Jetzt ist das aktuelle da drin jedoch funktioniert es immer noch nicht mit demselben Fehler in der Console

                        4b693463-03b9-4d47-bed1-5e600cc4ed24-image.png ![0_1740604616201_e2f2ef4b-c7b1-4761-99f7-37f4cfaa3c7c-image.png](Uploading 100%)

                        M 1 Reply Last reply Reply Quote 0
                        • M
                          MCU @muhlatte last edited by MCU

                          @muhlatte Es muss unter Benutzerdaten / 0_userdata.0 ein verzeichnis jarvis-scripts sein.
                          Dort muss das Script rein.
                          Du hast in jarvis script noch immer https genutzt?
                          Nicht in jarvis/user-Verzeichnis arbeiten. Das sind original-Dateien. Wenn sowas in der Doku steht ist es nur zur Veranschaulichung, wo die Dateien landen.

                          M 1 Reply Last reply Reply Quote 1
                          • M
                            muhlatte @MCU last edited by muhlatte

                            @mcu
                            jetzt hab ich es kapiert wo du meinst -> beim Import Befehl! Mit der änderung auf http und dem Dateihochladen hats geklappt. Mega vielen lieben Dank MCU!
                            Zwei Frage:
                            -Aktuell bei Tab Wechsel ist das Widget eingeblendet bis ich irgendwo drauf tappe, kann ich das gleich Initial ausgeblendet lassen?
                            -Kann man neben ganzen Widgets auch nur einzelne State abhängig von einem anderen Zustand ausblenden?
                            Ich habe es bisher immer nur abhängig von seinem eigenen Zustand über Filterlisten gemacht.
                            Dank dir und LG

                            M 1 Reply Last reply Reply Quote 0
                            • M
                              MCU @muhlatte last edited by MCU

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

                              Kann man neben ganzen Widgets auch nur einzelne State abhängig von einem anderen Zustand ausblenden?

                              Das kann man in dem Geräte-DP festlegen.
                              https://mcuiobroker.gitbook.io/jarvis-infos/jarvis-v3/besonderheiten-v3/geraet/body-stil#body-stil-binding

                              Aktuell bei Tab Wechsel ist das Widget eingeblendet bis ich irgendwo drauf tappe, kann ich das gleich Initial ausgeblendet lassen?

                              Sollte initial weg sein. Nach F5 dauert es evtl ca 7 Sekunden
                              hab das script nochmal verändert und ein timeout eingeführt bei Start.

                              M 1 Reply Last reply Reply Quote 0
                              • M
                                muhlatte @MCU last edited by

                                @mcu
                                wenn ich zur Ausblendung Datenpunkt über anderen Datenpunkt bei Body Stil
                                {"{0_userdata.0.Alarmanlage.Alarmanlagen_Steuerung_Einblendung}='true'":{"display":"initial"},"default":{"display":"none !important"}}
                                eingebe, welches property value muss display dann annehmen wenn man es bei DP=true eingeblendet haben möchte? ich dachte initial oder inherit

                                M 1 Reply Last reply Reply Quote 0
                                • M
                                  MCU @muhlatte last edited by

                                  @muhlatte Direkt bei false setzen

                                  U M 2 Replies Last reply Reply Quote 0
                                  • U
                                    uwe72 @MCU last edited by uwe72

                                    @mcu Möchte mit dem Thema nicht nerven. Habe nun mal Jarvisadapter gelöscht und im Dateisystem alles was ich zu Jarvis gefunden habe, gelöscht. Dann habe ich neu die V3.1.8 installiert.

                                    Habe keinerlei "Migrationen" (zuvor weggesicherte Datenpunkte befüllt) ausgeführt. D.h. "frisches" Jarvis (so die Hoffnung).

                                    Habe dann von Hand 1 Gerät angelegt.

                                    Beim Filtern bekomme ich den Fehler den Du auch hattest. Ich verstehe das nicht, da vor meinem Ausflug zu V3.2 auch alles mit 3.1.8 funktioniert hatte. Oder war es eine höhere Version als V3.1.8?! Gab es noch was dazwischen?

                                    Hatte das Feature mit dem Filter sehr oft verwendet um ein neues Gerät auf Basis eines alten zu erstellen.

                                    3a03daff-ca30-41f3-a349-d56435336e1b-image.png

                                    Wenn Du keine Idee hast, sag es einmal kurz, dann nerve ich damit nicht mehr 😉

                                    M 1 Reply Last reply Reply Quote 0
                                    • M
                                      MCU @uwe72 last edited by MCU

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

                                      Beim Filtern bekomme ich den Fehler den Du auch hattest

                                      Scheint bei Neu-Installation normal zu sein. Also DP anlegen und Instanz neu starten

                                      • Hast du mal einen anderen Browser genutzt?
                                      • Upload jarvis nach der Neuinstallation

                                      Welchen Systemstatus hast du bei js-controller und admin?
                                      bei meinem v3.1.8 -> node: v20.18.3, js-controller: 6.0.11, admin:v7.4.21

                                      Sollten mit der Diskussion auch auf den anderen Thread wechseln
                                      https://forum.iobroker.net/topic/59201/jarvis-v3-1-0-beta-just-another-remarkable-vis

                                      1 Reply Last reply Reply Quote 0
                                      • M
                                        muhlatte @MCU last edited by

                                        @mcu du meinst {

                                        {
                                        "{0_userdata.0.Alarmanlage.Alarmanlagen_Steuerung_Einblendung}='false'": {
                                          "display": "none"
                                        }
                                        }
                                        

                                        ?

                                        M 1 Reply Last reply Reply Quote 0
                                        • M
                                          MCU @muhlatte last edited by

                                          @muhlatte Fast

                                          {
                                          "{0_userdata.0.Alarmanlage.Alarmanlagen_Steuerung_Einblendung}=false": {
                                            "display": "none !important"
                                          }
                                          }
                                          

                                          Im Body Stil

                                          M 1 Reply Last reply Reply Quote 1
                                          • M
                                            muhlatte @MCU last edited by

                                            @mcu ah mega danke, Ich habs parallel auch hinbekommen. Stand da mal wieder etwas auf dem Schlauch.

                                            1 Reply Last reply Reply Quote 0
                                            • First post
                                              Last post

                                            Support us

                                            ioBroker
                                            Community Adapters
                                            Donate

                                            511
                                            Online

                                            31.6k
                                            Users

                                            79.5k
                                            Topics

                                            1.3m
                                            Posts

                                            43
                                            879
                                            166258
                                            Loading More Posts
                                            • Oldest to Newest
                                            • Newest to Oldest
                                            • Most Votes
                                            Reply
                                            • Reply as topic
                                            Log in to reply
                                            Community
                                            Impressum | Datenschutz-Bestimmungen | Nutzungsbedingungen
                                            The ioBroker Community 2014-2023
                                            logo