FHEM Forum

FHEM => Anfängerfragen => Thema gestartet von: obi am 15 Februar 2019, 21:36:28

Titel: [GELÖST] - Perl-Code / Perl-Funktion wird in AT mehrfach ausgeführt
Beitrag von: obi am 15 Februar 2019, 21:36:28
Hallo,

ich habe folgendes Problem. Mit einem AT möchte ich eine Funktion aus den myUtils aufrufen. Allerdings wird dies mehrmals ausgeführt obwohl das AT nur für eine Uhrzeit eingestellt ist. Verwende ich anstat dem Perl-Code Fhem Befehle funktioniert dies ohne Fehler.

define at_talk_1550262170_0 at 2019-02-15T21:22:50 { testf("Info: Ich sollte eine Benachrichtigung ausgeben in 1 minuten ") }

Log:
2019.02.15 21:22:08 3: Info: Ich sollte eine Benachrichtigung ausgeben in 1 minuten
2019.02.15 21:22:20 3: Info: Ich sollte eine Benachrichtigung ausgeben in 1 minuten
2019.02.15 21:22:50 3: Info: Ich sollte eine Benachrichtigung ausgeben in 1 minuten

myUtils:
sub testf
{
my ($str) = @_;
Log 3, $str;
}


Laut commandref müssten auch Perl Befehle funktionieren https://fhem.de/commandref_DE.html#at (https://fhem.de/commandref_DE.html#at)

Bitte um Hilfe.

Danke
Titel: Antw:Perl-Code / Perl-Funktion wird in AT mehrfach ausgeführt
Beitrag von: MadMax-FHEM am 15 Februar 2019, 21:44:28
Geht auch mit Perl-Code.
Habe auch at sogar dynamisch per defmod angelegt und funktioniert wie es soll...

Poste doch mal ein list des at...

Gruß, Joachim
Titel: Antw:Perl-Code / Perl-Funktion wird in AT mehrfach ausgeführt
Beitrag von: Otto123 am 15 Februar 2019, 21:54:03
Hi,

ich habe das exakt so probiert wie Du gepostet hast. Funktioniert sauber.
Poste doch mal Deine 99_myUtils.pm komplett.

Gruß Otto
Titel: Antw:Perl-Code / Perl-Funktion wird in AT mehrfach ausgeführt
Beitrag von: obi am 16 Februar 2019, 16:48:38
Ich habe nun den Fehler gefunden, lag an mir. War eine unglückliche Konstellation der Konfiguration.

Ich hatte mir eine ReadingsGroup gebastelt welche mir alle vorhandenen AT-Devices anzeigt. Hierbei wurde dann bei jedem Aufruf der Seite mit der Readingsgroup der Perl-befehl ausgeführt, da der da irgendwie als Befehl verarbeitet wurde.