FHEM Installation Fehler ausmerzen

Begonnen von strauch, 26 Februar 2014, 09:55:41

Vorheriges Thema - Nächstes Thema

strauch

Hallo,

ich weiß gar nicht wohin ich das idealerweise schreiben soll. Ich versuche gerade sämtliche Fehlermeldungen die in meiner FHEM Installation so auftauchen auf den Grund zu gehen. Bei manchen Fehlermeldungen hab ich keine Ahnung woher die kommen und hoffe hier auf Hilfe.

Ich logge die Ausgaben von FHEM in eine Textdatei. Dort taucht immer wieder mal nach einem Neustart folgende Zeile auf:
Use of uninitialized value $data{"wz_Fenster"} in concatenation (.) or string at (eval 423) line 1.


wz_Fenster ist ein FHTTK Sensor der mit der Heizung im Wohnzimmer gekoppelt ist. Beides ist so in FHEM definiert:
define wz_Heizung FHT XXXX
attr wz_Heizung alias Wohnzimmer Heizung
attr wz_Heizung group Heizung
attr wz_Heizung lazy 1
attr wz_Heizung model fht80b
attr wz_Heizung retrycount 1
attr wz_Heizung room Wohnzimmer

define wz_Fenster CUL_FHTTK XXXXXX
attr wz_Fenster alias Wohnzimmer Terassentür
attr wz_Fenster group Fenster
attr wz_Fenster model FHT80TF
attr wz_Fenster room Wohnzimmer


Ich hab das gleiche System auch noch als sz_Fenster bzw. Heizung im Schlafzimmer, da wird aber kein Fehler ausgespuckt. Leider steht bei der Fehlermeldung auch nicht wo der Fehler auftaucht.

Danke

strauch
FHEM 5.6 VMware mit Debian. 1 CUL für FS20 und HMLAN für Homematic, HM-CC-RT-DN, HM-LC_Sw1PBU-FM, HM-LC-Bl1PBU-FM,  HM-SEC-SC, HM-SEC-SC-2, HM-LC-Sw1-Pl2, HM-Sec-RHS, ASH2200, FHT80B, S20KSE, Sonos, XBMC, FB_Callmonitor, SMLUSB, Arduino Firmata, uvm.

betateilchen

ZitatIch versuche gerade sämtliche Fehlermeldungen die in meiner FHEM Installation so auftauchen

Nicht alles, was in der Systemkonsole auftaucht, ist tatsächlich ein Fehler. Das was Dir hier Kopfzerbrechen macht, ist lediglich ein Hinweis darauf, dass in irgendeinem Modul der Fall nicht abgefangen wurde, dass eine Variable keinen Inhalt hat. Das ist nicht schlimm, sondern lediglich ein optisches Problem und hat keinerlei funktionale Auswirkungen.

Grob gesagt, gibt es drei Klassen von solchen Meldungen:

1. Information
2. Warnung
3. Fehler

Deine Meldung gehört in die Kategorie 1. Da "sollte" sich mal jemand drum kümmern, wenn nicht, ist aber auch nicht schlimm.

Bei Kategorie 3 ist meistens ein Absturz von fhem die Folge :)
-----------------------
Formuliere die Aufgabe möglichst einfach und
setze die Lösung richtig um - dann wird es auch funktionieren.
-----------------------
Lesen gefährdet die Unwissenheit!

strauch

Hi betateilchen,

danke für die schnelle Antwort. Dann kann ich das abhaken. Dann vermute ich mal wird der "Fehler" im Modul CUL_FHTTK liegen? Hab so Teile noch öfters, dann kann ich das ja an die vermutlichen Modulschreiber schicken und die können dann schauen ob sie es ausmerzen oder nicht. Wobei bei den anderen oft das Modul dabei steht.

Grüße

strauch
FHEM 5.6 VMware mit Debian. 1 CUL für FS20 und HMLAN für Homematic, HM-CC-RT-DN, HM-LC_Sw1PBU-FM, HM-LC-Bl1PBU-FM,  HM-SEC-SC, HM-SEC-SC-2, HM-LC-Sw1-Pl2, HM-Sec-RHS, ASH2200, FHT80B, S20KSE, Sonos, XBMC, FB_Callmonitor, SMLUSB, Arduino Firmata, uvm.

betateilchen

Zitat von: strauch am 26 Februar 2014, 10:07:13Dann vermute ich mal wird der "Fehler" im Modul CUL_FHTTK liegen?

Ich habe eine andere Vermutung. Hast Du 76_MSGMail im Einsatz?
-----------------------
Formuliere die Aufgabe möglichst einfach und
setze die Lösung richtig um - dann wird es auch funktionieren.
-----------------------
Lesen gefährdet die Unwissenheit!

strauch

Also ich verschicke per E-Mail eine Info wenn das Fenster länger als 30min offen ist, allerdings nicht (bewusst) über das Modul.
FHEM 5.6 VMware mit Debian. 1 CUL für FS20 und HMLAN für Homematic, HM-CC-RT-DN, HM-LC_Sw1PBU-FM, HM-LC-Bl1PBU-FM,  HM-SEC-SC, HM-SEC-SC-2, HM-LC-Sw1-Pl2, HM-Sec-RHS, ASH2200, FHT80B, S20KSE, Sonos, XBMC, FB_Callmonitor, SMLUSB, Arduino Firmata, uvm.

betateilchen

Ich sag mal so: aus CUL_FHTTK kommt der Hinweis jedenfalls nicht.

Wie verschickst Du denn Deine Nachrichten?
-----------------------
Formuliere die Aufgabe möglichst einfach und
setze die Lösung richtig um - dann wird es auch funktionieren.
-----------------------
Lesen gefährdet die Unwissenheit!

strauch

#6
Ein Watchdog überprüft das Fenster:
define watchdog_wz_Fenster watchdog wz_Fenster:Window:.Open 00:30 wz_Fenster:Window:.Closed {\
eMail('mail@domain.de','FHEM: Wohnzimmertür zu lange offen','Wohnzimmertür zu lange offen');;\\
fhem('setstate watchdog_wz_Fenster defined');;\\
}
attr watchdog_wz_Fenster always_hidden true #für andFHEM
attr watchdog_wz_Fenster regexp1WontReactivate 1
attr watchdog_wz_Fenster room _Watchdog


die Subroutine für eMail steckt in der 99 myutils:

##############################################
######## DebianMail  Mail auf dem RPi versenden ############
sub
eMail
{
my $rcpt = shift;
my $subject = shift;
my $text = shift;
my $ret = "";
my $sender = "fhem\@domain.de";
my $konto = "nutzername";
my $passwrd = "password";
my $provider = "mail.domain.de";
Log 1, "sendEmail RCP: $rcpt";
Log 1, "sendEmail Subject: $subject";
Log 1, "sendEmail Text: $text";

$ret .= qx(sendEmail -f '$sender' -t '$rcpt' -u '$subject' -m '$text' -s '$provider' -xu '$konto' -xp '$passwrd' -o tls=no);
$ret =~ s,[\r\n]*,,g;    # remove CR from return-string
Log 1, "sendEmail returned: $ret";
}


Für das sz_fenster gibt es diese Routine genauso. Das ist es was mich auch am meisten irritiert, ich behandele beide Fenster "eigentlich" gleich und bekomme die Meldung aber nur beim wz_Fenster. Eigentlich, weil irgendwo muss ja was anders sein, sonst gäb es ja nicht nur eine Meldung. Vielleicht aber auch nur weil das wz_Fenster ca. 4-10x am Tag offen ist und sz_Fenster eher 1x.
FHEM 5.6 VMware mit Debian. 1 CUL für FS20 und HMLAN für Homematic, HM-CC-RT-DN, HM-LC_Sw1PBU-FM, HM-LC-Bl1PBU-FM,  HM-SEC-SC, HM-SEC-SC-2, HM-LC-Sw1-Pl2, HM-Sec-RHS, ASH2200, FHT80B, S20KSE, Sonos, XBMC, FB_Callmonitor, SMLUSB, Arduino Firmata, uvm.