Navigation

    Logo
    • Register
    • Login
    • Search
    • Recent
    • Tags
    • Unread
    • Categories
    • Unreplied
    • Popular
    • GitHub
    • Docu
    • Hilfe
    1. Home
    2. Deutsch
    3. Visualisierung
    4. neue Visualisierung "webui" (alternative zu vis & vis-2)

    NEWS

    • Neuer Blog: Fotos und Eindrücke aus Solingen

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

    • ioBroker goes Matter ... Matter Adapter in Stable

    neue Visualisierung "webui" (alternative zu vis & vis-2)

    This topic has been deleted. Only users with topic management privileges can see it.
    • B
      Blockmove last edited by

      @jogibear9988

      Hallo Jochen,
      ich hab gesehen, dass du input datetime-local auch gefixt hast. Vielen Dank!
      Hab jetzt noch gar nicht kontrolliert, wie es mit input time aussieht. Ist der auch local?
      Eventuell wären hier Varianten mit UTC noch hilfreich.

      Ich weiß, dass das ein leidiges Thema ist 😞
      Egal ob privat beim Smarthome oder im Job bei S7.

      VG
      Dieter

      Smilie108 jogibear9988 2 Replies Last reply Reply Quote 0
      • Smilie108
        Smilie108 @Blockmove last edited by

        @blockmove
        Jop mal offtopic diese ganzen zeitvariationen sicht echt ein leidiges Thema 😞

        @jogibear9988
        Danke nochmal man kann schon sehr gut arbeiten damit. Das einzige was ich jetzt noch vergessen habe oder ncoh schauen muss ist das ich am handy die oberfläche wieder zoomen kann. ( mit den Fingern ) weis noch nicht warum das nicht geht aber warscheinlich weil alles absolut ist 😉 das muss ich dann wieder alles ändern 😉

        B jogibear9988 2 Replies Last reply Reply Quote 0
        • B
          Blockmove @Smilie108 last edited by

          @smilie108 said in neue Visualisierung "webui" (alternative zu vis):

          Danke nochmal man kann schon sehr gut arbeiten damit. Das einzige was ich jetzt noch vergessen habe oder ncoh schauen muss ist das ich am handy die oberfläche wieder zoomen kann. ( mit den Fingern ) weis noch nicht warum das nicht geht aber warscheinlich weil alles absolut ist 😉 das muss ich dann wieder alles ändern 😉

          Da ist der Umstieg auf webui ganz praktisch 😊
          Ich versuch weitest gehend auch ein Layout mit grid zu verwenden.
          Erstaunlich wieviel html und css man durch den Umstieg auf webui lernt 😉

          1 Reply Last reply Reply Quote 1
          • jogibear9988
            jogibear9988 @Blockmove last edited by

            @blockmove

            valeAsNumber ist beim "dateTimeLocal" input schon in UTC, ich hab mal noch ne property hinzugefügt valueAsNumberLocal, wenn Ihr an diese bindet, bekommt ihr die zahl mit der lokalzeit in eurer ioBroker objekt

            B 1 Reply Last reply Reply Quote 0
            • jogibear9988
              jogibear9988 @Smilie108 last edited by

              @smilie108

              oder es liegt an meinem meta tag:

              <meta name="viewport"
              content="width=device-width, initial-scale=1.0, shrink-to-fit=no, maximum-scale=1.0, user-scalable=no, viewport-fit=cover">
              

              ist in der runtime.html.
              Wir haben in einer visu selbst zoomen implementiert, und das funktioniert ohne das meta tag nicht. Wenn es stört kann ich das meta tag aber einstellbar machen.

              Vlt. mach ich irgendwann auch noch ein zoom control.

              Smilie108 1 Reply Last reply Reply Quote 0
              • B
                Blockmove @jogibear9988 last edited by

                @jogibear9988 said in neue Visualisierung "webui" (alternative zu vis):

                @blockmove

                valeAsNumber ist beim "dateTimeLocal" input schon in UTC, ich hab mal noch ne property hinzugefügt valueAsNumberLocal, wenn Ihr an diese bindet, bekommt ihr die zahl mit der lokalzeit in eurer ioBroker objekt

                Zum Verständnis:

                • Wenn ich an valueAsNumber binde, dann wird im webui-Inputfeld Local verwendet und im ioBroker-Object UTC?
                • Wenn ich an valueAsNumberLocal binde, dann wird keine Zeitzone berücksichtigt. Also webui-Inputfeld = ioBroker-Object?
                • Die Funktionaliät bei inputtype DateTime und Time? Bei inputtype Date ist es ja nicht notwendig.
                jogibear9988 1 Reply Last reply Reply Quote 0
                • jogibear9988
                  jogibear9988 @Blockmove last edited by

                  @blockmove said in neue Visualisierung "webui" (alternative zu vis):

                  @jogibear9988 said in neue Visualisierung "webui" (alternative zu vis):

                  @blockmove

                  valeAsNumber ist beim "dateTimeLocal" input schon in UTC, ich hab mal noch ne property hinzugefügt valueAsNumberLocal, wenn Ihr an diese bindet, bekommt ihr die zahl mit der lokalzeit in eurer ioBroker objekt

                  Zum Verständnis:

                  • Wenn ich an valueAsNumber binde, dann wird im webui-Inputfeld Local verwendet und im ioBroker-Object UTC?
                    -> ja
                  • Wenn ich an valueAsNumberLocal binde, dann wird keine Zeitzone berücksichtigt. Also webui-Inputfeld = ioBroker-Object?
                    -> ja
                  • Die Funktionaliät bei inputtype DateTime und Time? Bei inputtype Date ist es ja nicht notwendig.
                    -> kp. wie sich input date beim 24h wechsel verhält, oder was es als zeit mitgibt. Kp. wie sich input time verhält...
                  B 1 Reply Last reply Reply Quote 0
                  • jogibear9988
                    jogibear9988 last edited by

                    denke morgen bekomm ich das mit den Unterordnern fertig 😆

                    ziehe dann auch die Controls Toolbox in ein extra Fenster, zumindest hab ich das vor.
                    Ist ja z.B. in TIA Portal auch so, es gibt den Projektbaum, aber die ganzen Controls sind in einem extra Fenster. gefällt mir irgendwie besser.

                    1 Reply Last reply Reply Quote 2
                    • jogibear9988
                      jogibear9988 last edited by

                      Kommt auch noch ein neuer script Befehl:

                      c06e4de1-749d-4bf1-9bb6-60d484fdf402-image.png

                      1 Reply Last reply Reply Quote 0
                      • B
                        Blockmove @jogibear9988 last edited by

                        @jogibear9988 said in neue Visualisierung "webui" (alternative zu vis):

                        • Die Funktionaliät bei inputtype DateTime und Time? Bei inputtype Date ist es ja nicht notwendig.
                          -> kp. wie sich input date beim 24h wechsel verhält, oder was es als zeit mitgibt. Kp. wie sich input time verhält...

                        Ich brauch Datum und Zeiten demnächst für Visualisierung des Heatingcontrol-Adapters.
                        Dann muss ich sowieso ausgiebiger testen.
                        Bei Inputtype date wird jetzt das richtigte Datum an ioBroker übertragen und als Uhrzeit GMT 01:00.
                        Das Datumfeld aus der vis1 zeigt das gleiche Verhalten. Ich schau es mir mal morgen mit einem Javascript in ioBroker an und geb dir dann Bescheid.

                        1 Reply Last reply Reply Quote 0
                        • Smilie108
                          Smilie108 last edited by

                          @blockmove da gibts einen adapter der eigentlich ganz gut geht von dem kannst du dir dann sowas machen;

                          Screenshot 2024-01-04 185956.png

                          B 1 Reply Last reply Reply Quote 0
                          • B
                            Blockmove @Smilie108 last edited by

                            @smilie108

                            Falls du den HeatingControl-Adapter meinst, den hab ich seit Jahren in Verwendung.
                            Zuerst mit der dazugehörigen Visu, dann mit der abgespreckten Variante und irgendwann mal mit ner Eigenen:

                            HeatingControl.png

                            Die Konvertierung auf vis-2 nat Probleme gemacht und mit jeder der anderen Visulaisierungen, die ich probiert hab, gab es irgendwas was nicht funktionierte oder mir nicht gefiel.
                            Da kam dann webui genaus richtig.

                            Smilie108 1 Reply Last reply Reply Quote 1
                            • Smilie108
                              Smilie108 last edited by

                              @Blockmove
                              Hast du eventuell auch schon was in die Richtung Sql gemacht ?
                              Beim vis gab es den tabel adapter
                              Den konnte ich mit dem ergebniss von sql füttern
                              [{"Zeit":"2024,January","tage":3,"PV Erzeugt":32.94,"Hausverbrauch":89.45,"kW/h p-t":29.82,"kW/h p-h":1.24,"Zugekauft":72.59,"Verkauft":11.35,"Batterie Laden":0,"Batterie Entladen":0.11,"Differenz":-61.24,"Kosten €":13.07,"Verdient €":1.41,"Diff_€":-11.66,"Gespart_€":3.89,"Ges_€":-7.77},{"Zeit":"2023,January","tage":30,"PV Erzeugt":170.29,"Hausverbrauch":433.38,"kW/h p-t":14.45,"kW/h p-h":0.6,"Zugekauft":366.38,"Verkauft":54.69,"Batterie Laden":19.89,"Batterie Entladen":16.9,"Differenz":-311.69,"Kosten €":65.95,"Verdient €":14.69,"Diff_€":-51.260000000000005,"Gespart_€":20.81,"Ges_€":-30.450000000000006}]

                              Der machte daraus
                              Screenshot 2024-01-04 205215.png

                              Geht das irgendwi einfach ? in php wüste ich wie aber so bin ich grad etwas überfordert

                              jogibear9988 1 Reply Last reply Reply Quote 0
                              • Smilie108
                                Smilie108 @Blockmove last edited by Smilie108

                                @blockmove
                                Heizungsregelung:
                                Derzeit habe ich nur einen "Raum" laufen da die WP bei mir das so regelt und ich eigentlich nichtmal einnen Temperaturfühler brauche. Habe welche zur kontrolle aber die macht das eigentlich richtig gut ( Differenz kleiner 1°C zum eingestellten wert. Geht hauptsächlich bei darum das ich das Zeitprogramm fahren kann.

                                😉
                                Aber in meinem neuen haus brauche ich dann mehrere. Darf ich mich dann melden bezüglich einem export 😉 ? das Gefällt mir außerordentlich gut was du da hast 😉

                                B 1 Reply Last reply Reply Quote 0
                                • B
                                  Blockmove @Smilie108 last edited by

                                  @smilie108 said in neue Visualisierung "webui" (alternative zu vis):

                                  @blockmove
                                  Darf ich mich dann melden bezüglich einem export 😉 ? das Gefällt mir außerordentlich gut was du da hast 😉

                                  Das ist jetzt der letzte Part, den ich noch in webui bauen muss.
                                  Nachdem ja Jochen die Date und Time Inputs optimiert hat, kann ich mich daran machen. Wenn es funktioniert kannst du es natürlich bekommen.

                                  1 Reply Last reply Reply Quote 0
                                  • jogibear9988
                                    jogibear9988 @Smilie108 last edited by

                                    @smilie108 said in neue Visualisierung "webui" (alternative zu vis):

                                    @Blockmove
                                    Hast du eventuell auch schon was in die Richtung Sql gemacht ?
                                    Beim vis gab es den tabel adapter
                                    Den konnte ich mit dem ergebniss von sql füttern
                                    [{"Zeit":"2024,January","tage":3,"PV Erzeugt":32.94,"Hausverbrauch":89.45,"kW/h p-t":29.82,"kW/h p-h":1.24,"Zugekauft":72.59,"Verkauft":11.35,"Batterie Laden":0,"Batterie Entladen":0.11,"Differenz":-61.24,"Kosten €":13.07,"Verdient €":1.41,"Diff_€":-11.66,"Gespart_€":3.89,"Ges_€":-7.77},{"Zeit":"2023,January","tage":30,"PV Erzeugt":170.29,"Hausverbrauch":433.38,"kW/h p-t":14.45,"kW/h p-h":0.6,"Zugekauft":366.38,"Verkauft":54.69,"Batterie Laden":19.89,"Batterie Entladen":16.9,"Differenz":-311.69,"Kosten €":65.95,"Verdient €":14.69,"Diff_€":-51.260000000000005,"Gespart_€":20.81,"Ges_€":-30.450000000000006}]

                                    Der machte daraus
                                    Screenshot 2024-01-04 205215.png

                                    Geht das irgendwi einfach ? in php wüste ich wie aber so bin ich grad etwas überfordert

                                    Schau mal das widget "simpleHistoricTable" unter http://129.159.205.3:8082/webui/index.html an, das macht im endeffekt sowas.
                                    gab auch ein Beispiel dazu, aber die wurden ja überschrieben...

                                    1 Reply Last reply Reply Quote 0
                                    • jogibear9988
                                      jogibear9988 last edited by

                                      okay, schau in den screen table sample...

                                      1 Reply Last reply Reply Quote 0
                                      • jogibear9988
                                        jogibear9988 last edited by

                                        simpleHistoricTable Control:

                                        export function connectedCallback(instance) {
                                            instance.addEventListener('data-changed', () => createTable(instance));
                                            createTable(instance);
                                        }
                                        export function disconnectedCallback(instance) {
                                            instance.removeEventListener('data-changed', () => createTable(instance));
                                        }
                                        function createTable(instance) {
                                            const table = instance._getDomElement('root');
                                            table.innerHTML = '';
                                            if (instance.data?.length > 0) {
                                                let text = "<thead><tr>";
                                                for (let property in instance.data[0]) {
                                                    text += "<th>" + property + "</th>";
                                                }
                                                text += "</tr></thead>";
                                                for (let row of instance.data) {
                                                    text += "<tr>";
                                                    for (let property in instance.data[0]) {
                                                        text += "<td>" + row[property] + "</td>";
                                                    }
                                                    text += "</tr>";
                                                }
                                                table.innerHTML = text;
                                            }
                                        }
                                        

                                        hat eine property "data", an diese kann man sich ändernde daten hängen, das control registriert auf die sich ändernden daten ein callback, und in diesem werden aus den daten ein table element gebaut.
                                        Die daten werden im Moment als array von objekten erwartet, und alle properties ausgegeben. aber das kannst ja beliebig umbauen

                                        Smilie108 1 Reply Last reply Reply Quote 0
                                        • jogibear9988
                                          jogibear9988 last edited by

                                          Bitte aber das existierende control lassen, wenn dann ein neues anlegen

                                          1 Reply Last reply Reply Quote 1
                                          • W
                                            Worlik last edited by

                                            Vielleicht braucht das ja noch jemand anderes, hier ist eine einfache Anleitung für den Kioskmodus auf dem Raspberry PI: https://tabula.info/dokuwiki/doku.php/anleitung_fuer_linux_kiosk_manuell - es gibt da auch ein automatisches Skript auf der selben Seite, habe ich aber nicht machen wollen, weil ich ja hier keine frische Installation hatte und eingreifen wollte.

                                            Der Schritt hier macht mir dabei noch etwas Probleme, was den SSH Login angeht:

                                            Zum automatischen Anmelden müsste man die Datei /etc/systemd/system/getty@tty1.service.d/autologin.conf (und ggf. das entsprechende Verzeichnis) anlegen, was > Raspi OS bereits hat. Der Minimalinhalt wäre:

                                            autologin.conf
                                            [Service]
                                            	ExecStart=
                                            	ExecStart=-/sbin/agetty --autologin "pi" %I
                                            

                                            Ansonsten läuft das aber einwandfrei und alles wird super dargestellt. Das Kontektmenü konnte ich leider noch nicht ans laufen bekommen (ist für einen manuellen Reload ja manchmal ganz nett).

                                            Das sind aber alles Problemchen, welche nichts mit der webui zu tun haben. 😉

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

                                            Support us

                                            ioBroker
                                            Community Adapters
                                            Donate

                                            668
                                            Online

                                            31.7k
                                            Users

                                            79.8k
                                            Topics

                                            1.3m
                                            Posts

                                            20
                                            1074
                                            285576
                                            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