Hauptmenü

FHEM App - Manage your Home

Begonnen von Gisbert, 12 März 2021, 15:05:20

Vorheriges Thema - Nächstes Thema

jemu75

So, ich habe jetzt auch das Template Chart dokumentiert. Hier könnt ihr direkt mal reinschauen.  :)

Probiert gern mal mit den Charts rum. Hier bin ich mal auf die Performance gespannt. Ich habe das Template mal etwas "gestresst" und Messdaten von Temperatursensoren über einen Zeitraum von 4 Jahren angezeigt. Das Laden dauert dann 5-6 Sekunden. Aber ist alles in allem sehr akzeptabel für meine Begriffe.  ;)

Gebt gern auch mal Feedback zum Template Panel, das ich gestern in die Doku eingestellt habe.

jemu75

Zitat von: Jamo am 23 März 2021, 00:33:30
1) Darf ich Dir da mal ein Filmchen schicken? Evtl ein Java Settings, AdGuard, Cookie Settings, DNS Problem?
2) Immer wenn ich meine Custom templates aendere, wird die Aenderung nicht sofort übernommen. Z.B. habe ich gerade im template: "text": ["Vol::Volume"], auf "text": ["Vol::Volamt"], geaendert. Da kann ich die Seite so oft reloaden wie ich will, der neue Text erscheint erst nach einem 'clear browsing data' und dann einem anschliessendem refresh der Webseite. Auch Java Settings, AdGuard, Cookie Settings?
Ja, schicke mal bitte einen Film. Ich vermute auch, dass es an den Settings liegt.  8)

tomspatz

Moin
als erstes VIELEN DANK an Jens für dieses Frontend.  :-*

so ich stelle mich trotzdem etwas dumm an  :-[

1. Verstehe ich es richtig das das parallel zu dem FHEMWEB läuf ?
2. Dann kann ich es ja zu einer "bestimmten" FHEMWEB Instanz konfigurieren ?
3. Der Aufruf dieses Frontends erfolgt dann nicht unter http://ipadresse:8083
3. Gibt es noch andere Möglichkeiten die Dateien zu kopieren (Browser-> Link -> herunterladen -> entpacken -> WinSCP)

Jamo

1. Verstehe ich es richtig das das parallel zu dem FHEMWEB läuf ?
-- JA
2. Dann kann ich es ja zu einer "bestimmten" FHEMWEB Instanz konfigurieren ?
-- Verstehe nicht was Du meinst, die configuration erfolgt im fhem/fhemapp/cfg/config.json, die Devices werden in fhem über attribute configuriert.
  Es ist dann einfach ein zusätzliches Frontend, was über http://ipadresse:8083/fhem/fhemapp/index.html#/ aufgerufen wird.
3. Der Aufruf dieses Frontends erfolgt dann nicht unter http://ipadresse:8083
-- Ja, der Aufruf erfolgt dann nicht unter http://ipadresse:8083, sondern unter http://ipadresse:8083/fhem/fhemapp/index.html#/
    Beides läuft parallel.
3. Gibt es noch andere Möglichkeiten die Dateien zu kopieren (Browser-> Link -> herunterladen -> entpacken -> WinSCP)
-- Ich mache es auch immer so, wie Du beschrieben hast. Ich habe es mal mit wget probiert, aber da war ich nicht erfolgreich.
    Die herunterzuladenen Dateien sind übrigens nur 5 MB gross, echt schlank muss ich sagen. Ich bin begeistert!
Bullseye auf iNUC, Homematic + HMIP(UART/HMUSB), Debmatic, HUEBridge, Zigbee/Conbee III, FB7690, Alexa (fhem-lazy), Livetracking, LaCrosse JeeLink, LoRaWan / TTN / Chirpstack, Sonos, ESPresence

tomspatz

OK ich habe es zumindest "drin"
Einfacher geht es mE mit git clone und dann in das /opt/fhem/www/ Verzeichniss kopieren.

So ich kann die Seite auch aufrufen mit:
http://192.168.1.220:8083/fhem/fhemapp/index.html
Es kommt allerdings NUR eine Leere Seite mit Home / Dashboard / System zum Vorschein.

Zwei Devices habe ich "eigentlich" konfiguriert.
defmod BalkontuerWohnzimmer_69 ZWave c9cc092a 69
attr BalkontuerWohnzimmer_69 IODev ZWDongle_0
attr BalkontuerWohnzimmer_69 alias Balkontür WZ
attr BalkontuerWohnzimmer_69 appOptions { "template": "contact" }
attr BalkontuerWohnzimmer_69 classes SENSOR_BINARY SENSOR_ALARM MULTI_CHANNEL ASSOCIATION MANUFACTURER_SPECIFIC CONFIGURATION VERSION BATTERY CRC_16_ENCAP WAKE_UP FIRMWARE_UPDATE_MD MARK SCENE_ACTIVATION
attr BalkontuerWohnzimmer_69 devStateIcon open:fts_door_open@red .*:fts_door
attr BalkontuerWohnzimmer_69 group Fenster und Türen
attr BalkontuerWohnzimmer_69 icon fts_door
attr BalkontuerWohnzimmer_69 room System,Wohnzimmer,ZWave
attr BalkontuerWohnzimmer_69 vclasses ASSOCIATION:2 BATTERY:1 CONFIGURATION:1 CRC_16_ENCAP:1 FIRMWARE_UPDATE_MD:1 MANUFACTURER_SPECIFIC:1 MULTI_CHANNEL:3 SCENE_ACTIVATION:1 SENSOR_ALARM:1 SENSOR_BINARY:1 VERSION:1 WAKE_UP:1

defmod DimmerWohnzimmer ZWave c9cc092a 28
attr DimmerWohnzimmer userattr lightSceneParamsToSave lightSceneRestoreOnlyIfChanged:1,0
attr DimmerWohnzimmer IODev ZWDongle_0
attr DimmerWohnzimmer alias Licht WZ
attr DimmerWohnzimmer appOptions { "template": "dimmer" }
attr DimmerWohnzimmer classes ZWAVEPLUS_INFO BASIC VERSION MANUFACTURER_SPECIFIC SWITCH_MULTILEVEL DEVICE_RESET_LOCALLY ASSOCIATION_GRP_INFO ASSOCIATION POWERLEVEL SECURITY FIRMWARE_UPDATE_MD CRC_16_ENCAP CONFIGURATION SENSOR_MULTILEVEL METER MULTI_CHANNEL_ASSOCIATION MULTI_CHANNEL PROTECTION ALARM SWITCH_ALL APPLICATION_STATUS MARK SCENE_ACTIVATION
attr DimmerWohnzimmer devStateIcon .*\b\d{1}(?!\d):dim06%@orange:off .*1\d.*:dim12%@orange:off .*2\d.*:dim25%@orange:off .*3\d.*:dim37%@orange:off .*4\d.*:dim43%@orange:off .*5\d.*:dim50%@orange:off .*6\d.*:dim68%@orange:off .*7\d.*:dim75%@orange:off .*8\d.*:dim87%@orange:off .*9\d.*:dim100%@orange:off
attr DimmerWohnzimmer group Licht
attr DimmerWohnzimmer icon light_pendant_light
attr DimmerWohnzimmer neighborListPos 428.1661231962581,1421.7042057683702
attr DimmerWohnzimmer room System,Wohnzimmer,ZWave
attr DimmerWohnzimmer userReadings Firmware Stand 3.5 (14.Januar 2019)
attr DimmerWohnzimmer webCmd dim


Auch in der FHEMWEB habe ich CORS und longpoll konfiguriert.
Wo kann ich noch ansetzen ?

Benni

Zitat von: tomspatz am 23 März 2021, 18:56:27
OK ich habe es zumindest "drin"
Einfacher geht es mE mit git clone und dann in das /opt/fhem/www/ Verzeichniss kopieren.

Du kannst dir das per git clone geholte fhemApp/www/fhemapp Verzeichnis auch gleich direkt nach /opt/fhem/www/fhemapp linken.

Musst halt auf deine config aufpassen ;)

Gruß Benni

tomspatz

Moin Benni
ZitatDu kannst dir das per git clone geholte fhemApp/www/fhemapp Verzeichnis auch gleich direkt nach /opt/fhem/www/fhemapp linken.
hmm ich habe als pi angemeldet
git clone https://github.com/jemu75/fhemApp.git
ausgeführt, das kopiert aber das gesamte Verzeichnis ins pi home. Wie geht denn das anders ?

Wobei das mein eigentliches Problem nicht löst. :(

jemu75

Zitat von: tomspatz am 23 März 2021, 18:56:27
OK ich habe es zumindest "drin"
Einfacher geht es mE mit git clone und dann in das /opt/fhem/www/ Verzeichniss kopieren.

So ich kann die Seite auch aufrufen mit:
http://192.168.1.220:8083/fhem/fhemapp/index.html
Es kommt allerdings NUR eine Leere Seite mit Home / Dashboard / System zum Vorschein.

Zwei Devices habe ich "eigentlich" konfiguriert.
defmod BalkontuerWohnzimmer_69 ZWave c9cc092a 69
attr BalkontuerWohnzimmer_69 IODev ZWDongle_0
attr BalkontuerWohnzimmer_69 alias Balkontür WZ
attr BalkontuerWohnzimmer_69 appOptions { "template": "contact" }
attr BalkontuerWohnzimmer_69 classes SENSOR_BINARY SENSOR_ALARM MULTI_CHANNEL ASSOCIATION MANUFACTURER_SPECIFIC CONFIGURATION VERSION BATTERY CRC_16_ENCAP WAKE_UP FIRMWARE_UPDATE_MD MARK SCENE_ACTIVATION
attr BalkontuerWohnzimmer_69 devStateIcon open:fts_door_open@red .*:fts_door
attr BalkontuerWohnzimmer_69 group Fenster und Türen
attr BalkontuerWohnzimmer_69 icon fts_door
attr BalkontuerWohnzimmer_69 room System,Wohnzimmer,ZWave
attr BalkontuerWohnzimmer_69 vclasses ASSOCIATION:2 BATTERY:1 CONFIGURATION:1 CRC_16_ENCAP:1 FIRMWARE_UPDATE_MD:1 MANUFACTURER_SPECIFIC:1 MULTI_CHANNEL:3 SCENE_ACTIVATION:1 SENSOR_ALARM:1 SENSOR_BINARY:1 VERSION:1 WAKE_UP:1

defmod DimmerWohnzimmer ZWave c9cc092a 28
attr DimmerWohnzimmer userattr lightSceneParamsToSave lightSceneRestoreOnlyIfChanged:1,0
attr DimmerWohnzimmer IODev ZWDongle_0
attr DimmerWohnzimmer alias Licht WZ
attr DimmerWohnzimmer appOptions { "template": "dimmer" }
attr DimmerWohnzimmer classes ZWAVEPLUS_INFO BASIC VERSION MANUFACTURER_SPECIFIC SWITCH_MULTILEVEL DEVICE_RESET_LOCALLY ASSOCIATION_GRP_INFO ASSOCIATION POWERLEVEL SECURITY FIRMWARE_UPDATE_MD CRC_16_ENCAP CONFIGURATION SENSOR_MULTILEVEL METER MULTI_CHANNEL_ASSOCIATION MULTI_CHANNEL PROTECTION ALARM SWITCH_ALL APPLICATION_STATUS MARK SCENE_ACTIVATION
attr DimmerWohnzimmer devStateIcon .*\b\d{1}(?!\d):dim06%@orange:off .*1\d.*:dim12%@orange:off .*2\d.*:dim25%@orange:off .*3\d.*:dim37%@orange:off .*4\d.*:dim43%@orange:off .*5\d.*:dim50%@orange:off .*6\d.*:dim68%@orange:off .*7\d.*:dim75%@orange:off .*8\d.*:dim87%@orange:off .*9\d.*:dim100%@orange:off
attr DimmerWohnzimmer group Licht
attr DimmerWohnzimmer icon light_pendant_light
attr DimmerWohnzimmer neighborListPos 428.1661231962581,1421.7042057683702
attr DimmerWohnzimmer room System,Wohnzimmer,ZWave
attr DimmerWohnzimmer userReadings Firmware Stand 3.5 (14.Januar 2019)
attr DimmerWohnzimmer webCmd dim


Auch in der FHEMWEB habe ich CORS und longpoll konfiguriert.
Wo kann ich noch ansetzen ?

Deine Konfiguration in den Devices sieht gut aus. Das passt. :) Schau mal bitte ob der Browser in der Console Fehlermeldungen generiert. Weitere Frage: Hast du in der Datei config.json Verbindungseinstellungen verändert?

Ps.: das Thema mit einfachen Updates habe ich schon auf dem  Schirm. Ich lass mir zeitnah was einfallen, wie bei neuen Releases einfache Updates erfolgen können.

Beste Grüße Jens :)

jemu75

neues Release v3.2.0
neues Feature
selbst erstellte Templates können jetzt in separaten Dateien im Verzeichnis .../fhemapp/cfg/ abgelegt werden. Siehe Dokumentation unter
Es wird empfohlen, selbst erstellte Templates aus der Datei config.json in separate Dateien auszulagern, da ich das in Zukunft zurückbauen werde.

ACHTUNG: sichert bitte eure Datei config.json aus dem Ordner ../fhemapp/cfg/ bevor ihr das neue Release auf euren Web-Server kopiert und fügt die danach dort wieder ein. Ansonsten geht eure Grundkonfiguration verloren.

Github der Link: https://github.com/jemu75/fhemApp

jemu75

Zitat von: carlos am 22 März 2021, 23:34:21
Hallo Jens,
Dies finde ich eine gute Vorgehensweise.
Ich habe  ja auch versucht aus deinem Default thermostat template eines für CCU_HM zu machen.
Dies ist durch das Custom template gut machbar
Vorschlag von mir dass man den  device Typ oder das entsprechende modul in irgendeiner Form in das JSON mit aufnimmt zur besserer Differenzierung auch in Hinsicht auf unterschiedliche Readings (controlMode versus contro-Mode oder Activity versus activity oder ValvePosition versus valve_state )
Keine Ahnung wie flexible das mit deiner app machbar ist.

Bitte überdenke auch noch mal den Ansatz die templates in eigene JSON files auszulagern zur besseren Konfiguration.
Nur so meine Gedanken dazu.

Gruß

Carlos

Hallo Carlos,

ich habe den Vorschlag, mit dem eben veröffentlichen Release v3.2 umgesetzt und die Standard-Templates jetzt komplett in separate JSON files ausgelagert.
D.h. es befinden sich jetzt alle Templates im Verzeichnis .../fhemapp/cfg/

Für eine Übergangszeit prüfe ich die Eigenschaft custom in der config.json  noch, damit jeder in Ruhe seine bereits selbst erstellten Templates "auslagern" kann.
In der Dokumentation habe ich das Einstellen eigener Templates in die config.json schon rausgenommen und stattdessen die neue Vorgehensweise beschrieben.

Zu deinem anderen Vorschlag - In den JSON files kannst du neben den Eigenschaften, die FHEMApp benötigt (status, main und info) auch eigene Eigenschaften (für Dokumentationszwecke) einbinden. So kannst du z.B. eine Eigenschaft "description" anlegen und hier reinschreiben, für welche Gerätetypen das jeweilige Template gebaut wurde.

tomspatz

Moin Jens
ZitatDeine Konfiguration in den Devices sieht gut aus. Das passt. :) Schau mal bitte ob der Browser in der Console Fehlermeldungen generiert. Weitere Frage: Hast du in der Datei config.json Verbindungseinstellungen verändert?
Nichts drin geändert
nach den Meldungen im Browser schaue ich morgen.

gute n8

jemu75

Zitat von: tomspatz am 23 März 2021, 22:23:53
Moin JensNichts drin geändert
nach den Meldungen im Browser schaue ich morgen.

gute n8

Kannst du bitte auch mal ein Jsonlist2 von einem der Devices schicken.

Danke Dir  :)

tomspatz

#162
ZitatKannst du bitte auch mal ein Jsonlist2 von einem der Devices schicken.
ujjj was meinst du damit ?

Was mir gerade noch einfällt "oben rechts" sollte doch so ein grüner Punkt sein, der ist grau.

Jamo

#163
Hallo Jens,
ich bin ein Stück weiter, bezüglich http://192.168.1.220:8083/fhem/fhemapp/index.html und http://inuc:8083/fhem/fhemapp/index.html.
Ich hatte festgestellt, das, je nachdem was ich config.json unter "location": gesetzt habe, also entweder "http://inuc" oder http://192.168.1.220, die jeweils andere WebSeite nicht geladen werden kann, bzw wie auch einer meiner Vorredner erwähnt hat, das NUR eine Leere Seite mit Home / Dashboard / System zum Vorschein kommt.

Der Grund hängt irgendwie mit dem csrf token zusammen, der kann im jeweils anderen Fall nicht aus dem Header extrahiert werden.
Sagt Dir das was?

Für "location": "http://192.168.1.220"
Retrieve csrf-Token failed.
{ "error": {}, "request": "http://inuc:8083/fhem?XHR=1" }


bzw andersrum, für "location": "http://inuc":
Retrieve csrf-Token failed.
{ "error": {}, "request": "http://192.168.1.220:8083/fhem?XHR=1" }


Herausgefunden habe ich das, indem ich CORS auf 0 gesetzt habe (ich benutze ja FHEMWEB als Webserver).
Bullseye auf iNUC, Homematic + HMIP(UART/HMUSB), Debmatic, HUEBridge, Zigbee/Conbee III, FB7690, Alexa (fhem-lazy), Livetracking, LaCrosse JeeLink, LoRaWan / TTN / Chirpstack, Sonos, ESPresence

JoWiemann

Zitat von: jemu75 am 23 März 2021, 21:51:53

selbst erstellte Templates können jetzt in separaten Dateien im Verzeichnis .../fhemapp/cfg/ abgelegt werden. Siehe Dokumentation unter

Hm, ich fände es ja immer schön, wenn die Templates über den Editor des FhemWeb erreichbar währen. Dort wäre dann wohl auch ein JSON Beautifier möglich.

Grüße Jörg
Jörg Wiemann

Slave: RPi B+ mit 512 MB, COC (868 MHz), CUL V3 (433.92MHz SlowRF); FHEMduino, Aktuelles FHEM

Master: CubieTruck; Debian; Aktuelles FHEM