Skip to content
  • 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
  1. ioBroker Community Home
  2. Deutsch
  3. Tester
  4. jarvis v2.2.0 - just another remarkable vis

NEWS

  • UPDATE 31.10.: Amazon Alexa - ioBroker Skill läuft aus ?
    apollon77A
    apollon77
    48
    3
    8.1k

  • Monatsrückblick – September 2025
    BluefoxB
    Bluefox
    13
    1
    1.8k

  • Neues Video "KI im Smart Home" - ioBroker plus n8n
    BluefoxB
    Bluefox
    15
    1
    2.1k

jarvis v2.2.0 - just another remarkable vis

Geplant Angeheftet Gesperrt Verschoben Tester
jarvismaterialmaterial uimaterialdesignvisvisualisierungvisualization
6.1k Beiträge 316 Kommentatoren 4.2m Aufrufe 273 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.
  • ZefauZ Zefau

    v2.1.0 nun im Latest (als v2.1.0-rc.1)

    Ankündigung auf Facebook: https://www.facebook.com/groups/440499112958264/permalink/1390299254644907 (gerne liken)

    Ankündigung auf Github: https://github.com/Zefau/ioBroker.jarvis/releases/tag/v2.1.0-rc.1


    NEUE FEATURES:

    • Einführungstutorial mit automatischer Erstellung einer vis, sofern noch keine vorhanden ist! Einfach jarvis öffnen und direkt starten (abhängig genutzter Adapter) [ siehe animiertes gif ]
    • Custom CSS / Eigene Styles mit CSS in jarvis nutzen und dadurch jegliche Komponenten im Stil ändern
    • Support für den Import von ioBroker.mihome-vacuum, ioBroker.knx, ioBroker.nuki-extended und ioBroker.tr-064 sowie mehr Geräte von ioBroker.hm-rpc (nicht vergessen: alles was aktuell nicht importiert wird kann immer auch manuell angelegt werden)
    • Modul StateList: Trigger können nun mit sekundären Datenpunkt-Werten kombiniert werden. Auch kann der primäre Datenpunkt-Wert mit angezeigt werden. Es sind nun viele Kombinationsmöglichkeiten darstellbar
    • Objekt-Explorer zur schnellen Auswahl von Datenpunkten bei manueller Anlage eines Geräts [ siehe Screenshot ]
    • JSON-Editor für alle JSON-Felder, um diese bei der Geräte-Anlage oder -Änderung einfacher bearbeiten zu können [ siehe Screenshot ]
    • Gruppierung für die Geräte-Liste (nach Gewerken oder Herstellern)
    • Filterung / Suche in der Geräte-Liste zum schnellen Auffinden der Geräte anhand verschiedener Felder / Attribute
    • Modul StateList: Geräte in Gruppen können nun dediziert angesteuert (bzw. ausgeschlossen) werden
    • Modul Kalender: Unterstützung von wiederkehrenden Terminen / Terminserien
    • Eckige Widgets (bzw. Auswahl zwischen eckig und rund)
    • neue Komponente CustomTextBody, um individuellen Text (statt letzter Änderung) anzuzeigen
    • Komponente LightColorBody erkennt nun den Farbmodus automatisch
    Stephan SchleichS Offline
    Stephan SchleichS Offline
    Stephan Schleich
    schrieb am zuletzt editiert von Stephan Schleich
    #2629

    @Zefau Früher wars doch so das wenn ich den Body Datepunkt geändert habe das sich der primäre Datenpunkt mit auf diesen Werte geändert hat, das geht nun nicht mehr beabsichtigt?

    Des Weiteren wird der Trigger aus dem Device nicht mit ins Layout gezogen.

    1aaea1d9-4300-4bcf-8907-c2a03b5ad342-image.png

    @sigi234 sagte in jarvis v2.1.0 - just another remarkable vis:

    Läuft.

    Screenshot (3013).png

    Also bei mir lässt es sich nicht installieren, bleibt bei Beta 33 stehen

    ZefauZ 2 Antworten Letzte Antwort
    0
    • Stephan SchleichS Stephan Schleich

      @Zefau Früher wars doch so das wenn ich den Body Datepunkt geändert habe das sich der primäre Datenpunkt mit auf diesen Werte geändert hat, das geht nun nicht mehr beabsichtigt?

      Des Weiteren wird der Trigger aus dem Device nicht mit ins Layout gezogen.

      1aaea1d9-4300-4bcf-8907-c2a03b5ad342-image.png

      @sigi234 sagte in jarvis v2.1.0 - just another remarkable vis:

      Läuft.

      Screenshot (3013).png

      Also bei mir lässt es sich nicht installieren, bleibt bei Beta 33 stehen

      ZefauZ Offline
      ZefauZ Offline
      Zefau
      schrieb am zuletzt editiert von
      #2630

      @Stephan-Schleich sagte in jarvis v2.1.0 - just another remarkable vis:

      Früher wars doch so das wenn ich den Body Datepunkt geändert habe das sich der primäre Datenpunkt mit auf diesen Werte geändert hat, das geht nun nicht mehr beabsichtigt?

      Nein, das war nie so. Früher war es so, dass wenn du den primären Datenpunkt geändert hast, dann hat sich auch der Aktions-Datenpunkt geändert. Aber die Unterscheidung gibt es nicht mehr und ist vereinheitlicht.

      Meine Adapter: https://zefau.github.io/iobroker/

      1 Antwort Letzte Antwort
      0
      • Stephan SchleichS Stephan Schleich

        @Zefau Früher wars doch so das wenn ich den Body Datepunkt geändert habe das sich der primäre Datenpunkt mit auf diesen Werte geändert hat, das geht nun nicht mehr beabsichtigt?

        Des Weiteren wird der Trigger aus dem Device nicht mit ins Layout gezogen.

        1aaea1d9-4300-4bcf-8907-c2a03b5ad342-image.png

        @sigi234 sagte in jarvis v2.1.0 - just another remarkable vis:

        Läuft.

        Screenshot (3013).png

        Also bei mir lässt es sich nicht installieren, bleibt bei Beta 33 stehen

        ZefauZ Offline
        ZefauZ Offline
        Zefau
        schrieb am zuletzt editiert von
        #2631

        @Stephan-Schleich sagte in jarvis v2.1.0 - just another remarkable vis:

        Des Weiteren wird der Trigger aus dem Device nicht mit ins Layout gezogen.

        Das ist Absicht. Es ist Show State stattdessen angewählt.

        Meine Adapter: https://zefau.github.io/iobroker/

        W 1 Antwort Letzte Antwort
        0
        • ZefauZ Zefau

          @Stephan-Schleich sagte in jarvis v2.1.0 - just another remarkable vis:

          Des Weiteren wird der Trigger aus dem Device nicht mit ins Layout gezogen.

          Das ist Absicht. Es ist Show State stattdessen angewählt.

          W Offline
          W Offline
          watcherkb
          schrieb am zuletzt editiert von watcherkb
          #2632

          @Zefau mit dem neuen RC1 habe ich Probleme beim Aufrufen der Settings. Ich hatte bereits Einstellungen aus früheren Versionen.

          Edit: getestet mit Edge und Firefox

          Zuerst kommt die Willkommen Box, nach Klick auf "Weiter" sehe ich nur noch "Unknown Error"
          d42b16d9-ec5d-431a-b6f2-91e5c1b283bf-image.png
          c979b0e7-d3b7-45a7-99bf-fdf872a0ca82-image.png

          CC2538+CC2592 PA-Zigbee-Funkmodul

          ZefauZ 1 Antwort Letzte Antwort
          0
          • W watcherkb

            @Zefau mit dem neuen RC1 habe ich Probleme beim Aufrufen der Settings. Ich hatte bereits Einstellungen aus früheren Versionen.

            Edit: getestet mit Edge und Firefox

            Zuerst kommt die Willkommen Box, nach Klick auf "Weiter" sehe ich nur noch "Unknown Error"
            d42b16d9-ec5d-431a-b6f2-91e5c1b283bf-image.png
            c979b0e7-d3b7-45a7-99bf-fdf872a0ca82-image.png

            ZefauZ Offline
            ZefauZ Offline
            Zefau
            schrieb am zuletzt editiert von
            #2633

            @watcherkb sagte in jarvis v2.1.0 - just another remarkable vis:

            Zuerst kommt die Willkommen Box, nach Klick auf "Weiter" sehe ich nur noch "Unknown Error"

            hm, mist, du hattest wahrscheinlich den Expertenmodus an?

            Meine Adapter: https://zefau.github.io/iobroker/

            W 1 Antwort Letzte Antwort
            0
            • ZefauZ Zefau

              @watcherkb sagte in jarvis v2.1.0 - just another remarkable vis:

              Zuerst kommt die Willkommen Box, nach Klick auf "Weiter" sehe ich nur noch "Unknown Error"

              hm, mist, du hattest wahrscheinlich den Expertenmodus an?

              W Offline
              W Offline
              watcherkb
              schrieb am zuletzt editiert von
              #2634

              @Zefau jap, habe das vorher an gehabt, das sieht man auch kurz aufpoppen dann kommt der rote Fehler

              CC2538+CC2592 PA-Zigbee-Funkmodul

              ZefauZ 1 Antwort Letzte Antwort
              0
              • W watcherkb

                @Zefau jap, habe das vorher an gehabt, das sieht man auch kurz aufpoppen dann kommt der rote Fehler

                ZefauZ Offline
                ZefauZ Offline
                Zefau
                schrieb am zuletzt editiert von
                #2635

                @watcherkb sagte in jarvis v2.1.0 - just another remarkable vis:

                jap, habe das vorher an gehabt, das sieht man auch kurz aufpoppen dann kommt der rote Fehler

                kannst du mal die v2.1.0-rc.2 von Github probieren?

                Meine Adapter: https://zefau.github.io/iobroker/

                W 1 Antwort Letzte Antwort
                0
                • ZefauZ Zefau

                  @watcherkb sagte in jarvis v2.1.0 - just another remarkable vis:

                  jap, habe das vorher an gehabt, das sieht man auch kurz aufpoppen dann kommt der rote Fehler

                  kannst du mal die v2.1.0-rc.2 von Github probieren?

                  W Offline
                  W Offline
                  watcherkb
                  schrieb am zuletzt editiert von
                  #2636

                  @Zefau super, Problem behoben. Merci

                  CC2538+CC2592 PA-Zigbee-Funkmodul

                  1 Antwort Letzte Antwort
                  0
                  • ZefauZ Zefau

                    @emerq sagte in jarvis - just another remarkable vis:

                    Wieso fährt er bei Pfeil nach oben runter und umgekehrt?

                    Ist in KNX andersherum als bei anderen Adaptern und anders als die Logik in jarvis. Mit der aktuellen beta kannst du die Einstellungen diesbzgl. anpassen. Wobei ich hinzufügen muss, dass ich die Art und Weise wie es aktuell umgesetzt ist noch anpassen werde in der beta.

                    Was muss ich tun, damit der Stop Button funktioniert? (Oder geht der gar nicht und ich muss es über den jeweiligen anderen Button lösen)

                    Dazu ein Datenpunkt activity im Geräte anlegen. Als Datenpunkt muss die Aktivität hinterlegt werden und als Trigger der Stop-Button. Sofern es das im KNX gibt, das weiß ich nicht.

                    Welches Objekt aus KNX muss ich wo eintragen für den Status Rollladen geschlossen/offen

                    Hab kein KNX, daher weiß ich das hier leider nicht.

                    F Offline
                    F Offline
                    funky4t
                    schrieb am zuletzt editiert von funky4t
                    #2637

                    (!!gelöst: https://forum.iobroker.net/topic/28073/gelöst-datenpunkt-mit-button/2)
                    und in Jarvis funzt der Stop nun ebenso! :)!!)

                    @Zefau said in jarvis v2.1.0 - just another remarkable vis:

                    @emerq sagte in jarvis - just another remarkable vis:

                    Wieso fährt er bei Pfeil nach oben runter und umgekehrt?

                    Ist in KNX andersherum als bei anderen Adaptern und anders als die Logik in jarvis. Mit der aktuellen beta kannst du die Einstellungen diesbzgl. anpassen. Wobei ich hinzufügen muss, dass ich die Art und Weise wie es aktuell umgesetzt ist noch anpassen werde in der beta.

                    Was muss ich tun, damit der Stop Button funktioniert? (Oder geht der gar nicht und ich muss es über den jeweiligen anderen Button lösen)

                    Dazu ein Datenpunkt activity im Geräte anlegen. Als Datenpunkt muss die Aktivität hinterlegt werden und als Trigger der Stop-Button.


                    Moin Zusammen,
                    ich steh mir selbst heute im Weg....
                    Die Pfeile AUF/AB laufen jetzt nach Umkehrung MIN/MAX top, hatte nur nicht auf dem Schirm, das in LEVEL zu ändern, dachte das käme aus Activity. Jetzt scheitere ich am Stop-BUTTON:

                    Ich hab im ioBroker folgende Aliase für meine Rollos, kommende aus dem Rademacher Homepilot:

                    Alias DP.png

                    Der DP Action würde per Stop ja perfekt laufen, allerdings benötigt Activity hier einen Datenpunkt BUTTON. Jetzt komm ich als Anfänger/Nichtscripter arg ins Nachdenken.

                    Muss ich mir einen Datenpunkt/Button? Stop-Button über eigene Datenpunkte anlegen und ein Blockly-Script erstellen, welches dann jedesmal bei Auslösen den Wert "Stopp" in den Alias Action schreibt?

                    Hab zwar schon erfolgreich einige EIGENE Datenpunkte angelegt, aber einen BUTTON hab ich bisher noch nicht erzeugt, komm da auch irgendwie gedanklich überhaupt nicht weiter...weil ich da auch keine passenden Typ biem Anlegen finde....

                    Screenshot 2020-12-30 184756.png

                    Bin ich da auf dem Holzweg? Und falls ich den Button dann hab, ist der Weg über Blockly/Script überhaupt sinnig oder gibt es einen direkten Weg, den Button mit einer "Funktion" zu versehen?

                    Danke im Voraus für eure Hilfe! 🙂

                    1 Antwort Letzte Antwort
                    0
                    • stephan1827S stephan1827

                      Da ich glaube das sich einige mit JSON schwer tun habe ich mal eine Datei erstellt wo ich verschiedene Varianten gemacht habe die ich so verwende. Vielleicht kann sich da der ein oder andere was raus ziehen.

                      // ----------------------------------------------------------------------
                      // Rollo Icon Stil, blau wenn unter 50%, grün wenn über 50%
                      {
                          "default": {
                              "color": "#4287f5"
                          },
                          ">50": {
                              "color": "#090"
                          }
                      }
                      // Rollo Anzeigevariante, Zeige Oben bei 100, Unten bei 0, sonst Wert
                      {
                          "0": "Unten",
                          "100": "Oben"
                      }
                      // Rollo Einheit, Zeige Prozent bei Wert zwischen 0 und 100
                      {
                          "0": "",
                          "100": "",
                          "default": "%"
                      }
                      // ----------------------------------------------------------------------
                      // Thermostat Icon Stil, rot wenn über 22° oder unter 15°, sonst grün
                      {
                          "default": {
                              "color": "#090"
                          },
                          ">22": {
                              "color": "#8f2e2e"
                          },
                          "<15": {
                              "color": "#8f2e2e"
                          }
                      }
                      // ----------------------------------------------------------------------
                      // Licht Icon Stil, grün wenn true, sonst blau
                      {
                          "true": {
                              "color": "#090"
                          },
                          "false": {
                              "color": "#4287f5"
                          }
                      }
                      // ----------------------------------------------------------------------
                      // Wassermelder Icon, Tropfenalarm wenn true, sonst tropfen
                      {
                          "true": "water-alert",
                          "false": "water"
                      }
                      // Wassermelder Anzeigevariante
                      {
                          "false": "OK",
                          "true": "Alarm"
                      }
                      // ----------------------------------------------------------------------
                      // Fenster Anzeigevariante für HMIP-SWDO
                      {
                          "1": "window#open#true",
                          "0": "window#open#false"
                      }
                      // Fenster Icon
                      {
                          "1": "window-open-variant",
                          "0": "window-closed-variant"
                      }
                      // ----------------------------------------------------------------------
                      // Tür Anzeigevariante für HMIP-SWDO
                      {
                          "true": "door#open#true",
                          "false": "door#open#false"
                      }
                      // Tür Icon
                      {
                          "true": "door-open",
                          "false": "door-closed"
                      }
                      // ----------------------------------------------------------------------
                      // Allgemein Icon Stil, true=green, false=red
                      {
                          "true": {
                              "color": "#090",
                              "fontWeight": "normal"
                          },
                          "false": {
                              "color": "#8f2e2e",
                              "fontWeight": "bold"
                          }
                      }
                      // Allgemein Icon Stil, true=red, false=green
                      {
                          "true": {
                              "color": "#8f2e2e",
                              "fontWeight": "bold"
                          },
                          "false": {
                              "color": "#090",
                              "fontWeight": "normal"
                          }
                      }
                      // Allgemein Icon Stil, normal blau, bei <10 rot
                      {
                          "default":{"color": "#4287f5"},
                          "<10":{"color": "#8f2e2e"}
                       }
                      
                      dabbeljuhD Offline
                      dabbeljuhD Offline
                      dabbeljuh
                      schrieb am zuletzt editiert von
                      #2638

                      Hi @stephan1827, gute Idee, hier ein paar Beispiele zu listen. 👍

                      Ich hätte da noch eine kleine Ergänzung vorzuschlagen, mit der man z.B. beim Unter-/Überschreiten einer Temperaturgrenze die Optik noch etwas wahrnehmbarer gestalten kann.

                      Das hier kommt ins Device:
                      {"<15":"mdi-thermometer blink",">22":"mdi-thermometer blink"}

                      Und das hier in den Bereich "Styles":
                      .blink {
                      animation: blinker 1s linear infinite;
                      }

                      @keyframes blinker {
                      50% { opacity: 0; }
                      }

                      Beste Grüße

                      dabbeljuh

                      ===

                      NUC, Z-Stick Gen5, maxCUL 433, JeeLink/LaCrosse, Zigbee-Stick; Z-Wave Tür-/Fenster u. Steckdosen, max! Tür-/Fenster u. Wandschalter, TX29DTH-IT, HUE, Osram, TP-Link, Xiaomi, IP-Cams, Echo Dot, Sonos, Home mini, Xiaomi Kontakte u. Sensoren

                      B sigi234S DNC74D 3 Antworten Letzte Antwort
                      5
                      • dabbeljuhD Offline
                        dabbeljuhD Offline
                        dabbeljuh
                        schrieb am zuletzt editiert von
                        #2639

                        Mir ist eben ein kleines Problem mit dem Kalender-Widget aufgefallen. Wenn ich es im Popup-Modus betreibe, lässt sich eben jenes Popup nicht mehr schließen und nur mittels Reload der Seite beheben.

                        (Bin nach Update mit der aktuellen Beta unterwegs, hatte es zuvor aber auch schon in v30.)

                        Kann das jemand nachstellen? Falls ja, eröffne ich gerne ein Ticket in Github.

                        Beste Grüße

                        dabbeljuh

                        ===

                        NUC, Z-Stick Gen5, maxCUL 433, JeeLink/LaCrosse, Zigbee-Stick; Z-Wave Tür-/Fenster u. Steckdosen, max! Tür-/Fenster u. Wandschalter, TX29DTH-IT, HUE, Osram, TP-Link, Xiaomi, IP-Cams, Echo Dot, Sonos, Home mini, Xiaomi Kontakte u. Sensoren

                        ZefauZ 1 Antwort Letzte Antwort
                        0
                        • U uwe72

                          Erst einmal Danke an @Zefau für die wirklich exzellente Arbeit mit diesem Adapter. Die Visualisierung ist prinzipiell komplett ohne große Kenntnisse zu erstellen, bietet aber insbesondere durch das CustomHTMLWidget viele Möglichkeiten, individuelle Visualisierungen zu erstellen.

                          Das einzige was mich stört ist, dass die Topbar, d.h. die Menüleiste in vertikaler Richtung so viel Platz in Anspruch nimmt. Eigentlich besteht doch bei den meisten Visualisierungen Platzmangel. Ich brauche den Platz um noch mehr auf die "erste Seite" zu packen, siehe Screenshot.

                          Weiß nicht, ob die Community, d.h. die Anwender dies nicht noch öfters stört? Falls doch, würde ich mir wünschen, dass ihr für den dafür vorgesehenen FeatureRequest "votet", d.h. unterstützt:
                          https://github.com/Zefau/ioBroker.jarvis/issues/124

                          Danke Euch!

                          2020-12-30 12.12.52.jpg

                          SlowmanS Offline
                          SlowmanS Offline
                          Slowman
                          schrieb am zuletzt editiert von
                          #2640

                          @uwe72

                          Screenshot_2020-12-30 1609329915900-2020-12-30-12 12 52 jpg (JPEG-Grafik, 1793 × 3146 Pixel).png

                          Wie hast du dies in die Tabelle bekommen?

                          U 1 Antwort Letzte Antwort
                          1
                          • SlowmanS Slowman

                            @uwe72

                            Screenshot_2020-12-30 1609329915900-2020-12-30-12 12 52 jpg (JPEG-Grafik, 1793 × 3146 Pixel).png

                            Wie hast du dies in die Tabelle bekommen?

                            U Offline
                            U Offline
                            uwe72
                            schrieb am zuletzt editiert von
                            #2641

                            @Slowman Es handelt sich um ein HTML, welches ich in IoBroker mit JavaScript (aus den Datenpunkten des Abfalladapters) erstelle. In Jarvis bindie ich dieses HTML über das CustomHTMLWidget ein. Der Vorteil ist, dass ich es so layouten (und anzeigen) kann wie ich möchte.

                            SlowmanS 1 Antwort Letzte Antwort
                            1
                            • U uwe72

                              @Slowman Es handelt sich um ein HTML, welches ich in IoBroker mit JavaScript (aus den Datenpunkten des Abfalladapters) erstelle. In Jarvis bindie ich dieses HTML über das CustomHTMLWidget ein. Der Vorteil ist, dass ich es so layouten (und anzeigen) kann wie ich möchte.

                              SlowmanS Offline
                              SlowmanS Offline
                              Slowman
                              schrieb am zuletzt editiert von
                              #2642

                              @uwe72

                              stellst du den Script zur Verfügung 🙄

                              U 1 Antwort Letzte Antwort
                              0
                              • dabbeljuhD dabbeljuh

                                Mir ist eben ein kleines Problem mit dem Kalender-Widget aufgefallen. Wenn ich es im Popup-Modus betreibe, lässt sich eben jenes Popup nicht mehr schließen und nur mittels Reload der Seite beheben.

                                (Bin nach Update mit der aktuellen Beta unterwegs, hatte es zuvor aber auch schon in v30.)

                                Kann das jemand nachstellen? Falls ja, eröffne ich gerne ein Ticket in Github.

                                ZefauZ Offline
                                ZefauZ Offline
                                Zefau
                                schrieb am zuletzt editiert von
                                #2643

                                @dabbeljuh sagte in jarvis v2.1.0 - just another remarkable vis:

                                Mir ist eben ein kleines Problem mit dem Kalender-Widget aufgefallen. Wenn ich es im Popup-Modus betreibe, lässt sich eben jenes Popup nicht mehr schließen und nur mittels Reload der Seite beheben.

                                Jo, stimmt. Fixe ich sofort.

                                Meine Adapter: https://zefau.github.io/iobroker/

                                M 1 Antwort Letzte Antwort
                                1
                                • SlowmanS Slowman

                                  @uwe72

                                  stellst du den Script zur Verfügung 🙄

                                  U Offline
                                  U Offline
                                  uwe72
                                  schrieb am zuletzt editiert von uwe72
                                  #2644

                                  @Slowman

                                  f4a64377-2d71-4a22-84a7-1298dcfb3bfa-image.png

                                  Voraussetzung:

                                  • Abfallkalender Adapter.
                                  • Die 4 Bilder habe ich auf meinem Webserver abgelegt. Ggf. kannst Du die "Original-Bilder" nehmen vom Abfallkalender. Ich weiß aber nicht wo diese liegen und wie man an diese kommt.

                                  Ergebnis:

                                  • Das HTML wird jede Minute aktualisiert und im Datenpunkt "0_userdata.0.clement.html.abfallkalender" abgespeichert
                                  // Variablen:
                                  var widthHTML = "314px";
                                  var typenUndTermine;
                                  
                                  // Datenpunkt:
                                  var htmlState = "0_userdata.0.clement.html.abfallkalender";
                                  createState(htmlState, "", {
                                      name: htmlState,
                                      desc: htmlState,
                                      type: 'string', 
                                      read: true,
                                      write: true
                                  });
                                  
                                  // Update
                                  createHTML(htmlState)
                                  setInterval(function() { 
                                      createHTML(htmlState);
                                  }, 1000*60*1);   
                                  
                                  
                                  function _getColumnName(columnIndex) {
                                      var rowObject = typenUndTermine[columnIndex];
                                      return rowObject[2];
                                  }
                                  
                                  function _initData() {
                                      var restmuell = getState("trashschedule.0.type.Restmülltonne.daysLeft").val;
                                      var papier = getState("trashschedule.0.type.Papiertonne.daysLeft").val;
                                      var bio = getState("trashschedule.0.type.Biotonne.daysLeft").val;
                                      var gelb = getState("trashschedule.0.type.Gelbe Tonne.daysLeft").val;
                                  
                                      typenUndTermine = [
                                          [restmuell, "trashschedule.0.type.Restmülltonne", "Restm&uuml;ll", "http://192.168.178.110:888/garbage_can_darkgrey.png"],
                                          [papier, "trashschedule.0.type.Papiertonne", "Papier", "http://192.168.178.110:888/garbage_can_blue.png"],
                                          [bio, "trashschedule.0.type.Biotonne", "Biotonne", "http://192.168.178.110:888/garbage_can_lightgrey.png"],
                                          [gelb, "trashschedule.0.type.Gelbe Tonne", "Plastik", "http://192.168.178.110:888/garbage_can_yellow.png"],
                                          ];
                                          
                                      typenUndTermine.sort(function(a, b){
                                          return a[0] - b[0];
                                      });
                                  }
                                  
                                  function _isCellValueHighlighted(rowIndex, columnIndex, cellValue) {
                                      if (columnIndex == 1) { // Spalte "Tage"
                                          if (cellValue < 2 || cellValue == 'Heute' || cellValue == 'Morgen') {
                                              return true;
                                          }
                                      }
                                      return false;
                                  }
                                  
                                  function _getValueAt(rowIndex, columnIndex) {
                                      var rowObject = typenUndTermine[columnIndex];
                                      if (rowIndex == 0 ){
                                          var val = "<img src=\"" + rowObject[3] + "\" width=35px>";
                                          return val;
                                      } else {
                                          var  val =  rowObject[0] + " Tage";
                                          let weekday = getState(rowObject[1] + ".nextWeekday").val;
                                          let weekdayAsString;
                                          if (weekday == 1) {
                                              weekdayAsString = "Mo, ";
                                          } else if (weekday == 2) {
                                              weekdayAsString = "Di, ";
                                          } else if (weekday == 3) {
                                              weekdayAsString = "Mi, ";
                                          } else if (weekday == 4) {
                                              weekdayAsString = "Do, ";
                                          } else if (weekday == 5) {
                                              weekdayAsString = "Fr, ";
                                          } else if (weekday == 6) {
                                              weekdayAsString = "Sa, ";
                                          } else if (weekday == 7) {
                                              weekdayAsString = "So, ";
                                          }
                                          val = val + "<br><font size=2  color=\"#999999\">"+ weekdayAsString + getState(rowObject[1] + ".nextDateFormat").val + "</font>";  
                                          val = val.substring(0, val.lastIndexOf('.')+1);
                                          return val;
                                      }
                                  }
                                  
                                  function createHTML(htmlState) {
                                      var html = "";
                                  
                                      html += "<html>                                             \n";
                                      html += "   <head>                                          \n";
                                      html += "       <style>                                     \n";
                                      html += "           table, th, td {                         \n";
                                      html += "               border: 1px solid #595959;          \n";
                                      html += "               border-collapse: collapse;          \n";
                                      html += "               vertical-align: middle;             \n";
                                      html += "           }                                       \n";
                                      html += "           td,th {                                 \n";
                                      html += "               padding: 4px;                       \n";
                                      html += "           }                                       \n";
                                      html += "       </style>                                    \n";
                                      html += "   </head>                                         \n";
                                      html += "   <body>                                          \n";
                                  
                                      html += "       <table width=" + widthHTML + ">                         \n";
                                  
                                      _initData();
                                  
                                      var alignemt = "center";
                                  
                                      // Header:
                                      html += "           <tr>                                    \n";
                                      for (var c = 0; c < 4; c++) {
                                          html += "           <th colspan=\"" + 1 + "\" style=\"text-align:" + alignemt + "\"><font size=2px\">" + _getColumnName(c) + "</th></font>	\n";
                                      }
                                      html += "           </tr>                                   \n";
                                  
                                      // Body:
                                      for (var r = 0; r < 2; r++) {
                                          html += "       <tr>                                    \n";
                                  
                                              for (var c = 0; c < 4; c++) {
                                                  var cellValue = _getValueAt(r, c);
                                                  var highlighted = _isCellValueHighlighted(r,c,cellValue);
                                  
                                                  if (new Boolean(highlighted) == true) {
                                                      html += "           <td style=\" text-align:" + alignemt + "\"><font color=\"#3379D0\">" + cellValue + "</font></td>";    
                                                  } else {
                                                      html += "           <td style=\" text-align:" + alignemt + "\">" + cellValue + "</td>";    
                                                  }
                                              }
                                              
                                          html += "       </tr>                                    \n";        
                                      }
                                  
                                      html +=          "</table>\n";
                                      html +=      "</body>\n";
                                      html +=  "</html>\n";
                                      setState(htmlState, html);
                                  }
                                  
                                  
                                  
                                  
                                  
                                  
                                  
                                  
                                  
                                  
                                  
                                  
                                  
                                  
                                  
                                  
                                  
                                  
                                  
                                  
                                  
                                  1 Antwort Letzte Antwort
                                  1
                                  • SlowmanS Offline
                                    SlowmanS Offline
                                    Slowman
                                    schrieb am zuletzt editiert von
                                    #2645

                                    Vielen Dank!

                                    1 Antwort Letzte Antwort
                                    1
                                    • dabbeljuhD dabbeljuh

                                      Hi @stephan1827, gute Idee, hier ein paar Beispiele zu listen. 👍

                                      Ich hätte da noch eine kleine Ergänzung vorzuschlagen, mit der man z.B. beim Unter-/Überschreiten einer Temperaturgrenze die Optik noch etwas wahrnehmbarer gestalten kann.

                                      Das hier kommt ins Device:
                                      {"<15":"mdi-thermometer blink",">22":"mdi-thermometer blink"}

                                      Und das hier in den Bereich "Styles":
                                      .blink {
                                      animation: blinker 1s linear infinite;
                                      }

                                      @keyframes blinker {
                                      50% { opacity: 0; }
                                      }

                                      B Offline
                                      B Offline
                                      banza
                                      schrieb am zuletzt editiert von
                                      #2646

                                      @stephan1827
                                      Hi, danke für die Beispiele, kurze Frage zu den Farben. Die Farben werden nur übernommen, wenn der Datenpunkt der primäre ist? Sobald der Datenpunkt ein sekundärer ist bleibt die Standardfarbe.


                                      Screenshot 2020-12-30 215312.jpg

                                      @dabbeljuh
                                      bei mir wird das Blinken nicht genommen "falsches json-format".

                                      stephan1827S dabbeljuhD 2 Antworten Letzte Antwort
                                      0
                                      • B banza

                                        @stephan1827
                                        Hi, danke für die Beispiele, kurze Frage zu den Farben. Die Farben werden nur übernommen, wenn der Datenpunkt der primäre ist? Sobald der Datenpunkt ein sekundärer ist bleibt die Standardfarbe.


                                        Screenshot 2020-12-30 215312.jpg

                                        @dabbeljuh
                                        bei mir wird das Blinken nicht genommen "falsches json-format".

                                        stephan1827S Offline
                                        stephan1827S Offline
                                        stephan1827
                                        schrieb am zuletzt editiert von
                                        #2647

                                        @banza Ja das stimmt, es gibt dafür schon einen Feature Request. Click mal auf den Daumen hoch dann steigt das in der Priotität

                                        https://github.com/Zefau/ioBroker.jarvis/issues/456

                                        1 Antwort Letzte Antwort
                                        0
                                        • stephan1827S Offline
                                          stephan1827S Offline
                                          stephan1827
                                          schrieb am zuletzt editiert von
                                          #2648

                                          @Zefau Kann man die Kopfzeile über die Theme Einstellungen schmaler machen?Bildschirmfoto 2020-12-31 um 08.35.21.png
                                          Ich würde den Abstand nach oben gerne etwas schmaler machen.

                                          Das gleiche würde ich gerne bei den Widgets machen, d.h. ich würde die Zeilen gerne etwas näher zusammenrücken
                                          Bildschirmfoto 2020-12-31 um 08.35.28.png

                                          U dabbeljuhD 2 Antworten Letzte Antwort
                                          0
                                          Antworten
                                          • In einem neuen Thema antworten
                                          Anmelden zum Antworten
                                          • Älteste zuerst
                                          • Neuste zuerst
                                          • Meiste Stimmen


                                          Support us

                                          ioBroker
                                          Community Adapters
                                          Donate

                                          434

                                          Online

                                          32.4k

                                          Benutzer

                                          81.4k

                                          Themen

                                          1.3m

                                          Beiträge
                                          Community
                                          Impressum | Datenschutz-Bestimmungen | Nutzungsbedingungen
                                          ioBroker Community 2014-2025
                                          logo
                                          • Anmelden

                                          • Du hast noch kein Konto? Registrieren

                                          • Anmelden oder registrieren, um zu suchen
                                          • Erster Beitrag
                                            Letzter Beitrag
                                          0
                                          • Aktuell
                                          • Tags
                                          • Ungelesen 0
                                          • Kategorien
                                          • Unreplied
                                          • Beliebt
                                          • GitHub
                                          • Docu
                                          • Hilfe