Hauptmenü

FTUI version 3

Begonnen von Bunnu, 25 Oktober 2020, 09:25:41

Vorheriges Thema - Nächstes Thema

mr_petz

Danke dir @OdfFhem. Jetzt würde mich noch der refresh dazu interessieren.
Es sollten doch neue Daten kommen wenn ein Event vom DWD_Weblink kommt?
Kann das jemand von Euch bestätigen?

LG mr_petz

mr_petz

#3151
Zitat von: juemuc am 20 Januar 2023, 19:23:22
@OldFhem

das ist ja das Problem. Ich würde gerne einen Wert und kein Gerät übergeben. Als Zwischenlösung filtere ich aktuell einen speziellen Wert eines Gerätes.

Viele Grüße
Jürgen

Hi Jürgen,
@OdfFhem und meine Wenigkeit haben eine neue Komponente gebaut um bei Start von FTUI3 einen Wert, auch mehrere (was auch immer) zu übergeben (siehe Examples).
Vielleicht kannst du es für dein Anliegen benutzen.
Examples:
https://github.com/mr-petz/ftui/blob/addons/www/ftui/examples/local.html
und Link:
https://github.com/mr-petz/ftui/tree/addons/www/ftui/components/local

LG mr_petz

ps. das meiste von mir ist jetzt hier:
https://github.com/mr-petz/ftui/tree/addons
zu finden und ihr könnt es per update ins fhem eingepflegen/aktualisieren...

juemuc

Prima. Ich werde es ebenfalls testen.

Viele Grüße
Jürgen
3x Sonos Play 1, 1x Sonos Arc + Sub, 1 Sonos-One, 1x Sonos Playbar
FB6690 + FB7490 mit 4x Dect 200 und 3 Dect-ULE-Thermostate,  raspberry3B+, HM Funkmodul HM-MOD-RPI-PCB, HM Klingelsensor HM-Sen-DB-PCB, HM (IP) Fensterkontakte und  Amazon Echo Dot,  piVCCU, pi OS (bookworm).

Badflex

Zitat von: mr_petz am 29 Januar 2023, 10:30:26
Danke dir @OdfFhem. Jetzt würde mich noch der refresh dazu interessieren.
Es sollten doch neue Daten kommen wenn ein Event vom DWD_Weblink kommt?
Kann das jemand von Euch bestätigen?

LG mr_petz

Auf jeden Fall holt er sich bei mir mindestens alle 3 Stunden ein Update und ändert dann auch den Weblink.
Raspberry Pi, CUL868(SlowRF), FB 7490, SmartVisu, fast nur HomeMatic wenig FS20, Netatmo

OdfFhem

Zitat von: mr_petz am 29 Januar 2023, 10:30:26
Es sollten doch neue Daten kommen wenn ein Event vom DWD_Weblink kommt?

DWD_Weblink hat keinerlei Reading und erzeugt auch selbst keinerlei Event.
DWD_Weblink_Generator hat zwar ein Reading namens state, aber steht bei mir dauerhaft auf "initialized" und erzeugt selbst kein immer wiederkehrendes Event.
Der Event-Monitor bleibt gähnend leer ...

Momentan wird DWD_Weblink nur erneuert, wenn
... FTUI3 einen vollständigen Refresh anstößt
... oder der Anwender die Seite neu lädt
Ausführung von get forecast, Änderung des forecastStation-Attributes, usw. hat keinerlei direkte Auswirkung ...

Sinnvoll scheint der Wechsel zu reinen DWD-Events:
DWD:fc_time ... Zeitpunkt der Veröffentlichung der Daten durch den Wetterdienst
DWD:fc_state:time ... Zeitpunkt der letzten Aktualisierung durch das DWD-FHEM-Device

Wiki-Anpassung scheint notwendig ... bitte mal testen

mr_petz

@OdfFhem
Kann ich bestätigen...
Es wäre besser auf das DWD Device mit Reading fc_time zugehen.

<ftui-content [content]="DWD:fc_time | getHTML('DWD_Weblink_Generator horizontalForecast')"></ftui-content>

So werden die Daten im content neu geholt, wenn sich fc_time ändert...

LG mr_petz

juemuc

Hallo zusammen,

nachdem ich hier sehr viel Hilfe erhalten habe, möchte ich mich revanchieren und meine Definitionen für meine Wetterseite hier kommunizieren. Ihr könnt die Info auch gerne ins Wiki übernehmen oder eine Beispielseite daraus bauen.

Viele Grüße
Jürgen
3x Sonos Play 1, 1x Sonos Arc + Sub, 1 Sonos-One, 1x Sonos Playbar
FB6690 + FB7490 mit 4x Dect 200 und 3 Dect-ULE-Thermostate,  raspberry3B+, HM Funkmodul HM-MOD-RPI-PCB, HM Klingelsensor HM-Sen-DB-PCB, HM (IP) Fensterkontakte und  Amazon Echo Dot,  piVCCU, pi OS (bookworm).

mr_petz

@juemuc
Wenn du noch einwenig wartest, dann könntest du mein neues Modul für die Anzeige von Wetterwarnungen verwenden...
Es ist in kürze Vorzeigebereit... ;)

LG mr_petz

OdfFhem

Zitat von: mr_petz am 30 Januar 2023, 12:14:48
Es wäre besser auf das DWD Device ... zu gehen.
Wiki aktualisiert ...


Wie sieht es mit Aktualisierung der Darstellung bei readingsGroup aus ?

mr_petz

#3159
Zitat von: OdfFhem am 30 Januar 2023, 22:50:54
Wiki aktualisiert ...

Wie sieht es mit Aktualisierung der Darstellung bei readingsGroup aus ?

Danke fürs aktualisieren...

Bei beinen normalen readingsGroup wird bei mir alles korrekt aktualisiert wenn sich Werte des Device ändern.
Hier sollte man aber alle Devices die in der readingsGroup sind durch ; getrennt auch ins [content] eintragen. Wenn man die readingsGroup einträgt funzt es nicht. Gibt kein Event.
Das wäre auch wieder was fürs wiki:

<ftui-content [content]="CT1;CT2;CT3 | getHTML('CTStatus')"></ftui-content>


LG mr_petz

Edit:
Habe aber beim obigen Test ein seltsames Verhalten bei Erstladen und Wertänderung siehe Anhang. (zuckende Darstellung)
Wenn der Browsertab gewechselt wird und zurück ist es wieder Normal. ???
Es werden auch permanent neue Daten geholt...
@setstate liegt das am mehrfachen angeben der Devices?
Wie gesagt bei Browsertabwechsel ist es wieder normal....
Das zucken konnte ich durch:

this.rawText.includes('<\/')?this.initContent():'';

in zeile 26 beseitigen, aber das dauernde Daten holen nicht...(nur durch Browsertabtoggle) Kommt von initComponents???
Da bleibt dann nur ein userReading für alle Devices in der readingsGroup zu erstellen und darauf gehen bis @setstate vielleicht eine Lösung dafür hat....
Getestet mit FF und Chrome....

juemuc

Zitat von: mr_petz am 29 Januar 2023, 15:31:27
Hi Jürgen,
@OdfFhem und meine Wenigkeit haben eine neue Komponente gebaut um bei Start von FTUI3 einen Wert, auch mehrere (was auch immer) zu übergeben (siehe Examples).
Vielleicht kannst du es für dein Anliegen benutzen.
Examples:
https://github.com/mr-petz/ftui/blob/addons/www/ftui/examples/local.html
und Link:
https://github.com/mr-petz/ftui/tree/addons/www/ftui/components/local

LG mr_petz

ps. das meiste von mir ist jetzt hier:
https://github.com/mr-petz/ftui/tree/addons
zu finden und ihr könnt es per update ins fhem eingepflegen/aktualisieren...

Hi mr_petz,

bei mir funktioniert die Übergabe an eine Content-Datei (noch) nicht. Ich habe folgende Definitionen:
  <ftui-grid-tile row="4" col="8" height="2" width="2">
    <header>FB (Internetcheck)</header>
    <ftui-local value="hide:yes"></ftui-local>
    <ftui-content
          file="./content/IT-Geraet.html" IT-Geraet="FB_Internet_check"
          ON="present" MAYBE="maybe absent" OFF="absent" Icon="it_router" OFF-CL="red">
    </ftui-content>
  </ftui-grid-tile>

Ich möchte hier den Wert "yes" für local:hide übergeben und frage den Wert dann in der Content-Datei wie folgt ab:
<ftui-icon [value]=local:hide
        [hidden]="value | map('yes:true, .*:false')"
        [color]="{{IT-Geraet}} | map('{{ON}}:green, {{MAYBE}}:yellow, {{OFF}}:{{OFF-CL}}')" size="4"
        path="../images/openautomation" [name]="{{IT-Geraet}} | map('.*:{{Icon}}')">
  </ftui-icon>


Leider funktioniert dies nicht. Was mache ich falsch?

Viele Grüße
Jürgen
3x Sonos Play 1, 1x Sonos Arc + Sub, 1 Sonos-One, 1x Sonos Playbar
FB6690 + FB7490 mit 4x Dect 200 und 3 Dect-ULE-Thermostate,  raspberry3B+, HM Funkmodul HM-MOD-RPI-PCB, HM Klingelsensor HM-Sen-DB-PCB, HM (IP) Fensterkontakte und  Amazon Echo Dot,  piVCCU, pi OS (bookworm).

OdfFhem


[hidden]="local:hide | map('yes:true, .*:false')"

value-Attribut bei ftui-icon hat keine Bedeutung.

mr_petz

Hi Jürgen,
1. einen Wert dem content übergeben geht wie du es mit {{IT-Geraet}} gemacht hat.
2. brauchst du bei content nicht das ftui-local um einen Wert/Name zu übergeben
3. hat ftui-icon kein value.

Bei content:

<ftui-icon
        [hidden]="{{value}} | map('yes:true, .*:false')"
        [color]="{{IT-Geraet}} | map('{{ON}}:green, {{MAYBE}}:yellow, {{OFF}}:{{OFF-CL}}')" size="4"
        path="../images/openautomation" [name]="{{IT-Geraet}} | map('.*:{{Icon}}')">
  </ftui-icon>

bei local:

<ftui-local value="hide:yes"></ftui-local>
<ftui-icon
        [hidden]="local:hide | map('yes:true, .*:false')"
        [color]="{{IT-Geraet}} | map('{{ON}}:green, {{MAYBE}}:yellow, {{OFF}}:{{OFF-CL}}')" size="4"
        path="../images/openautomation" [name]="{{IT-Geraet}} | map('.*:{{Icon}}')">
  </ftui-icon>


Was willst du wie Darstellen??

LG mr_petz

juemuc

Es funktioniert leider immer noch nicht. Ich habe 7 Geräte, die ich mit unterschiedlichen Icons darstelle. Bei 4 Geräten möchte ich zusätzlich über einen Button eine Aktion auslösen können. Mit dem Hide-Wert möchte ich nun der Content-Datei mitteilen, ob das Icon oder der Button mit Icon angezeigt werden soll. Aktuell kann ich dafür auch ein Geräte-Attribut nutzen. 
Ich teste hier mit zwei Geräten und nur dem Icon (ein-/ausblenden).
Content-Datei:
<ftui-row [hidden]="{{IT-Geraet}}:TYPE | map('WOL:true, .*:false')">
  <ftui-icon [value]=local:hide
        [hidden]="{{value}} | map('yes:true, .*:false')"
        [color]="{{IT-Geraet}} | map('{{ON}}:green, {{MAYBE}}:yellow, {{OFF}}:{{OFF-CL}}')" size="4"
        path="../images/openautomation" [name]="{{IT-Geraet}} | map('.*:{{Icon}}')">
  </ftui-icon>


Aufruf:
<ftui-grid-tile row="4" col="6" height="2" width="2">
    <header>Fritzbox (Fhemstatus)</header>
    <ftui-local value="hide:yes"></ftui-local>
    <ftui-content
          file="./content/IT-Geraet.html" IT-Geraet="FB"
          ON="connected" MAYBE="" OFF="disconnected" Icon="it_router" OFF-CL="red">
    </ftui-content>
  </ftui-grid-tile>

  <ftui-grid-tile row="4" col="8" height="2" width="2">
    <header>FB (Internetcheck)</header>
    <ftui-local value="hide:no"></ftui-local>
    <ftui-content
          file="./content/IT-Geraet.html" IT-Geraet="FB_Internet_check"
          ON="present" MAYBE="maybe absent" OFF="absent" Icon="it_router" OFF-CL="red">
    </ftui-content>
  </ftui-grid-tile>


Viele Grüße
Jürgen
3x Sonos Play 1, 1x Sonos Arc + Sub, 1 Sonos-One, 1x Sonos Playbar
FB6690 + FB7490 mit 4x Dect 200 und 3 Dect-ULE-Thermostate,  raspberry3B+, HM Funkmodul HM-MOD-RPI-PCB, HM Klingelsensor HM-Sen-DB-PCB, HM (IP) Fensterkontakte und  Amazon Echo Dot,  piVCCU, pi OS (bookworm).

mr_petz

#3164
Wieso ist schon wieder value im icon? Das hat keine Wirkung!


<ftui-row [hidden]="{{IT-Geraet}}:TYPE | map('WOL:true, .*:false')">
  <ftui-icon
        [hidden]="local:hide | map('yes:true, .*:false')"
        [color]="{{IT-Geraet}} | map('{{ON}}:green, {{MAYBE}}:yellow, {{OFF}}:{{OFF-CL}}')" size="4"
        path="../images/openautomation" [name]="{{IT-Geraet}} | map('.*:{{Icon}}')">
  </ftui-icon>


Edit: sorry.. habe mich nicht gut ausgedrückt
ftui-local ist nur für einen initialen wert beim start. Danach hat es keine Bedeutung mehr und ist inaktiv.
Wenn du es irgendwo einmalig setzt, dann kannst du es mit local:XXX in einem binding aufrufen. Dachte die examples sind einleuchtend...

LG