FHEM Forum

FHEM => Anfängerfragen => Thema gestartet von: stefan-dd am 01 Januar 2018, 14:31:06

Titel: mehrer devStateIcon nebeneinander
Beitrag von: stefan-dd am 01 Januar 2018, 14:31:06
Hallo,
ich möchte im Modul der FritzBox den Status von WLAN und GastWLAN als Symbol angezeigt bekommen.
Ein Symbol ist keine Problem, aber 2 nebeneinander. Ein für WLAN und eins für GastWLAN. Wie macht man so etwas?
Titel: Antw:mehrer devStateIcon nebeneinander
Beitrag von: KernSani am 01 Januar 2018, 15:04:45
Hi Stefan,


devStateIcon gibt es immer nur eines (ein Device kann ja auch nur einen "state" haben). DU kannst dir allerdings über die Perl-Variante (https://fhem.de/commandref.html#devStateIcon) mehrere Icons zusammen basteln.


Grüße,


Oli



Titel: Antw:mehrer devStateIcon nebeneinander
Beitrag von: stefan-dd am 01 Januar 2018, 16:11:34
Danke, da bin ich schon einen Schritt weiter.
Hast Du noch ein Beispiel für diese Variante?
Titel: Antw:mehrer devStateIcon nebeneinander
Beitrag von: KernSani am 01 Januar 2018, 18:58:12
Auf die Schnelle kurz eine Sub aus meiner Betterieüberwachung, die ein Icon und Text zurückliefert, sollte sich aber leicht anpassen lassen:


sub myUtils_batStatusIcon($) {
my ($name) = @_;
my $icon = "";
my $state = ReadingsVal($name,"state","");
if ($state eq "ok") {
$icon = "measure_battery_100\@green";
}
else {
$icon = "measure_battery_25\@red";
}
my $img = FW_makeImage( $icon, $state);
my $text = "<a href='fhem?detail=rg_battery'>".ReadingsVal($name,"nokDev",0)."/".ReadingsVal($name,"totalDev",0)."</a>";
return $img.$text;

}



Grüße,

Oli
Titel: Antw:mehrer devStateIcon nebeneinander
Beitrag von: KernSani am 01 Januar 2018, 23:31:42
Hi Stefan,


bevor du dir dein FHEM abschiesst (so wie ich es gerade gemacht habe): Obiges coding funktioniert für stateFormat, aber nicht für devStateIcon. devStateIcon verlangt zwingend, dass der Return-Wert mit "<>" umschlossen ist. Die letzte Zeile der Sub sollte also z.B. so aussehen:


return "<div>".$img.$text."</div>";


Grüße,

Oli