Hauptmenü

FHEMApp4 - Beta Version

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

Vorheriges Thema - Nächstes Thema

jemu75

Zitat von: Sommerfeld am 17 März 2024, 22:17:29Hallo 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

Hallo Armin,

wie das geht, würde mich auch interessieren.  ;D

Grüße
Jens

Benni

#211
Hallo zusammen,

ich werde in kürze eine neu Version des FHEMAPP-Moduls (Version 1.1.0) veröffentlichen.

Folgende Änderungen, bzw. Neuerungen sind in dieser Version enthalten:

  • Die Config-Files werden von .fhemapp in .fhemapp.json umbenannt.
    Dies hat vor allem für die Bearbeitung in einem Editor Relevanz, da so der Inhalt zwecks Syntax-Highlighting als JSON-Format gekennzeichnet wird.
    Das Umbenennen selbst wird im Hintergrund automatisch durchgeführt, sobald eine Config im alten Dateinamensformat eingelesen wird, wird sie anschließend direkt mit neuem Namen wieder gespeichert und die alte Datei dann gelöscht.
  • Config-Files können in der "Edit-Files" Liste in FHEM sichtbar gemacht werden. Dazu gibt es eine neues Attribut "exposeConfigFile". Ist dieses Attribut gesetzt, wird die Config des FHEMAPP-Devices in "Edit Files" angezeigt. Wird das Attribut gelöscht ist die Datei dort nicht mehr aufgelistet. Diese Einstellung ist je FHEMAPP-Device separat vorzunehmen.
    Ein direktes bearbeiten der Config in FHEM wird aber dennoch ausdrücklich nicht empfohlen. Die Funktion ist v.a. für Backup-Zwecke gedacht oder für "Notfälle", wo die Config in FHEMApp selbst nicht mehr bearbeitet werden kann.
  • Verschiedene Set-Kommandos, die nur bei FHEMAPP-Devices mit lokaler FHEMApp-Installationsverwaltung sinn machen, sind dann auch nur noch dort verfügbar. (Bspw. checkVersions und update). Ebenso wird bei einem FHEMAPP-Device ohne FHEMApp-Verwaltung auch keine zyklische Versionsabfrage mehr gestartet
  • Es gibt ein neues Set-Kommando "getConfig", das die, aktuell im Speicher vorhandene Config im Browser-Fenster, ohne umschließenden OK-Dialog ausgibt.
  • Es gibt außerdem ein neues Attribut "linkPath". Die Angabe hier ist analog der Verzeichisangabe im DEF bei FHEMAPP-Instanzen mit lokaler FHEMAPP-Installationsverwaltung, um auch dort einen Link in den INTERNALS generieren zu können, über den bequem aus dem FHEMAPP-Device auf das gewünschte UI abgesprungen werden kann.
  • Bei der Versionsprüfung (checkVersions) wird nun ein Reading "update_available", mit Event gesetzt (=1), sofern ein FHEMApp-Update verfügbar ist. Das Reading wird nach erfolgreichem Update auch wieder auf 0 gesetzt. Somit kann jetzt, in Verbindung mit den zyklischen checkVersions und einem Notify oder DOIF auf diesen Event, eine Auto-Update-Funktion umgesetzt werden.

HINWEIS: Wir befinden uns immer noch in der Beta-Phase, von daher wird ein Backup (FHEM inkl. FHEMApp-Configs) vor Update empfohlen, zumal nach diesem Update explizit FHEMApp-Config-Dateien automatisch neu geschrieben und alte gelöscht werden.
(Backup sollte aber eh immer gemacht werden ;) )

Ich plane das Update noch heute einzuchecken, so dass es ab morgen im FHEM-Update enthalten sein sollte. Wichtig ist auch, dass nach dem Update ein shutdown restart von FHEM durchgeführt wird (sollte eh immer gemahcht werden ;) )

gb#

Update: Modul erfolgreich eingecheckt!

marboj

Hallo zusammen,

kann sich jemand erklären, warum im Hauptbereich, nachdem ich rechts einen 2. Button eingefügt habe, der komplette Hauptbereich nicht mehr angezeigt wird?

{
"name": "Nuki Smart Lock",
"author": "mboj",
"date": "2024-03-11",
"panel": {
"navigation": [
"a-room::rooms->%s",
"a-group::groups->%s"
],
"sortby": [
"a-room::%s"
]
},
"status": {
"bar": [
"state:unlocked:100:red",
"::0:on"
],
"title": [
"a-alias::%s"
],
"imageUrl": [
"::https\\://picsum.photos/1920/1080?random"
]
},
"main": [
{
"level": {
"left1": "btn",
"mid": "info",
"right1": "btn",
"right2": "btn"



},
"left1": {
"btn": [
"mdi-lock-outline"
],
"click": [
"state::set switch lock"
],
"divider": [
"true"
]
},
"mid": {
"text": [
"state:unlocked:aufgeschlossen",
"state:locked:verschlossen",
"state::%s"
],
"size": [
"7"
],
"divider": [
"true"
]
},
"right2": {
"btn": [
"mdi-lock-open-outline"
],
"click": [
"state::set switch unlock"
],
"divider": [
"::true"
],
"right1": {
"btn": [
"mdi-door-open"
],
"click": [
"state::set switch unlatch"
]
}


}
}
],
"info": {
"left1": [
"state:unlocked::mdi-door-open",
"state:locked::mdi-door-closed"
],
"right1": [
"batteryPercent:75:%s:mdi-battery:success",
"batteryPercent:40:%s:mdi-battery-50:success",
"batteryPercent:15:%s:mdi-battery-30:warning",
"battery::%s:mdi-battery-outline:error"
]
}
}

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

jemu75

Hallo Marco,

du hattest "right1" innerhalb von "right2" verschachtelt. Wenn du in den Einstellung mal vom raw-mode in den UI-mode umschaltest, siehst du auch, dass mit der Definition was nicht stimmt. Ich empfehle (zumindest das Grundgerüst) im UI-mode zu erstellen und danach kann man das im raw-mode bearbeiten.

Anbei das korrigierte Template:
{
"name": "Nuki Smart Lock",
"author": "mboj",
"date": "2024-03-11",
"panel": {
"navigation": [
"a-room::rooms->%s",
"a-group::groups->%s"
],
"sortby": [
"a-room::%s"
]
},
"status": {
"bar": [
"state:unlocked:100:red",
"::0:on"
],
"title": [
"a-alias::%s"
],
"imageUrl": [
"::https\\://picsum.photos/1920/1080?random"
]
},
"main": [
{
"level": {
"left1": "btn",
"mid": "info",
"right1": "btn",
"right2": "btn"
},
"left1": {
"btn": [
"mdi-lock-outline"
],
"click": [
"state::set switch lock"
],
"divider": [
"true"
]
},
"mid": {
"text": [
"state:unlocked:aufgeschlossen",
"state:locked:verschlossen",
"state::%s"
],
"size": [
"7"
],
"divider": [
"true"
]
},
"right2": {
"btn": [
"mdi-lock-open-outline"
],
"click": [
"state::set switch unlock"
],
"divider": [
"::true"
]
},
"right1": {
"btn": [
"mdi-door-open"
],
"click": [
"state::set switch unlatch"
]
}
}
],
"info": {
"left1": [
"state:unlocked::mdi-door-open",
"state:locked::mdi-door-closed"
],
"right1": [
"batteryPercent:75:%s:mdi-battery:success",
"batteryPercent:40:%s:mdi-battery-50:success",
"batteryPercent:15:%s:mdi-battery-30:warning",
"battery::%s:mdi-battery-outline:error"
]
}
}

marboj

Hallo Jens,

wie genau muss eine Verlinkung auf ein Gerät aussehen?

Folgender Link geht ins Leere:       

"click": [
"::devices->Gardena Sileno:route"
]

Werde aus der Doku nicht schlau.

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

jemu75

Hallo Marco,

du kannst mit dem Parameter route zu bestimmten Punkten aus deinem Navigationsmenü "springen".
Dafür kannst du wie folgt vorgehen.
1. Öffnest du in deinem Navigationsmenü den gewünschten Menüpunkt.
2. kopierst du aus deiner URL den Teil, der nach .../devices/ folgt.
3. fügst du diesen Teil in deine Definition ein.
Im folgenden Beispiel wäre das z.B. groups->Heizung

http://fhem:8083/fhem/fhemapp4/index.html#/myapp/devices/groups->Heizung

Lass mich bitte wissen, ob du damit weiterkommst. Und ich mache mir nochmal Gedanken, wie ich die Doku hier etwas besser mache.  :)

Grüße
Jens :)

marboj

Hi Jens,

so komme ich damit klar. Habe nicht verstanden, dass Grundlage für eine Verlinkung eine "Gruppe" in der Navigation sein muss. Wollte auf ein einzelnes Panel verlinken.

Das geht aber scheinbar nicht.

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

jemu75

Hallo Marco,

ja, das ist korrekt. Aktuell kann man nicht auf ein einzelnes Panel verlinken. Falls das generell gewünscht ist, kann ich das als Feature aber gern mit aufnehmen.

Was meinen die anderen Tester dazu?

Grüße
Jens  :)

juemuc

#218
Hallo Benni,

hast Du eine Idee, warum (bei mir) die Umlaute nicht korrekt dargestellt werden?
Save config
Tablet-UI3
Bad
Büro
Esszimmer
Flur
Küche
Schlafzimmer
Wohnzimmer
Wetter/Zeit
AVM
Alexa
Backup
Beta
HUEDevice
Hilferufe
Homematic
IP Kamera
Kammer
MieleAtHome
Parameter
SIP
Schaltzentrale
Sonos
Statuszentrale
Systemdaten
TTS
icoEverything Everything
Logfile
Commandref
Edit files
Event monitor
Backup
Stop Shutdown
HUE reconnect
{"header":{"showTime":true,"showDate":true,"showSettings":true,"showReloadPage":true,"showDarkMode":true,"commands":[{"name":"Backup","title":"FHEM Backup","icon":"mdi-database-arrow-down","cmd":"backup"}]},"navigation":[{"name":"Heizung","title":"Heizung","icon":null,"divider":false,"groupAsChips":false,"sort":true,"group":[{"name":"B�ro","title":"B�ro","icon":null,"divider":null,"groupAsChips":null,"sort":false,"group":[]},

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

marboj

Hintergrund meiner Frage nach der direkten Verlinkung auf Devices ist, dass ich für meine Gardena-Geräte eine Übersicht gebastelt habe und durch das Anklicken zum Panel des Gerätes gelange, in dem noch mehr Infos enthalten sind und die Möglichkeit der Steuerung der Geräte...

Du darfst diesen Dateianhang nicht ansehen.

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

Benni

Zitat von: juemuc am 19 März 2024, 22:42:47hast Du eine Idee, warum (bei mir) die Umlaute nicht korrekt dargestellt werden?

Hallo Jürgen,

ich habe zwar keine Ahnung, warum du meinen kompletten Post zitiert hast, aber gut!
Dafür fehlen wichtige Infos, nämlich was für eine Ausgabe zeigt die fehlerhaften Umlaute?

Wenn ich es richtig verstehe, ist das was du an Info in Code-Tags mitgibst, das was im Browser zu sehen ist, wenn man set getConfig ausführt? Korrekt? Welcher Browser? Welches System?

Ein schneller Test hat ergeben, dass das bei mir (im Chrome) genauso aussieht .... warum muss ich mir anschauen. Ist mal wieder so ein Unicode-"Problem" (Browser, FHEM-interne Codierung, File-Codierung, Systemeinstellung, Codierung in FHEMApp, ...)

Solange in FHEMApp alles korrekt dargestellt wird ist es tatsächlich erst mal nur ein Darstellungsproblem!

Ich schaue mir das aber auf jeden Fall an.

gb#

juemuc

Hallo Benni,

keine Ahnung warum ich das Vollzitat gewählt hatte  O:-) . Habe es gelöscht.

Das Problem mit der Anzeige tritt ei Firefox, Chrome und den Betriebssystemen PI-OS, Ubuntu und Debian bzw. W11 auf.

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 Benni,

ich habe mir mal Gedanken gemacht, wie man die verschiedenen devicekeys in Templates und Panels handeln kann. Wie von dir vorgeschlagen, habe ich im Template ein neues Element deviceskeys eingefügt. Und in dem Zusammenhang habe ich eine weitere Idee umgesetzt, die die Erstellung von Templates im UI-Mode erleichtert. Ich habe einen Assistenten entwickelt, der bei der Erstellung der Definitionen unterstützt. Im Fall der devicekeys liefert der Assistent im Panel dann die keys, die im Template definiert wurden und die verfügbaren FHEM Devices direkt aus FHEM.
Ich muss das ganze noch etwas feinschleifen, bevor ich das in das nächste Release packe. Vorab aber schon mal zwei Screenshots, die einen ersten Eindruck von der neuen Funktion verschaffen.

Grüße
Jens :)

Benni

Hallo Jens,

ja cool!
Das macht die Verwendung der Templates deutlich einfacher! Ich vergesse ja mitunter selbst, welche Keys ich in meinen Templates vorgesehen habe, bzw. Wie deren genaue Bezeichnung ist.

Das mit der device-Auswahl aus fhem ist auch eine sehr schicke Sache! Das braucht aber, wenn ich so an meine installation denke, auf jeden Fall noch eine Filtermöglichkeit auf Namen und evtl. Device TYPE ... aber du sagtest ja etwas von "... Feinschliff" ;)

gb#

binford6000

ZitatZum weiteren Verlauf der Beta-Testphase hätte ich folgenden Vorschlag. Ich würde diese bis zum Ende des Monats abschließen und die Version 4 dann Anfang April offiziell freigeben. Die Verbesserungswünsche würde ich dann Step-by-Step nach dem offizellen Launch umsetzen. Lasst mich bitte mal wissen wie ihr dazu denkt und ob es evtl. noch Optimierungspunkte gibt, die auf jeden Fall vor dem offizellen Launch umgesetzt werden sollten.
Hallo Jens,
das ist ein guter Vorschlag. Ich habe mittlerweile 99% auf FHEMApp4 umgebaut und kann damit sehr gut arbeiten.
Anbei der direkte Vergleich von V3 zu V4 (siehe Screenshots):
  • V4 sieht auf jeden Fall moderner aus und bietet im Detail mehr Möglichkeiten
  • zB. SONOS mit Coverart innerhalb der Steuerelemente, 
  • Oder Niederschlag + Tankstellen mit einfacherer Gestaltung und Kombi aus Icon+Text
  • Auch der vorhandene Platz wird besser ausgenutzt als V3.
  • uvm...

Also RIP V3  :'(  und auf noch viele weitere Features in V4  :D  

VG Sebastian