FHEM Forum

FHEM => Anfängerfragen => Thema gestartet von: lynckmeister am 20 September 2017, 20:48:08

Titel: Fritzbox Presence Modul eingebunden , aber FHEM vergisst irgendwann die Routine
Beitrag von: lynckmeister am 20 September 2017, 20:48:08
Hallo,
ich habe nach der Anleitung von Tim (https://voizchat.de/fhem-tutorial-serie-teil-06-anwesenheitserkennung-ueber-wlan/)
die Anwesenheitserkennung über das Fritzbox Modul und presence eingebaut.
Dazuhabe ich in myUtilsTemplate.pm eine Routine eingehängt :
sub
NetDevDa($)
{
my $n = 0;
my ($Reading) = @_;
$Reading =~ tr/:/_/;
my @fbs = devspec2array("TYPE=FRITZBOX");
foreach( @fbs ) {
my $Name = ReadingsVal($_,"mac_" . $Reading,"");
if( ($Name ne "") && ($Name ne "inactive") ) {
$n++;
}
}
if( $n == 0) {
return 0;
} else {
return 1;
}
}


Nach einigen Tagen aber scheint FHEM diese NETDEVDA routine zu vergessen , dann bekomme ich mit presence nur noch ERROR gemeldet und im Log file steht:

PRESENCE (lynckmeister) - error while processing check: unexpected function output (expected 0 or 1): Undefined subroutine &main::NetDevDa called at (eval 4641) line 1.

Wenn ich die Funktion dann umbenenne ein NetDevDaDa und das Presence modul auf diese Funktion verweise funktioniert es wieder eine Zeit ...
Wie kommt es dazu ?`
Titel: Antw:Fritzbox Presence Modul eingebunden , aber FHEM vergisst irgendwann die Routine
Beitrag von: CoolTux am 20 September 2017, 20:51:58
Seltsam das sie Funktion überhaupt geladen wird.
Du musst die Datei auch umbenennen. Vielleicht mal lieber erst was offizielles lesen wie FHEM Wiki.

https://wiki.fhem.de/wiki/99_myUtils_anlegen
Titel: Antw:Fritzbox Presence Modul eingebunden , aber FHEM vergisst irgendwann die Routine
Beitrag von: lynckmeister am 20 September 2017, 21:03:35
Hi CoolTux, danke für deinen Tip,
aber dort ist ja zu lesen :
Bei der Bearbeitung über den Integrierten Editor wird die Programmdatei beim Abspeichern automatisch mit den Änderungen neu geladen.
da ich das einfach in den integrierten Editor gepastet habe, kann man demnach davon ausgehen, dass sie geladen wird beim speichern.
Und das merkt man ja auch daran, dass es zunächst funktioniert.
Warum aber "entädt" sich die Funktion noch einer gewissen Zeit?
Titel: Antw:Fritzbox Presence Modul eingebunden , aber FHEM vergisst irgendwann die Routine
Beitrag von: CoolTux am 20 September 2017, 21:09:18
myUtilsTemplate.pm

Was sagt Dir das Wort Template und was steht genau im Wiki wie die Datei für eine reibungslose Funktion heißen soll?
Titel: Antw:Fritzbox Presence Modul eingebunden , aber FHEM vergisst irgendwann die Routine
Beitrag von: lynckmeister am 20 September 2017, 22:25:50
 8) ich versthehe... danke für die Hilfe - jetzt wird es wohl laufen... werde es die Tage beobachten!