FHEMWEB/Longpoll: Icon für gerade geschaltetes HM-Gerät wird nicht aktualisiert

Begonnen von fruemmel, 04 Januar 2014, 14:47:50

Vorheriges Thema - Nächstes Thema

fruemmel

Hallo,

ich habe seit einem Update vor Sylvester das Problem, dass bei Homemativ-Geräten das Icon für das geschaltete Gerät
nicht korrekt aktualisiert wird (longpoll = 1).

Konkret: Wenn ein HM-Schalter eingeschaltet wird, änder sich das Icon von "Aus" auf "An mit Ausrufezeichen". Die Aktalisierung
auf normales "An" erfolgt nicht mehr.
Wenn ich jetzt in einem anderen Browsertab oder -Fenster ein anderes Gerät einschalte, wird für dieses andere Gerät im
ursprünglichen Browserfenster auch alles korrekt aktualisiert. Im zweiten Browserfenster bleibt wieder das Icon mit Ausrufezeichen.

Sieht also so aus, als ob Longpoll grunsätzlich funktioniert, aber das gerade geschaltete HM-Gerät nach dem ersten Icon-Wechsel
ignoriert.

Tritt in der aktuellsten Version von heute auf, sowohl IE als auch Firefox.

Vorab schon danke für die Hilfe
Gruß Wolfgang

rudolfkoenig

Longpoll funktioniert bei mir nach einem update mit eine HM-Steckdose. In einem Browser und mehreren Tabs funktionierte es frueher nicht richtig, da nur einer der Tabs benachrichtigt wurde (bug im browser). Der aktuelle Firefox hat damit aber kein Problem mehr. Mit zwei Browsern ist es auch kein Problem. Alles gerade getestet.

Wenn ich helfen soll, brauche ich etwas was ich nachstellen kann (und ich habe nur ein HM-LC-SW1-PL zum schalten).

fruemmel

Hallo,

ich habe jetzt festgestellt, dass longpoll bei mir für einige HM-Geräte immer funktioniert, für andere jedoch nicht. Es handelt sich dabei
unter anderem auch um mehrere Geräte des Typs HM-LC-SW1-BA-PCB (Funkschaltaktor für Baetteriebetrieb).
Bei einem gehts, bei zwei anderen nicht. Ich kann keine Unterschiede in der Config erkennen, auch die Firmware ist identisch.
Auch die Entfernung bzw. Signalstärke kann ich aufgrund meiner Tests als Ursache wohl ausschließen.

Gibt es irgendeine Möglichkeit, über Logs o. ä. herauszufinden, was die Ursache ist? Die Ausgangsbasis ist ja nicht schlecht, wenn
es bei einigen Geräten geht, und den anderen nicht.

Gruß Wolfgang

rudolfkoenig

Ja:
1. In einem telnet FHEM-session "inform timer" aufrufen, und die Events aufzeichnen.
2. Im Browser die Javascript Console oeffnen (FF/Chrome/Safari CTRL/Command+i, IE: F12), und die Ausgaben anschauen.

Entweder kriegt der Browser ein Event nicht mit, oder es wird mit einem falschen ueberschrieben.

fruemmel

So, ich hab's wohl gefunden:
Bei den Homematic-Geräten funktioniert das Updaten der Icons mittels longpoll nicht mehr, wenn dem Gerät mehrere Räume zugewiesen sind.
Sowie ich nur einen Raum zuweise, klappt es.
Das müsstest Du hoffentlich auch nachvollziehen können.

Bei anderen Geräten (z. B. Intertechno) geht es automatische Aktualisieren auch bei mehreren Räumen, da das update auf das erste icon ja funktioniert. Nur bei den HM-Geräten (da kommt zuerst z. B. set_on und dann on) macht sich das bemerkbar, da bleibt dann set_on als Status stehen.

Gruß Wolfgang

rudolfkoenig

Danke, ich habs gefixed.

longpoll funktionierte nicht mehr fuer Mehr-Raum-Geraete seit dem Neuschreiben der devspec2array Funktion.
Und HM ist auf longpoll staerker angewiesen, als andere Familien.

fruemmel


nine42

N'abend,

... hab' als Neuling jetzt schon Stunden im Wiki, CommandRef und Forum verbracht und bin in diesem Thread hier auf ein Problem gestoßen, welches meinem stark ähnelt.

Ich verwende readingsGroup, um die Zustände von Batterien und Fensterkontakten meiner Homematic-Geräte gesammelt in einem "Raum" darzustellen  (der heißt bei mir "Überblick") .
Daneben werden die Geräte auch noch in ihren jeweiligen Räumen dargestellt.

Das Problem:
- der longpoll (also, der automatische Update des Status - wenn ich es recht verstehe) funktioniert wie erwartet in den Räumen, in denen die Geräte "normal" angezeigt werden.
- der longpoll funktioniert nicht in dem Raum, in dem ich die Geräte-Zustände per readingsGroup anzeige, d.h. die Zustandsänderungen werden erst mit einem Refresh der Seite korrekt angezeigt.

... ich hab' nach dem Lesen dieses threads also 'mal die Räume der Geräte so geändert, dass auch sie im Raum "Überblick" (der mit den readingsGroups) dargestellt werden. Jetzt ändert sich deren Zustand auch nicht mehr sofort - sondern erst wieder nach einem Refresh der Seite.

... ist das möglicherweise das gleiche Problem, wie das hier bereits Beschriebene?

justme1968

bitte probier das noch mal mit einem raum namen ohne umlaut. ich glaube damit gab es schon mal ein problem.

gruss
  andre
hue, tradfri, alexa-fhem, homebridge-fhem, LightScene, readingsGroup, ...

https://github.com/sponsors/justme-1968

nine42

merci für den Tipp ...
... hab' alle Umlaute verbannt - tut aber dennoch nicht ...

justme1968

was ist noch alles in dem raum? irgendwelche plots? da gab es bis vor kurzem auch ein problem. das sollte aber behoben sein. außer du hast svglongpoll aktiv.

die readingsgroup selber sollte keine probleme machen.

welchen browser verwendest du?

ist fhem per update aktuell?

gruss
  andre
hue, tradfri, alexa-fhem, homebridge-fhem, LightScene, readingsGroup, ...

https://github.com/sponsors/justme-1968

nine42

... nur drei readingsGroups.

.. getestet in Safari (7.0.1) und Firefox (26.0),

fhem update: heute mittag ...



und hier 'mal der Auszug auf der fhem.cfg dazu:

####################################################################
# READINGSGROUPs
####################################################################


### Kontaktstati #####################################################
define kon_state readingsGroup .*_KON:contact
attr kon_state valueStyle {($VALUE eq 'closed (to HMLAN1)')?'style="color:green"':'style="color:red"'}
attr kon_state mapping %ALIAS
attr kon_state style style="text-align:left"
attr kon_state style nameStyle="text-align:left"
attr kon_state style valueStyle="text-align:left"
attr kon_state alias Kontaktstatus
attr kon_state room Ueberblick

### Switch states #####################################################
define sw_state readingsGroup .*_SW:state
attr sw_state alias Schalterstatus
attr sw_state mapping %ALIAS
attr sw_state room Ueberblick
attr sw_state valueIcon { state => '%devStateIcon' }

### Batteriestati #####################################################
define rg_battery readingsGroup .*:[Bb]attery RgBattery2.png
attr rg_battery mapping %ALIAS
attr rg_battery alias Batteriestatus
attr rg_battery room Ueberblick
attr rg_battery valueStyle {($VALUE eq 'ok')?'style="color:green"':'style="color:red"'}

justme1968

die aktuelle readingsGroup version verträgt sich nicht mit einer der letzen änderungen an inform/longpoll. ich repariere das nachher.

bis dahin kannst du das attribut alwaysTrigger auf 1 setzen. das sollte helfen.

das kann aber nichts damit zu tun haben das auch die anderen devices nicht aktualisiert worden sind wenn sie in dem raum waren.

gruss
  andre
hue, tradfri, alexa-fhem, homebridge-fhem, LightScene, readingsGroup, ...

https://github.com/sponsors/justme-1968

nine42

Hallo Andre

super, mit alwaysTrigger funktioniert es - Danke !
(Die Umlaute hab' ich wieder eingebaut - damit tut es auch)

Grüße und schönen Abend, Peter

nine42

 ... und nach dem neuesten update tut's auch ohne "alwaysTrigger"

nochmals: Danke

Peter