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. Visualisierung
  4. neue Visualisierung "webui" (alternative zu vis & vis-2)

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

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

Geplant Angeheftet Gesperrt Verschoben Visualisierung
1.1k Beiträge 21 Kommentatoren 351.2k Aufrufe 19 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.
  • jogibear9988J Offline
    jogibear9988J Offline
    jogibear9988
    schrieb am zuletzt editiert von
    #943

    Ich schaus mir an. Bin gerade nur unterwegs. Morgen wirds gehn.

    Check my ioBroker webui - a vis alternative
    see: https://github.com/iobroker-community-adapters/ioBroker.webui

    Smilie108S 1 Antwort Letzte Antwort
    0
    • jogibear9988J jogibear9988

      Ich schaus mir an. Bin gerade nur unterwegs. Morgen wirds gehn.

      Smilie108S Offline
      Smilie108S Offline
      Smilie108
      schrieb am zuletzt editiert von
      #944

      @jogibear9988 danke vorab hab die einstellungen mit der alten version verglichen aber entweder stimmt da noch was nicht mit der parrent zuweiseung ( 0/1/2..) oder so kann da auswählen was ich will auch wegen .sidebar toogle das geht auch nicht beim click habe das aber auach schon auf css usw ändern probiert.
      Vorab ein herzliches danke

      jogibear9988J 2 Antworten Letzte Antwort
      0
      • Smilie108S Smilie108

        @jogibear9988 danke vorab hab die einstellungen mit der alten version verglichen aber entweder stimmt da noch was nicht mit der parrent zuweiseung ( 0/1/2..) oder so kann da auswählen was ich will auch wegen .sidebar toogle das geht auch nicht beim click habe das aber auach schon auf css usw ändern probiert.
        Vorab ein herzliches danke

        jogibear9988J Offline
        jogibear9988J Offline
        jogibear9988
        schrieb am zuletzt editiert von
        #945

        @smilie108

        so, geht nun wieder. War noch ein fehler von mir nach dem umbau.

        P.S. nun gibts auch ein copy befehl für den vollen pfad des screen namens (rechte maustaste auf den screen). Das kannst du für das menü doch sicher gebrauchen

        Check my ioBroker webui - a vis alternative
        see: https://github.com/iobroker-community-adapters/ioBroker.webui

        1 Antwort Letzte Antwort
        0
        • jogibear9988J Offline
          jogibear9988J Offline
          jogibear9988
          schrieb am zuletzt editiert von
          #946

          neues feature:

          copy&paste für events:
          5afeb064-6646-49a5-a20e-d4f5950f0c7b-image.png

          Check my ioBroker webui - a vis alternative
          see: https://github.com/iobroker-community-adapters/ioBroker.webui

          1 Antwort Letzte Antwort
          0
          • Smilie108S Smilie108

            @jogibear9988 danke vorab hab die einstellungen mit der alten version verglichen aber entweder stimmt da noch was nicht mit der parrent zuweiseung ( 0/1/2..) oder so kann da auswählen was ich will auch wegen .sidebar toogle das geht auch nicht beim click habe das aber auach schon auf css usw ändern probiert.
            Vorab ein herzliches danke

            jogibear9988J Offline
            jogibear9988J Offline
            jogibear9988
            schrieb am zuletzt editiert von
            #947

            @smilie108
            und wie siehts aus?

            Check my ioBroker webui - a vis alternative
            see: https://github.com/iobroker-community-adapters/ioBroker.webui

            Smilie108S 1 Antwort Letzte Antwort
            0
            • jogibear9988J jogibear9988

              @smilie108
              und wie siehts aus?

              Smilie108S Offline
              Smilie108S Offline
              Smilie108
              schrieb am zuletzt editiert von
              #948

              @jogibear9988 hi momentan funktioniert das menue wieder bei dem trend fenster bin ich noch nicht weiter da hat er noch probleme mit den werten hin und her bzw mit url bastel ;) derzeit grad etwas stressig in der firma und auch zuhause haben haus gekauft und sind beim sanieren deswegen ist meine zeit etwas begrenzt zum probieren ;) danke aber trotzdem derweil sobald ich kann versuch ich es

              1 Antwort Letzte Antwort
              0
              • T Offline
                T Offline
                tve
                schrieb am zuletzt editiert von tve
                #949

                Wie benutzt man @fluentui/web-components in webui? I habe die installiert, es hat sich auch was getan, aber nach einem Neuladen erscheint nichts im Designer...

                cdbb077c-abbb-4208-b01b-36bd9eeee793-image.png

                NB: shoelace ist wohl eine bessere Wahl... Wird hoffentlich als web-awesome gut weiterentwickelt...

                jogibear9988J 1 Antwort Letzte Antwort
                0
                • T Offline
                  T Offline
                  tve
                  schrieb am zuletzt editiert von
                  #950

                  Wenn man Pakete installiert, was bedeutet der "Upload" Status? Was wird wohin geladen und weshalb ist es seeeehr langsam? (Und js-connector scheint sehr beschäftigt zu sein?)

                  a53aee34-b65a-450b-b7bb-a216315ca3df-image.png

                  jogibear9988J 1 Antwort Letzte Antwort
                  0
                  • T tve

                    Wie benutzt man @fluentui/web-components in webui? I habe die installiert, es hat sich auch was getan, aber nach einem Neuladen erscheint nichts im Designer...

                    cdbb077c-abbb-4208-b01b-36bd9eeee793-image.png

                    NB: shoelace ist wohl eine bessere Wahl... Wird hoffentlich als web-awesome gut weiterentwickelt...

                    jogibear9988J Offline
                    jogibear9988J Offline
                    jogibear9988
                    schrieb am zuletzt editiert von
                    #951

                    @tve said in neue Visualisierung "webui" (alternative zu vis & vis-2):

                    Wie benutzt man @fluentui/web-components in webui? I habe die installiert, es hat sich auch was getan, aber nach einem Neuladen erscheint nichts im Designer...

                    cdbb077c-abbb-4208-b01b-36bd9eeee793-image.png

                    NB: shoelace ist wohl eine bessere Wahl... Wird hoffentlich als web-awesome gut weiterentwickelt...

                    liegt am microsoft package, das enthält keine extensions....
                    glaube eine alte version lief da mal.
                    ich hab dort mal ein issue angelegt: https://github.com/microsoft/fluentui/issues/33521

                    Check my ioBroker webui - a vis alternative
                    see: https://github.com/iobroker-community-adapters/ioBroker.webui

                    1 Antwort Letzte Antwort
                    0
                    • T tve

                      Wenn man Pakete installiert, was bedeutet der "Upload" Status? Was wird wohin geladen und weshalb ist es seeeehr langsam? (Und js-connector scheint sehr beschäftigt zu sein?)

                      a53aee34-b65a-450b-b7bb-a216315ca3df-image.png

                      jogibear9988J Offline
                      jogibear9988J Offline
                      jogibear9988
                      schrieb am zuletzt editiert von
                      #952

                      @tve said in neue Visualisierung "webui" (alternative zu vis & vis-2):

                      Wenn man Pakete installiert, was bedeutet der "Upload" Status? Was wird wohin geladen und weshalb ist es seeeehr langsam? (Und js-connector scheint sehr beschäftigt zu sein?)

                      a53aee34-b65a-450b-b7bb-a216315ca3df-image.png

                      es müssen alle .js files eines npm packges in iobroker hochgeladen werden, da iobroker multiserver unterstützt liegen die files an einem speziellen ort, wenn man redis nutzt sogar in redis (soweit ich weis). Ist ne iobroker funktion die ich da nutze, geht soweit ich weiß nicht schneller...

                      Nutzt du ein RaspberryPI?

                      Check my ioBroker webui - a vis alternative
                      see: https://github.com/iobroker-community-adapters/ioBroker.webui

                      T 1 Antwort Letzte Antwort
                      0
                      • jogibear9988J jogibear9988

                        @tve said in neue Visualisierung "webui" (alternative zu vis & vis-2):

                        Wenn man Pakete installiert, was bedeutet der "Upload" Status? Was wird wohin geladen und weshalb ist es seeeehr langsam? (Und js-connector scheint sehr beschäftigt zu sein?)

                        a53aee34-b65a-450b-b7bb-a216315ca3df-image.png

                        es müssen alle .js files eines npm packges in iobroker hochgeladen werden, da iobroker multiserver unterstützt liegen die files an einem speziellen ort, wenn man redis nutzt sogar in redis (soweit ich weis). Ist ne iobroker funktion die ich da nutze, geht soweit ich weiß nicht schneller...

                        Nutzt du ein RaspberryPI?

                        T Offline
                        T Offline
                        tve
                        schrieb am zuletzt editiert von
                        #953

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

                        Ist ne iobroker funktion die ich da nutze, geht soweit ich weiß nicht schneller...
                        Nutzt du ein RaspberryPI?

                        OK. Wird ja nicht oft nötig sein... js-connector lag bei etwa 70-80% cpu. Ist eine etwas ältere AMD box ohne Redis aber mit genug Speicher und SSD. Wenn das alles in Redis landen würde wäre es nicht so toll (ist ja dann alles in RAM)...

                        jogibear9988J 1 Antwort Letzte Antwort
                        0
                        • T tve

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

                          Ist ne iobroker funktion die ich da nutze, geht soweit ich weiß nicht schneller...
                          Nutzt du ein RaspberryPI?

                          OK. Wird ja nicht oft nötig sein... js-connector lag bei etwa 70-80% cpu. Ist eine etwas ältere AMD box ohne Redis aber mit genug Speicher und SSD. Wenn das alles in Redis landen würde wäre es nicht so toll (ist ja dann alles in RAM)...

                          jogibear9988J Offline
                          jogibear9988J Offline
                          jogibear9988
                          schrieb am zuletzt editiert von
                          #954

                          @tve said in neue Visualisierung "webui" (alternative zu vis & vis-2):

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

                          Ist ne iobroker funktion die ich da nutze, geht soweit ich weiß nicht schneller...
                          Nutzt du ein RaspberryPI?

                          OK. Wird ja nicht oft nötig sein... js-connector lag bei etwa 70-80% cpu. Ist eine etwas ältere AMD box ohne Redis aber mit genug Speicher und SSD. Wenn das alles in Redis landen würde wäre es nicht so toll (ist ja dann alles in RAM)...

                          frag mich nicht wie das genau funz. Ich weiß nur das nicht direkt aus dem dateisystem gehostet wird, wegen verteilten IOB systemen...
                          Hab mich nie genauer damit beschäftigt

                          Check my ioBroker webui - a vis alternative
                          see: https://github.com/iobroker-community-adapters/ioBroker.webui

                          K 1 Antwort Letzte Antwort
                          1
                          • jogibear9988J jogibear9988

                            @tve said in neue Visualisierung "webui" (alternative zu vis & vis-2):

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

                            Ist ne iobroker funktion die ich da nutze, geht soweit ich weiß nicht schneller...
                            Nutzt du ein RaspberryPI?

                            OK. Wird ja nicht oft nötig sein... js-connector lag bei etwa 70-80% cpu. Ist eine etwas ältere AMD box ohne Redis aber mit genug Speicher und SSD. Wenn das alles in Redis landen würde wäre es nicht so toll (ist ja dann alles in RAM)...

                            frag mich nicht wie das genau funz. Ich weiß nur das nicht direkt aus dem dateisystem gehostet wird, wegen verteilten IOB systemen...
                            Hab mich nie genauer damit beschäftigt

                            K Offline
                            K Offline
                            Kamikaze
                            schrieb am zuletzt editiert von
                            #955

                            @jogibear9988 Ich hoffe, es kann mir einer helfen:
                            Ich habe den webUI-Adapter 1.19.4 installiert. Sobald ich die Instanz starte, erhalte ich nur einen leeren Bildschirm.
                            Die Webconsole bringt einige Fehlermeldungen.
                            Danach habe ich aus den BETA-Repository die Version 1.20 und von GITHUB die Version 1.21 installiert mit dem gleichen Ergebnis.
                            In der Doku heisst es, dass ich als erstes einen Screen erstellen soll, aber soweit komme ich garnicht.

                            Was muss ich tun, damit ich diese Lösung nutzen kann.

                            GET http://192.168.110.10:8082/webui.0.widgets/importmap.js net::ERR_ABORTED 404 (Not Found)
                            runtime.html:58 
                                    
                                    
                                    GET http://192.168.110.10:8082/webui.0.widgets/importmap.js net::ERR_ABORTED 404 (Not Found)
                            (anonym) @ runtime.html:58
                            IobrokerHandler.js:110 ioBroker handler ready.
                            IobrokerHandler.js:192  Error reading Screen undefined Not exists
                            getScreen @ IobrokerHandler.js:192
                            await in getScreen
                            getWebuiObject @ IobrokerHandler.js:176
                            _loadScreen @ ScreenViewer.js:116
                            await in _loadScreen
                            set screenName @ ScreenViewer.js:75
                            checkHash @ runtime.html:72
                            (anonym) @ runtime.html:76
                            runtime.html:62 
                                    
                                    
                                    GET http://192.168.110.10:8082/webui.0.widgets/importWidgetFilesRuntime.js 404 (Not Found)
                            doFetch @ es-module-shims.js:805
                            fetchModule @ es-module-shims.js:825
                            (anonym) @ es-module-shims.js:895
                            getOrCreateLoad @ es-module-shims.js:911
                            topLevelLoad @ es-module-shims.js:599
                            await in topLevelLoad
                            importShim @ es-module-shims.js:453
                            await in importShim
                            (anonym) @ runtime.html:62
                            es-module-shims.js:816  Uncaught (in promise) TypeError: 404 Not Found http://192.168.110.10:8082/webui.0.widgets/importWidgetFilesRuntime.js
                                at doFetch (es-module-shims.js:816:21)
                                at async fetchModule (es-module-shims.js:825:17)
                                at async es-module-shims.js:895:40
                                at async loadAll (es-module-shims.js:502:5)
                                at async topLevelLoad (es-module-shims.js:602:5)
                            doFetch @ es-module-shims.js:816
                            await in doFetch
                            fetchModule @ es-module-shims.js:825
                            (anonym) @ es-module-shims.js:895
                            getOrCreateLoad @ es-module-shims.js:911
                            topLevelLoad @ es-module-shims.js:599
                            await in topLevelLoad
                            importShim @ es-module-shims.js:453
                            await in importShim
                            (anonym) @ runtime.html:62
                            IobrokerHandler.js:170  no control loaded Not exists
                            getObjectNames @ IobrokerHandler.js:170
                            await in getObjectNames
                            getAllNames @ IobrokerHandler.js:136
                            getCustomControlNames @ IobrokerHandler.js:252
                            loadAllCustomControls @ IobrokerHandler.js:239
                            await in loadAllCustomControls
                            (anonym) @ controls.js:27
                            IobrokerHandler.js:155  error loading subfolders Not exists
                            
                            
                            K 1 Antwort Letzte Antwort
                            0
                            • K Kamikaze

                              @jogibear9988 Ich hoffe, es kann mir einer helfen:
                              Ich habe den webUI-Adapter 1.19.4 installiert. Sobald ich die Instanz starte, erhalte ich nur einen leeren Bildschirm.
                              Die Webconsole bringt einige Fehlermeldungen.
                              Danach habe ich aus den BETA-Repository die Version 1.20 und von GITHUB die Version 1.21 installiert mit dem gleichen Ergebnis.
                              In der Doku heisst es, dass ich als erstes einen Screen erstellen soll, aber soweit komme ich garnicht.

                              Was muss ich tun, damit ich diese Lösung nutzen kann.

                              GET http://192.168.110.10:8082/webui.0.widgets/importmap.js net::ERR_ABORTED 404 (Not Found)
                              runtime.html:58 
                                      
                                      
                                      GET http://192.168.110.10:8082/webui.0.widgets/importmap.js net::ERR_ABORTED 404 (Not Found)
                              (anonym) @ runtime.html:58
                              IobrokerHandler.js:110 ioBroker handler ready.
                              IobrokerHandler.js:192  Error reading Screen undefined Not exists
                              getScreen @ IobrokerHandler.js:192
                              await in getScreen
                              getWebuiObject @ IobrokerHandler.js:176
                              _loadScreen @ ScreenViewer.js:116
                              await in _loadScreen
                              set screenName @ ScreenViewer.js:75
                              checkHash @ runtime.html:72
                              (anonym) @ runtime.html:76
                              runtime.html:62 
                                      
                                      
                                      GET http://192.168.110.10:8082/webui.0.widgets/importWidgetFilesRuntime.js 404 (Not Found)
                              doFetch @ es-module-shims.js:805
                              fetchModule @ es-module-shims.js:825
                              (anonym) @ es-module-shims.js:895
                              getOrCreateLoad @ es-module-shims.js:911
                              topLevelLoad @ es-module-shims.js:599
                              await in topLevelLoad
                              importShim @ es-module-shims.js:453
                              await in importShim
                              (anonym) @ runtime.html:62
                              es-module-shims.js:816  Uncaught (in promise) TypeError: 404 Not Found http://192.168.110.10:8082/webui.0.widgets/importWidgetFilesRuntime.js
                                  at doFetch (es-module-shims.js:816:21)
                                  at async fetchModule (es-module-shims.js:825:17)
                                  at async es-module-shims.js:895:40
                                  at async loadAll (es-module-shims.js:502:5)
                                  at async topLevelLoad (es-module-shims.js:602:5)
                              doFetch @ es-module-shims.js:816
                              await in doFetch
                              fetchModule @ es-module-shims.js:825
                              (anonym) @ es-module-shims.js:895
                              getOrCreateLoad @ es-module-shims.js:911
                              topLevelLoad @ es-module-shims.js:599
                              await in topLevelLoad
                              importShim @ es-module-shims.js:453
                              await in importShim
                              (anonym) @ runtime.html:62
                              IobrokerHandler.js:170  no control loaded Not exists
                              getObjectNames @ IobrokerHandler.js:170
                              await in getObjectNames
                              getAllNames @ IobrokerHandler.js:136
                              getCustomControlNames @ IobrokerHandler.js:252
                              loadAllCustomControls @ IobrokerHandler.js:239
                              await in loadAllCustomControls
                              (anonym) @ controls.js:27
                              IobrokerHandler.js:155  error loading subfolders Not exists
                              
                              
                              K Offline
                              K Offline
                              Kamikaze
                              schrieb am zuletzt editiert von
                              #956

                              @kamikaze Hallo, das Problem hat sich erledigt. Ich war so naiv, zu glauben, dass ich über den Instanzlink webui.0 auf den Editor komme.
                              Dabei öffnet sich aber die runtime.html und nicht die index.html.
                              Da ich den Ansatz mit dem webcomponents sehr spannend finde, werde ich alle Erkenntnisse sammeln und hier bereitstellen, sodass wir gemeinsam die Dokumentation noch ein wenig verbessern können.

                              Grüß

                              K 1 Antwort Letzte Antwort
                              0
                              • K Kamikaze

                                @kamikaze Hallo, das Problem hat sich erledigt. Ich war so naiv, zu glauben, dass ich über den Instanzlink webui.0 auf den Editor komme.
                                Dabei öffnet sich aber die runtime.html und nicht die index.html.
                                Da ich den Ansatz mit dem webcomponents sehr spannend finde, werde ich alle Erkenntnisse sammeln und hier bereitstellen, sodass wir gemeinsam die Dokumentation noch ein wenig verbessern können.

                                Grüß

                                K Offline
                                K Offline
                                Kamikaze
                                schrieb am zuletzt editiert von Kamikaze
                                #957

                                @kamikaze Ich benötige ein wenig Hilfe.
                                Vorab: Diese Adapter ist schlicht der Wahnsinn. Vielen Dank für eure Mühe.
                                Da ich einige Konzepte noch nicht ganz durchblicke, hoffe ich auf eure Unterstützung:
                                Ich hab ein Javascript:

                                
                                function circle(cssclass, wert) {
                                    let progressCircle = document.querySelector("." + cssclass + " .mycircle");
                                    if (progressCircle === null) {
                                        return
                                    }
                                    let radius = progressCircle.r.baseVal.value;
                                    let umfang = radius * 2 * Math.PI;
                                    progressCircle.style.strokeDasharray = umfang;
                                    let prozent = wert;
                                
                                    const setProgress = function (percent) {
                                        let offset = (umfang - (percent / 100) * umfang);
                                        progressCircle.style.strokeDashoffset = offset;
                                
                                    };
                                    setProgress(prozent);
                                }
                                

                                Dazu gehört das Stylesheet:

                                .umfang {
                                    stroke: #d4af37;
                                    stroke-width: 5px;
                                    stroke-dasharray: 3 8;
                                    fill: none;
                                }
                                
                                .mycircle {
                                    fill: none;
                                    stroke: #d4af37;
                                    stroke-width: 5px;
                                    transform: rotate(-90deg);
                                    transform-origin: center;
                                }
                                

                                und ein svg-Elemente:

                                <svg width="90" height="90" xmlns="http://www.w3.org/2000/svg">    
                                    <circle class="umfang" r="40" cx="45" cy="45" />    
                                    <circle class="mycircle" r="40" cx="45" cy="45" />
                                </svg>
                                

                                Das Problem, dass ich habe ist folgendes:
                                Ich weiss, wo das SVG-Element hingehört, als auch das Stylesheet.
                                Mir ist nicht klar, wo ich das Javascript einbinde, da ich auch noch ein binding für den wert brauche, z.B.
                                0_userdata.0.Räume.Bastelzimmer.Geräte.Heizung_Bastelzimmer.messung.Ventilstellung

                                Ziel dieser Lösung:
                                es wird ein gepunkteter Kreis angezeigt, der von einem Kreissegment == Heizungventistellung in % überlagert wird.

                                Ich hoffe, ich habe mich verständlich gemacht und jemand kann mir einen Tipp geben.

                                K 1 Antwort Letzte Antwort
                                0
                                • K Kamikaze

                                  @kamikaze Ich benötige ein wenig Hilfe.
                                  Vorab: Diese Adapter ist schlicht der Wahnsinn. Vielen Dank für eure Mühe.
                                  Da ich einige Konzepte noch nicht ganz durchblicke, hoffe ich auf eure Unterstützung:
                                  Ich hab ein Javascript:

                                  
                                  function circle(cssclass, wert) {
                                      let progressCircle = document.querySelector("." + cssclass + " .mycircle");
                                      if (progressCircle === null) {
                                          return
                                      }
                                      let radius = progressCircle.r.baseVal.value;
                                      let umfang = radius * 2 * Math.PI;
                                      progressCircle.style.strokeDasharray = umfang;
                                      let prozent = wert;
                                  
                                      const setProgress = function (percent) {
                                          let offset = (umfang - (percent / 100) * umfang);
                                          progressCircle.style.strokeDashoffset = offset;
                                  
                                      };
                                      setProgress(prozent);
                                  }
                                  

                                  Dazu gehört das Stylesheet:

                                  .umfang {
                                      stroke: #d4af37;
                                      stroke-width: 5px;
                                      stroke-dasharray: 3 8;
                                      fill: none;
                                  }
                                  
                                  .mycircle {
                                      fill: none;
                                      stroke: #d4af37;
                                      stroke-width: 5px;
                                      transform: rotate(-90deg);
                                      transform-origin: center;
                                  }
                                  

                                  und ein svg-Elemente:

                                  <svg width="90" height="90" xmlns="http://www.w3.org/2000/svg">    
                                      <circle class="umfang" r="40" cx="45" cy="45" />    
                                      <circle class="mycircle" r="40" cx="45" cy="45" />
                                  </svg>
                                  

                                  Das Problem, dass ich habe ist folgendes:
                                  Ich weiss, wo das SVG-Element hingehört, als auch das Stylesheet.
                                  Mir ist nicht klar, wo ich das Javascript einbinde, da ich auch noch ein binding für den wert brauche, z.B.
                                  0_userdata.0.Räume.Bastelzimmer.Geräte.Heizung_Bastelzimmer.messung.Ventilstellung

                                  Ziel dieser Lösung:
                                  es wird ein gepunkteter Kreis angezeigt, der von einem Kreissegment == Heizungventistellung in % überlagert wird.

                                  Ich hoffe, ich habe mich verständlich gemacht und jemand kann mir einen Tipp geben.

                                  K Offline
                                  K Offline
                                  Kamikaze
                                  schrieb am zuletzt editiert von
                                  #958

                                  @kamikaze Meine ersten Versuche haben nicht zum Erfolg geführt:
                                  Im Javascript-Teil der Komponente habe ich folgendes eingetragen:

                                  /**
                                  * @param {BaseScreenViewerAndControl} instance
                                  */
                                  export function connectedCallback(instance) {
                                      console.log("01")
                                      function circle(wert) {
                                          let progressCircle = document.querySelector(".mycircle");
                                          if (progressCircle === null) {
                                              console.log("02")
                                              return
                                          }
                                          console.log("03")
                                          let radius = progressCircle.r.baseVal.value;
                                          let umfang = radius * 2 * Math.PI;
                                          progressCircle.style.strokeDasharray = umfang;
                                          let prozent = wert;
                                  
                                          const setProgress = function (percent) {
                                              let offset = (umfang - (percent / 100) * umfang);
                                              progressCircle.style.strokeDashoffset = offset;
                                  
                                          };
                                          console.log("05")
                                          setProgress(prozent);
                                      }
                                      console.log("04")
                                      circle(50);
                                  }
                                  
                                  /**
                                  * @param {BaseScreenViewerAndControl} instance
                                  */
                                  export function disconnectedCallback(instance) {
                                      alert("Disconnected")
                                  }
                                  

                                  Leider findet er die Klasse .mycircle nicht.

                                  1 Antwort Letzte Antwort
                                  0
                                  • jogibear9988J Offline
                                    jogibear9988J Offline
                                    jogibear9988
                                    schrieb am zuletzt editiert von
                                    #959

                                    Sorry für die späte Antwort...

                                    Schau mal auf den Beispiel server, hab 2 Beispiel Komponenten gemacht. (Screen TestCircle)

                                    TestCircle und TestCircle2. Die erste nutzt nur Bindings, die 2te Javascript.
                                    Wäre auch mit deinem stand gegangen, um die 2 Komponenten zu nutzen musst du aber Updaten (auf version 1.23.1).
                                    Ich habe jetzt nämlich eingebaut das man bei einer Komponente auf die breite oder höhe binden kann. So muss man den Radius nicht eingeben. Und im Javascript teil übergebe ich nun immer den "ShadowRoot" an init, so kann man den direkt durchsuchen.

                                    Schaus dir mal an, und melde dich bei Fragen.

                                    Wie gesagt, für WebUi Komponenten gibt es nun die möglichkeit sich an die eigene größe zu binden (mit §width und §height). Dazu müsst Ihr dies aber auch noch in den settings der Komponente aktivieren (da ich dazu einen resizeObserver erstelle, und das nicht immer tun will).

                                    Check my ioBroker webui - a vis alternative
                                    see: https://github.com/iobroker-community-adapters/ioBroker.webui

                                    1 Antwort Letzte Antwort
                                    0
                                    • jogibear9988J Offline
                                      jogibear9988J Offline
                                      jogibear9988
                                      schrieb am zuletzt editiert von
                                      #960

                                      In webui kann nun der iobroker objekt selector verwendet werden:

                                      über den IOB button:

                                      becb01ac-ffcd-4ccc-967e-76d7722e41e0-image.png

                                      oder im bindings dialog:
                                      82ed1c09-c37f-4c66-92a7-96380e4ca52b-image.png

                                      dann erscheint dieser:
                                      fe070d98-6597-42c3-ba6c-91ddc7c10d35-image.png

                                      Check my ioBroker webui - a vis alternative
                                      see: https://github.com/iobroker-community-adapters/ioBroker.webui

                                      K 1 Antwort Letzte Antwort
                                      0
                                      • jogibear9988J jogibear9988

                                        In webui kann nun der iobroker objekt selector verwendet werden:

                                        über den IOB button:

                                        becb01ac-ffcd-4ccc-967e-76d7722e41e0-image.png

                                        oder im bindings dialog:
                                        82ed1c09-c37f-4c66-92a7-96380e4ca52b-image.png

                                        dann erscheint dieser:
                                        fe070d98-6597-42c3-ba6c-91ddc7c10d35-image.png

                                        K Offline
                                        K Offline
                                        Kamikaze
                                        schrieb am zuletzt editiert von
                                        #961

                                        @jogibear9988 Hallo jogibear9988,
                                        Entschuldigungen sind nicht nötig.
                                        Du sprichst vom "Beispiel server", wo finde ich den?
                                        Ich bevorzuge die Javascript-Lösung, da diese mir ein tieferes Verständnis von Webcomponenten im allgemeinen,
                                        als auch deine Implementation im Besonderen verschafft. Das Binden an Breite und Höhe scheint mir im ersten Ansatz nicht die Lösung zu sein, da ich den Umfang des Kreises berechnen muss, um dann das strokeDashoffset zu berechnen.

                                        Grüße.

                                        jogibear9988J 2 Antworten Letzte Antwort
                                        0
                                        • K Kamikaze

                                          @jogibear9988 Hallo jogibear9988,
                                          Entschuldigungen sind nicht nötig.
                                          Du sprichst vom "Beispiel server", wo finde ich den?
                                          Ich bevorzuge die Javascript-Lösung, da diese mir ein tieferes Verständnis von Webcomponenten im allgemeinen,
                                          als auch deine Implementation im Besonderen verschafft. Das Binden an Breite und Höhe scheint mir im ersten Ansatz nicht die Lösung zu sein, da ich den Umfang des Kreises berechnen muss, um dann das strokeDashoffset zu berechnen.

                                          Grüße.

                                          jogibear9988J Offline
                                          jogibear9988J Offline
                                          jogibear9988
                                          schrieb am zuletzt editiert von
                                          #962

                                          @kamikaze said in neue Visualisierung "webui" (alternative zu vis & vis-2):

                                          @jogibear9988 Hallo jogibear9988,
                                          Entschuldigungen sind nicht nötig.
                                          Du sprichst vom "Beispiel server", wo finde ich den?

                                          http://129.159.205.3:8082/webui/index.html

                                          Ich bevorzuge die Javascript-Lösung, da diese mir ein tieferes Verständnis von Webcomponenten im allgemeinen,
                                          als auch deine Implementation im Besonderen verschafft. Das Binden an Breite und Höhe scheint mir im ersten Ansatz nicht die Lösung zu sein, da ich den Umfang des Kreises berechnen muss, um dann das strokeDashoffset zu berechnen.

                                          Grüße.

                                          ich berechne den umfang auch über das binding... schaus dir einfach an.

                                          Check my ioBroker webui - a vis alternative
                                          see: https://github.com/iobroker-community-adapters/ioBroker.webui

                                          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

                                          564

                                          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