Hallo,
ich möchte die Oberfläche in meinem Programm schöner machen und habe nun ein Problem mit devStateIcon.
Ich möchte das Icon sprinkler_icon in drei Zuständen farbig anzeigen.
Rot:Aus
Grün:An
Gelb:Timer (2 Std)
Ich habe im Wiki gelesen, dass Leerzeichen durch ein Punkt oder /s ersetzt werden müssen.
Bei mir funktioniert es nicht. Habe alles ausprobiert.
Was mache ich hier falsch
devStateIcon An:sprinkler_icon@green 2.Std:sprinkler_icon@yellow Aus:sprinkler_icon@red
eventMap /on:An/on-for-timer 7680:2 Std/off:Aus/
webCmd Aus:2 Std:An
Wilhelm
poste mal bitte ein vollständiges list des devices.
defmod d dummy
attr d devStateIcon An:sprinkler_icon@green 2.Std:sprinkler_icon@yellow Aus:sprinkler_icon@red
attr d eventMap /on:An/on-for-timer 7680:2+Std/off:Aus/
attr d webCmd Aus:2 Std:An
funktioniert bei mir einwandfrei.
Internals:
BTN 26
CFGFN ./FHEM/Garten_hinten_271A.cfg
DEF 35B5 26
FUUID 636148ca-f33f-a974-61a9-0630af44882063c7
IODev FHZ_0
NAME Garten_FS20_1_3
NR 379
STATE Aus
TYPE FS20
XMIT 35b5
eventCount 35
CODE:
1 35b5 26
READINGS:
2023-06-23 18:38:34 IODev FHZ_0
2023-06-23 19:22:38 state off
Attributes:
IODev FHZ_0
alias Fisch und Springbrunnen
devStateIcon An:sprinkler_icon@green 2.Std:sprinkler_icon@yellow Aus:sprinkler_icon@red
eventMap /on:An/on-for-timer 7680:2 Std/off:Aus/
follow-on-for-timer 1
group Teich
room Garten hinten
sortby 10
webCmd Aus:2 Std:An
schau mal, ob mein Beispiel, das ich eben oben ergänzt habe, Dir weiterhilft.
Mit dem Dummy funktioniert die Oberfläche.
Ist aus meiner Sicht etwas umständlich.
Wenn es nicht anders geht, muss ich es wohl umbauen.
Wilhelm
Du sollst ja nicht den dummy nachbauen, sondern schauen, ob die dort gesetzten Attribute auch in Deinem echten device funktionieren.
Wenn ich die Atribute übernehme bekomme ich bei 2 Std die Fehlermeldung:
nknown argument 2, choose one of dim06% dim100% dim12% dim18% dim25% dim31% dim37% dim43% dim50% dim56% dim62% dim68% dim75% dim81% dim87% dim93% dimdown dimup dimupdown off off-for-timer on on-100-for-timer-prev on-for-timer on-old-for-timer on-old-for-timer-prev ramp-off-time ramp-on-time reset sendstate timer toggle dim:slider,0,6.25,100 off-till-overnight intervals on-till-overnight on-till off-till blink
Endlich hast Du es mal geschafft, eine sinnvolle Fehlermeldung zu posten, anstatt nur zu schreiben "geht nicht"... Danke.
attr Garten_FS20_1_3 devStateIcon An:sprinkler_icon@green 2.Std:sprinkler_icon@yellow Aus:sprinkler_icon@red
attr Garten_FS20_1_3 eventMap { dev=>{'on'=>'An','on-for-timer 7680'=>'2 Std','off'=>'Aus'}, usr=>{'An'=>'on', '2 Std'=>'on-for-timer 7680','Aus'=>'off' } }
attr Garten_FS20_1_3 webCmd Aus:2 Std:An
Voher kam keine Fehlermeldung.
Muss jetzt erst mal mein Laptop aufladen.
Zitat von: rud0815 am 23 Juni 2023, 20:28:35Voher kam keine Fehlermeldung.
Muss jetzt erst mal mein Laptop aufladen.
Aber irgendwas hat ja nicht so funktioniert, wie Du es erwartet hattest.
Auch eine Beschreibung, wie Dein device auf Deine Versuche reagiert, kann bei der Hilfeleistung weiterbringen.
Richtig, ich habe vergessen zu erwähnen, dass beim Timer das Standard Icon mit der Uhr angezeigt wurde.
Es funtioniert jetzt wie ich es wollte.
Verstehen tu ich es nicht, dazu fehlt mir einfach zu viel Programierwissen.
Danke Wilhelm
Zitat von: rud0815 am 23 Juni 2023, 20:45:12Es funtioniert jetzt wie ich es wollte.
Verstehen tu ich es nicht, dazu fehlt mir einfach zu viel Programierwissen.
Kurz erklärt:
in die eventMap habe ich Dir das geschrieben, was FHEM intern aus der üblichen Kurzfassung verwurstet. Der Vorteil dieser Variante ist, dass die Leerzeichen in aller Regel so keine Rolle spielen.
Diese Variante ist aber auch in der commandref beschrieben, dort kannst Du das bei Interesse nachlesen.
Danke für die Erklärung. Bei der eventMap hätte ich nicht gesucht.