Hallo,
In fhem.cfg kann ich ja so überprüfen ob ein FHEM Device existiert:
fhem("delete WECKER_WECKEN_AT") if (defined($defs{'WECKER_WECKEN_AT'}));;;;
Ich möchte das ganze nun in einer meiner Funktionen in die myUtils verlagern um dynamisch FHEM Devices anzulegen.
Existiert ein Device schon z.B: WECKER_WECKEN_AT_0 soll WECKER_WECKEN_AT_1 angelegt werden.
my $index = 0;
while(defined($defs{'WECKER_WECKEN_AT_$index'})) {$index = $index + 1;}
fhem("define WECKER_WECKEN_AT_$index at $WECKEN_ZEIT {myUtils_Wecken($WECKEN_TAG,$WECKEN_SENDER)};;");
Leider wird nur einmailg WECKER_WECKEN_AT_0 angelegt.
Beim zweiten Aufruf der Funktion habe ich einen Fehler im Log das WECKER_WECKEN_AT_0 schon existiert.
Jemand eine Idee ???
Danke im Voraus
my $index = 0;
while(defined($defs{'WECKER_WECKEN_AT_$index'})) {$index = $index + 1;}
fhem("define WECKER_WECKEN_AT_$index at $WECKEN_ZEIT {myUtils_Wecken($WECKEN_TAG,$WECKEN_SENDER)};;");
Bau mal Debugging Ausgaben ein. Einmal innerhalb der Schleife und einmal ausserhalb. Dann wirst Deinen Fehler ganz schnell sehen ;D
Und dann solltest Du mal perl-Grundlagendoku lesen, um den Unterschied zwischen ' und " bei alphanumerischen Werten zu verstehen.
So weit hatte ich noch gar nicht geschaut. Danke betateilchen für die Info
Grüße