New FHEM Tablet UI

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

Vorheriges Thema - Nächstes Thema

nesges

#1500
Fangen wir mal mit den Regexen an:

Zitat von: update71 am 15 Mai 2015, 23:47:35
data-get-on='["[12][0-9]","[3456][0-9]","([789][0-9]|100)"]'

Heisst zu Deutsch:
[12][0-9] => 10 bis 29
[3456][0-9] => 30 bis 60
([789][0-9]|100) => 70 bis 100

ZitatDer Status bei gedimmtem Licht kommt als dimXX% ... zum Bsp.: dim56%

Die Regexe müssen die Werte vollständig beschreiben, von daher müsstest du entweder /.*/ oder besser /dim/ und /%/ ergänzen. In etwa so (ungetestet):

data-get-on='["dim[12][0-9]%","dim[3456][0-9]%","dim([789][0-9]|100)%"]'


ZitatWas muss bei data-on-colors rein? In der Doku steht:
data-on-colors   Name des Font-Awesome Hintergrund Icon.   'fa-circle'

In der echten Doku steht das nicht, wo hast du's gefunden? Ist auf jeden Fall vollkommen falsch. In data-on-colors kommen CSS-Farbwerte oder CSS-Farbnamen.

PS: IT'S OVER 9000100!

update71

Morgen,

danke, so passt es. Ich dachte es muss nur den Wert enthalten. Wieder was gelernt :)

ZitatIn der echten Doku steht das nicht, wo hast du's gefunden? Ist auf jeden Fall vollkommen falsch. In data-on-colors kommen CSS-Farbwerte oder CSS-Farbnamen.
http://www.fhemwiki.de/wiki/FHEM_Tablet_UI
bei der Beschreibung von "Symbol".

Als nächstes werde ich mich dann an die pagetabs machen, hab das nur noch nicht gerafft wie die Aufteilung der Seiten sein muss und was wo hin muss ^^
Thomas
###########
Raspi mit Fhem, nanoCUL 433 + mehrere Brennstuhl Steckdosen - HM-LAN + Thermostat, 6 fach Taster, Aussensensor - HUEBridge + 3 weiße LEDs ... mehr folgt

Nobby1805

Ist im Wiki jetzt korrigiert
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)

update71

Sorry ... ich schon wieder:
so ganz hauts doch noch nicht hin. Die Farben ändern sich wie gewollt nur geht es nun nicht mehr aus wenn ich auf off gehe. Nach einem refresh der Seite wird der Staus richtig angezeigt.
<div data-type="symbol" data-device="HUEDevice2"
                                data-get-on='["on","dim[12][0-9]%","dim[3456][0-9]%","dim[789][0-9]%"]'
                                data-get-off="off"
                                data-on-colors='["#ffffff","#666666","#999999","#cccccc"]'
                                data-background-icon="fa-circle-thin"
                                data-icon="fa-lightbulb-o" >
                               </div>

Kann nochmal jemand rüberschauen?
Thomas
###########
Raspi mit Fhem, nanoCUL 433 + mehrere Brennstuhl Steckdosen - HM-LAN + Thermostat, 6 fach Taster, Aussensensor - HUEBridge + 3 weiße LEDs ... mehr folgt

bjoernbo

brauche von euch mal Unterstützung. Ich will mit den UI diverse TV Sender ansteuern. Dies erfolgt über "push" mit
Zitatdata-cmd="...."
Nur gefällt mir die Darstellung nicht!
Mit
Zitat...img src="........"
kann ich ja kein Kommando übergeben. Es soll aber auf jeden Fall das Senderlogo enthalten sein.
Raspberry Pi 3 - FB6490C - Synology NAS DS916+ - NETATMO - HUE - SIEMENS G-Tag'S - FTUI - EchoDOT -

tomster

Seid's mir nicht bös, aber das Switch-Widget kostet mich noch den letzten Nerv...
Das Schalten von "normalen" Homematic-Devices funktioniert einwandfrei, aber jegliche Versuche damit andere Devices wie einen MPD-Player oder den Denon-Netzwerkplayer meines Sohns zu schalten scheitern kläglich. Die zu sendenden/pollenden Daten klappen einfach nicht...
Hier Mal der Code zum Denon (um ein "Mute" zu erreichen, damit man nicht wie ein Berserker durchs Haus Brüllen muss, wenn der Bub Mal wieder alles auf Vollanschlag hört):

<div class="cell right">
                <div data-type="label" class="small">Audio Mute</div>
                <div data-type="switch"
                data-device="Ludwig.Denon"
                data-get="mute"
                data-set-on="on"
                data-set-off="off"
                data-icon="fa-music"
                data-background-icon="-"
                data-on-color="#aa6900"
                data-off-color="#505050"
                class="small"></div>
        </div>

Wenn ich die Doku richtig verstanden habe, dann setze ich zunächst mit <data-device> das Gerät und mit <data-get>  das gewünschte Reading. Beim Aufruf der Seite wird der aktuelle Status (in meinem Fall mute:off) korrekt dargestellt. Klicke ich nun auf das Icon, dann wird aber nicht "set Ludwig.Denon mute on" gesetzt sondern nur "set Ludwig.Denon on". Zudem wird das Icon vom color-Wert auf "on" gesetzt, obwohl sich ja das Reading "mute" gar nicht verändert hat. Zur Erinnerung: es wurde ja zuvor nur das Gerät auf "on" geschalten, nicht das Reading/mute...

Ist da noch etwas
a. in der Logik des Widgets falsch
b. in meinem Kopf etwas falsch
oder
c. beides?

Vielleicht hab ich aber auch Mal wieder irgendwo irgendetwas überlesen...

bjoernbo

mir ist aufgefallen dass innerhalb von "circlemenu" ein "data-cmd" egal ob der Typ "push" oder "button" ist, nicht funktioniert. Kann das jem. bestätigen?

Zitat<div class="container">
    <header>TV Optionen</header>
<div data-type="circlemenu"  class="cell circlemenu" data-direction="left"  data-circle-radius="60"><br>
    <ul>
      <li><div data-type="symbol"
               data-icon="font1-tv"
               data-on-background-color="rgb(111,69,120)"
               data-off-background-color="rgb(111,69,120)"
               data-on-color="rgb(255,255,255)"
               data-off-color="rgb(255,255,255)"
               data-background-icon="fa-circle">
           </div>
       </li>   
        <li><div data-type="button"
             data-on-background-color="rgb(153,204,0)"
             data-on-color="white"
             data-icon="fa-volume-off"
             data-cmd="set hub command 15781875 Mute">
         </div></li>
      <li><div data-type="push"
               data-on-background-color="rgb(71,163,117)"
               data-icon="fa-cube"
               data-on-color="white"
               data-cmd="set hub command lg-fernseher 3D">
         </div></li>
    </ul>   
</div>
Raspberry Pi 3 - FB6490C - Synology NAS DS916+ - NETATMO - HUE - SIEMENS G-Tag'S - FTUI - EchoDOT -

setstate

Zitat von: tomster am 16 Mai 2015, 12:47:56
Seid's mir nicht bös, aber das Switch-Widget kostet mich noch den letzten Nerv...
Das Schalten von "normalen" Homematic-Devices funktioniert einwandfrei, aber jegliche Versuche damit andere Devices wie einen MPD-Player oder den Denon-Netzwerkplayer meines Sohns zu schalten scheitern kläglich. Die zu sendenden/pollenden Daten klappen einfach nicht...
Hier Mal der Code zum Denon (um ein "Mute" zu erreichen, damit man nicht wie ein Berserker durchs Haus Brüllen muss, wenn der Bub Mal wieder alles auf Vollanschlag hört):

<div class="cell right">
                <div data-type="label" class="small">Audio Mute</div>
                <div data-type="switch"
                data-device="Ludwig.Denon"
                data-get="mute"
                data-set-on="on"
                data-set-off="off"
                data-icon="fa-music"
                data-background-icon="-"
                data-on-color="#aa6900"
                data-off-color="#505050"
                class="small"></div>
        </div>

Wenn ich die Doku richtig verstanden habe, dann setze ich zunächst mit <data-device> das Gerät und mit <data-get>  das gewünschte Reading. Beim Aufruf der Seite wird der aktuelle Status (in meinem Fall mute:off) korrekt dargestellt. Klicke ich nun auf das Icon, dann wird aber nicht "set Ludwig.Denon mute on" gesetzt sondern nur "set Ludwig.Denon on". Zudem wird das Icon vom color-Wert auf "on" gesetzt, obwohl sich ja das Reading "mute" gar nicht verändert hat. Zur Erinnerung: es wurde ja zuvor nur das Gerät auf "on" geschalten, nicht das Reading/mute...

Ist da noch etwas
a. in der Logik des Widgets falsch
b. in meinem Kopf etwas falsch
oder
c. beides?

Vielleicht hab ich aber auch Mal wieder irgendwo irgendetwas überlesen...

Man muss folgendes mitgeben

           
            data-set-on="mute on"
            data-set-off="mute off"


Es wird nicht automatisch der Reading-Name aus data-get bei data-set-* mit verwendet.

Nobby1805

Zitat von: update71 am 16 Mai 2015, 12:20:18
Sorry ... ich schon wieder:
so ganz hauts doch noch nicht hin. Die Farben ändern sich wie gewollt nur geht es nun nicht mehr aus wenn ich auf off gehe. Nach einem refresh der Seite wird der Staus richtig angezeigt.
<div data-type="symbol" data-device="HUEDevice2"
                                data-get-on='["on","dim[12][0-9]%","dim[3456][0-9]%","dim[789][0-9]%"]'
                                data-get-off="off"
                                data-on-colors='["#ffffff","#666666","#999999","#cccccc"]'
                                data-background-icon="fa-circle-thin"
                                data-icon="fa-lightbulb-o" >
                               </div>

Kann nochmal jemand rüberschauen?
wenn ich das widget richtig "lese" dann wird falls get-on als Array angegeben wird get-off gar nicht mehr interpretiert ...
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)

setstate

Zitat von: bjoernbo am 16 Mai 2015, 13:50:29
mir ist aufgefallen dass innerhalb von "circlemenu" ein "data-cmd" egal ob der Typ "push" oder "button" ist, nicht funktioniert. Kann das jem. bestätigen?

Beim Button gibt es data-fhem-cmd
Beim Push data-cmd, das default 'set' ist

bjoernbo

ah...Danke! Funtzt. Jetzt brauche ich nur noch eine Lösung für die Senderlogos ;D
Raspberry Pi 3 - FB6490C - Synology NAS DS916+ - NETATMO - HUE - SIEMENS G-Tag'S - FTUI - EchoDOT -

tomster

Zitat von: setstate am 16 Mai 2015, 13:55:56
Man muss folgendes mitgeben

           
            data-set-on="mute on"
            data-set-off="mute off"


Es wird nicht automatisch der Reading-Name aus data-get bei data-set-* mit verwendet.

Ahh, jetzt, ja! Das Denon-Muting funktioniert damit. Danke für den Stupser!

Probleme hab ich immer noch mit dem Starten/Stoppen des MPD. Die <set>'s funktionieren, aber die Anzeige der Icons stimmt nicht.

<div data-type="switch"
                data-device="Wohnzimmer.MPD"
                data-get="STATE"
                data-get-on="stop"
                data-get-off="!stop"
                data-icon="fa-stop"
data-background-icon="-"
                data-set-on="stop"
                data-on-color="#aa6900"
data-off-color="#505050"       
        class="inline">
</div>
        <div data-type="switch"
data-device="Wohnzimmer.MPD"
data-get="STATE"
data-get-on="play"
data-get-off="!play"
data-icon="fa-play"
data-background-icon="-"
              data-set-device="Wohnzimmer.MPD"
data-set="play"
data-on-color="#aa6900"
data-off-color="#505050"
class="inline">
        </div>


Beim ersten Aufruf der Seite stimmen die angezeigten Stati (Play in off-color; Stop in on-color). Klicke ich nun auf Start, wird korrekt <set Wohnzimmer.MPD play> an FHEM geschickt. Nun sind aber beide Icons in on-color. Eigentlich sollte Stop in den off-color wechseln. Erst ein erneuter Refresh lässt die Stati korrekt erscheinen. Kann das daran liegen, dass beide Widgets auf den quasi-gleichen Status zugreifen?

setstate

Zitat von: bjoernbo am 16 Mai 2015, 12:43:03
brauche von euch mal Unterstützung. Ich will mit den UI diverse TV Sender ansteuern. Dies erfolgt über "push" mit Nur gefällt mir die Darstellung nicht!
Mit  kann ich ja kein Kommando übergeben. Es soll aber auf jeden Fall das Senderlogo enthalten sein.

Nimmt nur die IMG und dann zusätzlich onclick="setFhemStatus('set xyz on')" mit rein.

<img src="../bild.png" onclick="setFhemStatus('set SatReceiver switch channel4')" >

fh168

geniales UI!

Frage: 2 verschiedene Tablets, eines mit 800x600 und eins iPad Mini 3.
Beide sollen unterschiedliche Contents anzeigen, klappt das?
Hue, Lacrosse, PCA301, MySensors, V 1.67 CUL 868 V3.4, Lacrosse-WLAN-Gateway, Tasmota RF-

Phil__

#1514
Zitat von: Phil__ am 15 Mai 2015, 10:23:18
[quote name="Phil__" post=294162 timestamp=1431538551]
Vor einer ganzen Zeit war hier mal ein Problem mit dem verzögerten (mehrere Sekunden) bzw. nicht vollständigen Laden von Widgets auf einer Seite mit vielen Widgets die Sprache.

Ich habe immer noch das Problem das auf vielen meiner Seiten ein Timing-Problem besteht. Vor allem auf Seiten mit sehr vielen Widgets. Siehe meine Screenshots ein paar Seiten weiter vorne, zB heating, Wetter, home.
Gibt es da eine Lösung bzw Tipps um das Problem etwas zu bessern?

Viele Grüsse
1. Kann mir dazu jemand was sagen?
2. Kann ich die Probleme irgendwie beheben?
3. Haben noch mehr hier diese Probleme?
4. Falls ihr mehr Infos braucht, welche?

Viele Grüße
[/quote]
Kann den dazu niemand was sagen?
Ich kann im Thread leider nichts finden.
Viele Grüsse
Server: Intel DH77EB + Core i3-2120 mit Ubuntu Server 14.04
Backup: Beaglebone Black
Homematic: HM-LAN-Adapter, HM-CC-RT-DN, HM-CC-TC, HM-LC-SW1-PL2, HM-SEC-RHS, HM-SEC-SC, HM-TC-IT-WM-W-EU, HM-WDS10-TH-O
Weitere: Denon-AVR, PhilipsTV, PhilipsHue, Raspi+XBMC
Nexus 7 (WebViewControl + FTUI)