FHEM Forum

FHEM => Anfängerfragen => Thema gestartet von: Digimatik am 18 Februar 2013, 21:32:57

Titel: Fritzbox Temperatur als Sensorwert
Beitrag von: Digimatik am 18 Februar 2013, 21:32:57
Ich bin noch blutigster Anfänger, habe es aber geschafft nach der Anleitung im Wiki die Temperatur der Fritzbox im Floorplan anzuzeigen.
Was ich aber nicht verstehe, wie kann ich die Temperatur der Fritzbox als Sensor anzeigen und dann den Sensor im Floorplan mit dem Arrange Modus platzieren?

geht das über eine dummy Variable, oder kann ich einen Sensor definieren?
Ich weiss nur, das ich mit dieser Zeile den integer Wert bekomme

"FritzCPUTemperature" => int(`ctlmgr_ctl r power status/act_temperature`).'°',

Ich muss gestehen, ich habe von Perl Programierung keine Ahnung, habe nur in jungen Jahren C und C++ programmiert.

Titel: Aw: Fritzbox Temperatur als Sensorwert
Beitrag von: Digimatik am 20 Februar 2013, 18:22:37
Hmm,
100 visits, aber kein Beitrag? Ist meine Frage zu dumm?
Titel: Aw: Fritzbox Temperatur als Sensorwert
Beitrag von: MisterEltako am 20 Februar 2013, 18:55:06
Hi!

Also wenn du den Wert schon hast und dieser richtig ist, dann ist das Einfachste die Variante mit dem Dummy.

Vielleicht so:

define Anzeige dummy
attr Anzeige room Temperatur

define Intervall at +*00:05:00{\
my $FritzCPUTemperature => int(`ctlmgr_ctl r power status/act_temperature`).'°';;\
setstate Anzeige $FritzCPUTemperature;;\
}

MfG, MisterEltako.
Titel: Aw: Fritzbox Temperatur als Sensorwert
Beitrag von: MisterEltako am 20 Februar 2013, 19:41:21
Upps, noch etwas ist zu ändern:

in fhem.cfg:
define Anzeige dummy
attr Anzeige room Temperatur

define Intervall at +*00:05:00{\
my $FritzCPUTemperature => int(`ctlmgr_ctl r power status/act_temperature`).'°';;\
fhem('setstate Anzeige $FritzCPUTemperature');;\
}

Eventuell musst du mit dem Codeteil noch etwas anpassen: int(`ctlmgr_ctl r power status/act_temperature`).'°'
Ich kann es leider nicht für dich testen, da mein FHEM auf einer Diskstation läuft.

MfG, MisterEltako
Titel: Aw: Fritzbox Temperatur als Sensorwert
Beitrag von: Digimatik am 20 Februar 2013, 21:30:41
Hi MisterEltako, Danke für die Antwort.
Direkt mal ausprobiert. Ich musste noch ein Leerzeichen nach dem Intervall einfügen da ich folgende Fehlermeldung bekam

Wrong timespec, use "
Dann wurde die Konfig übernommen, aber ich sehe nicht, dass der Temperaturwert aus der FB übernommen wird.

das ist z. Zt. der Code:

# Fritzbox Temperatur
define FB_Anzeige dummy
attr FB_Anzeige room FB_Temperatur

define Intervall at +*00:05:00 {\
my $FritzCPUTemperature => int(`ctlmgr_ctl r power status/act_temperature`).'°';;\
fhem('setstate FB_Anzeige $FritzCPUTemperature');;\
}


Ich habe fhem als root user eingestellt.
Und das Beispiel im Wiki: http://www.fhemwiki.de/wiki/FritzBox_Parameter_in_fhem_anzeigen (//www.fhemwiki.de/wiki/FritzBox_Parameter_in_fhem_anzeigen) funktioniert auch.

Es scheint so, als wird der String "$FritzCPUTemperature"  (ohne Anführungszeichen) in dem Dummy gespeichert, und nicht der reale Wert.

Unter "Everything" steht:
dummy FB_Anzeige $FritzCPUTemperature
Titel: Aw: Fritzbox Temperatur als Sensorwert
Beitrag von: Digimatik am 24 Februar 2013, 12:56:48
Diese Code funktioniert jetzt bei mir, ich musste mit einfachen und doppelten Anführungszeichen experimentieren:


#########################################################################
##  Fritzbox Temperatur per Dummy alle 5 min auslesen
#########################################################################
define FB_Anzeige dummy
attr FB_Anzeige room Keller

define FB_Intervall at +*00:05:00 {\
my $FritzCPUTemperature = `ctlmgr_ctl r power status/act_temperature`.'°';;\
fhem("setstate FB_Anzeige $FritzCPUTemperature");;\
}

dummy
FB_Anzeige
43 °
Titel: Antw:Fritzbox Temperatur als Sensorwert
Beitrag von: chriz am 01 November 2013, 14:20:02
die Temperatur-Anzeige funktioniert leider unter Fritz!OS6 (7390) nicht mehr. Gibt es einen Fix?

Cheers
Chris