Hallo,
ich bekomme es einfach nicht hin, dass ich in FTUI die Reading Group für den Batterie Status richtig anzeigt.
Problem ist das die Icon in Maximal Größe im FTUI angezeigt werden.
Die Reading Group habe ich wie folgt in FHEM definiert:
define ZE.Batterie readingsGroup .*:[Bb]attery\
.*:[Bb]atteryLevel
attr ZE.Batterie group ZE.Batterie
attr ZE.Batterie notime 1
attr ZE.Batterie room 9.03_Tech
attr ZE.Batterie valueFormat {return "0" if( $VALUE eq "low" );; return "100" if( $VALUE eq "ok" );; return "25" if( $VALUE < 2.1 );; return "50" if( $VALUE < 2.3 );; return "75" if( $VALUE < 2.5 );; return "100"}
attr ZE.Batterie valueIcon {'battery.0' => 'measure_battery_0@red','battery.100' => 'measure_battery_100@green','Battery.0' => 'measure_battery_0@red','Battery.100' => 'measure_battery_100@green','batteryLevel.0' => 'measure_battery_0@red','batteryLevel.25' => 'measure_battery_25@red','batteryLevel.50' => 'measure_battery_50@orange','batteryLevel.75' => 'measure_battery_75@green','batteryLevel.100' => 'measure_battery_100@green'}
In FTUI habe ich es wie folgt eingebunden:
<li data-row="2" data-col="6" data-sizex="2" data-sizey="4" class="halbTransparent">
<header>Battery Monitor</header>
<table width="100%">
<td>
<tr>
<div data-type="readingsgroup" data-device="ZE.Batterie" data-max-update="86400"></div>
</tr>
</td>
</div>
</table>
</li>
Ich hab hier was zu dem Thema gefundenhttp://www.juergenstechnikwelt.de/smarthome-2/fhem-tablet-ui-und-readingsgroup/ (http://www.juergenstechnikwelt.de/smarthome-2/fhem-tablet-ui-und-readingsgroup/)
Leider bekomme ich es aber nicht hin.
Hat jemand ne Idee wie ich das anpassen kann?
Danke und Gruß Robert
ZitatProblem ist das die Icon in Maximal Größe im FTUI angezeigt werden.
zeig mal´n Bild , verstehe ich nicht so recht !
oder nimm andere Icons
warum willst du überhaupt eine readingsgroup hernehmen wenn du in der tui auch die werte direkt von den devices verwursten kannst? das ist irgendwie doppelt gemoppelt
(denn wer schaut für solche infos die readingsgroup noch an wenn er auch in die tui schauen kann)
änderungen an der rg sind auch anstrengender als in der tui
zb
http://forum.fhem.de/index.php?action=dlattach;topic=37378.0;attach=32474;image
http://forum.fhem.de/index.php?action=dlattach;topic=37378.0;attach=39805
oder im tui thema auf den 250 seiten öffters mal vorkommend ;D
Zitat von: chris1284 am 18 Februar 2016, 17:53:20
oder im tui thema auf den 250 seiten öffters mal vorkommend ;D
Genau deswegen hier das Thema.
Da findet man doch nichts.
Zitat von: chris1284 am 18 Februar 2016, 17:53:20
warum willst du überhaupt eine readingsgroup hernehmen wenn du in der tui auch die werte direkt von den devices verwursten kannst? das ist irgendwie doppelt gemoppelt
Eine Readinggroup hilft einem dabei den Code nicht für 30 Devices von Hand machen zu müssen.
Zitat von: kvo1 am 18 Februar 2016, 16:07:45
zeig mal´n Bild , verstehe ich nicht so recht !
oder nimm andere Icons
Im Anhang ein Foto
evtl ist dieser hinweis zum widget readingsgroup der grund:
Zitat
Formatting will be taken from the corresponding readingsGroup formatting. If the readingsgrouop uses css references, images or similar pieces, then the corresponding files / links need to be also reachable / included
der bildasuschnitt ist natürlich sehr klein aber nach einem measure_battery_XXX symbol sieht das fast nicht aus. diese werden in der ui auch als oa-measure_battery_xxx eingebunden
(nachdem man die oa-fonts included hat per <link rel="stylesheet" href="/fhem/tablet/lib/openautomation.css" />)
batterie beispiele sind übrigen hier (4. und 5. example)
https://github.com/knowthelist/fhem-tablet-ui#symbol
Zitat von: chris1284 am 19 Februar 2016, 18:03:11
evtl ist dieser hinweis zum widget readingsgroup der grund:
der bildasuschnitt ist natürlich sehr klein aber nach einem measure_battery_XXX symbol sieht das fast nicht aus. diese werden in der ui auch als oa-measure_battery_xxx eingebunden
(nachdem man die oa-fonts included hat per <link rel="stylesheet" href="/fhem/tablet/lib/openautomation.css" />)
batterie beispiele sind übrigen hier (4. und 5. example)
https://github.com/knowthelist/fhem-tablet-ui#symbol
Die Symbole sind wie in der Konfiguration angegeben.
Es werden alle Icons halt in richtig groß angezeigt. Siehe foto im Screenshot
Eventuell fehlt ja was im CSS um die anzeige richtig hinzu bekommen.
Danke und Gruß Robert
Die Erklärung ist doch in deinem ersten Post im Link: http://www.juergenstechnikwelt.de/smarthome-2/fhem-tablet-ui-und-readingsgroup/
Du musst bei deiner ReadingsGroup das Attribut valueFormat in folgendes Ändern:
{ my ($wert) = $VALUE =~ m/(\d+)/; $wert = 100 if ($VALUE eq "ok"); $wert = 49 if ($VALUE eq "low"); $wert = 0 if ($VALUE eq "critical"); return "<i class='fa fa-battery-0 green fa-2x'><span class='myhidden'>critical</i>" if ($wert < 25); return "<i class='fa fa-battery-0 green fa-2x'><span class='myhidden'>low</i>" if ($wert < 50); return "<i class='fa fa-battery-4 green fa-2x'><span class='myhidden'>ok</span></i>";}
dann musst du in die Datei "fhem-tablet-ui-user.css" (unter www/tablet/css) folgende Zeile einfügen:
.myhidden {display:none}
Und schon werden die kleinen Icons angezeigt.
Sollte es noch nicht gehen, dann sicherstellen, dass auf deiner Seite die Datei "fhem-tablet-ui-user.css" eingebunden ist. Relativ weit oben muss folgender Code stehen:
<link rel="stylesheet" href="/fhem/tablet/css/fhem-tablet-ui-user.css" />
Nicht wundern, auf der FHEM standart Ansicht, siehst du halt nicht mehr die Bilder für Batterie, sondern nur den entsprechenden Wert.
Zitat von: Amenophis86 am 01 März 2016, 14:39:48
Die Erklärung ist doch in deinem ersten Post im Link: http://www.juergenstechnikwelt.de/smarthome-2/fhem-tablet-ui-und-readingsgroup/
Du musst bei deiner ReadingsGroup das Attribut valueFormat in folgendes Ändern:
{ my ($wert) = $VALUE =~ m/(\d+)/; $wert = 100 if ($VALUE eq "ok"); $wert = 49 if ($VALUE eq "low"); $wert = 0 if ($VALUE eq "critical"); return "<i class='fa fa-battery-0 green fa-2x'><span class='myhidden'>critical</i>" if ($wert < 25); return "<i class='fa fa-battery-0 green fa-2x'><span class='myhidden'>low</i>" if ($wert < 50); return "<i class='fa fa-battery-4 green fa-2x'><span class='myhidden'>ok</span></i>";}
dann musst du in die Datei "fhem-tablet-ui-user.css" (unter www/tablet/css) folgende Zeile einfügen:
.myhidden {display:none}
Und schon werden die kleinen Icons angezeigt.
Sollte es noch nicht gehen, dann sicherstellen, dass auf deiner Seite die Datei "fhem-tablet-ui-user.css" eingebunden ist. Relativ weit oben muss folgender Code stehen:
<link rel="stylesheet" href="/fhem/tablet/css/fhem-tablet-ui-user.css" />
Nicht wundern, auf der FHEM standart Ansicht, siehst du halt nicht mehr die Bilder für Batterie, sondern nur den entsprechenden Wert.
Genau das habe ich ja probiert.
Dann geht es auch mit Tablet UI.
Nur in FHEM stimmt was nicht.
Siehe Screenshots.
fhem reading, ist mit dem geänderten valueformat
fhem reading2, ist das alte valueformat
Wie man hier sieht, stimmen die Batterie Level dann nicht mehr.
Das ist mein Original Code:
{return "0" if( $VALUE eq "low" ); return "100" if( $VALUE eq "ok" ); return "25" if( $VALUE < 2.1 ); return "50" if( $VALUE < 2.3 ); return "75" if( $VALUE < 2.5 ); return "100"}
Ich hab auch probiert die änderungen hier einfach einzu tragen, aber leider habe ich es nicht hin bekommen.
Mal schauen vll hab ich später noch ein paar Minuten Zeit.
Gruß Robert
Edit: Anhänge hinzu
ich hatte das gleiche problem. es geht, wenn du zwei readingsgroups machst, einen für fhem web ui wie gehabt und einen für tablet ui mit den font awesome icons.
ich habe aber das problem, dass ich >50 battery devices hab und die nicht alle in eine spalte untereinander auf das tablet passen. noch habe ich keinen weg gefunden eine readingsgroup mehrspaltig darzustellen...
@setstate: könnte man das readingsgroup widget um ein attribut erweitern, welches die ersten x devices ausblendet? dann könnte ich in einer zweiten spalte die devices der readingsgroup anzeigen lassen, die nicht mehr in die erste spalte passen...
Das Readinggroup Widget (ist nicht von mir) holt per 'get <Device> html' Command ein fertiges HTML von FHEM ab. Da kann man nix mehr (ohne Aufwand und allgemeingültig) im Nachhinein bearbeiten.
Ihr müsst auf FHEM Seite entsprechend vorkonfigurieren.
ahh, ok, danke.
allerdings finde ich in fhem commandref kein attribut, welches mir erlaubt für eine fhem readingsgroup nur einen definieren ausschnitt der devices (z.b. nr 20-40) anzuzeigen....
Zitat von: Amenophis86 am 01 März 2016, 14:39:48
Nicht wundern, auf der FHEM standart Ansicht, siehst du halt nicht mehr die Bilder für Batterie, sondern nur den entsprechenden Wert.
Wie gesagt, geht es nicht anders. Das Problem ist, dass du im Attr bereits konfigurierst, wie es aussehen soll. Und diese ist nur für die TabletUI gedacht. Somit musst du, wie von FhemPiUser vorgeschlagen eine zweite machen, oder entscheiden, welche wichtiger findest :)
Ich habe es so gemacht, die Batterieanzeigen systematisch in verschiedene Readinggroups gepackt und nacheinander aufgerufen.
(http://thumbs.picr.de/25423565rc.jpg) (http://show.picr.de/25423565rc.jpg.html)
Marek
Hmmm... Irgendwie mag das bei mir nicht. Irgendwas übersehe ich.
<div data-type="readingsgroup" data-device="rgBatterieStatus" data-max-update="86400"></div>
define rgBatterieStatus readingsGroup .*:[bB]attery
attr rgBatterieStatus mapping %ALIAS
attr rgBatterieStatus nolinks 1
attr rgBatterieStatus notime 1
attr rgBatterieStatus room MAX
attr rgBatterieStatus style style="text-align:left"
attr rgBatterieStatus valueFormat { my ($wert) = $VALUE =~ m/(\d+)/;; $wert = 100 if ($VALUE eq "ok");; $wert = 49 if ($VALUE eq "low");; $wert = 0 if ($VALUE eq "critical");; return "<i class='fa fa-battery-0 green fa-2x'><span class='myhidden'>critical</i>" if ($wert < 25);; return "<i class='fa fa-battery-0 green fa-2x'><span class='myhidden'>low</i>" if ($wert < 50);; return "<i class='fa fa-battery-4 green fa-2x'><span class='myhidden'>ok</span></i>";;}
attr rgBatterieStatus valueIcon {'battery.ok' => 'battery@green', 'battery.low' => 'battery@yellow', 'battery.critical' => 'battery@red'}
.myhidden {display:none} ist eingetragen.
Was hab ich vergessen?
In FHEM sieht es so aus:
rgBatterieStatus
MAX_Thermostat_Bad_Fenster ok
MAX_Thermostat_Bad_Handtuch ok
MAX_Thermostat_Kueche ok
MAX_Thermostat_Schlafzimmer ok
MAX_Thermostat_Wohnzimmer_links ok
MAX_Thermostat_Wohnzimmer_rechts ok
Temp_Aussen ok
Temp_Bad ok
Temp_Lilly ok
Temp_Wohnzimmer ok
In FTUI steht nur "readingsgroup" :(