Hauptmenü

FHEMApp4 - Beta Version

Begonnen von jemu75, 25 Februar 2024, 19:19:13

Vorheriges Thema - Nächstes Thema

juemuc

Hallo Jörg,

unter FTUI3 gibt es ein "pipe" "part". Damit kann man einen String splitten. Bsp.: desired-temp=20 C (measured), dann ergibt "desired-temp | part (0)" "20" und "desired-temp | part (2)" ergibt "(measured)".
Weitere Infos unter FTUI3

Das mit expandable ist ein guter Tipp. Werde ich direkt 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).

juemuc

Hallo Jens,

ich habe bei meiner Tür-/Fenstervorlage bereits expandable auf "::true:true" stehen. Damit werden alle Ebenen angezeigt, bei denen Show zutrifft. Wenn nun aber nachträglich ein Fenster geöffnet wird und somit der Wert für Show zutrifft, wird expandable nicht mehr berücksichtigt. Ich hoffe, ich habe es vernünftig erklären können :)

{
"name": "Fenster/Türen",
"author": "juemuc",
"date": "07.03.2024",
"panel": {
"navigation": [
"FTS-a-room::Zimmer->%s"
],
"expandable": [
"::true:true"
]
},
"status": {
"bar": [
"FTS-count:^0$:100:success",
"FTS-count::100:error"
],
"title": [
"FTS-a-alias::%s"
]
},
"main": [
{
"level": {
"left1": "info",
"right1": "info"
},
"left1": {
"text": [
"FTS-windows:alles zu:Fenster\\: %s:text-success text-h4",
"FTS-windows::offene Fenster:text-error text-h4"
]
},
"right1": {
"text": [
"FTS-doors:alles zu:Türen\\: %s:text-success text-h4",
"FTS-doors::offene Türen:text-error text-h4"
]
}
},
{
"level": {
"show": [
"FE1-state:^(?!closed):true",
"FE1-state:closed:false"
],
"left1": "info"
},
"left1": {
"text": [
"FE1-a-alias::%s ist offen:text-error text-h4"
]
}
},
{
"level": {
"show": [
"FE2-state:^(?!closed):true",
"FE2-state:closed:false"
],
"left1": "info"
},
"left1": {
"text": [
"FE2-a-alias::%s ist offen:text-error text-h4"
]
}
},
{
"level": {
"show": [
"FE3-state:^(?!closed):true",
"FE3-state:closed:false"
],
"left1": "info"
},
"left1": {
"text": [
"FE3-a-alias::%s ist offen:text-error text-h4"
]
}
},
{
"level": {
"show": [
"FE4-state:^(?!closed):true",
"FE4-state:closed:false"
],
"left1": "info"
},
"left1": {
"text": [
"FE4-a-alias::%s ist offen:text-error text-h4"
]
}
},
{
"level": {
"show": [
"TU1-state:^(?!closed):true",
"TU1-state:closed:false"
],
"left1": "info"
},
"left1": {
"text": [
"TU1-a-alias::%s ist offen:text-error text-h4"
]
}
},
{
"level": {
"show": [
"TU2-state:^(?!closed):true",
"TU2-state:closed:false"
],
"left1": "info"
},
"left1": {
"text": [
"TU2-a-alias::%s ist offen:text-error text-h4"
]
}
}
],
"info": {}
}

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).

jemu75

Hallo Jürgen,

wird die nachträglich aktivierte Ebene angezeigt, wenn du das Panel einmal zuklappst und danach wieder aufklappst?
Und was passiert, wenn Du expandable mal auf "::false:true" setzt?

Ich schaue mir das morgen auf jeden Fall nochmal an, wenn ich am Rechner bin.

PS.: auf deinem Vorschlag bzgl. chart-serie denke ich auch nochmal rum. :)

Jens

juemuc

Hallo Jens,

ich bin verwirrt  O:-)

Ich habe es gerade noch einmal getestet und jetzt wird die Ebene automatisch eingeblendet. Ich beobachte das ganze noch ein wenig.

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).

jemu75

Hallo Jürgen,

kein Problem. Ich musste die Funktion neu bauen, damit die Ebenen zur Laufzeit angezeigt bzw. ausgeblendet werden. Habe da heute auch echt viel getestet, um sicherzugehen, dass es jetzt wie gewollt funktioniert. Und bei mir hat es einwandfrei geklappt.
Habe trotzdem nochwas übersehen. Aktuell funktioniert das maximizable nicht mehr.  8)
Fehler habe ich aber schon gefunden und werde das mit der v4.0.28-beta beheben.

Grüße
Jens  :)

juemuc

Hallo Jens,

jetzt habe ich noch einmal getestet.

Ausgangspunkt: Alle Fenster zu und eine Tür auf. Wenn ich jetzt FHEMApp aufrufe, wird es korrekt angezeigt (Ebene 1 und die Ebene der offenen Tür). Öffne ich nun ein Fenster, geht die Ebene der Tür zu. Wenn ich manuell aufklappe, ist alles da (Ebene 1 und die Ebene für die offene Tür und die Ebene für das offene Fenster). Schließe ich nun das Fenster, werden alle Ebenen bis auf Ebene 1 wieder geschlossen.

Ich hoffe, Du kannst es reproduzieren.

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).

jemu75

Hallo Jürgen,

du hast Recht. Ich konnte das jetzt auch reproduzieren.  ;D  Die Ebenen wurden bei jeder Änderung auf- bzw. zugeklappt.
Schau mal bitte, ob das mit der v4.0.28-beta jetzt wie gewünscht klappt.

Grüße
Jens :)

juemuc

Hallo Jens,

mit der .29b funktioniert es super. Vielen Dank.

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).

juemuc

Hallo Benni und Jens,

aktuell muss man ja für jedes Device das Update durchführen. Kann man dies nicht "zentralisieren"?

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).

jemu75

Hallo Jürgen,

das Appverzeichnis kannst du, unabhängig von den FHEMApp Devices immer gleich definieren. Damit sollte es ausreichen, wenn du das Update in einem der FHEMApp Devices ausführst.

Grüße
Jens

Benni

#205
Zitat von: jemu75 am 17 März 2024, 16:03:53das Appverzeichnis kannst du, unabhängig von den FHEMApp Devices immer gleich definieren. Damit sollte es ausreichen, wenn du das Update in einem der FHEMApp Devices ausführst.

Das funktioniert grundsätzlich!

Allerdings bekommen die anderen FHEMAPP-Instanzen erst mal nicht mit, dass ein Update durchgeführt wurde, bis dort wenigstens noch checkVersions das nächste mal aufgerufen wird.

Ich werde in einer der nächsten Versionen aber auch ein (optionales) AutoUpdate einbauen, ich weiß nur noch nicht so ganz genau, wie ich das umsetzen will. Damit könnten sich alle Instanzen auch selbst aktuell halten.

Aber eigentlich ist das gar nicht notwendig! Es macht keinen Sinn, mehrere gleiche FHEMApp-Installation auf einem FHEM-Server zu haben.
Denn: Ich kann jede vorhandene FHEMApp-Installation, mit jeder beliebigen FHEMAPP-Device-Konfiguration aufrufen.

Beispiel:
Ich habe 3 FHEMApp-Konfigurationen und dafür ein meinem FHEM 3 verschiedene FHEMApp-Devices (für jede Konfig eines!)

Das erste verwaltet die FHEMApp-Installation auf dem FHEM-Server und beinhaltet außerdem noch meine "God-Mode"-Konfig  8)
Das Device heißt faMain und ist definiert mit FHEMApp-Verzeichnis.


define faMain FHEMAPP fhemappMain
Die anderen beiden sind mit unterschiedlichen Konfigurationen und z.B. für Partner und Kinder jeweils unterschiedlich definiert, aber OHNE FHEMApp-Verzeichnis:

define faPartner FHEMAPP none
define faKinder FHEMAPP none


Alle Konfigs können nun über den Link der Main-Installation aufgerufen werden:

http://<myHOST>:<myPORT>/fhem/fhemappMain/index.html#/faMain

http://<myHOST>:<myPORT>/fhem/fhemappMain/index.html#/faPartner
http://<myHOST>:<myPORT>/fhem/fhemappMain/index.html#/faKinder

Damit finden Updates nur noch über faMain statt.

(Ich habe mir dazu eben notiert, dass man in dem Fall ggf. noch den Link in den INERNALS per Attribut festlegen können sollte, so dass auch hier ein Sprung aus FHEM heraus auf die passende FHEMApp-Installation möglich ist ... mal sehen, wie ich das umsetze)

gb#

Sommerfeld

Hallo Jens,
wenn ich einen info-Text 3 anlege, wird der Text in der Zeile 2 der FHEMAPP angezeigt.
Mache ich hier etwas verkehrt?
{
"name": "energie",
"author": "Armin",
"date": "09.03.2024",
"panel": {
"navigation": [
"::energie"
]
},
"status": {
"title": [
"a-alias::%s"
],
"imageUrl": [
"::https\\://picsum.photos/1920/1080?random"
]
},
"main": [
{
"level": {
"mid": "info"
},
"mid": {
"text2": [
"tagesverbrauch::Derzeitiger Gesamttagesverbrauch\\: %n(1) kWh:text-right text-h7 text-red"
],
"text": [
"power::Aktuelle Leistung\\: %n(0) Watt:text-h7 text-right text-yellow"
],
"text3": [
"tagesnetzeinspeisung::Tagesnetzeinspeisung\\: %n(1) kWh:text-right text-h7 text-gold"
]
}
}
],
"info": {
"mid1": [
"power-ts::%d()"
]
}
}

Viele Grüße
Armin

jemu75

Hallo Armin,

in info stehen bis zu 3 Textfelder zur Verfügung. Dabei sind die beiden Elemente text2 und text3 nebeneinander und unter dem Element text angeordnet. Zudem kann zwischen den beiden "Textzeilen" ein Element icon oder ein Element status eingefügt werden.
Damit sollte es, so wie du es beschrieben hast, passen. Falls Du noch Fragen hast, schicke gern mal ein Bild dazu.

Beste Grüße
Jens  :)

Sommerfeld

Hallo Jens,
danke für deine Info. Ich hatte gedacht, dass man auch eine 3.Zeile in
der App anzeigen kann.

attach id=177213]Bild.jpeg[/attach]

Viele Grüße
Armin

marboj

Hallo Jens,

hast Du schon eine Idee bzgl. der Charts in den Thermostat-Devices?

Gruß
Marco
meine FHEM-Konfiguration: Raspberry Pi4, BT-Dongle, CUL868, CeeBee II