FHEMWEB devstateicon keine Funktion

Begonnen von hawkeyexp, 13 Januar 2015, 15:46:26

Vorheriges Thema - Nächstes Thema

hawkeyexp

Hallo Zusammen,

ich nutze seit geraumer Zeit Fhem und bin daher noch am tiefer einarbeiten. Ich habe diverse Räume mit verschiedenen Komponenten etc. (Elro-Steckdosen via pilight, RGB-Stripes etc.). Bis vor kurzem hat es sich so verhalten (am Beispiel Elro-Steckdose via pilight) das ich entweder via on off (bei mir via eventmap auf Ein / Aus übersetzt für die Anzeige) schalten konnte oder durch klicken auf das svg-icon welches dann getoggelt hat.
Seit dem Update vor einigen Tagen funzt es aber nicht mehr wie gewohnt - die Schaltfunktion im Hintergrund aber das Icon (devstateicon) wird nicht aktualisiert. Beim schalten via on / off wechselt das Icon aber entsprechend den Zusand samt auslößen der Funktion. Kann jemand helfen oder hilft nur warten bis der Umbau (Bugfixing) in Fhemweb (laut diverser Einträge im Forum gibt es ja an mehreren stellen noch Probleme) abgeschlossen ist ?

LG

rudolfkoenig

Ich habe nur ungefaehr was vom icon-clicken und devStateIcon verstanden, da kann ich bei mir (== fhem.cfg.demo) keine Probleme feststellen. Vlt. geht es mit einem Beispiel besser.

hawkeyexp

#2
Sorry wenn ich mich etwas doof ausgedrückt habe. Anbei ein Screenshot.

(http://i61.tinypic.com/2hnx91g.jpg)

Kurz und Knackig:

Vorher: Klick auf Ein bzw. Aus -> Funktion wird ausgelößt Icon (An/Aus) wechselt den Zustand ohne weiteres zutun.

Nachher: Klick auf Ein bzw. Aus -> Funktion wird ausgelößt Icon (An/Aus) wechselt NICHT den Zustand ohne weiteres zutun (Reload im Browser aktualisiert das Icon - IE und Firefox getestet).

PS: Klick auf das Icon (An/Aus) lößt die Funktion dahinter auch aus aber Icon wechselt auch nicht.

Hier noch der Code aus der Config dahinter:

define Deckenfluter pilight elro_he
attr Deckenfluter userattr Deckenfluter Deckenfluter_map room_map structexclude
attr Deckenfluter Deckenfluter Alles
attr Deckenfluter devStateIcon Ein:general_an@green Aus:general_aus@red undefined:control_home
attr Deckenfluter eventMap Alles on:Ein off:Aus
attr Deckenfluter group Beleuchtung
attr Deckenfluter icon light_floor_lamp
attr Deckenfluter room Wohnzimmer
attr Deckenfluter systemcode 17
attr Deckenfluter unitcode 1




Risiko

Hallo.

So ein (ähnliches) verhalten hatte ich auch hier:

http://forum.fhem.de/index.php/topic,31960.0.html

beschrieben. Es liegt eine Demo bei. Die Icons (Buttons) werden nicht aktualisiert.

Risiko.

justme1968

das verlinkte beispiel hat mit einer readingsGroup zu tun und ist ziemlich sicher nicht das gleiche problem.

du hast bei deinem devStateIcon nicht angegeben was beim klick passieren soll. also passiert nicht..

so wäre es richtig:attr Deckenfluter devStateIcon Ein:general_an@green:off Aus:general_aus@red:on undefined:control_home:on

siehe z.b. hier: http://forum.fhem.de/index.php/topic,12080.msg71651.html#msg71651

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

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

hawkeyexp

Hi Andre,

das Problem ist definitv nicht die Fehlende angabe welche Funktion ausgeführt werden soll denn die Funktion ist gegeben - steht das Icon auf Aus und man klickt es wird Ambilight eingeschaltet und umgekehrt. Knackpunkt ist wirklich nur das refresh des Icons :-( Ich habe dennoch deinen Vorschlag eingebaut aber wie erwartet keine Änderung erziehlt.

justme1968

sorry. mein fehler. ich habe den teil mit 'funktion wird ausgelöst' übersehen.

bitte schau mal in deinem browser in die javascript console. dort solltest du meldungen oder fehlermeldungen zu longpoll sehen wenn damit zu tun hat.

ps: ich habe gerade gesehen das das pilight modul nicht die ReadingsUpdate funktionen verwendet sondern $hash->{READINGS}{state} direkt ändert.

@rudi: hat sich hier eventuell etwas geändert? in dem verlinkten thread geht auch etwas nicht mehr das angeblich vorher ging. ich kann es mir aber nicht erklären...
hue, tradfri, alexa-fhem, homebridge-fhem, LightScene, readingsGroup, ...

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

hawkeyexp

hier mal die Ausgabe der Konsole und siehe da ein Syntax Error direkt nach dem Befehl:

"22:50:43.194 FW_cmd:/fhem?cmd.Ambilight=set Ambilight Ein&room=Wohnzimmer&room=Wohnzimmer&XHR=1" fhemweb.js:147
"22:50:43.319 Rcvd: ["Ambilight","Ein","<div id=\"Ambilight\"  class=\"col2\"><a href=\"/fhem?cmd.Ambilight=set Ambilight Aus&room=Wohnzimmer\"><svg cla...(3045)" fhemweb.js:147
SyntaxError: JSON.parse: bad character in string literal at line 1 column 2423 of the JSON data fhemweb.js:316



Der SyntaxError kommt bei allen Elementen bei denen das Icon nicht wechselt.

eppi

Hallo
Genau das gleiche Problem ist bei mir auch aufgetreten. Ich habe herausgefunden, dass bei mir das SVG Icon general_an, general_aus das Problem war (keine Aktualisierung aber Befehl wurde immer ausgeführt). Nach dem ich ein anderes SVG devStateIcon zugewiesen habe, war das Problem gelöst und das Icon änderte sich wie erwartet nach dem Klick. Könnte jemand das Problem bei sich nachstellen und das Verhalten bestätigen?

Gruss Eppi

hawkeyexp

Hi Eppi,

da wird der Hund in der Pfanne verückt - ich habe das Icon auf die Ampel gewechselt und das läuft !

attr Deckenfluter devStateIcon Ein:ampel_gruen Aus:ampel_rot undefined:ampel_aus

Muss ich das verstehen ?

PS: Ich habe auch einen Gegentest gemacht und mal die Einfärbung mit @ read etc. weggelassen aber keine Änderung mit general_an / general_aus

rudolfkoenig

Neuerdings werden longpoll Daten im JSON Format uebertragen, JSON erlaubt kein \t, manche SVGs enthalten aber ein \t, und das hat FHEMWEB bisher nicht richtig behandelt. Habs behoben, AN/AUS funktioniert.

Beim Anschauen der SVG Daten ist mir aufgefallen, dass in so einem SVG-Icon ziemlich viel "Muell" ist. Definition von Muell: alles was nicht notwendig ist. Kann bitte ein Inkscape-Experte rausfinden, wie man SVG-Dateien ohne "Muell" speichert?

RitterSport

Was für ein Zufall.

Ich habe heute mich zum ersten Mal mit den devStateIcon befasst, zum ersten Mal die SVG auch genommen und dort ausgerechnet general_on und bin dabei verzweifelt!

Habe ein Update gerade gemacht aber die Problematik besteht noch?!

justme1968

wenn rudi es heute eingecheckt hat ist es erst morgen im update enthalten.

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

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

RitterSport

Danke, dann hatte ich : " habe es geändert" falsch interpretiert.

hawkeyexp

Danke an Alle und natürlich @rudolfkoenig