Navigation

    Logo
    • Register
    • Login
    • Search
    • Recent
    • Tags
    • Unread
    • Categories
    • Unreplied
    • Popular
    • GitHub
    • Docu
    • Hilfe
    1. Home
    2. Deutsch
    3. Visualisierung
    4. Gruppierte Widget als Template oder ähnliche Möglichkeiten

    NEWS

    • Wartung am 15.11. – Forum ab 22:00 Uhr nicht erreichbar

    • UPDATE 31.10.: Amazon Alexa - ioBroker Skill läuft aus ?

    • Monatsrückblick – September 2025

    Gruppierte Widget als Template oder ähnliche Möglichkeiten

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

      Hallo Zusammen,

      ich bin im Thema ioBroker und vis bisher ein Einsteiger und habe gewisse Views zwar schon erstellt, aber ich möchte dies noch ein bisschen verbessern, besonders in der Erstellung und hoffe hier ein paar Tipps zu bekommen.
      Ich habe bereits im Forum und unter g... viel gesucht aber irgendwie noch nicht das richtige Ergebnis gefunden (vielleicht habe ich auch nicht die richtigen Suchbegriffe eingegeben :-().

      Nun zum eigentlichen Thema:
      Mein eigentliches Ziel:
      Ich möchte in einer Hauptview mehrere gleiche Widget für mehrere HM-HKT-WC (Homematic Thermostate) erstellen.
      Dieses Widget oder Gruppe mit mehreren Widget sollen

      • ein Symbol,
      • ein Namen
      • den aktuellen Temperaturwert
      • den Status des dazugehörigen Tür/Fensterkontakt enthalten.
      • als Taster agieren und bei Druck ein Popup-Fenster erzeugen,
        Im Popup sollen entsprechende Einstellungen vorgenommen werden können (Standardparameterveränderung am Objekt wie Modus und Temperatur und Tageseinstellungen, die evtl. auch über iobroker Script weiter verarbeitet werden können).

      Dieses (Gruppen)-Widget soll dann als Template fungieren und wenn möglich folgende Eigenschaften enthalten:

      • Die anzubindenen Objekte (Thermosstat und Türkontakt) sollen einmalmalig im (Gruppen-) Widget konfiguriert werden. Die Widgets der Gruppe sollten nicht angefasst werden müssen. Der Anfang der Objekt-ID ist ja für gewöhnlich immer gleich,so dass es evtl. ausreichen würde nur diesen einmalig einzutragen.
        Hier würde man sich die Konfiguration der einzelnen Widget (auch im Popup) in der Gruppe ersparen.
      • Bei Änderung des Templats (z.B. hinzufügen eines Widgets) sollten sich das/die bereits im Einsatz befindlichen (Gruppen-) Widgets aktualisieren. Dadurch würde man eine Neuimplementierung/-konfiguration des Bestehenden (auch des Popups) ersparen.

      Ich würde meinen, dass obiges sicherlich als Widget über einen Adapter programmierbar wäre, aber dafür habe ich zu wenig Ahnung in diesem Thema und wäre von meiner Seite her keine kurzfristige Lösung möglich.
      Ich habe gehofft, dass es über Vorlagen funktioniert, aber meine Tests haben gezeigt, das das Update nicht funktioniert und ich nicht herausfinden konnte wie man den Konfigurationsaufwand minimieren kann.
      Auch habe ich überlegt, dies über "View in Widget" zu lösen, aber hierfür müsste ich (nach meinen Kenntnisstand) für jedes Thermosstat eine View erstellen, d.h. ich kann nicht über das Widget Parameter mitgeben die den enthalten Widget in der aufgrufenen View zugeordnet werden könnten.

      Vielleicht hat jemand hier das bereits schon umgesetzt, eine weitere Idee für eine "einfache" Umsetzung oder Anregung wie es doch in den obigen Ansätzen lösbar wäre. Beispiele/Codeschnipsel wären mir sehr willkommen.

      Ich bin gespannt auf Eure Beiträge.

      Vielen Dank schon mal ....

      S 1 Reply Last reply Reply Quote 0
      • S
        SpacerX last edited by

        @fleetch vielleicht Group-Attribute nutzen.

        https://forum.iobroker.net/topic/15880/nutzung-von-attributen-in-gruppierungen

        F 1 Reply Last reply Reply Quote 0
        • F
          fleetch @SpacerX last edited by

          @spacerx super ... vielen dank für den Link ... der sieht vielversprechend aus ... ich werde diesen mal bei mir testen und melde mich ....

          1 Reply Last reply Reply Quote 0
          • S
            smartin23 @fleetch last edited by smartin23

            Danke für die Frage! Ein ähnliches Thema treibt mich auch gerade um...

            Screenshot 2023-03-09 232827.png

            Ich habe rausgefunden, wie ich mehrere Attribut-Namen und -Typen für ein Template definieren kann und die ich sie unter "Allgemein" dann auch befüllen kann.

            Aber: Wie nutze ich diese Angaben dann?

            Also wie kriege ich es hin, dass in meinem Beispiel das Wort "Leistung" durch "Testtitel" ersetzt wird? Und das Icon durch die verlinkte Datei und der Wert durch die aktuellen Daten des ausgewählten Gerätes ersetzt werden?

            Darauf habe ich weder durch intensives Googlen, noch durch viele Einträge im Forum eine Lösung gefunden.

            Edit: Ah, doch... groupAttr1, groupAttr2, etc...

            S 1 Reply Last reply Reply Quote 0
            • S
              smartin23 @smartin23 last edited by smartin23

              Okay, an einer Stelle hänge jetzt auch fest:

              Wie kann in der innerhalb der Gruppe auf den Rückgabewert des Gerätes zugreifen?

              Ich habe es mit {groupAttr1} versucht, aber das gibt dann im Live-Betrieb nur "Undefined" aus und im Editor einfach nur den Namen des Geräts.

              Screenshot 2023-03-10 104849.png

              Hier ist ein ganz alter Thread dazu - gibt es dafür immer noch keine Lösung?

              https://forum.iobroker.net/topic/12013/gruppieren-und-groupattr-nutzen

              Das komische ist, wenn ich die Objekt-ID per Hand eintrage, geht es. Aber wenn die Objekt-ID durch groupAttr1 eingesetzt wird, kommt nur ein "undefined".

              OliverIO 1 Reply Last reply Reply Quote 0
              • OliverIO
                OliverIO @smartin23 last edited by

                @smartin23

                Eine weitere Alternative wäre so eine Gruppe zu exportieren
                Und die Änderungen dann direkt im json durchzuführen und das wieder zurück zu exportieren.
                Zur besseren Bearbeitung kann man das json durch einen beautifier jagen
                https://codebeautify.org/jsonviewer

                Beim bearbeiten muss man etwas vorsichtig sein,
                Das man die Struktur nicht kaputt macht, sonst klappt es nicht mehr mit dem Import.

                S 1 Reply Last reply Reply Quote 0
                • S
                  smartin23 @OliverIO last edited by

                  @oliverio Danke, probiere ich mal.

                  Was ist halt nicht verstehe: Wenn ich manuell im HTML-Code schreibe:
                  {shelly.0.shellyplus1pm#xyz#1.Relay0.Power}
                  dann wirft er immer den korrekten Messwert raus.

                  Wenn ich aber
                  {groupAttr1}
                  schreibe, wird ebenfalls vollkommen korrekt der Code
                  {shelly.0.shellyplus1pm#xyz#1.Relay0.Power}
                  erzeugt (sieht man ja im Screenshot), aber es wird eben kein Wert ausgelesen, sondern "undefined". Warum? Keine Ahnung.

                  F 1 Reply Last reply Reply Quote 0
                  • OliverIO
                    OliverIO last edited by OliverIO

                    @smartin23
                    dann scheint da was beim binding nicht richtig zu funktionieren.
                    zu beginn sammelt vis immer alle objectIDs ein und abonniert diese beim server.
                    in vis edit werden grundsätzlich alle object IDs abonniert, daher funktioniert das im edit modus
                    wenn bei der echten ansicht des views das nicht funktioniert, wurde die objectid nicht abonniert, daher undefined.

                    mach da mal ein issue in github bei iobroker.vis aufmachen

                    S 1 Reply Last reply Reply Quote 0
                    • S
                      smartin23 @OliverIO last edited by

                      @oliverio Okay, das schaue ich mir mal an. Habe sowas noch nie gemacht. Habe aber gesehen, dass das Problem schon alt sein muss - der andere Thread zum gleichen Thema ist von 2018.

                      Nutzt denn keiner außer mir diese Funktion? 🙂

                      Würde das super praktisch finden, um sich einmal ein Widget nach eigenen Vorstellungen zu konfigurieren und dann einfach mehrmals in einen View zu ziehen und schnell einem anderen Gerät zuzuordnen - wenn es funktionieren würde.

                      OliverIO 1 Reply Last reply Reply Quote 0
                      • OliverIO
                        OliverIO @smartin23 last edited by

                        @smartin23
                        Ehrlicherweise kannte ich diese Funktion gar nicht.
                        Hab mir die Funktionsweise dann vom ausprobieren abgeleitet.
                        Steht auch in der Doku nicht wirklich drin oder hab es auch nicht gefunden.

                        1 Reply Last reply Reply Quote 0
                        • F
                          fleetch @smartin23 last edited by

                          @smartin23
                          ich bin auch gerade mächtig am herumexperimentieren. IChhabe es soweit inbekommen, dass ich im eigenlichen Widget, welches in der Gruppe konfigurieren will das "groupAttr" one "{" eingetragen habe.
                          Falls das Problem bei Dir noch besteht , probier das mal aus ...

                          1 Reply Last reply Reply Quote 0
                          • F
                            fleetch last edited by

                            vielleicht kann mir jemand in diesem Zusammenhang im nächsten Schritt weiterhelfen. Die Gruppierung bekomme ich soweit hin, aber stoße schon auf die nächste Herausforderung:

                            Ich versuche gerade mir das Leben bei der Nutzung dieser Gruppe (ich will das ja mehrfach nutzen / duplizieren) zu vereinfachen, indem ich in der Gruppenkonfiguration nur ein Teil der Objekt-ID als groupAttr eintrage, welches dann in der eigentlichen Konfiguration der Widgets ergänzt wird.
                            Zum Beispiel groupAttr (Text) = "Device1" wird in der Gruppenkonfiguration definiert und in dem Objekt-ID Parameter von einem der Widgets (vis-inventwo) wird dieser Teil ergänzt mit ".Temperatur" so dass die Objekt-ID im Widget dann "Device1.Temperatur" ist. Beim nächsten Widget der Gruppe wäre es dann "Device1.Mode" o.ä.
                            Ich hab es schon in verschiedenen Varianten ausprobiert, aber nichts hat geholfen.
                            In einem anderen Forumbeitrag habe ich ein Beispiel allgemeiner Art mit dem HTML-Widget gelesen und ich habe hier http://www.machs-smart.de/iobroker-bindings-farben-berechnungen-abfragen/ auch die verschiedene Bindings ausprobiert (mit "wert und wert+ z.B.). Ohne Erfolg. Aber vielleicht geht es auch nicht mit dem vis-inventwo widget?
                            Über ein Feedback würde ich mich freuen.

                            1 Reply Last reply Reply Quote 0
                            • F
                              fleetch last edited by

                              hat jemand noch eine Tipp zu meinem letzten Eintrag? ... ich komme hier irgendwie nicht so richtig weiter

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

                              Support us

                              ioBroker
                              Community Adapters
                              Donate

                              1.1k
                              Online

                              32.4k
                              Users

                              81.3k
                              Topics

                              1.3m
                              Posts

                              4
                              13
                              358
                              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