Hallo,
Ich habe einen Anlagen Status in Form von einer Zahl im State stehen. Nun würde ich gerne den Status in einen Text verwandel. Soweit ich weiß nennt man das enumeration.
Soll heissen 0=Bereit 1=Störung 3=Stop 4=....
Hat jemand eine Idee wie ich das lösen kann?
Danke schon mal für eure Hilfe.
das kommt darauf an wo du das anzeigen willst.
schau dir stateFormat an, oder wenn es ein reading sein soll userReadings.
gruss
andre
Danke für die rasche Antwort.
Wie würde das im Stateformat geschrieben werden? Attr Name Stateformat 0:Bereit 1:stoerung usw ?
nein. dazu brauchst du etwas perl code.
aber wenn du namen verwendest die es nicht als icon gibt kannst du es genau so 0:Bereit 1:stoerung ... in devStateIcon eintragen.
Hallo,
Leider Funktioniert das mit DevStateIcon nicht. Was das stateFormat anbelang so komme ich leider nicht weiter und mit userReading auch nicht.
gibt es nicht etwas wie folgendes?
{sprintf(enum 0=Bereit 1=Störung 3=Stop ,ReadingsVal("DeviceName","state",0))}
Hallo,
Problem Vorerst gelöst. es funktioniert mit EventMap
attr DevName eventMap 0:Bereit 1:Stoerung 2:.....
Dennoch Danke für die Hilfe und vielleicht hat doch noch jemand eine Idee Bezüglich Enumeration.
es kann sein das das dich das verhalten von devStateIcon bei unbekannten icons geändert hat.
die stateFormat variante würde etwa so aussehen:attr enum stateFormat {my $map={ 0=>'Bereit', 1=>'Stoerung', };; return $map->{ReadingsVal($name,'state','unknown')}}
wobei es besser ist den code in 99_myUtils.pm auszulagern und aus stateFormat aufzurufen.
gruss
andre