Navigation

    Logo
    • Register
    • Login
    • Search
    • Recent
    • Tags
    • Unread
    • Categories
    • Unreplied
    • Popular
    • GitHub
    • Docu
    • Hilfe
    1. Home
    2. Deutsch
    3. Tester
    4. jarvis v2.2.0 - 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 v2.2.0 - just another remarkable vis

    This topic has been deleted. Only users with topic management privileges can see it.
    • Diginix
      Diginix @Flo 0 last edited by

      @flo-0 Hatte ich hier alles vor paar Seiten sehr ausführlich gezeigt.

      F 1 Reply Last reply Reply Quote 1
      • A
        Alex975 last edited by

        Hallo, wo muss ich denn eigentlich einstellen dass ich jarvis über die cloud aufrufen kann? Oder ist das noch nicht umgesetzt?

        VG Alex

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

          @alex975 VPN nutzen. Bei der FritzBox gibt es z.B. die FritzApp mit der man direkt ein VPN starten kann.

          A 1 Reply Last reply Reply Quote 0
          • O
            OliWit82 last edited by

            Guten Morgen,
            ich teste aktuell jarvis v3.0 alpha 112

            Kann das Modul "HistoryGraph" nur die Werte des History Adapters wiedergeben?
            Ich speichere meine Daten in SQL, dies scheint das Modul aber nicht zulesen.

            Vielen Dank
            Gruss

            Zefau 1 Reply Last reply Reply Quote 0
            • Zefau
              Zefau @OliWit82 last edited by

              @oliwit82 sagte in jarvis v2.2.0 - just another remarkable vis:

              Ich speichere meine Daten in SQL, dies scheint das Modul aber nicht zulesen.

              Ja das geht. Hast es denn in der Layout Konfiguration auf SQL umgestellt?

              stephan1827 O 2 Replies Last reply Reply Quote 0
              • stephan1827
                stephan1827 @Zefau last edited by

                Kann man so eine Tabelle in Jarvis darstellen? Ich habe leider wenig Infos zu JSON Tabellen gefunden und für mich sieht das so aus als könnte man damit nur eine Tabelle mit historischen Daten erstellen aber nicht ein zweidimensionales Raster so wie bei mir.

                Bildschirmfoto 2021-11-01 um 08.41.47.png

                M 1 Reply Last reply Reply Quote 0
                • O
                  OliWit82 @Zefau last edited by

                  @zefau

                  Danke für deine Antwort.

                  Meinst du hier? Oder muss ich das wo anders einstellen?
                  jarvis_sql.png

                  Zefau 1 Reply Last reply Reply Quote 0
                  • F
                    Flo 0 @Diginix last edited by

                    @diginix Vielen Dank. Habe deine Posts gefunden und haben mir geholfen dies zu implementieren. Jetzt läuft es 1A. Die Suche hier im Forum ist leider nicht so das wahre :-)....

                    @MCU verwende noch die Version 2 🙂 bis jetzt bin ich damit super zufrieden. Habe sämtliche für mich notwendigen Datenpunkten manuell in die 2er Version erfasst.

                    Gruss und guten Start in dich Woche.

                    1 Reply Last reply Reply Quote 1
                    • S
                      SchuetzeSchulz @MCU last edited by

                      @mcu sagte in jarvis v2.2.0 - just another remarkable vis:

                      {"{hm-rpc.0.MEQ0028801.1.STATE }= true || {hm-rpc.0.MEQ0029513.1.STATE} = true":"was soll dann passieren"}

                      Habe das gerade nochmal versucht, zwei Datenpunkt zu vereinen für die Anzeige (2 Fenstersensoren für einen Raum):

                      e366a1a4-ff2e-4fc2-a93c-1ed95aac3114-image.png

                      Folgende Einstellung habe ich im Gerät unter "Datenpunkt (Anzeige)":

                      {"{hm-rpc.0.MEQ0028801.1.STATE }= true || {hm-rpc.0.MEQ0029513.1.STATE} = true":"true"}
                      

                      Habe ich da immer noch ein Denkfehler oder funktioniert es grundsätzlich noch nicht?

                      M 2 Replies Last reply Reply Quote 0
                      • Zefau
                        Zefau @OliWit82 last edited by

                        @oliwit82 sagte in jarvis v2.2.0 - just another remarkable vis:

                        Meinst du hier? Oder muss ich das wo anders einstellen?

                        Genau das. Geht trotzdem nicht? Hast du einen Fehler in der Browser Konsole via F12?

                        O 1 Reply Last reply Reply Quote 0
                        • O
                          OliWit82 @Zefau last edited by

                          @zefau

                          Das kommt da
                          jarvis_sql_1.png

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

                            @stephan1827 Mit einer JSONtable.

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

                              @schuetzeschulz
                              Funktioniert grundsätzlich noch nicht.

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

                                @mcu sagte in jarvis v2.2.0 - just another remarkable vis:

                                @stephan1827 Mit einer JSONtable.

                                Gibt es dazu irgendwo Doku oder Beispiele? Für Jarvis finde ich nur ein bisschen Doku wie man die Kopfzeile definiert und dann Werte hinzufügt.

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

                                  @stephan1827 Ich mache Dir gerade ein Beispiel fertig. Mit Javascript kennst du dich etwas aus?
                                  SO?
                                  f43dae58-d951-40a7-a06b-ccc0c8bd2f69-image.png
                                  Durch was werden die Werte verändert?
                                  Wie oft ändern sich die Werte?
                                  Welche Objekte werden aktualisiert?
                                  Reicht es wenn die Tabelle alle 10 Minuten aktualisiert wird?

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

                                    @mcu das wäre super, wenn ich ein Beispiel habe komme ich klar. Die Werte existieren als Datenpunkte in Jarvis
                                    Bildschirmfoto 2021-11-01 um 13.10.52.png

                                    Die meisten Werte ändern sich nur alle paar Minuten außer die erste Spalte, die ändert sich alle paar Sekunden

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

                                      @stephan1827

                                      
                                      // Beispiel um eine JSONtable zu erstellen
                                      // https://forum.iobroker.net/topic/30668/jarvis-v2-2-0-just-another-remarkable-vis/5637
                                      //
                                      let pvDP ='0_userdata.0.jarvis.pv.json';
                                      let aktDP ='0_userdata.0.jarvis.pv.setJSON';
                                      let schedDP = '0_userdata.0.jarvis.pv.setSchedule';
                                      createState(pvDP, {read: true, write: true, name: "PV Daten", type: "string", role: "text", def: "" });
                                      createState(aktDP, {read: true, write: true, name: "Daten aktualisieren", type: "boolean", role: "text", def: false });
                                      createState(schedDP, {read: true, write: true, name: "Scheduler setzen", type: "boolean", role: "text", def: false });
                                      
                                      let arrDP =''; // ArrayDP für PV
                                      let schedulePattern = '*/1 * * * *'; // alle x Minuten aktualisieren
                                      
                                      
                                      var schedule1;
                                      if (getState(schedDP).val){
                                         // Direkt neue Pattern wirken lassen, aber nur wenn aktiviert
                                         (function () {if (schedule1) {clearSchedule(schedule1); schedule1 = null;}})();
                                         schedule1 = schedule(schedulePattern, async function () {
                                             tableJSONSet();
                                         });
                                      }
                                      
                                      on({id: schedDP, change: "any"}, function (obj) {
                                         let value = obj.state.val;
                                         if (value){
                                             (function () {if (schedule1) {clearSchedule(schedule1); schedule1 = null;}})();
                                             schedule1 = schedule(schedulePattern, async function () {
                                                 tableJSONSet();
                                             });
                                             
                                         }else{
                                             (function () {if (schedule1) {clearSchedule(schedule1); schedule1 = null;}})();
                                         }
                                      });
                                      
                                      on({id: aktDP, change: "any"}, function (obj) {
                                         let value = obj.state.val;
                                         if (value){
                                             tableJSONSet();
                                             setTimeout(function(){
                                                 setStateDelayed(aktDP,false,3000,false);
                                             },2000);
                                             
                                         }
                                      });
                                      
                                      
                                      
                                      
                                      function tableJSONSet(){
                                         let jsonArr=[];
                                         // 1.Reihe
                                         /*
                                         let json = {};
                                         json.Title ="Titel";
                                         json.Aktuell = "Aktuell";
                                         json.Tag = "Tag";
                                         json.Woche = "Woche";
                                         json.Monat = "Monat";
                                         json.Jahr = "Jahr";
                                         jsonArr.push(json);
                                         */
                                         let json1= {};
                                         json1.Title ="Verbrauch";
                                         json1.Aktuell = getState('0_userdata.0.testwert').val;
                                         json1.Tag = "";
                                         json1.Woche = "";
                                         json1.Monat = "";
                                         json1.Jahr = "";
                                         jsonArr.push(json1);
                                         
                                         let json2 = {};
                                         json2.Title ="PV";
                                         json2.Aktuell = getState('0_userdata.0.testwert').val;
                                         json2.Tag = "";
                                         json2.Woche = "";
                                         json2.Monat = "";
                                         json2.Jahr = "";
                                         jsonArr.push(json2);
                                         
                                         let json3 = {};
                                         json3.Title ="Laden";
                                         json3.Aktuell = getState('0_userdata.0.testwert').val;
                                         json3.Tag = "";
                                         json3.Woche = "";
                                         json3.Monat = "";
                                         json3.Jahr = "";
                                         jsonArr.push(json3);
                                         
                                         let json4 = {};
                                         json4.Title ="Entladen";
                                         json4.Aktuell = getState('0_userdata.0.testwert').val;
                                         json4.Tag = "";
                                         json4.Woche = "";
                                         json4.Monat = "";
                                         json4.Jahr = "";
                                         jsonArr.push(json4);
                                         
                                         let json5 = {};
                                         json5.Title ="Zukauf";
                                         json5.Aktuell = getState('0_userdata.0.testwert').val;
                                         json5.Tag = "";
                                         json5.Woche = "";
                                         json5.Monat = "";
                                         json5.Jahr = "";
                                         jsonArr.push(json5);
                                         
                                         let json6 = {};
                                         json6.Title ="Verkauf";
                                         json6.Aktuell = getState('0_userdata.0.testwert').val;
                                         json6.Tag = "";
                                         json6.Woche = "";
                                         json6.Monat = "";
                                         json6.Jahr = "";
                                         jsonArr.push(json6);
                                      
                                         let json7 = {};
                                         json7.Title ="EURO";
                                         json7.Aktuell = getState('0_userdata.0.testwert').val;
                                         json7.Tag = "";
                                         json7.Woche = "";
                                         json7.Monat = "";
                                         json7.Jahr = "";
                                         jsonArr.push(json7);
                                         
                                         log(JSON.stringify(jsonArr));
                                         
                                         setState(pvDP,JSON.stringify(jsonArr),false);
                                      }
                                      

                                      Du musst dann die einzelnen Felder mit Deinen Daten füllen.
                                      So wie in dem Beispiel-DP: getState('0_userdata.0.testwert').val;
                                      Melde Dich, sobald du damit fertig bist.

                                      a9a01ac9-f146-403d-9313-8b35fb014232-image.png
                                      Du kannst entweder jederzeit eine neue Tabelle erzeugen mit setJSON->true, oder einen Scheduler laufen lassen. Dieser ist momentan auf 1 Minute eingestellt.

                                      stephan1827 1 Reply Last reply Reply Quote 1
                                      • stephan1827
                                        stephan1827 @MCU last edited by

                                        @mcu sagte in jarvis v2.2.0 - just another remarkable vis:

                                        // Beispiel um eine JSONtable zu erstellen // https://forum.iobroker.net/topic/30668/jarvis-v2-2-0-just-another-remarkable-vis/5637 // let pvDP ='0_userdata.0.jarvis.pv.json'; let aktDP ='0_userdata.0.jarvis.pv.setJSON'; let schedDP = '0_userdata.0.jarvis.pv.setSchedule'; createState(pvDP, {read: true, write: true, name: "PV Daten", type: "string", role: "text", def: "" }); createState(aktDP, {read: true, write: true, name: "Daten aktualisieren", type: "boolean", role: "text", def: false }); createState(schedDP, {read: true, write: true, name: "Scheduler setzen", type: "boolean", role: "text", def: false }); let arrDP =''; // ArrayDP für PV let schedulePattern = '*/1 * * * '; // alle x Minuten aktualisieren var schedule1; if (getState(schedDP).val){ // Direkt neue Pattern wirken lassen, aber nur wenn aktiviert (function () {if (schedule1) {clearSchedule(schedule1); schedule1 = null;}})(); schedule1 = schedule(schedulePattern, async function () { tableJSONSet(); }); } on({id: schedDP, change: "any"}, function (obj) { let value = obj.state.val; if (value){ (function () {if (schedule1) {clearSchedule(schedule1); schedule1 = null;}})(); schedule1 = schedule(schedulePattern, async function () { tableJSONSet(); }); }else{ (function () {if (schedule1) {clearSchedule(schedule1); schedule1 = null;}})(); } }); on({id: aktDP, change: "any"}, function (obj) { let value = obj.state.val; if (value){ tableJSONSet(); setTimeout(function(){ setStateDelayed(aktDP,false,3000,false); },2000); } }); function tableJSONSet(){ let jsonArr=[]; // 1.Reihe / let json = {}; json.Title ="Titel"; json.Aktuell = "Aktuell"; json.Tag = "Tag"; json.Woche = "Woche"; json.Monat = "Monat"; json.Jahr = "Jahr"; jsonArr.push(json); */ let json1= {}; json1.Title ="Verbrauch"; json1.Aktuell = getState('0_userdata.0.testwert').val; json1.Tag = ""; json1.Woche = ""; json1.Monat = ""; json1.Jahr = ""; jsonArr.push(json1); let json2 = {}; json2.Title ="PV"; json2.Aktuell = getState('0_userdata.0.testwert').val; json2.Tag = ""; json2.Woche = ""; json2.Monat = ""; json2.Jahr = ""; jsonArr.push(json2); let json3 = {}; json3.Title ="Laden"; json3.Aktuell = getState('0_userdata.0.testwert').val; json3.Tag = ""; json3.Woche = ""; json3.Monat = ""; json3.Jahr = ""; jsonArr.push(json3); let json4 = {}; json4.Title ="Entladen"; json4.Aktuell = getState('0_userdata.0.testwert').val; json4.Tag = ""; json4.Woche = ""; json4.Monat = ""; json4.Jahr = ""; jsonArr.push(json4); let json5 = {}; json5.Title ="Zukauf"; json5.Aktuell = getState('0_userdata.0.testwert').val; json5.Tag = ""; json5.Woche = ""; json5.Monat = ""; json5.Jahr = ""; jsonArr.push(json5); let json6 = {}; json6.Title ="Verkauf"; json6.Aktuell = getState('0_userdata.0.testwert').val; json6.Tag = ""; json6.Woche = ""; json6.Monat = ""; json6.Jahr = ""; jsonArr.push(json6); let json7 = {}; json7.Title ="EURO"; json7.Aktuell = getState('0_userdata.0.testwert').val; json7.Tag = ""; json7.Woche = ""; json7.Monat = ""; json7.Jahr = ""; jsonArr.push(json7); log(JSON.stringify(jsonArr)); setState(pvDP,JSON.stringify(jsonArr),false); }

                                        Du musst dann die einzelnen Felder mit Deinen Daten füllen.

                                        Danke, das bringt mich erstmal weiter

                                        stephan1827 1 Reply Last reply Reply Quote 0
                                        • stephan1827
                                          stephan1827 @stephan1827 last edited by stephan1827

                                          Hier sind noch ein paar Fragen die heute beim Umbau meiner Solarseite aufgelaufen sind.

                                          Bildschirmfoto 2021-11-01 um 16.12.43.png

                                          Kann man bei dem Circle Chart die Zahl (81) ausblenden?
                                          Kann man die Farbe in Abhängigkeit von dem Wert ändern?

                                          Bildschirmfoto 2021-11-01 um 16.13.53.png
                                          Wie kann man die Reihenfolge der Widgets für das Reponsive Design ändern?
                                          Das hat irgendwie mit den Zahlen in den eckigen Klammern zu tun aber finder nirgends wo man die ändern kann.

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

                                            @stephan1827 sagte in jarvis v2.2.0 - just another remarkable vis:

                                            die Reihenfolge der Widgets für das Reponsive Design ändern?

                                            Ist in Planung.

                                            Wie kann man beim historischen Charts zwei Y- Achsen definieren?

                                            https://mcuiobroker.gitbook.io/jarvis-infos/jarvis/besonderheiten-v3/historygraph

                                            Bzgl Circle Chart brauch ich eine Info:

                                            Zeig mir bitte das Widget mit den Eintragungen.
                                            Ich habe keine Möglichkeit gefunden, die Zahl im Circle zu beeinflussen.
                                            Im "Chart" fehlt eine Einstellungsmöglichkeit, wie im "HistoryGraph".
                                            288c8501-fbe7-44f3-ba44-b109a106737c-image.png
                                            Vielleicht kann/möchte @zefau eine Option einbauen: Show Value (on/off)

                                            stephan1827 2 Replies Last reply Reply Quote 0
                                            • First post
                                              Last post

                                            Support us

                                            ioBroker
                                            Community Adapters
                                            Donate

                                            659
                                            Online

                                            31.7k
                                            Users

                                            79.7k
                                            Topics

                                            1.3m
                                            Posts

                                            jarvis material material ui materialdesign vis visualisierung visualization
                                            316
                                            6126
                                            3592980
                                            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