Zitat von rene54321
Beitrag anzeigen
Ankündigung
Einklappen
Keine Ankündigung bisher.
Neues Design: Tile
Einklappen
X
-
Hallo,
anbei der erste Entwurf meines Dashboards. Ich würde gerne den Kalender mittels der list Komponente einbinden, bin aber mit meinem Latein am Ende. Ich habe es jetzt mittels cv-value probiert, was auch geht, hätte aber lieber die list Komponente. Vielleicht kann mich jemand unterstützn, wie das mittels list umgesetzt werden kann?
Müllkalender:
Code:<!-- Gruppe Müllkalender --> <cv-widget size="1x1"> <cv-tile> <cv-row rowspan="3" colspan="3"> <cv-value> <cv-address transform="OH:string" mode="read">Termin_Muell_Datum_CV_2</cv-address> <label class="value primary"/> </cv-value> <cv-value mapping="Mapping_Muell" styling="Styling_Mapping_Muell" > <cv-address transform="OH:string" mode="read">Termin_Muell_Name_1</cv-address> <cv-icon class="value"/> </cv-value> </cv-row> </cv-tile> <cv-tile> <cv-row rowspan="3" colspan="3"> <cv-value> <cv-address transform="OH:string" mode="read">Termin_Muell_Datum_CV_2</cv-address> <label class="value primary"/> </cv-value> <cv-value mapping="Mapping_Muell" styling="Styling_Mapping_Muell"> <cv-address transform="OH:string" mode="read">Termin_Muell_Name_2</cv-address> <cv-icon class="value"/> </cv-value> </cv-row> </cv-tile> <cv-tile> <cv-row rowspan="3" colspan="3"> <cv-value> <cv-address transform="OH:string" mode="read">Termin_Muell_Datum_CV_3</cv-address> <label class="value primary"/> </cv-value> <cv-value mapping="Mapping_Muell" styling="Styling_Mapping_Muell"> <cv-address transform="OH:string" mode="read">Termin_Muell_Name_3</cv-address> <cv-icon class="value"/> </cv-value> </cv-row> </cv-tile> </cv-widget>
Code:<!-- Gruppe Familienkalender --> <cv-widget size="2x1"> <cv-tile> <cv-row rowspan="3" > <cv-value column="1"> <cv-address transform="OH:string" mode="read">Termin_Family_Datum_CV_1</cv-address> <label class="value primary"/> </cv-value> </cv-row> <cv-row rowspan="3" colspan="2" column="2"> <cv-value> <cv-address transform="OH:string" mode="read">Termin_Family_1</cv-address> <label class="value primary"/> </cv-value> </cv-row> </cv-tile> <cv-tile> <cv-row rowspan="3" > <cv-value column="1"> <cv-address transform="OH:string" mode="read">Termin_Family_Datum_CV_2</cv-address> <label class="value primary"/> </cv-value> </cv-row> <cv-row rowspan="3" colspan="2" column="2"> <cv-value> <cv-address transform="OH:string" mode="read">Termin_Family_2</cv-address> <label class="value primary"/> </cv-value> </cv-row> </cv-tile> <cv-tile> <cv-row rowspan="3" > <cv-value column="1"> <cv-address transform="OH:string" mode="read">Termin_Family_Datum_CV_3</cv-address> <label class="value primary"/> </cv-value> </cv-row> <cv-row rowspan="3" colspan="2" column="2"> <cv-value> <cv-address transform="OH:string" mode="read">Termin_Family_3</cv-address> <label class="value primary"/> </cv-value> </cv-row> </cv-tile> </cv-widget>
Angehängte Dateien
Kommentar
-
Zitat von rene54321 Beitrag anzeigenGibt es in der Tile Visu hier auch einen Weg die Werte von openHAB anzeigen zu lassen?
Das Problem mit dem nicht funktionierenden Progress sollte in dieser Version auch behoben sein.
Gruß
Tobias
Kommentar
-
Da muss ich erstmal wieder den Schema-Oberlehrer raushängen lassen ;-)
Das ist so keine gültige Config.
Code:<cv-widget size="2x1"> <cv-tile> ... </cv-tile> <cv-tile> ... </cv-tile> </cv-widget>
Zu Frage wie man das mit cv-list umsetzen kann, fällt mir nur die Variante mit dem "Fixen Modell" (=> https://www.cometvisu.org/CometVisu/...ml#datenmodell) ein.
Gruß
Tobias
Kommentar
-
Hallo,
ich hätte noch eine Frage zum RssLog. Mir scheint das Filtern nicht zu funktionieren. Ich nutze folgende Config:
Code:<model class="RssLog" parameters="limit=10,filter=licht" />
image.png
Allerdings sollte der Request so aussehen: rsslog.php?j=1&limit=10&f=licht ("f=" statt "filter=")
Ich verstehe aber tatsächlich nicht, warum der Request fehlerhaft erstellt wird, denn hier scheint der Parameter "f" korrekt gesetzt zu werden: https://github.com/CometVisu/CometVi...RssLog.js#L107
Oder ist meine Config fehlerhaft?
Ich hätte auch noch 2 weitere Fragen:
- wie kann ich das Datum eines Eintrags formatieren? Aktuell sieht es so aus, aber das ist ja nicht so sehr hübsch
image.png
- gibt es eine Möglichkeit das Widget im Fullscreen anzuzeigen (analog dem "alten" RssLog Widget)?
Danke und VG
MichaZuletzt geändert von mivola; 29.12.2023, 16:43.
Kommentar
-
Zitat von mivola Beitrag anzeigenich hätte noch eine Frage zum RssLog. Mir scheint das Filtern nicht zu funktionieren. Ich nutze folgende Config:
Code:<model class="RssLog" parameters="limit=10,filter=licht" />
image.png
Allerdings sollte der Request so aussehen: rsslog.php?j=1&limit=10&f=licht ("f=" statt "filter=")
Habe das bei mir mit exakt dem selben Config-Eintrag getestet und die Query ist korrekt. Keine Ahnung was da bei Dir schief läuft.
Zitat von mivola Beitrag anzeigenIch hätte auch noch 2 weitere Fragen:
- wie kann ich das Datum eines Eintrags formatieren? Aktuell sieht es so aus, aber das ist ja nicht so sehr hübsch
image.png
- gibt es eine Möglichkeit das Widget im Fullscreen anzuzeigen (analog dem "alten" RssLog Widget)?
Gruß
Tobias
Kommentar
-
Zitat von peuter Beitrag anzeigenVerstehe ich auch nicht, bei mir funktioniert es korrekt. Wie Du auch schon bemerkt hast liefert der Code keine Erklärung warum es nicht funktionieren sollte.
Habe das bei mir mit exakt dem selben Config-Eintrag getestet und die Query ist korrekt. Keine Ahnung was da bei Dir schief läuft.
Hast du es in einem Docker-Container getestet? Kann ich im Container (oder der Developer Console) irgendwie prüfen, ob dort der korrekte Code genutzt wird? Die RssLog.js kann ich ja direkt nicht finden, oder?
Zitat von peuter Beitrag anzeigenGeht beides momentan noch nicht, macht aber Sinn und wird daher in Kürze nachgeliefert.
VG
Micha
Kommentar
-
Die beiden neuen Funktionen (Liste in Fullscreen + Datum formatieren) sollten im aktuellsten Nightly Build zur Verfügung stehen.
Zitat von mivola Beitrag anzeigenHast du es in einem Docker-Container getestet? Kann ich im Container (oder der Developer Console) irgendwie prüfen, ob dort der korrekte Code genutzt wird? Die RssLog.js kann ich ja direkt nicht finden, oder?
Gruß
Tobias
Kommentar
-
Zitat von peuter Beitrag anzeigen
Mit der 0.13.0-dev117 Version sollte das jetzt gehen: Doku dazu ist hier https://www.cometvisu.org/CometVisu/...stence-service
Das Problem mit dem nicht funktionierenden Progress sollte in dieser Version auch behoben sein.
der erste Test heute ergab, dass der Progress immer noch nicht angezeigt wird. Die Werte werden von einen OH:number item in Millisekunden bereitgestellt. Zusätzlich dazu versuche ich mittels der List-Komponente offene Rollläden anzuzeigen:
Code:<!-- Status Rollläden --> <cv-status format="tr('%d offen')"> <cv-value slot="icon" mapping="Rollladen_Prozent" styling="Styling_Presence_OnOff"> <cv-icon size="x-large" class="value">knxuf-fts_window_2w</cv-icon> <cv-address transform="OH:rollershutter" mode="read">gRolllaeden</cv-address> </cv-value> <cv-address slot="address" transform="OH:number">number:gRolllaeden</cv-address> <span slot="label">Rollläden</span> <cv-popup slot="popup" modal="true"> <cv-list rowspan="3" colspan="3"> <model filter="item.active===true" sort-by="label"> <cv-address transform="raw" mode="read">members:gRolllaeden</cv-address> </model> <header> <h4 tr="true">Rollläden</h4> </header> <template> <cv-listitem> <cv-value mapping="Rollladen_Prozent" styling="Styling_Presence_OnOff"> <cv-address mode="read" transform="OH:rollershutter">${name}</cv-address> <cv-icon class="value"/> </cv-value> <div class="content"> <label class="primary">${label}</label> </div> </cv-listitem> </template> <template when="empty"> <li><label class="primary" tr="true">Aktuell keine Rollläaden offen</label></li> </template> </cv-list> </cv-popup> </cv-status>
VG René
Kommentar
-
Zitat von rene54321 Beitrag anzeigender erste Test heute ergab, dass der Progress immer noch nicht angezeigt wird. Die Werte werden von einen OH:number item in Millisekunden bereitgestellt. Zusätzlich dazu versuche ich mittels der List-Komponente offene Rollläden anzuzeigen:
Zitat von rene54321 Beitrag anzeigenHierbei möchte ich statt des Widgets cv-button; cv-value verwenden. Sobald ich diese Anpassung vollzogen habe bricht das popup mit einem Fehler ab. Ändere ich alles zu cv-button funktioniert es wieder. Woran könnte das liegen?
Gruß
Tobias
Kommentar
-
Zitat von rene54321 Beitrag anzeigender erste Test heute ergab, dass der Progress immer noch nicht angezeigt wird. Die Werte werden von einen OH:number item in Millisekunden bereitgestellt. Zusätzlich dazu versuche ich mittels der List-Komponente offene Rollläden anzuzeigen:
Gruß
Tobias
Kommentar
-
Hallo,
anbei das Mapping und Styling sowie der Code zum Player Widget
Mapping:
Code:<cv-mapping name="Rollladen_Prozent"> <entry range-min="0" range-max="10">knxuf-fts_window_2w</entry> <entry range-min="11" range-max="20">knxuf-fts_shutter_10</entry> <entry range-min="21" range-max="30">knxuf-fts_shutter_20</entry> <entry range-min="31" range-max="40">knxuf-fts_shutter_30</entry> <entry range-min="41" range-max="50">knxuf-fts_shutter_40</entry> <entry range-min="51" range-max="60">knxuf-fts_shutter_50</entry> <entry range-min="61" range-max="70">knxuf-fts_shutter_60</entry> <entry range-min="71" range-max="80">knxuf-fts_shutter_70</entry> <entry range-min="81" range-max="90">knxuf-fts_shutter_80</entry> <entry range-min="91" range-max="99">knxuf-fts_shutter_90</entry> <entry value="100">knxuf-fts_shutter_100</entry> </cv-mapping>
Code:<cv-styling name="Styling_Presence_OnOff"> <entry value="NULL">lime</entry> <entry value="0">orange</entry> <entry value="1">lime</entry> </cv-styling>
Code:<!-- Spotify Media Player --> <cv-media-player> <cv-address slot="subtitleAddress" transform="OH:string" mode="read">Spotify_CurrentAlbum</cv-address> <cv-address slot="titleAddress" transform="OH:string" mode="read">Spotify_CurrentTitle</cv-address> <cv-address slot="previousAddress" transform="OH:string" value="PREVIOUS" mode="write">Spotify_Controller</cv-address> <cv-address slot="playPauseAddress" transform="OH:playPause">Spotify_Controller</cv-address> <cv-address slot="playTimeAddress" transform="OH:number" mode="read" target="progress">Spotify_TrackProgress</cv-address> <cv-address slot="durationAddress" transform="OH:number" mode="read" target="store:duration">Spotify_Duration</cv-address> <cv-address slot="nextAddress" transform="OH:string" value="NEXT" mode="write">Spotify_Controller</cv-address> <cv-address slot="volumeAddress" transform="OH:dimmer">Spotify_Volume</cv-address> <cv-address slot="tileAddress" transform="OH:string" mode="read" target="background-image">Spotify_AlbumImageURL</cv-address> </cv-media-player>
Kommentar
-
Zitat von peuter Beitrag anzeigen
Lösch mal den Browser-Cache, das hat gerade bei mir geholfen, danach gings dann auch in meiner Produktiv-Visu.
das löschen des Cache brachte keine Abhilfe. Folgend noch die items aus OH:
Code:Number Spotify_TrackProgress "Laufzeit [%.0d]" {channel="spotify:player:54321:trackProgressMs"} Number Spotify_Duration "Dauer [%.0fd]" {channel="spotify:player:54321:trackDurationMs"}
Code:2024-01-03 17:11:06.571 [INFO ] [openhab.event.ItemStateChangedEvent ] - Item 'Spotify_Duration' changed from 159483 to 212838 2024-01-03 17:12:16.870 [INFO ] [openhab.event.ItemStateChangedEvent ] - Item 'Spotify_TrackProgress' changed from 13275 to 14275
Kommentar
-
Sorry, das Progress-Problem kann ich nicht nachstellen, die einzig verbleibende Möglichkeit ist noch, wenn Du mir eine Replay-Datei erstellst.
Also erstmal eine extra Config Datei erzeugen, die nur dieses eine Media-Widget enthält, dann die Anweisungen hier befolgen: https://www.cometvisu.org/CometVisu/...replay-dateien
(natürlich mit dieser extra Config und auch, wenn gerade ein Song angespielt wird, es somit also Änderungen des Spotify_TrackProgress Werts gibt.
Diese Datei bräuchte ich dann mal.Gruß
Tobias
Kommentar
-
und noch 2 Dinge zu dem Rollladen-Beispiel:
1. Das Styling ergibt für mich keinen Sinn bei Rolladen. Auch vom Namen her sieht, das nach Copy&Paste von was anderem aus und hat irgendwie keine Relation zur Rollladen-Position.
2. Ich schätze mal für Deinen Anwendungsfall musst Du noch das hier aus dem <model> löschen: 'filter="item.active===true"', denn das bewirkt, dass alle geschlossenen Rollläden rausgefiltert werden. Die Idee hinter dem Widget/Beispiel war, alle offenen Rollläden auf einen Blick zu sehen und diese ggf. direkt schließen zu können. Du möchtest ja einfach den Zustand von allen sehen, daher macht der Filter keinen Sinn.
Gruß
Tobias
Kommentar
Kommentar