Hallo Zusammen,
ich habe mir eine kleine ReadingsGroup gebastelt in der ich eigentlich den Batteriestatus anzeigen lassen möchte.
1. Spalte: Batterie Ok/low
2. Spalte: Spannung/Prozent
3. Spalte: Alive/Dead
Nicht jedes Device hat das Reading der Spannung. Somit rutscht dann z.B. der Wert der 3. Spalte auf die 2. Spalte.
Hatte es so versucht, hat aber leider nicht funktioniert.:
defmod Batterieuebersicht readingsGroup <Device>,<Batteriestatus>,<Batterielevel>,<Activity> .*:battery,batteryLevel,Activity\
attr Batterieuebersicht valueFormat { if (defined $VALUE) {return $VALUE;;;;} else { return 'none';;;;} }
attr Batterieuebersicht valueIcon {'battery.ok' => 'batterie@green', 'battery.low' => 'batterie@red'}
VG, Thomas
du kannst die spalten mit valueColumn fest vorgeben.
alternativ kannst du auch mit dem ! prefix readings erzwingen die nicht vorhanden sind und sie dann über valueFormat auf den wert setzen den du haben willst.
Vielen Dank für die schnelle Antwort.
Zitatalternativ kannst du auch mit dem ! prefix readings erzwingen die nicht vorhanden sind und sie dann über valueFormat auf den wert setzen den du haben willst.
Kannst du mir da ein Beispiel geben?
VG, Thomas
warum nimmst du nicht den einfachen weg über valueColumn ?
Zitatwarum nimmst du nicht den einfachen weg über valueColumn ?
Wie würde der denn in meinem Fall aussehen? Irgendwie verstehe ich das anhand der Beschreibung der Commandref und Wiki nicht.
VG, Thomas
was genau ist denn unklar?
Zitatwas genau ist denn unklar?
Die Beschreibung.
valueColumn
Specify the minimum column in which a reading should appear.
attr temperatures valueColumn { temperature => 2 }Was genau macht diesese Attribut? Wenn ich dich richtig verstanden habe, kann ich damit die Spaltenbreite angeben. Aber wie genau würde das aussehen?
VG, Thomas
Habe es jetzt so versucht, aber funktioniert leider auch nicht. Wenn das Reading nicht existiert, rutschen die Werte immer noch nach links.
defmod Batterieuebersicht readingsGroup <Device>,<Batteriestatus>,<Batterielevel>,<Activity> .*:battery,batteryLevel,Activity\
attr Batterieuebersicht valueColumn { battery => 1,batteryLevel => 1 }
attr Batterieuebersicht valueFormat { if (defined $VALUE) {return $VALUE;;;;} else { return 'none';;;;} }
attr Batterieuebersicht valueIcon {'battery.ok' => 'batterie@green', 'battery.low' => 'batterie@red'}
Kann mir irgendwie nicht vorstellen dass es so kompliziert ist, das vernünftig darzustellen.
Da muss es doch irgendeinen einfachen Trick geben den ich einfach übersehe. :/
VG, Thomas
du gibst nicht die spalten breite sondern die spalten position an. also etwa so: attr Batterieuebersicht valueColumn { Activity => 4 }
Ah... jetzt. :D
So funktioniert es nun.
defmod Batterieuebersicht readingsGroup <Device>,<Batteriestatus>,<Batterielevel>,<Activity> .*:battery,batteryLevel,Activity\
attr Batterieuebersicht valueColumn { battery => 1,batteryLevel => 2, Activity => 3 }
attr Batterieuebersicht valueFormat { if (defined $VALUE) {return $VALUE;;;;} else { return 'none';;;;} }
attr Batterieuebersicht valueIcon {'battery.ok' => 'batterie@green', 'battery.low' => 'batterie@red'}
Vielen Dank!