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

    • ioBroker goes Matter ... Matter Adapter in Stable

    • Monatsrückblick - April 2025

    • Minor js-controller 7.0.7 Update in latest repo

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

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

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

      @blockmove

      es hat ja aber nicht jede property den '...' button. Das ist ja im moment nur bei Signalen so. Aber man kann ja auf jede Property ein complex value hängen.

      Hmmm ... Dann vielleicht nen eigenen Button dafür. Du weißt ja, dass mir ein Klick auf einen ganz normalen Text nicht so gut gefällt.
      Ich hab's halt einfach gern, wenn ich sehe wo Bedienelemente sind. Die verborgenden Schaltflächen hasse ich auch bei manchen Anlagenvisualisierungen bei uns in der Firma.

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

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

        webui hat mir zwar vom Designer gefallen, aber mit Drag und Drop wie bei vis ging nicht viel.

        Wenn man absolut Positionierte Layouts macht, sollte man eigentlich schon mit DragDrop arbeiten können. Und auch wenn man Sich ein "css grid" definiert hat, kann man die Elemente schön reinziehen.
        Was eben noch nicht gut ist z.B. ein grid über die UI erstellen oder verändern. Oder auch Layout ohne Position absolute...
        Ich schau da auch immer bei anderen Designern wie machen es die: https://github.com/node-projects/web-component-designer/issues/28

        Aber wie Ihr auch in der Liste seht: https://github.com/node-projects/web-component-designer/issues/
        Es werden immer mehr Tasks und nicht weniger 😉
        Und das ist nur der Designer Teil, in der WebUi gibts ja dann noch Bindings, und allerlei ioBroker integration, das hat gar nichts mit meinem abstrakten Designer Framework zu tun.

        Probiere auch in GoogleSummerOfCode zu kommen, aber das sieht schlecht aus, dort hat das Projekt einfach zu wenig Bekanntheit.

        jogibear9988 created this issue in node-projects/web-component-designer

        open look at other designers for ideas #28

        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

          es hat ja aber nicht jede property den '...' button. Das ist ja im moment nur bei Signalen so. Aber man kann ja auf jede Property ein complex value hängen.

          Hmmm ... Dann vielleicht nen eigenen Button dafür. Du weißt ja, dass mir ein Klick auf einen ganz normalen Text nicht so gut gefällt.
          Ich hab's halt einfach gern, wenn ich sehe wo Bedienelemente sind. Die verborgenden Schaltflächen hasse ich auch bei manchen Anlagenvisualisierungen bei uns in der Firma.

          Ja, verstehe ich. Wenn du das system entwirfst, fällt dir gar nicht mehr auf welche funktionen man nicht findet. Macht am besten für solche Ideen auch issues auf, sonst vergesse ich es.

          Das ist dann aber ein issue bei webui, nicht im designer.

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

            @Smilie108

            kannst du für die Unterordner auch noch ein issue aufmachen?

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

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

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

              @jogibear9988 & @Blockmove

              Bitte das ganze nicht als kritik verstehen mir ist der offne standart von webui auch lieber da wie jochen schon gesagt angedeutet hat irgendwann eine vis3 kommt und man alles wieder neu machen muss.

              Die Verwendung von Standards und geringe Abhängigkeiten ist schon langfristig ein riesen Vorteil.
              Ich hab bei mir den Heatingcontrol-Adapter im Einsatz. Als ich dann versucht habe auf vis-2 zu migrieren, funktionierte die dazugehörige Visu kaum.

              Das Binding in HTML ist ja nicht wirklich standard, aber irgendwie muss man es ja umsetzen.
              Aber zumindest kannst du bei mir HTML von einer seite reinkopieren und es sieht dann eig. schon so aus wie dort. Das geht wohl in den anderen Visualisierungen nicht. Ich hab das z.B. zum test mal mit https://www.thelcars.com/ gemacht (siehe screen lcars)

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

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

                Das Binding in HTML ist ja nicht wirklich standard, aber irgendwie muss man es ja umsetzen.
                Aber zumindest kannst du bei mir HTML von einer seite reinkopieren und es sieht dann eig. schon so aus wie dort. Das geht wohl in den anderen Visualisierungen nicht. Ich hab das z.B. zum test mal mit https://www.thelcars.com/ gemacht (siehe screen lcars)

                Nein das geht in den anderen Visualisierungen nicht.
                Wie auch in der Automatisierungstechnik auch gibt es halt auch bei iobroker verschiedene Ansätze.
                webui ist html pur und lovelace auf der anderen Seite versucht alles automatisch an Hand der ioBroker Objekte zu erstellen.
                Schön ist halt, dass man die Wahl hat.

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

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

                  @blockmove said in neue Visualisierung "webui" (alternative zu vis):
                  Macht am besten für solche Ideen auch issues auf, sonst vergesse ich es.

                  erledigt ... Genauso wie die Spende.

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

                    @jogibear9988 oder @Blockmove
                    Kann mir einer von euch sagen wie ich einen wert per js schreiben kann ?
                    um genau zu sein will ich im costumcontrol 4 Knöpfe machen die je nach knopf einen anderen wert in eine im control.prop angelege variabel schreiben können.
                    Wie gesagt mein js ist sehr begrenzt lerne jeden tag dazu aber irgendwie geht das nicht o wie ich das kannte mit document.getElementById("timerangeselector").defaultValue = "day";

                    verwechsel ich da was ? bring es auch mit simplscript nicht hin weil ich nicht ganz versteh. Würde das setelementproperty verwenden aber weis nicht genau was ich da alles einfüllen soll.

                    Für jede hilfe dankbar

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

                      @smilie108

                      willst du innerhalb des CustomControls auf einen property des CustomControls schreiben?

                      wenn ja, du bekommst die instanz des customcontrols in der property "instance" in jedem event übergeben:

                          import { iobrokerHandler } from "/webui/dist/frontend/common/IobrokerHandler.js";
                          import { Runtime } from "/webui/dist/frontend/common/Runtime.js";
                      
                          /**
                          * aaa - 'click' event of <div>
                          * @param {PointerEvent} event
                          * @param {Element} eventRaisingElement
                          * @param {ShadowRoot} shadowRoot
                          * @param {HTMLElement} instance
                          */
                          export function aaa(event, eventRaisingElement, shadowRoot, instance) {
                              instance.property. = 'wert'
                          }
                      

                      ausserhalb des customcontrols:
                      du musst dein element im "shadowRoot" suchen, jedes custom control, odr jeder screen hat einen gekapselten DOM (shadowdom), daher findest du über document nichts.

                          export function aaa(event, eventRaisingElement, shadowRoot, instance) {
                              let ctl = shadowRoot.getElementById('aa');
                              ctl.prop = 'wert'
                          }
                      1 Reply Last reply Reply Quote 0
                      • jogibear9988
                        jogibear9988 last edited by

                        du kannst auch immer in jedes script:

                        debugger;
                        

                        reinschreiben, dann hält der chrome debugger dort an (wenn du die dev tools offen hast)

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

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

                          @jogibear9988 oder @Blockmove
                          Kann mir einer von euch sagen wie ich einen wert per js schreiben kann ?
                          um genau zu sein will ich im costumcontrol 4 Knöpfe machen die je nach knopf einen anderen wert in eine im control.prop angelege variabel schreiben können.
                          Wie gesagt mein js ist sehr begrenzt lerne jeden tag dazu aber irgendwie geht das nicht o wie ich das kannte mit document.getElementById("timerangeselector").defaultValue = "day";

                          verwechsel ich da was ? bring es auch mit simplscript nicht hin weil ich nicht ganz versteh. Würde das setelementproperty verwenden aber weis nicht genau was ich da alles einfüllen soll.

                          Für jede hilfe dankbar

                          Hallo smilie108,
                          irgendwie ist mir nicht so ganz klar, was du möchtest.
                          Einfach mit 4 Buttons Werte auf ein Property schreiben geht doch mit SimpleScript und complex bindings problemlos.
                          Hab dir mal auf Jochens Demoseite ein control (smilebutton) und einen screen (smilescreen) gelegt.
                          Oder sehe ich das irgendwie zu einfach?

                          Gruß
                          Dieter

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

                            @Blockmove
                            Lach genau sowas brauch ich nur das ich dann strings hinschreibe 😉
                            Wie kommst du auf das was in dem signalwert oben drin steht drauf.
                            Bei den sachen happerts bei mir noch
                            DANKE

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

                              @smilie108

                              Kennst du das Youtube-Video von Jochen zu dem Thema?
                              Bei den Complex Bindings musst Du nen Rechtsklick auf den Text "signal" SetSignalValue machen.
                              ComplexBinding.png

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

                                @blockmove
                                Hi ja jetzt kenne ich es soweit versthe ich das nun auch aber leider schon wieder ein Problem

                                Hab jetzt das ganze soweit das ich die Auswahlbouten laufne habe
                                würde aber jetzt auch noch gerne ein input date verknüpfen am liebsten auch noch so das der default auf den aktuellen tag geht.
                                aber egal wie ich es drhe und wende ich bekomme es nicht hin gibts da irgendaas spezielles wenn men so ein input verwendet oder geht das auch mit setsignal ?

                                sorry das ich soviel fragen stelle. Möchte das aber versthen lernen da ich mir noch so einiges vorstellen kann aber dazu muss ich wissen wie es geht sonst lerne ich ja nichts 😉

                                Danke im voraus
                                Ps hab das aktuelle wie ich es verknüpft habe in die test reingespielt

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

                                  @smilie108

                                  Für das Date-Inputfeld könntest du ein Twoway-Binding für die Property verwenden. Mit einem Datum habe ich aber auch noch nie in einem Control gearbeitet

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

                                    @smilie108
                                    Ich hab mal in dein Control auf Jochens Testsystem ein Eingabefeld hinzugefügt.
                                    Eingeben und Schreiben auf ioBroker sollte so funktionieren. Ob es den richtigen Wert der ioBroker-Variable anzeigt, kann ich dir nicht sagen. Habe es bei mir nicht getestet.

                                    @jogibear9988
                                    Hallo Jochen,
                                    wie erfolgt der Datenaustausch bei Datum? Number oder String?

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

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

                                      @jogibear9988
                                      Hallo Jochen,
                                      wie erfolgt der Datenaustausch bei Datum? Number oder String?

                                      Kein Plan im Moment wie das Date im IOB objekt gespeichert wird. Musst probieren. Wenn es as zahl gespeichert ist (ms seit 1.1.1970) dann kannst an "valueAsNumber" binden. Wenn es ein wirkliches date objekt ist, an "valueAsDate"

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

                                        @jogibear9988 Gibt es eigentlich einen offiziellen Weg, wie ich Schrift einbinden kann? Ich habe es jetzt über die "Additional Files" versucht und die Schrift dann im CSS so eingebunden:

                                        @font-face {
                                          font-family: 'Indie Flower';
                                          src: url('/webui.0.data/config/additionalfiles/IndieFlower.woff2') format('woff2'),
                                               url('/webui.0.data/config/additionalfiles/IndieFlower.woff') format('woff'),
                                               url('/webui.0.data/config/additionalfiles/IndieFlower.svg#IndieFlower') format('svg');
                                          font-weight: normal;
                                          font-style: normal;
                                          font-display: swap;
                                        }
                                        

                                        Leider scheint die Font nicht geladen zu werden und ich sehe gerade noch nicht so recht wieso. Hättest du einen Tipp?

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

                                          @worlik

                                          schriften müssen im style im html dokument sein, schau auf meinem server unter:

                                          91a00514-53d6-4933-a79d-f46dee9d8dd0-image.png

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

                                            @worlik

                                            leider kann man schriften nicht im css im shadowdom laden...

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

                                            Support us

                                            ioBroker
                                            Community Adapters
                                            Donate

                                            786
                                            Online

                                            31.6k
                                            Users

                                            79.5k
                                            Topics

                                            1.3m
                                            Posts

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