New FHEM Tablet UI

Begonnen von setstate, 22 Februar 2015, 23:37:24

Vorheriges Thema - Nächstes Thema

chris1284

#330
Zitat von: setstate am 25 März 2015, 22:04:36
okay, das ist mir neu.
Was würdest du erwarten?  (0 und kein Handle) oder (keine Zahl und kein Handle)?

es gibt mehrere möglichkeiten, je nach dem was besser umsetzbar ist.
"off" ist im rt intern die temperatur 4.5, auf dem display und den readings zeigt er aber off.
es wäre natürlich super wenn das widget "Off" anzeigt, "4.5" würde aber auch gehen (genau so wie "-" oder "--" da man das selbst als off interpretieren könnte. nur 10 ist dann ganz verwirrend

zum schalten würde ich einfach die möglichen werte im widget auf 4.5 bis 30 setzen. wird dann ein set name desired-temp 4.5 gesendet geht der rt auf 0ff
um das noch ein wenig auf die spitze zu treiben: der rt kann auch den wert on als desired-temp bekommen  ;D hier weiss ich aber auch nciht was er da intern für eine temp fährt, das kann martin sicher sagen.

ich gehe mal davon aus dass aktuell "off" als falscher wert / nicht numerisch erkannt wird und das widget dann seinen default wert nimmt -> 10.
das macht es auch wenn man den namen des devices falsch schreibt und keine werte kommen. hier sollte man zur besseren fehlerfindung evtl sowas wie n.A. nehmen

setstate

Zitat von: bjoernbo am 25 März 2015, 22:22:45
so... :-D nochmal getestet ....

verwende ich diesen Code
.. egal welche Farbe ich auswähle, immer ROT

genau, wie erwartet. Wenn man Werte nur von 0 bis 360 sendet, deckt das nur einen kleinen Teil des erwarteten Ranges für HUEdevices ab . Diese Teile wollen Werte bis 65535.

Dann mach so, wenn du bunt magst und HUEdevices ansprechen willst
      <div data-type="volume" data-device='bulb'
    data-min='0'
    data-max='65535'
    data-get='hue'
    data-set='hue'
    class="cell hue-tick hue-front" ></div>

Oder einfach hue-tick unter class weglassen, wenn es etwas dezenter aussehen soll ;-)

setstate

Zitat von: dancatt am 25 März 2015, 09:50:40
Wo ich das gerade lese...

Ich habe mal letzte Woche mal folgendes gefragt:Wenn ich das richtig verstehe kann man das ja mit dem "contact"-Widget realisieren, oder? Ein Icon, 2 Zustände?


Schön wärs nun wenn man pro Zustand ein Icon und eine Farbe angeben könnte (der Name "contact" ist nicht passend):

<div
data-type='contact'
data-device='carType'
data-get='state'
data-get-on='[Car,Bus,Ambulance]'
data-icons='[fa-car,fa-bus,fa-ambulance]'
data-colors='["#FF0000","#00FF00","#0000FF"]'
class="cell big">
</div>


Fhem:

define carType dummy
attr setList state:Car,Bus,Ambulance


Gruß Daniel

Hallo Daniel,
danke für den Lösungsansatz, sehr schön. Genauso habe ich es schon begonnen umzusetzen, wird bald verfügbar sein, war gestern Abend nur zu müde  ::)

Das widget habe ich auch umbenannt in "symbol", das sollte besser passen für den universellen Einsatz.

Cioa
Mario

setstate

Ich habe eine Issue Liste für offene Punkte und Tasks angelegt.
https://github.com/knowthelist/fhem-tablet-ui/issues

Brockmann

#334
Moin,

mir fällt gerade auf, dass seit dem Update auf die neueste Version bei Thermostaten der Unterschied zwischen Soll- und Ist-Temperatur auf dem Skalaring nicht mehr optisch visualisiert wird. An der Datei habe ich nichts geändert, ausser per S&E von type und device auf data-type und data-device umzustellen. Muss da etwas angepasst werden?

Bild und Listing anbei.

Update: Ich muss das nochmal korrigieren/spezifizieren:
Nur beim Laden bzw. beim manuellen Update wird nicht visualisiert. Wenn dann automatisch neue Daten kommen, klappt die Visualisierung.
Kann also sein, dass das auch vorher schon so war und ich es nur nicht wahrgenommen habe?

<li data-row="2" data-col="2" data-sizex="2" data-sizey="1">
<header><a href="http://fhem:8083/fhem?room=_TV-Zimmer">TV-Zimmer</a></header>
<div class="container">
<div class="left">
<div data-type="thermostat" data-device="Heizung_TVZimmer" data-get="desired-temp" data-temp="measured-temp" data-valve="ValvePosition" class="cell left"></div>
<div class="cell narrow">
<div class="left narrow">
<div data-type="label" data-device="CUL_HM_HM_CC_RT_DN_23C6A9" data-get="battery" class="darker narrow"></div>
</div>
<div class="right narrow">
<div data-type="label" data-device="CUL_HM_HM_CC_RT_DN_23C6A9" data-get="batteryLevel" data-unit="V" class="darker narrow"></div>
</div>
</div>
</div>
<div class="right">
<div data-type="label" data-device="Heizung_TVZimmer" data-part="2" data-unit="%B0C%0A" class="cell big"></div>
<div data-type="label" data-device="Heizung_TVZimmer" data-get="ValvePosition" data-fix="0" data-unit="%" class="cell big right"></div>
</div>
</div>
</li>

chris1284

Ich stelle gerade fest dass das thermostatwidget auch eine desired-temp von 5°C nur als 10 wieder gibt!

Brockmann

Zitat von: chris1284 am 26 März 2015, 08:51:56
Ich stelle gerade fest dass das thermostatwidget auch eine desired-temp von 5°C nur als 10 wieder gibt!
Ich meine, die Thermostaten sind bislang auf einen Bereich von 10-30 Grad fest beschränkt und alles darüber/darunter wird vermutlich entsprechend angepasst.

Ergänzung:

knob_elem.knob({
'min':10,
'max':30,

jehu

Hallo Mario,

dass kürzen der Datumswerte und Uhrzeiten per RegEx funktioniert wunderbar.

Super was du hier machst. Großen Dank dafür

Grüße
Jens
FHEM on RPi 2,
HM-CFG-USB - HM-CC-RT-DN - HM-ES-PMSw1-Pl - HM-LC-Bl1PBU-FM - HM-LC-SW1-FM - HM-LC-Sw1PBU-FM - HM-SEC-SCo - MiLight - SONOS - Lacrosse Jeelink
FTUI auf ODYS GATE

selfarian

Ich habe nochmal eine Frage :-)

Ich hatte den Post mit dem WLAN Stati gesehen und musste den natürlich gleich einbauen. Ich lese das direkt aus der Fritzbox aus und mit dem normalen WLAN funktioniert es, mit dem Gäste WLAN leider nicht. Hier mal der Ausschnitt der index.html:
        <div data-type="contact" data-device="FritzBox" data-icon="fa-wifi" data-on-color="#33dd22" data-get-on="WLAN: on.*" data-get-off="WLAN: off.*" class="narrow"></div>
        <div data-type="label" class="narrow darker small">WLAN</div>
        <div data-type="contact" data-device="FritzBox" data-icon="fa-wifi" data-on-color="#33dd22" data-get="box_guestWlan" class="narrow"></div>
        <div data-type="label" class="narrow darker small">Gaeste WLAN</div>


In der Fritzbox finden sich folgende Readings:
STATE WLAN: on gWLAN: on (Remain: -1 min)
den nutze ich für das normale WLAN und:
box_guestWlan on
den ich dann gerne für das Gäste WLAN genommen hätte. Leider klappt das irgendwie nicht. gWLAN bleibt grau.

Hat da jemand eine Idee?

Danke!
RasPi mit HMLAN, 5x HM-SEC-SC, HM LED16 als Alarmanlagendisplay, HM-TC-IT-WM-W-EU, 4x HM-CC-RT-DN, 1x HM PBU, 1x HM PBI-4

setstate

Zitat von: selfarian am 26 März 2015, 11:22:55
Ich habe nochmal eine Frage :-)

Ich hatte den Post mit dem WLAN Stati gesehen und musste den natürlich gleich einbauen. Ich lese das direkt aus der Fritzbox aus und mit dem normalen WLAN funktioniert es, mit dem Gäste WLAN leider nicht. Hier mal der Ausschnitt der index.html:
        <div data-type="contact" data-device="FritzBox" data-icon="fa-wifi" data-on-color="#33dd22" data-get-on="WLAN: on.*" data-get-off="WLAN: off.*" class="narrow"></div>
        <div data-type="label" class="narrow darker small">WLAN</div>
        <div data-type="contact" data-device="FritzBox" data-icon="fa-wifi" data-on-color="#33dd22" data-get="box_guestWlan" class="narrow"></div>
        <div data-type="label" class="narrow darker small">Gaeste WLAN</div>


In der Fritzbox finden sich folgende Readings:
STATE WLAN: on gWLAN: on (Remain: -1 min)
den nutze ich für das normale WLAN und:
box_guestWlan on
den ich dann gerne für das Gäste WLAN genommen hätte. Leider klappt das irgendwie nicht. gWLAN bleibt grau.

Hat da jemand eine Idee?

Danke!
Da fehlt der get-on get-off Teil für das guess wlan.  Probiere mal das (ungetestet)
        <div data-type="contact" data-device="FritzBox" data-icon="fa-wifi" data-on-color="#32a054" data-get-on="WLAN: on.*" data-get-off="WLAN: off.*" class="narrow"></div>
        <div data-type="label" class="narrow darker small">WLAN</div>
        <div data-type="contact" data-device="FritzBox" data-icon="fa-wifi" data-on-color="#32a054" data-get="box_guestWlan" data-get-on=".*gWLAN: on" data-get-off=".*gWLAN: off" class="narrow"></div>
        <div data-type="label" class="narrow darker small">Gaeste WLAN</div>

selfarian

Ok, danke. Also mit etwas probieren hat es jetzt so geklappt:
<div data-type="contact" data-device="FritzBox" data-icon="fa-wifi" data-on-color="#33dd22" data-get-on=".*gWLAN: on.*" data-get-off=".*gWLAN: off.*" class="narrow"></div>

Ich dachte halt, das er, wenn ich data-get auf box_guestWlan setze, das "on" automatisch in den Readings erkennt, steht ja sonst nix drinnen. Aber so über den state geht es auch.
RasPi mit HMLAN, 5x HM-SEC-SC, HM LED16 als Alarmanlagendisplay, HM-TC-IT-WM-W-EU, 4x HM-CC-RT-DN, 1x HM PBU, 1x HM PBI-4

Damian

Hallo Mario,

das Design gefällt mir sehr gut - weniger Text und mehr intuitive Symbole. Zwei Fragen hätte ich allerdings:

Man kann die "Kacheln" verschieben. Kann man die neue Anordnung auch speichern? Sonst wäre es ja sinnfrei.

Ist für die Zukunft geplant, Zustandsänderungen auch sofort zu aktualisieren, wie bei FHEMWEB?

Gruß

Damian
Programmierte FHEM-Module: DOIF-FHEM, DOIF-Perl, DOIF-uiTable, THRESHOLD, FHEM-Befehl: IF

chris1284

#342
Zitat von: Damian am 26 März 2015, 14:51:27
Ist für die Zukunft geplant, Zustandsänderungen auch sofort zu aktualisieren, wie bei FHEMWEB?

macht es doch schon. sobald ich einen zb schalter nicht per fhem schalte, sondern zb direkt per taste bekommt fhem und das tabletui das mit und ändert das symbol. ein rückkanal ist somit wohl schon drin

Brockmann

Zitat von: Damian am 26 März 2015, 14:51:27
Ist für die Zukunft geplant, Zustandsänderungen auch sofort zu aktualisieren, wie bei FHEMWEB?
Hast Du longpoll aktiviert?
<meta name="longpoll" content="1">

Damian

Zitat von: Brockmann am 26 März 2015, 15:31:12
Hast Du longpoll aktiviert?
<meta name="longpoll" content="1">

Ich habe es bereits auf 0 gesetzt. Dennoch, empfinde ich 30 Sekunden zu lang auf eine Veränderung eines Zustandes zu warten, wenn man sonst gewohnt ist  Änderungen insb. von Lampen oder Schaltern sofort aktualisiert zu bekommen - ist natürlich ein subjektives Empfinden. Auf etwas zu pollen empfinde ich allerdings immer als Notlösung.

Gruß

Damian
Programmierte FHEM-Module: DOIF-FHEM, DOIF-Perl, DOIF-uiTable, THRESHOLD, FHEM-Befehl: IF