Neues Feature mit Ajax-Aktualisierungen von Slidern

Begonnen von Reinerlein, 23 Februar 2013, 17:59:37

Vorheriges Thema - Nächstes Thema

Reinerlein

Hallo zusammen,

ich habe gerade das neue Feature bzgl. der Ajax-Aktualisierung der Slider ausprobiert.

Das funktioniert schon ziemlich gut, und gefällt mir auch sehr gut. Mit einer Ausnahme:
Wenn ich longpoll aktiviert habe, damit die zugrundeliegenden Werte in der Detail-Ansicht auch aktualisiert werden, wird für die Aktualisierung des Slider-Wertes der STATE verwendet, und nicht das entsprechende Reading.
Bei der erstmaligen Anzeige wird korrekterweise das Reading (in diesem Fall 'Volume') verwendet.

Das hat bei meinem Sonos-Modul zur Folge, dass nach einer longpoll-Aktualisierung eines Werts nicht mehr der Lautstärkewert dort angezeigt wird, sondern die erste Zahl, die im State gefunden wurde. Bei meinem 80er Radiosender halt die 80, da im State bei mir der laufende Sendername steht :-)

Irgendwie müsste das für den longpoll-Mechanismus noch angepasst werden, damit auch dort das entsprechende Reading (welches den korrekten Wert enthält) als Basis verwendet wird.

Grüße Reinerlein

rudolfkoenig

Danke fuer den Hinweis. Ich habe jetzt das Aktualisieren im Detail-Ansicht auf das state-slider beschraenkt, ich fuerchte das Konzept ist fuer mehrere slider-faehige Kommandos pro Geraet noch nicht ausgereift.

Hab den TimeSlider auch gefixed (war durch den gestrigen update kaputtgegangen).

justme1968

das feature ist wunderbar und auch das schnellere laden.

aber ich habe auch ein kleines problem bei einem meiner set. da gibt es einen slider mit dem wertebereich 154-500. das zugehörige reading schaut aber so aus:
(siehe Anhang / see attachement)

d.h. nach dem wert kommt noch eine erklaerung. hier die umrechnung der farbtemperatur von geräte einheiten in kelvin.

die javascript funktion zum aktualisieren hängt jetzt beides zusammen und setzt den slider auf 5002000 was außerhalb des wertebereichs liegt. und einiges durcheinander bringt.

gruss
  andre

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

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

rudolfkoenig

Habs eingebaut, obwohl ich nicht der Ansicht bin, dass es vorher ein Bug war.

justme1968

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

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

Markus Bloch

Hallo zusammen,

ich hab seit heute das Phänomen, dass die Slider nur dann funktionieren, wenn das gerät über die Detailseite oder automatisch auf einen Prozentwert zwischen 0 und 100 (on und off) gestellt sind. Doch sobald man auf 0% oder 100% geht, wird der Status des Devices ja in on oder off geändert.

Wenn man nun von on oder off den Slider verschieben will, steht im Slider nur noch "NaN" und der Slider verschiebt sich nicht.


(siehe Anhang / see attachement)



(siehe Anhang / see attachement)


Offenbar wird hier der Status on und off nicht berücksichtigt.

Viele Grüße

Markus
Developer für Module: YAMAHA_AVR, YAMAHA_BD, FB_CALLMONITOR, FB_CALLLIST, PRESENCE, Pushsafer, LGTV_IP12, version

aktives Mitglied des FHEM e.V. (Technik)

rudolfkoenig

> Offenbar wird hier der Status on und off nicht berücksichtigt.

Stimmt, ich habe jetzt alles was nicht Zahl ist zu 0 konvertiert.
Btw. statt Bilder (oder zusaetzlich zu) waeren mir Beispielkonfigurationen wichtiger. Ich habe es jetzt fuer FS20 gefixed und getestet.

Markus Bloch

Hallo Rudi,

vielen Dank schonmal. Ich habe bei mir ausschließlich HomeMatic Geräte im Einsatz.

Dein Vorschlag, alles was nicht Zahl ist zu 0 ko konvertieren halte ich für suboptimal. Ich würde da schon unterscheiden und sagen das off => 0 und on => 100. Den Rest könnte man dann durchaus zu 0 konvertieren.

Kann ich allerdings erst am Freitag testen und ggf. unterstützen.

Viele Grüße

Markus
Developer für Module: YAMAHA_AVR, YAMAHA_BD, FB_CALLMONITOR, FB_CALLLIST, PRESENCE, Pushsafer, LGTV_IP12, version

aktives Mitglied des FHEM e.V. (Technik)

justme1968

ich wollte gerade das gleiche vorschlagen. on => 100.

das problem den state in einen zahlenwert zu konvertieren gibt es aber glaube ich an mehr als einer stelle. mit fallen gerade die rolladen ein und da ist es nicht on und off sondern zumindest nach dem mappen oft up und down vielleicht lohnt sich eine generelle hilfsfunktion die das macht und auch von anderen modulen aufgerufen werden kann?

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

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

rudolfkoenig

> Ich würde da schon unterscheiden und sagen das off => 0 und on => 100

Ich nicht. Bzw. ich haette gerne einen Patch auch fuer "An/Aus", "Oben/Unten", "Offen/Zu".
Bitte beachten, dass die Grenze nicht unbedingt 0 und 100 ist, und An manchmal auch 0 ist. Alles bitte jeweils in Javascript und Perl, nicht hartkodiert, minimalen Code, gruendlich getestet :)

Markus Bloch

Hallo Rudi,

ich wollte noch meine Config zu dem Device LED_TV_Board nachreichen:


define LED_TV_Board CUL_HM 189310
attr LED_TV_Board .devInfo 410100
attr LED_TV_Board .stc 20
attr LED_TV_Board Gesamtes_Licht Gesamte_Wohnung
attr LED_TV_Board Wohnzimmer Gesamtes_Wohnzimmer_Licht
attr LED_TV_Board alias LED TV Board
attr LED_TV_Board expert 2_full
attr LED_TV_Board firmware 2.1
attr LED_TV_Board fp_Wohnung 105,318,2,
attr LED_TV_Board group Licht
attr LED_TV_Board model HM-LC-Dim1PWM-CV
attr LED_TV_Board peerIDs
attr LED_TV_Board room Wohnzimmer
attr LED_TV_Board serialNr IEQ0548096
attr LED_TV_Board subType dimmer
attr LED_TV_Board webCmd pct


Die Ersetzung von nicht-Zahlen mit 0 funktioniert schonmal. Ich persönlich würde es allerdings gut finden (gerade bei dimmern) den Status "on" mit 100% auf dem Slider darzustellen.

Viele Grüße

Markus
Developer für Module: YAMAHA_AVR, YAMAHA_BD, FB_CALLMONITOR, FB_CALLLIST, PRESENCE, Pushsafer, LGTV_IP12, version

aktives Mitglied des FHEM e.V. (Technik)