FHEM Forum

FHEM => Anfängerfragen => Thema gestartet von: riker1 am 10 Oktober 2023, 09:43:14

Titel: (solved) stateformat mit perl und http links href
Beitrag von: riker1 am 10 Oktober 2023, 09:43:14
Hallo

kann mir jemand helfen?

wenn ich perl im Stateformat verwende, kann ich keine links mit href definieren.
Was mache ich da falsch bzw wo muss ich wie Anführungszeichen setzen.


{..
<a href="http://StatusNET_IPAddress" target="_blank">StatusNET_IPAddress</a>
...}


habe es auch mit Variabler probiert, geht aber auch nicht

my $IP=ReadingVal($name,'tatusNET_IPAddress','');

Irgendwie ist bei PERL in stateformat das ganze Feld ein Link.

Danke für die Hilfe und Klarstellung

MfG Thomas
Titel: Aw: stateformat mit perl und http links href
Beitrag von: yersinia am 10 Oktober 2023, 09:58:57
Zeig doch mal dein stateFormat.
Titel: Aw: stateformat mit perl und http links href
Beitrag von: riker1 am 10 Oktober 2023, 10:10:37
Hi

hier das komplette stateFormat

würde gerne die IP nur mit link als href anpassen

{my $IP=ReadingsVal($name,'StatusNET_IPAddress','');
my $Cur=sprintf('C %.1f A',ReadingsNum($name,'ENERGY_Current',0));
my $PO=ReadingsVal($name,'POWER1','');
"".$PO."
".$Cur."</br>
".ReadingsVal($name,'LWT','')."
".$IP."</br>
-Ru: 7:".ReadingsVal($name,'Rule1','')." ".ReadingsVal($name,'Var1','')." ".ReadingsVal($name,'Rule2','')." ".ReadingsVal($name,'Var2','')." ".ReadingsVal($name,'Rule3','')." ".ReadingsVal($name,'Var3','')." ".ReadingsVal($name,'Var10','')."<br>
".sprintf('aktuell: %.1f W Tag: %.2f kWh Gestern: %.3f kWh Gesamt: %.4f kWh', ReadingsVal($name,'ENERGY_Power','-1'), ReadingsVal($name,'ENERGY_Today','-1'), ReadingsVal($name,'ENERGY_Yesterday','-1'), ReadingsVal($name,'ENERGY_Total','-1')).""}
Titel: Aw: stateformat mit perl und http links href
Beitrag von: riker1 am 10 Oktober 2023, 13:01:34
Habe nun eine Lösung , weiss nicht ob es bessere gibt..


dann ist die IP als Link im state

{my $IP=ReadingsVal($name,'StatusNET_IPAddress','');
my $source = ReadingsVal($name,'StatusNET_IPAddress','');
my $TA_IP = "<html><a href='http://".$IP."' target='_blank'>".$IP."</a></html>";
my $Cur=sprintf('C %.1f A',ReadingsNum($name,'ENERGY_Current',0));
my $PO=ReadingsVal($name,'POWER1','');
"".$PO."
".$Cur."</br>
".ReadingsVal($name,'LWT','')."
".$TA_IP."</br>
-Ru: 7:".ReadingsVal($name,'Rule1','')." ".ReadingsVal($name,'Var1','')." ".ReadingsVal($name,'Rule2','')." ".ReadingsVal($name,'Var2','')." ".ReadingsVal($name,'Rule3','')." ".ReadingsVal($name,'Var3','')." ".ReadingsVal($name,'Var10','')."<br>
".sprintf('aktuell: %.1f W Tag: %.2f kWh Gestern: %.3f kWh Gesamt: %.4f kWh', ReadingsVal($name,'ENERGY_Power','-1'), ReadingsVal($name,'ENERGY_Today','-1'), ReadingsVal($name,'ENERGY_Yesterday','-1'), ReadingsVal($name,'ENERGY_Total','-1')).""}