Hallo,
um eine Reglung zu testen brauche ich eine Simulation von Verbrauchwerten. In der Datei NULL.log sind dazu 120 Werte gespeichert. Nun sollen daraus alle 3 Sekunden ein Wert nach test_Verbrauch (dummy) gehen.
sub teste_NULL()
{
my $datei = "/home/pi/energie/NULL.log";
open(IN, "<$datei")
|| die ("\nkann Datei $datei nicht oeffnen");
while(<IN>) {
s/\n//;
my $wert = $_;
fhem("set test_Verbrauch $wert");
sleep(3);
}
close (IN);
}
Die Datei "/home/pi/energie/NULL.log" ist mit Leserechten vorhanden - trotzdem gibt es eine Fehlermeldung:
2023.10.23 13:28:37 1: ERROR evaluating {teste_NULL()}:
kann Datei /home/pi/energie/NULL.log nicht oeffnen at ./FHEM/99_myUtils.pm line 29.
Hat jemand mal einen Tipp?
Ingo
Zitat von: ingo46 am 23 Oktober 2023, 13:51:44/home/pi/energie/NULL.log
Leserechte ja aber verm. für User pi und Gruppe pi...
...fhem läuft als User fhem -> darf im Home von pi nix...
EDIT:
ls -la /home/pi/energie/NULL.log
würde das (verm.) zeigen...
EDIT: https://wiki.ubuntuusers.de/Rechte/
Warum liegt die Datei nicht im Home/Bereich vom User fhem?
Home vom User fhem: /opt/fhem
Gruß, Joachim
..danke für den Hinweis - mir war nicht mehr bewusst, "fhem -> darf im Home von pi nix.."
Nun tut sich aber ein neues Problem auf: sleep ist blockierend - fhem macht während des Aufrufs nichts. Ich muss somit eine andere Lösung finden.
Per at aufrufen...
("außerhalb", z.B. globale Variable, Reading, ... merken "wo" du warst...)
Als Shell-Script auslagern...
Gibt viele Möglichkeiten...
Gruß, Joachim