Hauptmenü

FHEM App - Manage your Home

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

Vorheriges Thema - Nächstes Thema

JoWiemann

Ich glaube das ist nicht so einfach zu beantworten. Baue ich mir ein eigenes paralleles FhemWeb für die fhemApp, dann kann Deine App alles übernehmen. Möchte ich aber nur mittels Deiner fhemApp arbeiten, dann brauche ich Unabhängigkeit. Mein Standard FhemWeb habe ich für die Administration optimiert. Für den WAF brauche ich etwas eigenes. Und da würde sich dann Deine fhemApp anbieten. Macht halt auch auf dem iPad einen schlanken Fuß und ist schnell eingerichtet.

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

Benni

Zitat von: jemu75 am 12 März 2021, 22:18:11
Danke für's testen. Ich sehe zu, dass ich das Problem gefixt bekomme - Denn, dann kann man auf die Installation eines separaten Webservers verzichten. :)

Ich versuche bei mir gerade auch die FHEMWEB-Variante ans Laufen zu bekommen.

Ich habe jetzt einfach mal bei allen eingebundenen Dateien in der index.html den führenden slash entfernt, damit findet er die zumindest schon mal alle.

Erhalte aber dennoch keine Anzeige und in der Console weiterhin folgende Warnungen:


Uncaught SyntaxError: Unexpected token '<'
app.3de55f02.js:1 Uncaught SyntaxError: Unexpected token '<'
index.html:1 The resource http://fhem:8081/fhem/fhemapp/js/app.3de55f02.js was preloaded using link preload but not used within a few seconds from the window's load event. Please make sure it has an appropriate `as` value and it is preloaded intentionally.
index.html:1 The resource http://fhem:8081/fhem/fhemapp/js/chunk-vendors.09d38c92.js was preloaded using link preload but not used within a few seconds from the window's load event. Please make sure it has an appropriate `as` value and it is preloaded intentionally.


gb#

jemu75

neues Release v1.3
Feature: In appOptions stehen die Parameter name, group und room zur Verfügung. Ihr könnt diese Parameter alternativ verwenden, falls ihr die FHEM-Attribute alias, group und room in eurer FHEM-Installation anderweitig verwendet.

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

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

schwatter

#18
Morgen,

ich probiere mich gerade an Fhemapp. Der Ordner "fhemapp" ist in "/opt/fhem/www". Die "/" sind entfernt und die Seite lädt, wohl aber nicht komplett. Ich bekomme den Hinweis, das JavaScript aktiviert werden soll.

<!DOCTYPE html><html lang="de"><head><meta charset="utf-8"><meta http-equiv="X-UA-Compatible" content="IE=edge">
<meta name="viewport" content="width=device-width,initial-scale=1,maximum-scale=1,user-scalable=no"><meta name="mobile-web-
app-capable" content="yes"><meta name="apple-mobile-web-app-capable" content="yes"><link rel="icon" href="favicon.png">
<title>fhemapp</title><link rel="stylesheet" href="https://fonts.googleapis.comcss?family=Roboto:100,300,400,500,700,900"><link
rel="stylesheet" href="https://cdn.jsdelivr.net/npm/@mdi/font@latestcss/materialdesignicons.min.css"><link href="css/chunk-
03454508.55c011d2.css" rel="prefetch"><link href="css/chunk-03dea3f3.55c011d2.css" rel="prefetch"><link href="css/chunk-
0458398b.c4749bc4.css" rel="prefetch"><link href="css/chunk-098d33d4.61e1e199.css" rel="prefetch"><link href="css/chunk-
0c535319.55c011d2.css" rel="prefetch"><link href="css/chunk-0cc2145f.55c011d2.css" rel="prefetch"><link href="css/chunk-
130a45b2.611711b5.css" rel="prefetch"><link href="css/chunk-15fa718e.55c011d2.css" rel="prefetch"><link href="css/chunk-
2268dc1a.55c011d2.css" rel="prefetch"><link href="css/chunk-27250ed3.55c011d2.css" rel="prefetch"><link href="css/chunk-
2c05d556.cb4d0868.css" rel="prefetch"><link href="css/chunk-3ddbf9db.55c011d2.css" rel="prefetch"><link href="css/chunk-
58038582.55c011d2.css" rel="prefetch"><link href="css/chunk-6080f988.55c011d2.css" rel="prefetch"><link href="css/chunk-
72b2e77a.55c011d2.css" rel="prefetch"><link href="css/chunk-72c6e8d8.5998f8b1.css" rel="prefetch"><link href="css/chunk-
8161d788.55c011d2.css" rel="prefetch"><link href="css/chunk-98f267aa.55c011d2.css" rel="prefetch"><link href="css/chunk-
a9a9ce50.55c011d2.css" rel="prefetch"><link href="css/chunk-d584b056.4c33e4ab.css" rel="prefetch"><link href="css/chunk-
e998d306.55c011d2.css" rel="prefetch"><link href="css/chunk-f087d6f2.288ff701.css" rel="prefetch"><link href="css/chunk-
f90907bc.01cf6fd8.css" rel="prefetch"><link href="js/chunk-03454508.bb0e4e1c.js" rel="prefetch"><link href="js/chunk-
03dea3f3.cc8963fd.js" rel="prefetch"><link href="js/chunk-0458398b.ff29fd68.js" rel="prefetch"><link href="js/chunk-
098d33d4.62a0a9e3.js" rel="prefetch"><link href="js/chunk-0c535319.bae00bd8.js" rel="prefetch"><link href="js/chunk-
0cc2145f.2048b4a7.js" rel="prefetch"><link href="js/chunk-130a45b2.96a3208f.js" rel="prefetch"><link href="js/chunk-
15fa718e.3ded5419.js" rel="prefetch"><link href="js/chunk-2268dc1a.9f3cff5c.js" rel="prefetch"><link href="js/chunk-
27250ed3.23fb5c20.js" rel="prefetch"><link href="js/chunk-2c05d556.94e28585.js" rel="prefetch"><link href="js/chunk-
2d212bf1.e913ee34.js" rel="prefetch"><link href="js/chunk-3ddbf9db.4b06f76f.js" rel="prefetch"><link href="js/chunk-
58038582.ad8b87a9.js" rel="prefetch"><link href="js/chunk-6080f988.835075e1.js" rel="prefetch"><link href="js/chunk-
72b2e77a.c140e6b7.js" rel="prefetch"><link href="js/chunk-72c6e8d8.7a32d934.js" rel="prefetch"><link href="js/chunk-
8161d788.abf3f2bb.js" rel="prefetch"><link href="js/chunk-98f267aa.fc8b75b5.js" rel="prefetch"><link href="js/chunk-
a9a9ce50.5ab8566b.js" rel="prefetch"><link href="js/chunk-d584b056.68794871.js" rel="prefetch"><link href="js/chunk-
e998d306.0c10691b.js" rel="prefetch"><link href="js/chunk-f087d6f2.1bc41a25.js" rel="prefetch"><link href="js/chunk-
f90907bc.e2ff7967.js" rel="prefetch"><link href="css/chunk-vendors.9656408d.css" rel="preload" as="style"><link
href="js/app.042d2a91.js" rel="preload" as="script"><link href="js/chunk-vendors.09d38c92.js" rel="preload" as="script"><link
href="css/chunk-vendors.9656408d.css" rel="stylesheet"></head><body><noscript><strong>We're sorry but fhemapp doesn't work
properly without JavaScript enabled. Please enable it to continue.</strong></noscript><div id="app"></div><script src="js/chunk-
vendors.09d38c92.js"></script><script src="js/app.042d2a91.js"></script></body></html>


jemu75

#19
Bisher habe ich die App auf dem FHEM eigenen Webserver leider auch nicht zum Laufen bekommen. Auf Apache und lighttpd läuft die App ohne Probleme. Ich hatte in der Entwicklungsphase auch mal einen eigenen kleinen nodejs Webserver im Einsatz, auf dem die App ebenfalls lief. Der Lösungsansatz mit den relativen Pfaden (also das erste "/" wegzulassen) scheint schon mal in die richtige Richtung zu gehen. Wenn ich die App entsprechend kompiliere und in /opt/fhem/www kopiere, dann kann ich die auch starten. Allerdings werden hier schon keine Devices, die sich eigentlich auf meiner Startseite befinden, angezeigt. Ich vermute mal, dass die Routen nicht korrekt verarbeitet werden.

Folgende Punkte finde ich im Vergleich den zu anderen Webservern seltsam.
1) ich muss in meiner URL immer die "index.html" also "http://fhem:8083/fhem/fhemapp/index.html" eingeben.
2) wenn die URL bestimmte Routen enthält, dann erkennt der FHEM-Webserver diese nicht z.B. "http://fhem:8083/fhemapp/devices/room=Bad"

Ich bräuchte hier etwas Unterstützung, was den Webserver von FHEM anbetrifft. Dann bekommen wir die App sicher auch hier zum Laufen :)

jemu75

Zitat von: JoWiemann am 12 März 2021, 21:15:04
auf meinem Testsystem mal lighttpd installiert. FHEMApp kann im Browser aufgerufen werden. Ein erster Switch ist auch verfügbar.

Hallo Jörg, in welchen Pfad hast du die App auf deinem Testsystem kopiert und über welche URL rufst du diese auf?

Danke Dir! :)
Jens

jemu75

Zitat von: schwatter am 14 März 2021, 11:14:21
ich probiere mich gerade an Fhemapp. Der Ordner "fhemapp" ist in "/opt/fhem/www". Die "/" sind entfernt und die Seite lädt, wohl aber nicht komplett. Ich bekomme den Hinweis, das JavaScript aktiviert werden soll.

...<noscript><strong>We're sorry but fhemapp doesn't work
properly without JavaScript enabled. Please enable it to continue.</strong></noscript><div id="app"></div><script src="js/chunk-
vendors.09d38c92.js"></script><script src="js/app.042d2a91.js"></script></body></html>


Wird der Hinweis bzgl. Javascript im Browser ausgegeben oder meinst du das, was in der HTML-Datei (siehe oben) steht?

ToKa

Hallo Jemu,

habe Deine "App" auf einem Apache im Netzwerk installiert und greife damit auf meinen Fhem Server zu. Die Oberfläche wird angezeigt und bislang keine Fehler im Apache log. Werde jetzt mal erste Devices konfiguriere, so dass sie in der App angezeigt werden.

Von den Bildern hier bzw. auf Githab sieht das richtig cool aus.

VG
Torsten
RaspberryPi3 mit RaZberry2 und Conbee II
Fibaro: FGWPE/F-101 Switch & FIBARO System FGWPE/F Wall Plug Gen5, FGSD002 Smoke Sensor
EUROtronic: SPIRIT Wall Radiator Thermostat Valve Control
Shelly2.5 Rollladenaktoren
Zipato Bulb 2, Osram und InnrLight

jemu75

Zitat von: ToKa am 14 März 2021, 17:40:23
Hallo Jemu,

habe Deine "App" auf einem Apache im Netzwerk installiert und greife damit auf meinen Fhem Server zu. Die Oberfläche wird angezeigt und bislang keine Fehler im Apache log. Werde jetzt mal erste Devices konfiguriere, so dass sie in der App angezeigt werden.

Von den Bildern hier bzw. auf Githab sieht das richtig cool aus.

VG
Torsten

Danke Dir schonmal für's Testen und melde dich gern, wenn es irgendwo klemmt  :)

jemu75

Mir steht ja noch etwas Fleißarbeit bevor, denn neben "switch" werde ich auch noch alle anderen Templates, die es bisher schon gibt, dokumentieren. Wer dennoch schon mal weiter probieren möchte, dem liefere ich hier mal das Beispiel meiner aktuellen Konfiguration. Diese habe ich auf die Schnelle mal mit dem FHEM Kommando list appOptions!= appOptions rausgezogen. Sicher ist hier noch nicht alles selbsterklärend. Insbesondere die "Panels" und "Charts" sind etwas komplexer zu konfigurieren. Aber die restlichen Templates folgenden dem gleichen Prinzip wie der bereits beschriebene "switch". :)


Kamin_Dunstabzug         { "toggle": ["mode:disabled:enable:mdi-power-on","mode:enabled:disable:mdi-power-off"], "states": ["mode:enabled:Sperrt den Dunstabzug bei geschlossenen Fenstern.:100:success","mode::Sperrt den Dunstabzug bei geschlossenen Fenstern.:0:success"] }
Scn_Jalousien            { "template": "scenes", "states": ["state:unknown:...:0:success:mdi-movie-open", "state:aus:state:0:success:mdi-movie-open-check", "state:an:state:100:success:mdi-movie-open-check", "state::state:100:success:mdi-movie-open-check"]}
Scn_Light_Living         { "template": "scenes", "states": ["state:unknown:...:0:success:mdi-movie-open", "state:aus:state:0:success:mdi-movie-open-check", "state:an:state:100:success:mdi-movie-open-check", "state::state:100:success:mdi-movie-open-check"]}
Sonos_Esszimmer          { "template": "sonos" }
Sonos_Galerie            { "template": "sonos" }
Sonos_Lea                { "template": "sonos" }
Wetter                   { "template": "weather", "link": "/devices/group=Wetter", "states": ["condition::condition:100:success"] }
app.functions.light      { "template": "panel", "system": "true", "connected": { "1": "doif_motion_ter", "2": "doif_motion_ef", "3": "doif_light_windows", "4": "doif_light_gw", "5": "doif_light_gar" }, "states": ["Internals.STATE:::::mdi-function"] }
app.functions.other      { "template": "panel", "system": "true", "connected": { "1": "doif_waterfall", "2": "Kamin_Dunstabzug" }, "states": ["Internals.STATE:::::mdi-function"] }
app.overview.comfort     { "template": "panel", "home": "true", "connected": { "light": "overview_light", "power": "overview_power", "heating": "overview_heating", "sonos": "overview_sonos" },"states": ["Internals.STATE:::::mdi-home-assistant"] }
app.overview.info        { "template": "panel", "home": "true", "connected": { "weather": "Wetter", "water": "overview_water" },"states": ["Internals.STATE:::::mdi-information-variant"] }
app.overview.security     { "template": "panel", "home": "true", "connected": { "smoke": "overview_smokedetect", "doors": "overview_windows", "blinds": "overview_blinds", "motion": "overview_motiondetect" }, "states": ["Internals.STATE:::::mdi-security"] }
blind.hm.eg.es           { "template": "shutter" }
blind.hm.eg.ko           { "template": "shutter" }
blind.hm.eg.wh           { "template": "shutter" }
blind.hm.og.fl           { "template": "shutter" }
blind.hm.og.ki1          { "template": "shutter" }
blind.hm.og.sz           { "template": "shutter" }
blind.os.eg.ter          { "template": "shutter", "states": ["motor:up:schließt...::success:mdi-window-shutter-alert", "motor:down:öffnet...::success:mdi-window-shutter-alert", "pct:100:geschlossen:pct:success:mdi-window-shutter-open", "pct::offen:pct:success:mdi-storefront"] }
chn_sen.hm.eg.fl_Climate     { "template": "thermostat", "connected": { "receiver": "chn_sen.hm.eg.fl" } }
chn_sen.hm.eg.fl_Climate_FileLog     { "template": "chart", "dashboard": "true", "chartDef": [":humidity:Luftfeuchte:%:secondary",":measured-temp:Temperatur:°C"] }
chn_sen.hm.eg.wc_Climate     { "template": "thermostat", "connected": { "receiver": "chn_sen.hm.eg.wc" } }
chn_sen.hm.eg.wc_Climate_FileLog     { "template": "chart", "dashboard": "true", "chartDef": [":humidity:Luftfeuchte:%:secondary",":measured-temp:Temperatur:°C"] }
chn_sen.hm.eg.wh_Climate     { "template": "thermostat", "connected": { "receiver": "chn_sen.hm.eg.wh" } }
chn_sen.hm.eg.wh_Climate_FileLog     { "template": "chart", "dashboard": "true", "chartDef": [":humidity:Luftfeuchte:%:secondary",":measured-temp:Temperatur:°C"] }
chn_sen.hm.og.ar_Climate     { "template": "thermostat", "connected": { "receiver": "chn_sen.hm.og.ar" } }
chn_sen.hm.og.ar_Climate_FileLog     { "template": "chart", "dashboard": "true", "chartDef": [":humidity:Luftfeuchte:%:secondary",":measured-temp:Temperatur:°C"] }
chn_sen.hm.og.bad_Climate     { "template": "thermostat", "connected": { "receiver": "chn_sen.hm.og.bad" } }
chn_sen.hm.og.bad_Climate_FileLog     { "template": "chart", "dashboard": "true", "chartDef": [":humidity:Luftfeuchte:%:secondary",":measured-temp:Temperatur:°C"] }
chn_sen.hm.og.ki1_Climate     { "template": "thermostat", "connected": { "receiver": "chn_sen.hm.og.ki1" } }
chn_sen.hm.og.ki1_Climate_FileLog     { "template": "chart", "dashboard": "true", "chartDef": [":humidity:Luftfeuchte:%:secondary",":measured-temp:Temperatur:°C"] }
chn_sen.hm.og.ki2_Climate     { "template": "thermostat", "connected": { "receiver": "chn_sen.hm.og.ki2" } }
chn_sen.hm.og.ki2_Climate_FileLog     { "template": "chart", "dashboard": "true", "chartDef": [":humidity:Luftfeuchte:%:secondary",":measured-temp:Temperatur:°C"] }
chn_sen.hm.og.sz_Climate     { "template": "thermostat", "connected": { "receiver": "chn_sen.hm.og.sz" } }
chn_sen.hm.og.sz_Climate_FileLog     { "template": "chart", "dashboard": "true", "chartDef": [":humidity:Luftfeuchte:%:secondary",":measured-temp:Temperatur:°C"] }
contact.hm.eg.car        { "template": "contact", "states": [ "Activity:^(?!alive):keine Verbindung:100:error:mdi-door", "sabotageError:on:Fremdeingriff:100:error:mdi-security", "cover:open:Fremdeingriff:100:error:mdi-security", "state:open:offen:0:success:mdi-garage-open-variant", "state:closed:geschlossen:100:success:mdi-garage-variant" ], "connected": { "button": "power.hm.eg.car" } }
contact.hm.eg.es         { "template": "contact" }
contact.hm.eg.har        { "template": "contact" }
contact.hm.eg.ko         { "template": "contact" }
contact.hm.eg.wc         { "template": "contact" }
contact.hm.eg.wh         { "template": "contact" }
contact.hm.og.bad        { "template": "contact" }
contact.os.eg.gar        { "template": "contact" }
doif_light_gar           { "toggle": ["mode:disabled:enable:mdi-power-on","mode:enabled:disable:mdi-power-off"], "states": ["mode:enabled:Schaltet das Licht in der Garage bei Dunkelheit.:100:success","mode::Schaltet das Licht in der Garage bei Dunkelheit.:0:success"] }
doif_light_gw            { "toggle": ["mode:disabled:enable:mdi-power-on","mode:enabled:disable:mdi-power-off"], "states": ["mode:enabled:Schaltet das Licht am Gehweg bei Dunkelheit.:100:success","mode::Schaltet das Licht am Gehweg bei Dunkelheit.:0:success"] }
doif_light_windows       { "toggle": ["mode:disabled:enable:mdi-power-on","mode:enabled:disable:mdi-power-off"], "states": ["mode:enabled:Schaltet das Licht in der Galerie bei Dunkelheit.:100:success","mode::Schaltet das Licht in der Galerie bei Dunkelheit.:0:success"] }
doif_motion_ef           { "toggle": ["mode:disabled:enable:mdi-power-on","mode:enabled:disable:mdi-power-off"], "states": ["mode:enabled:Schaltet das Licht in der Einfahrt bei Bewegung.:100:success","mode::Schaltet das Licht in der Einfahrt bei Bewegung.:0:success"] }
doif_motion_ter          { "toggle": ["mode:disabled:enable:mdi-power-on","mode:enabled:disable:mdi-power-off"], "states": ["mode:enabled:Schaltet das Licht auf der Terrasse bei Bewegung.:100:success","mode::Schaltet das Licht auf der Terrasse bei Bewegung.:0:success"] }
doif_waterfall           { "toggle": ["mode:disabled:enable:mdi-power-on","mode:enabled:disable:mdi-power-off"], "states": ["mode:enabled:Schaltet den Wasserfall auf der Terrasse bei Bewegung.:100:success","mode::Schaltet den Wasserfall auf der Terrasse bei Bewegung.:0:success"] }
light.hm.eg.car          { "template": "light" }
light.hm.eg.es           { "template": "dimmer" }
light.hm.eg.tv           { "template": "light" }
light.hm.eg.wh           { "template": "dimmer" }
light.hm.eg.wh2          { "template": "dimmer" }
light.os.eg.doo          { "template": "light" }
light.os.eg.ef           { "template": "light" }
light.os.eg.gw           { "template": "light" }
light.os.eg.ter          { "template": "light" }
motion.hm.eg.fl          { "template": "motiondetect" }
motion.os.eg.ef          { "template": "motiondetect" }
motion.os.eg.ter         { "template": "motiondetect" }
motion.os.eg_FileLog     { "template": "chart", "dashboard": "true", "chartDef": [":ter.brightness:Terrasse:%",":ef.brightness:Einfahrt:%"] }
myHMLAN                  { "template": "hmlan", "system": "true", "connected": { "watcher": "ActionDetector" } }
overview_blinds          { "link": "/devices/group=Jalousien", "states": ["state:off:geschlossen:100:success", "state:on:alle offen:0:success", "state::teilweise offen:50:success"] }
overview_heating         { "link": "/devices/group=Heizung", "states": ["state:off:alle aus:0:success", "state:on:an:100:success", "state::teilweise an:50:success"] }
overview_light           { "link": "/devices/group=Licht", "states": ["state:off:aus:0:success", "state:on:an:100:success", "state::teilweise an:50:success"] }
overview_motiondetect     { "link": "/devices/group=Bewegungsmelder", "states": ["state:noMotion:alle bereit:100:success", "state::Bewegung erkannt:50:success"] }
overview_power           { "link": "/devices/group=Steckdosen", "states": ["state:off:alle aus:0:success", "state:on:alle an:100:success", "state::teilweise an:50:success"] }
overview_smokedetect     { "link": "/devices/group=Rauchmelder", "states": ["state:off:alle bereit:100:success", "state::Alarm!:100:error"] }
overview_sonos           { "link": "/devices/group=Musik", "states": ["state:PLAYING:läuft...:100:success", "state::alle aus:0:success"] }
overview_water           { "link": "/devices/group=Bewässerung", "states": ["state:off:aus:0:success", "state::läuft:100:success"] }
overview_windows         { "link": "/devices/group=Fenster\\s.\\sTüren", "states": ["state:closed:alle geschlossen:100:success", "state:open:offen:100:success", "state::teilweise offen:50:success"] }
power.hm.dyn.sw1         { "template": "switch", "connected": { "receiver": "chn_akt.hm.dyn.sw1", "power": "chn_sen.hm.dyn.sw1_Pwr" } }
power.hm.dyn.sw2         { "template": "switch", "connected": { "receiver": "chn_akt.hm.dyn.sw2", "power": "chn_sen.hm.dyn.sw2_Pwr" } }
power.hm.eg.tv           { "template": "switch" }
power.os.eg.ter          { "template": "switch" }
power.os.eg.was          { "template": "switch", "connected": { "receiver": "chn_akt.hm.eg.sw3" } }
power.os.gah.pipe1       { "template": "switch", "connected": { "receiver": "chn_akt.os.gah.sw1" }, "states": ["state:off:aus:0:success:mdi-water-off","state:on:ein:100:success:mdi-water" ] }
power.os.gah.pipe2       { "template": "switch", "connected": { "receiver": "chn_akt.os.gah.sw1" }, "states": ["state:off:aus:0:success:mdi-water-off","state:on:ein:100:success:mdi-water" ] }
power.os.gah.pipe3       { "template": "switch", "connected": { "receiver": "chn_akt.os.gah.sw1" }, "states": ["state:off:aus:0:success:mdi-water-off","state:on:ein:100:success:mdi-water" ] }
power.os.gah.pump        { "template": "switch", "connected": { "receiver": "chn_akt.os.gah.sw1" }, "states": ["state:off:aus:0:success:mdi-water-off","state:on:ein:100:success:mdi-water" ] }
power.sh.eg.wh_sw1       { "template": "switch" }
power.sh.og.ar_sw1       { "template": "switch" }
power.sh.og.fl_sw1       { "template": "switch" }
power.sh.og.fl_sw2       { "template": "switch" }
sensor.os.ug.zis         { "template": "watersensor" }
sensor.os.ug.zis_FileLog     { "template": "chart", "dashboard": "true", "chartDef": [":level:Füllstand:%"] }
smoke.hm.eg.fl           { "template": "smokedetect" }
smoke.hm.og.ki1          { "template": "smokedetect" }
smoke.hm.og.ki2          { "template": "smokedetect" }
smoke.hm.og.sz           { "template": "smokedetect" }
sysmon                   { "template": "sysmon", "system": "true" }
therm.os.eg.ef           { "template": "thermometer" }
therm.os.eg.gewha        { "template": "thermometer" }
therm.os.eg_FileLog      { "template": "chart", "dashboard": "true", "chartDef": [":therm.os.eg.ef.humidity:Luftfeuchte:%:secondary",":therm.os.eg.ef.temperature:Temperatur:°C"] }

schwatter

Zitat von: jemu75 am 14 März 2021, 16:31:11
Wird der Hinweis bzgl. Javascript im Browser ausgegeben oder meinst du das, was in der HTML-Datei (siehe oben) steht?

Ok, das kommt Standard aus der Html-Datei...

ToKa

Zitat von: jemu75 am 14 März 2021, 17:53:05
Danke Dir schonmal für's Testen und melde dich gern, wenn es irgendwo klemmt  :)

Switch funktioniert schon mal ohne weitere Einstellungen prima. Mit dem Template "thermostat" habe ich allerdings nur die Anzeige für "desired-temp" also der Solltemperatur.

Welche Readings erwartest Du denn im Standard für thermostat? Habe ich es richtig verstanden, dass ich mit states darauf Einfluss nehmen kann? Leider scheitere ich daran... Meine Ist-Temperatur ist im Reading "temperature", meine Ventileinstellung im Reading "reportedState".

VG
Torsten
RaspberryPi3 mit RaZberry2 und Conbee II
Fibaro: FGWPE/F-101 Switch & FIBARO System FGWPE/F Wall Plug Gen5, FGSD002 Smoke Sensor
EUROtronic: SPIRIT Wall Radiator Thermostat Valve Control
Shelly2.5 Rollladenaktoren
Zipato Bulb 2, Osram und InnrLight

jemu75

Zitat von: ToKa am 14 März 2021, 19:05:34
Mit dem Template "thermostat" habe ich allerdings nur die Anzeige für "desired-temp" also der Solltemperatur.
Welche Readings erwartest Du denn im Standard für thermostat? Habe ich es richtig verstanden, dass ich mit states darauf Einfluss nehmen kann? Leider scheitere ich daran... Meine Ist-Temperatur ist im Reading "temperature", meine Ventileinstellung im Reading "reportedState".

Ich nutze das Template "thermostat" für die Homematic HM-TC-IT-WM-W-EU. Dieses Gerät hat mehrere Kanäle. Für die App greife ich auf den "channel_02" zu. In diesem werden alle benötigten Werte (desired-temp, measured-temp, humidity) zur Verfügung gestellt. Welches Thermostat hast du im Einsatz?
Der Parameter "states" beeinflusst die "Ist-Werte" (measured-temp und humidity) im Moment noch nicht. Das Template "thermostat" war eines der ersten Templates, welches ich gebaut hatte. Auf Grund der unterschiedlichen Thermostate die FHEM unterstützt muss ich das Template sicher noch etwas universeller einsetzbar machen. Ich schau mir das gern mal an, wenn du mir mal deinen Thermostat-Typ mitteilst. :)

jemu75

Zitat von: schwatter am 14 März 2021, 18:33:17
Ok, das kommt Standard aus der Html-Datei...

Wenn der Hinweis nicht im Browserfenster ausgegeben wird, dann ist alles gut. In der HTML-Datei ist das nur eine Deklaration, für den Fall das Javascript nicht aktiviert ist. :)

ToKa

Bei mir sind zwave Thermostate Spirit von eurotronic im Einsatz, die haben keine Kanäle.
Die readings hatte ich ja schon genannt. Humidity gibt es gar nicht.

Falls Dir ein list hilft, sag Bescheid.

VG
Torsten
RaspberryPi3 mit RaZberry2 und Conbee II
Fibaro: FGWPE/F-101 Switch & FIBARO System FGWPE/F Wall Plug Gen5, FGSD002 Smoke Sensor
EUROtronic: SPIRIT Wall Radiator Thermostat Valve Control
Shelly2.5 Rollladenaktoren
Zipato Bulb 2, Osram und InnrLight