New FHEM Tablet UI

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

Vorheriges Thema - Nächstes Thema

namor

Hallo zusammen,

habe gerade mal wieder alles aktualisiert und jetzt ein Problem.

Schritt 1. Update Tablet UI
Schritt 2. restart
Schritt 3. Update Fhem
Schritt 4. restart

hat alles ohne Problem funktioniert doch nach den Updates zieht das Tablet-UI die Daten aus meiner Anrufliste (Modul FB_Callmonitor) und meinem Zugplan (Modul DBPlan) nicht mehr.
Unter Fhem stehen alle Daten zur Verfügung und vor dem Update lief noch alles richtig.
Was kann ich machen das meine Anzeige die Daten wieder richtig abholt?
Suche schon seit 2 Stunden nach hinweisen... nix :-(

so sieht das aus:
<!-- ============= Zugfahrplan ============= -->
<!-- ====================================== -->
<li data-row="2" data-col="1" data-sizex="7" data-sizey="2">
    <header>Zugfahrplan</header>
    <div data-type="label" style="font-size:x-large;color:#aa6900;" class="cell">Freiburg>>Emmendingen</div>
    <table border="0px" width="100%">
        <tr>
            <td>
<div class="inline">
  <div data-type="label" class="narrow">Abfahrt</div>
  <div type="label" device="db_emmendingen" data-get="plan_departure_1" style="font-size:x-large;color:#96F20C;" class="cell"></div>
  <div type="label" device="db_emmendingen" data-get="plan_departure_2" style="font-size:x-large;color:#96F20C;" class="cell"></div>
  <div type="label" device="db_emmendingen" data-get="plan_departure_3" style="font-size:x-large;color:#96F20C;" class="cell"></div>
</div>
<div class="inline">
  <div data-type="label" class="narrow">Ankunft</div>
                <div type="label" device="db_emmendingen" data-get="plan_arrival_1" style="font-size:x-large;color:#aa6900;" class="cell"></div>
                <div type="label" device="db_emmendingen" data-get="plan_arrival_2" style="font-size:x-large;color:#aa6900;" class="cell"></div>
                <div type="label" device="db_emmendingen" data-get="plan_arrival_3" style="font-size:x-large;color:#aa6900;" class="cell"></div>
</div>
<div class="inline">
  <div data-type="label" class="narrow">Dauer</div>
                <div type="label" device="db_emmendingen" data-get="plan_travel_duration_1" style="font-size:x-large;color:#635EF2;" class="cell"></div>
                <div type="label" device="db_emmendingen" data-get="plan_travel_duration_2" style="font-size:x-large;color:#635EF2;" class="cell"></div>
                <div type="label" device="db_emmendingen" data-get="plan_travel_duration_3" style="font-size:x-large;color:#635EF2;" class="cell"></div>
</div>
<div class="inline">
  <div data-type="label" class="narrow">Verspaetung</div>
  <div type="label" device="db_emmendingen" data-get="plan_departure_delay_1" style="font-size:x-large;color:#F20C23;" class="cell"></div>
  <div type="label" device="db_emmendingen" data-get="plan_departure_delay_2" style="font-size:x-large;color:#F20C23;" class="cell"></div>
  <div type="label" device="db_emmendingen" data-get="plan_departure_delay_3" style="font-size:x-large;color:#F20C23;" class="cell"></div>
</div>
<div class="inline">
  <div data-type="label" class="narrow">Verbindung</div>
  <div type="label" device="db_emmendingen" data-get="plan_connection_1" style="font-size:x-large;color:#aa6900;" class="cell"></div>
  <div type="label" device="db_emmendingen" data-get="plan_connection_2" style="font-size:x-large;color:#aa6900;" class="cell"></div>
  <div type="label" device="db_emmendingen" data-get="plan_connection_3" style="font-size:x-large;color:#aa6900;" class="cell"></div>
</div>
<div class="inline">
  <div data-type="label" class="narrow">Gleis Abfahrt</div>
  <div type="label" device="db_emmendingen" data-get="travel_departure_1" style="font-size:x-large;color:#aa6900;" class="cell"></div>
  <div type="label" device="db_emmendingen" data-get="travel_departure_2" style="font-size:x-large;color:#aa6900;" class="cell"></div>
  <div type="label" device="db_emmendingen" data-get="travel_departure_3" style="font-size:x-large;color:#aa6900;" class="cell"></div>
</div>
<div class="inline">
  <div data-type="label" class="narrow">Aenderungen</div>
  <div type="label" device="db_emmendingen" data-get="travel_change_1" style="font-size:x-large;color:#aa6900;" class="cell"></div>
  <div type="label" device="db_emmendingen" data-get="travel_change_2" style="font-size:x-large;color:#aa6900;" class="cell"></div>
  <div type="label" device="db_emmendingen" data-get="travel_change_3" style="font-size:x-large;color:#aa6900;" class="cell"></div>
</div>

            </td>
        </tr>


       

</table>


Bin für jeden Hinweis Dankbar

setstate

#2731
bitte im HTML Code der FTUI Widgets alle Attribute "device" durch "data-device" und alle "type" in "data-type" ersetzen.

Andy89

#2732
Zitat von: setstate am 05 Mai 2015, 22:37:33
Und da ist es: Update  Pagetab Widget Items können jetzt auch 'warn' und zusätzlich 'activate' verstehen.


        <div data-type="pagetab" data-device="myDoorBell"
                data-get-on='["0","(?:[1-9][0-9]*)","on"]'
                data-icons='["fa-fax","fa-fax warn","fa-fax warn activate"]'
                data-url="index_door.html" class="cell"></div>
        </div>


Damit könnte man zum Beispiel innerhalb einer Menü-Tab-Leiste die Anzahl des Tür-Klingeln anzeigen (warn) und bei einem bestimmten Reading Wert, automatisch auf die entsprechende Seite umschalten (activate).

(http://knowthelist.github.io/fhem-tablet-ui/phone_warn.png)

Servus,
muss ich hierbei irgendwas beachten?

Ich habe ein dummy erstellt, der die Anzahl der leeren Batterien enthält.

Hier kurz der PageTab Code von mir:
<div data-type="pagetab"
            data-device="AnzahlLeererBatterien"
            data-get-on='["0","(?:[1-9][0-9]*)"]'
            data-icons='["fa-battery-full","fa-battery-full warn"]'
            data-on-background-color="#337ab7"
            data-url="batteriestatus.html"
            class="cell"></div>


Nun mein Problem. Bei AnzahlLeererBatterien 0 funktioniert der Wechsel zu der Seite nicht. Bei AnzahlLeererBatterien 1 oder 10 wird das "warn" angezeigt und ich kann auch zu der Seite wechseln.
Was machte ich falsch?

Danke für Hilfe.
Beste Grüße
Andy


edit:
also wenn ich auf ***/#batteriestatus.html gehe, wenn AnzahlLeererBatterien 0 ist, wird es auch richtig angezeigt, "wo ich bin". Sobald ich wieder auf einen anderen Tab gehe, kann ich batteriestatus nicht mehr auswählen.

Wenn ich "data-get-on='["0","(?:[1-9][0-9]*)"]'" in "data-get-on='["?:[0]","(?:[1-9][0-9]*)"]'" ändere geht das regex nicht, aber das symbol wird nun als Standard-Symbol angezeigt und ich kann batteriestatus auswählen.

Also mein Problem besteht weiterhin, aber ich weiß nicht, was hier falsch ist.

edit2:
wenn ich die symbole und die data-get-on getauscht habe, ging das öffnen des Tabs bei 0 aber bei anderen zahlen nicht....
nun habe ich einfach an die erste Stelle ein regex reingemacht, was nicht vorkommen kann und gut ist. ist zwar eine Lösung, aber keine schöne
FHEM 6.0 auf rPi4 docker (mit Alexa & Siri); dbLog, FTUI, Sonos, XiaomiMapCreator auf rPi4 docker;
raspimatic auf rPi3+ > diverse Aktoren und Sensoren;
LGW > (PCA301),EC3000,LaCrosse; MQTT2 > WLAN-Steckdosen,Xiaomi Map;
Harmony Hub;Sonos;Onkyo AVR;RGB WLAN Controller;Netatmo;Withings;Unifi;AMAD

namor

@setstate

Danke das war es.
Habe die Änderung leider nicht mitbekommen.

Gruß

namor

setstate

Zitat von: namor am 25 Oktober 2015, 13:34:12
@setstate

Danke das war es.
Habe die Änderung leider nicht mitbekommen.

Gruß

namor

Die Änderung gab es auch schon sehr lange, nach einen Tipp hier im Forum, dass die benutzen Attribute nicht dem HTML5 Standard entsprechen würden. Ich hatte dann übergangsweise eine automatische Anpassung für "AltHtml" im Code mit drin, den ich ich nun aber rausgeschmissen habe, weil ich der Annahme war, dass nun alle Seiten angepasst wären. Sorry, aber manchmal müssen harte Änderungen sein, dann wird alles besser  ;D

skuggy

Hallo,

ich weiß nicht ob die Frage hier richtig ist, aber irgendwie passt es dazu.

Ich nutze zur Anzeige der Geburtstage das calview modul in Verbindung mit dem calender Modul. Zur Zeit werden nur der Name und das Datum angezeigt. Das Geburtsdatum habe ich in location geschrieben, damit es von calview anzeigt wird. Ist es möglich irgendwie das Alter zu berechnen? z.b. per Dummy aktuelles Jahr - location = alter in Jahren evtl auch per Perl, aber davon habe ich leider keine Ahnung.

Wäre echt super, wenn jemand eine Lösung für das Problem parat hat.

Danke

...Gruß skuggy

FHEM 5.6 auf Raspberry Pi 2, HM-CFG-LAN, 8x HM-LC-Bl1PBU-FM, 5 x HM-CC-RT-DN, 1 x HM-LC-Sw1-Ba-PCB, 1 x HM-RC-4-2, 1 x JeeLink Clone, 10 x TX29DTH-IT, Fritzbox 7270

xxsteffenxx

Zitat von: Phil__ am 21 Mai 2015, 20:10:45
Hallo,

so hier meine fertige Lösung zur Anzeige der Müllabfuhrtermine. Mit bestem Dank an mc-hollin!!!
Im Menü meiner index.html wird, am Button das auf die Muellabfuhr übersichtsseite verlinkt, am Vortag einer Lehrung ein Warning engeblendet.
Auf der Übersichtsseite, muell.html, werden die Tonnen mit der Anzahl der Tage bis zur Leerung angezeigt.
Um 18 Uhr am Vortag einer Leerung bekomme ich eine Pushover Mitteilung auf mein Smartphone.
Für die Abfuhrtermin habe ich bei meinem Städischen Entsorger die Termine als .ics downloaden können und sie in einen Googlekalender importiert.

PS: Die Graue Tonne, untem auf dem Screenshot der muell.html, sieht man nicht da sie einen Vortag anfängt zu blinken. Screenshot zum falschen Zeitpunkt!  ;)


Hallo Phil__
meine Anzeige klappt soweit, nur ist mir heute morgen aufgefallen,
das mein Dummy Restmuell sich zuletzt vor 3 Tagen aktualisert hat

Internals
NAME
Restmuell
NR
137
STATE
1
TYPE
dummy
Readings
state
1
2015-10-24 15:36:30


Das log spuckt folgendes aus - ist das der Fehler?
2015.10.26 07:23:11 1: PERL WARNING: "my" variable $dayDiff masks earlier declaration in same scope at ./FHEM/99_myUtils.pm line 78.
2015.10.26 07:23:11 1: PERL WARNING: "my" variable $dayDiff masks earlier declaration in same scope at ./FHEM/99_myUtils.pm line 82.
2015.10.26 07:23:11 1: PERL WARNING: "my" variable $dayDiff masks earlier declaration in same scope at ./FHEM/99_myUtils.pm line 86.
Raspberry Pi3 mit Jessie lite, 4x Max Thermostat 1x, Fensterkontakt an Cube, Philips Hue für Hue Iris, 433 mhz Sender für Funksteckdosen, AMAD mit S4-Active und Galaxy Tab2 10.1,nanoCUL 868, Homematic Wandtaster. TelegramBot

charly166

Hallo zusammen,

zuerst will ich auch noch ein dickes Lob an die Macher des FTUI aussprechen. Seit ich die Oberfläche gefunden habe, kann ich mich vor kleinen Projekten kaum bremsen!

Nun habe ich jedoch ein (höchstwahrscheinlich) kleines Problem. Ich habe mir ein paar Widgets zusammengebastelt, welche meinen Yamaha Receiver steuern sollen. Es klappt soweit alles prima, nur zwei Readings (CurrentStation und CurrentChannel) zeigen im Label-Widget im ausgeschalteten Zustand immer das Datum des letzten "Leseversuchs" an - anstatt leer zu bleiben.
(siehe Screenshots)

Ich konnte für dieses Problem bisher leider keine Lösung finden, kann mir hier jemand einen heißen Tipp geben?
Vielen Dank im Voraus.
Gruß

Charly
--- FHEM 5.9 Docker Image fhem/fhem-docker auf Diskstation ---

setstate

Hallo Charly,
Vielen Dank fürs Lob und Dank zurück fürs Benutzen.  :)

Ich vermute, beim Auslesen des Status kommt es durch den Leerstring zu einem Durcheinander und das Datum wird als Status genommen.
Workaround wäre: mit data-part und einem RegEx nur Buchstaben [A-Za-z] zu akzeptieren.

fhem-challenge

Zitat von: setstate am 25 Oktober 2015, 14:01:39
Die Änderung gab es auch schon sehr lange, nach einen Tipp hier im Forum, dass die benutzen Attribute nicht dem HTML5 Standard entsprechen würden. Ich hatte dann übergangsweise eine automatische Anpassung für "AltHtml" im Code mit drin, den ich ich nun aber rausgeschmissen habe, weil ich der Annahme war, dass nun alle Seiten angepasst wären. Sorry, aber manchmal müssen harte Änderungen sein, dann wird alles besser  ;D

Das sehe ich auch so, dass Änderungen manchmal durchgreifend sein müssen. Nur entsteht oft ein Problem, wenn die Doku hinterher hinkt. In einigen Bereichen wird immer noch z.B. "device" vs. "data-device" u.v.m kolportiert.

https://github.com/nesges/Widgets-for-fhem-tablet-ui/wiki/button

... Viele Grüße!

Andreas

szerb

Hallo zusammen,
erst einmal... super Arbeit, Glückwunsch. Sieht klasse aus und kann super gut angepasst werden.
Meine ersten Versuch damit haben auf Anhieb funktioniert.
Das einzige was mir auf gefallen ist, das bei jedem ersten Start, dauert es sehr lange 2-3 min. bis sich nach und nach die Anzeigen mit Leben füllen(Daten erhalten). Ist das normal oder mache ich noch was falsch? Longpoll ist auf 1 gesetzt.

VG Markus

tomster

Zitat von: setstate am 27 Juni 2015, 13:31:11
New Widget: Popup Widget

...
- Mini Cam-Vorschau nach Klick als großes Bild
...

Ich bekomm's immer noch nicht hin. Wenn ich unten stehenden Code bei mir einbaue, dann wird zwar ein Pop-Up geöffnet, dieses wird aber ganz und gar nicht mittig angezeigt. Das Pop-Up ist ziemlich nach rechts verschoben sogar von der Breite so groß, dass es gar nicht mehr auf den Screen passt. Das aufgerufenen Bild wird zwar von der Größe her richtig angezeigt, es ist aber ein grauer Rand links und rechts vom Bild (siehe Screenshot). Hat jemand eine Ahnung was da zwicken könnte?
P.S. Kamerabild ist gerade wirklich schwarz ;-)


<li data-row="6" data-col="9" data-sizex="6" data-sizey="4">
        <header>GARTENTOR</header>
        <div data-type="popup">
        <div data-type="image"
        data-url="http://192.168.1.34/mjpeg"
        data-size="550"></div>
        <div class="dialog">
        <div data-type="image"
        data-url="http://192.168.1.34/mjpeg"></div>
        </div>
        </div>
</li>

uniqueck

#2742
hallo @skuggy schön das noch ein paar das calview widget nutzen.

ich habe heute mal ein bissl rumprobiert und habe deine anforderungen mal so umgesetzt, allerdings nutze ich nur den part data-get="all", für die anderen müsstest du das dann einfach adaptieren.

des weiteren habe ich noch zwei eigenschaften eingeführt, womit sich die einfärbung steuern lässt.

data-all-forecast-color="#FFF200"
data-all-today-color="6EB54C"

wie gesagt mal schnell zusammen getippt.

was mir noch irgendwie schleier haft ist, ist das cachen, irgendwie cachet der browser die anzeige.
vielleicht kann mir da jemand einen tipp geben, dass das nicht passiert.

wobei ich gerade sehe, dass der termin tatsächlich bei dem device calview zwei mal drin steht.


DEF        Geburtstage
   INTERVAL   43200
   KALENDER   Geburtstage
   NAME       GeburtstageCalView
   NR         132
   STATE      t: 10 td: 2 tm: 1
   TYPE       CALVIEW
   Readings:
     2015-10-27 01:38:53   c-term          10
     2015-10-27 01:38:53   c-today         2
     2015-10-27 01:38:53   c-tomorrow      1
     2015-10-27 01:38:53   state           t: 10 td: 2 tm: 1
     2015-10-27 01:38:53   t_001_bdate     27.10.2015
     2015-10-27 01:38:53   t_001_btime     00:00:00
     2015-10-27 01:38:53   t_001_edate     28.10.2015
     2015-10-27 01:38:53   t_001_etime     00:00:00
     2015-10-27 01:38:53   t_001_location  1985
     2015-10-27 01:38:53   t_001_source    Geburtstage
     2015-10-27 01:38:53   t_001_summary   Test 1
     2015-10-27 01:38:53   t_002_bdate     27.10.2015
     2015-10-27 01:38:53   t_002_btime     00:00:00
     2015-10-27 01:38:53   t_002_edate     28.10.2015
     2015-10-27 01:38:53   t_002_etime     00:00:00
     2015-10-27 01:38:53   t_002_location  1985
     2015-10-27 01:38:53   t_002_source    Geburtstage
     2015-10-27 01:38:53   t_002_summary   Test 1
     2015-10-27 01:38:53   t_003_bdate     28.10.2015
     2015-10-27 01:38:53   t_003_btime     00:00:00
     2015-10-27 01:38:53   t_003_edate     29.10.2015
     2015-10-27 01:38:53   t_003_etime     00:00:00
     2015-10-27 01:38:53   t_003_location  1910
     2015-10-27 01:38:53   t_003_source    Geburtstage
     2015-10-27 01:38:53   t_003_summary   Morgen 2


gruß uniqueck

skuggy

Hallo @uniqueck,

wow, das sieht super aus. Genauso hab ich mir das gewünscht :-)

Könntest du vielleicht nochmal den html-code posten?

Danke
...Gruß skuggy

FHEM 5.6 auf Raspberry Pi 2, HM-CFG-LAN, 8x HM-LC-Bl1PBU-FM, 5 x HM-CC-RT-DN, 1 x HM-LC-Sw1-Ba-PCB, 1 x HM-RC-4-2, 1 x JeeLink Clone, 10 x TX29DTH-IT, Fritzbox 7270

uniqueck

Zitat von: skuggy am 27 Oktober 2015, 06:56:16
Hallo @uniqueck,

wow, das sieht super aus. Genauso hab ich mir das gewünscht :-)

Könntest du vielleicht nochmal den html-code posten?

Danke

Hallo @skuggy,

natürlich kann ich dir den html code zur Verfügung stellen, aber ist nicht besonders anders, außer das die zwei zusätzlichen Optionen mit angegeben werden.

<div data-type="calview" data-device="GeburtstageCalView" data-get="all" data-max="4" class="cell centered fullsize top-space" data-all-forecast-color="#FFF200" data-all-today-color="#6EB54C"></div>


Grüße uniqueck