[FHEM-Tablet-UI] Widgets for fhem-tablet-ui

Begonnen von nesges, 10 April 2015, 10:30:25

Vorheriges Thema - Nächstes Thema

roman1528

Moin.
Erstmal natürlich ein fettes Danke @blackbluegl für das Highchart Widget und @setstate für die Einbindung. Echt schick!

Habe nur nen kleines Problem... Abgesehen davon, dass eine Doku für die ganzen elems gut wäre  8)

Mein Highchart stellt die 4:cpu_temp nicht richtig dar. Siehe Anhang... Alle Daten werden im Minutentakt gelogt. Aber die Darstellung der 4:cpu_temp springt zwischendrin auf den ebenfalls dargestellten und gelogten 4:cpu_temp_stat (min-Wert) weshalb auch die Darstellung der "line" nicht korrekt ist. Ist das schon aufgefallen oder bekannt?

<div data-type="highchart"
data-device="rpi_sys"
data-logdevice="FileLog_sysmon"
data-columnspec="4:cpu_temp 4:cpu_temp_stat 5:cpu_temp_stat"
data-linenames="act,min,max"
data-linetypes="line,line,line"
data-minvalue="25"
data-maxvalue="60"
data-height="0"
data-title=""
data-xunit="Heute"
data-yunit="°C"
data-tooltip="{series.name} <b>{point.y:,.1f}</b> °C of CPU"
data-tickInterval="5"
data-tickAmount="8"
                 style="width:1050px;height:650px;">
</div>
i3-10305T 4x3GHz;8GB RAM;250GB & 1TB NVMe:
FHEM 6.2;FTUI;8" Tablet's+Fully;NsPanelPro;HUE;ESPRGBWW;HM(CCU3);Duofern; ASC;MQTT(Tasmota);netatmo;SONOS;eBus;DbLog;XiaomiDevice;NUT;ModbusAttr

RPi3+: FHEM 6.2;I²C;GPIO;RFID;G-Tag;XiaomiBTLESens
RPi3: FHEM 6.2;DIY Relais-Board;I²C;GPIO;RFID;Photovoltaik

setstate

Zitat von: roman1528 am 10 November 2015, 13:19:57
Moin.
Erstmal natürlich ein fettes Danke @blackbluegl für das Highchart Widget und @setstate für die Einbindung. Echt schick!

Habe nur nen kleines Problem... Abgesehen davon, dass eine Doku für die ganzen elems gut wäre  8)


@blackbluegl & @eki: währt ihr noch so nett und fügt einen kleinen Abschnitt ins WIKI für die Charts ein?!

eki

Im Wiki ist jetzt auch das chart widget beschrieben.

setstate


Schnabelowski

Moyn,
hab  irgenwie ein Problem mit  dem "button" Widget...

Wenn ich die  Definition wie im Wiki beschrieben  setze ,wird  der "button" nicht  sichtbar ... aber als  "switch" deklariert schon und  die Verlinkung  funktioniert auch ???

<div data-type="button" data-icon="fa-cloud" data-off-background-color="blue" data-url="wetter.html"></div>

<div data-type="switch" data-icon="fa-cloud" data-off-background-color="blue" data-url="wetter.html"></div>

woran kann es liegen?

Gruß
Peter
Igel Debian/Fhem Cul HMlan


Schnabelowski

Sorry, dumm von mir. Hab  das irgenwie  übersehen.
Danke
Igel Debian/Fhem Cul HMlan

Schnabelowski

Noch ne Frage...

versuche  gerade mittels  highchart Widgets im großen Container   drei  Charts Verschiedene  Thermostaten darzustellen ,jedoch scheitere ich die alle  zusammen  zu bekommen.  Data-height und  data-width leider  ohne  funktion.

      <li data-row="1" data-col="2" data-sizex="8" data-sizey="9">

            <header>Charts</header>
            <div id="ram-container"
                 data-type="highchart"
                 data-device="wz_termostat"
                 data-logdevice="FileLog_wz_termostat"
                 data-columnspec="4:wz_termostat.desired-temp 4:wz_termostat.measured-temp 4:wz_termostat.batteryLevel"
                 data-linenames="soll,ist,Battery"
                 data-linenames="soll,ist,Battery"
                 data-linetypes="line,line,line"
                 data-minvalue="0"
                 data-maxvalue="25"
                 data-width="100"
                 data-height="100"
                 data-title="WOHNZIMMER"
                 data-xunit="Heute"
                 data-yunit="°C"
                 data-tooltip="{series.name} <b>{point.y:,.0f}</b> MB of RAM"
                 data-tickInterval="1800000"
                 data-tickAmount="10" >
            </div>
         <div id="ram-container"
                 data-type="highchart"
                 data-device="jan_termostat"
                 data-logdevice="FileLog_jan_termostat"
                 data-columnspec="4:jan_termostat.desired-temp 4:jan_termostat.measured-temp 4:jan_termostat.batteryLevel"
                 data-linenames="soll,ist,Battery"
                 data-linetypes="line,line,line"
                 data-minvalue="0"
                 data-maxvalue="30"
                 data-width="100"
                 data-height="100"
                 data-title="JAN"
                 data-xunit="Heute"
                 data-yunit="°C"
                 data-tooltip="{series.name} <b>{point.y:,.0f}</b> MB of RAM"
                 data-tickInterval="1800000"
                 data-tickAmount="10" >
              </div>

Igel Debian/Fhem Cul HMlan

Morrino

Hallo,

finde das chart widget echt nice. Tolle Arbeit.

Habe damit aber leider ein kleines Problem. Und zwar gibt es in meinem LogFile zwei ähnliche Werte. Einmal "consumption" und dann noch "consumptionTotal".

Allerdings werden mit
data-columnspec='["4:power","4:consumption"]'
beide Werte abwechselnd verwendet.

Mache ich hier etwas falsch?


Nobby1805

#279
der Suchbegriff ist ein regEx, consumption^T findet nur consumption ohne ein T dahinter

Edit: viele Wege führen bei RegEx zum Ziel ... aber genau dieser wohl eher nicht :-[ versuche consumption[^T] oder auch consumption\b
FHEM-Featurelevel: 6.2   (fhem.pl:28227/2023-11-29) auf Windows 10 Pro mit Strawberry Perl 5.32.1.1-32bit
TabletUI: 2.7.15
IO: 2xHMLAN(0.965)|HMUSB2(0.967)

Morrino

Zitat von: Nobby1805 am 18 November 2015, 23:30:12
der Suchbegriff ist ein regEx, consumption^T findet nur consumption ohne ein T dahinter

Edit: viele Wege führen bei RegEx zum Ziel ... aber genau dieser wohl eher nicht :-[ versuche consumption[^T] oder auch consumption\b

Hi,

mit consumption[^T] fubktioniert es.

Vielen dank

danieljo

Besteht eine Möglichkeit den Farbkreis für das Thermostat Widget so zu modifizieren das ich den Farbkreis von rot über grün wieder zu rot darstellen kann.

Normalerweise kann ich ja nur den Start und End Wert für die Farbe angeben dazwischen wird ja automatisch interpoliert.

Hintergrund ist folgender das ich gerne den pH-Wert im Bereich von 4 - 10 Darstellen möchte. Was ja kein Problem ist. Allerdingsm möchte ich das bei pH 4 = rot ; pH = grün ; pH = rot dargestellt wird.

Schlimbo

Hallo,
habe immer noch das Problem, dass bei mir das Widget "itunes_artwork" nicht funktioniert siehe: http://forum.fhem.de/index.php/topic,36122.msg338277.html#msg338277

In der Javascript-Konsole bekomme ich folgende Fehler Meldung:
TypeError: $(...).attr(...) is undefined jquery.min.js line 2 > eval:28

Habe mir jetzt die Datei "widget_itunes_artwork.js" angeschaut:
26|
27|        // dir for standard images
28|        var dir = $('script[src$="fhem-tablet-ui.js"]').attr('src').replace(/(.*\/).*/, '$1');

wie es aussieht gibt es bei mir Probleme den Pfad aufzulösen.
habe nun Zeile 28 so abgeändert:
28|       var dir = "/opt/fhem/www/tablet/js/";
und nun bekomme ich auch ein Cover angezeigt :-)

Die Standart Bilder für LOADING,STOP und UNKNOWN funktionieren aber trotzedem nicht, evtl. stimmt hier noch etwas mit meinem absoluten Pfad Angabe nicht.
dir + '../images/loading.svg');
dir + '../images/stop.svg');
dir + '../images/unknown.svg');


Da ich das Widget nicht über ein "MPD" Device, sondern über "XBMC" mit Daten versorge,
funktioniert bei mir der Playstatus nicht, im Modul wird das Reading "STATE" auf "stop" ausgewertet:
22|        // reading and reading-value that say "Player has stopped"
23|       elem.data('get-playstatus',             elem.data('get-playstatus')         || 'STATE');
24|        elem.data('get-playstatus-stop',        elem.data('get-playstatus-stopp')   || 'stop');
25|        readings[elem.data('get-playstatus')] = true;

XBMC nutzt aber das Reading "playStatus" und dies wird bei stop auf "stopped" gesetzt.
Ändere ich den Code auf das XBMC Reading, funktioniert auch der Playstatus:
22|        // reading and reading-value that say "Player has stopped"
23|       elem.data('get-playstatus',             elem.data('get-playstatus')         || 'playStatus');
24|        elem.data('get-playstatus-stop',        elem.data('get-playstatus-stopp')   || 'stopped');
25|        readings[elem.data('get-playstatus')] = true;


der Versuch den Playstatus von außen zu versorgen hat leider nicht geklappt:
<div data-type="itunes_artwork"
    data-device="raspbmc"
                data-get='["currentArtist","currentAlbum","currentTitle"]'
date-get-playstatus="playStatus"
date-get-playstatus-stopp="stopped"
                data-size=400
data-stoppedimg="http://..........stop.png"
</li>


Nutzt das "itunes_artwork" Widget sonnst noch jemand mit XBMC? Und Funktioniert es bei euch ohne Probleme?

nesges

Zitat von: Schlimbo am 21 November 2015, 00:23:14
Habe mir jetzt die Datei "widget_itunes_artwork.js" angeschaut:
26|
27|        // dir for standard images
28|        var dir = $('script[src$="fhem-tablet-ui.js"]').attr('src').replace(/(.*\/).*/, '$1');

wie es aussieht gibt es bei mir Probleme den Pfad aufzulösen.
habe nun Zeile 28 so abgeändert:
28|       var dir = "/opt/fhem/www/tablet/js/";
und nun bekomme ich auch ein Cover angezeigt :-)

Wie sieht denn die zugehörige HTML-Zeile bei dir aus? Diese hier wird gesucht: <script src="....fhem-tablet-ui.js"...>

Schlimbo

Hallo nesges,

danke für den Hinweis,
habe gerade gesehen, dass es "<script src="....fhem-tablet-ui.js"...>" in meiner index.html gar nicht gibt.
Hatte den Code einfach aus der "Beispiel" index.html übernommen:

</body>
    <script type="text/javascript" src="/fhem/pgm2/jquery.min.js"></script>
    <script type="text/javascript" src="/fhem/tablet/lib/jquery.toast.min.js"></script>
    <script type="text/javascript" src="/fhem/tablet/lib/jquery.gridster.min.js"></script>
    <script type="text/javascript" src="/fhem/tablet/js/fhem-tablet-ui.min.js"></script>

    <!-- Remove this line to enable for usage with WebViewControl
    <script type="text/javascript" src="/fhem/pgm2/cordova-2.3.0.js"></script>
    <script type="text/javascript" src="/fhem/pgm2/webviewcontrol.js"></script>
    <script type="text/javascript">var wvcDevices = {'12345': 'Tablet'}; var wvcUserCssFile="webviewcontrol.css"</script>
    End for WebViewControl -->
</html>


FHEM läuft bei mir auf einen Raspberry Pi im Pfad /opt/fhem.
Muss ich hier jetzt alle Pfadangaben auf /opt/fhem/www/... ändern?

Habe die Zeile:
  <script type="text/javascript" src="/fhem/tablet/js/fhem-tablet-ui.min.js"></script>
in
  <script type="text/javascript" src="/fhem/tablet/js/fhem-tablet-ui.js"></script>
umbenannt jetzt geht es.

Was ist denn der unterschied zwischen "fhem-tablet-ui.min.js" und "fhem-tablet-ui.js"?
Hatte zuerst beide aktiviert, dann waren einige Widgets doppelt vorhanden.