fhemweb.js weiterhin problematisch, kein refresh

Begonnen von fhem-challenge, 03 Februar 2015, 11:00:42

Vorheriges Thema - Nächstes Thema

Jewo


XBuschman

ZitatDas ist mir zu ungenau, und ich fange nicht an zu Raten

Es gibt folgende at defines:
define UhrzeitRunter at *{sunset(14400)} ...
define GartenLichtAus at *{sunset(14400+40)} ...


Die werden in einem notify auf ein dummy mit modify geändert
...
modify GartenLichtAus *{sunset($settemp+40)} ;; \
modify UhrzeitRunter *{sunset($settemp)} ") ;; \
...


ZitatHat wirklich longpoll funktioniert, oder wurde die Seite neu geladen?
Ja es hat wirklich longpoll funktioniert. Spricht es haben sich direkt die Werte von GartenLichtAus und UhrzeitRunter geändert, die im selben Raum angezeigt werden. Als workaround nutze ich aktuell myUtils_refresh("WEB") ;;


rudolfkoenig

ZitatEs gibt folgende at defines:
Ist mir immer noch zu ungenau. Bitte etwas zum einfach nachstellen.

Zitates haben sich direkt die Werte von GartenLichtAus und UhrzeitRunter geändert
Das ist noch lange kein Beweis fuer ein frueher besser funktionierndes longpoll. Definition von longpoll in diesem Kontext: die Seite wird nicht neu geladen, nur die geaenderten Werte werden aus der Seite modifiziert. Frueher wurde die Seite deutlich haeufiger neu geladen.
Das mag fuer den Endbenutzer "wurscht" sein, fuers Fehlermelden bzw. debuggen ist es nicht.

herrmannj


XBuschman

Hier der komplette config Code:

# ------------ Test modify --------------
define 1_TSchottenDichtEG dummy
attr 1_TSchottenDichtEG group TestModify
attr 1_TSchottenDichtEG room TestModify
attr 1_TSchottenDichtEG setList state:10,15,30,45,60,90,120,150,180,210,240,270,300
attr 1_TSchottenDichtEG stateFormat {ReadingsVal($name,"state",0)." Minuten nach Sonnenuntergang"}
attr 1_TSchottenDichtEG webCmd state

define 2_TGartenLichtAus at *{sunset(14400+40)} set 1_Terrasse off
attr 2_TGartenLichtAus group TestModify
attr 2_TGartenLichtAus room TestModify

define 3_TUhrzeitRunter at *{sunset(14400)} set 1_EG_Runter on-for-timer 40
attr 3_TUhrzeitRunter group TestModify
attr 3_TUhrzeitRunter room TestModify

define 4_TMinSchottenDicht dummy
attr 4_TMinSchottenDicht group TestModify
attr 4_TMinSchottenDicht room TestModify

define 5_TNotifySchottenDicht notify 1_TSchottenDichtEG   {                 \
   my $settemp  = (ReadingsVal("1_TSchottenDichtEG", "state", "0")*60) ;;   \
   fhem(" set 4_TMinSchottenDicht $settemp ;;                               \
          modify 2_TGartenLichtAus *{sunset($settemp+40)} ;;                \
          modify 3_TUhrzeitRunter *{sunset($settemp)} ") ;;                 \
}
attr 5_TNotifySchottenDicht group TestModify
attr 5_TNotifySchottenDicht room TestModify


Wird jetzt der 1_TSchottenDichtEG Wert geändert, bleibt bei 2_TGartenLichtAus und 3_TUhrzeitRunter der alte Wert stehen. Früher hat er sich direkt gändert. Ob mittels Longpoll kann ich nicht sagen. Anzeichen, dass die ganze Seite einen Refresh erfahren hat, sind mir nicht aufgefallen.


Jewo

Zitat von: herrmannj am 06 Februar 2015, 12:15:04
Hi,

welche Version ?

vg
jörg

Hi Jörg,

es war noch die 1. Beta, hatte seitdem noch kein Update gemacht.  ::) ::)

Gruß
Jens

rudolfkoenig

Solche Aenderungen wurden frueher auch nie per longpoll uebertragen, d.h. die Seite wurde neu geladen.

Ich habe FHEMWEB angepasst, dass bei einem "global MODIFY" Event der Status des geaenderten Geraetes im longpoll Kanal an das Frontend gesendet wird, falls dieser das modifizierte Geraet abonniert hat, in deinem Beispiel aendern sich damit die Zeilen 2 und 3 zusaetzlich.

XBuschman

Perfekt! So ist das Verhalten wieder wie früher. Vielen DANK!! Ist echt super wie das hier im Forum läuft. Gefühlte 90% der Probleme kann man lösen, in dem man hier ein wenig mitliest und sucht. Und beim Rest wird einem geholfen!