myUtils - Prüfen ob Device existiert ?

Begonnen von OK_DE, 15 Januar 2016, 06:41:10

Vorheriges Thema - Nächstes Thema

OK_DE

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


CoolTux


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
Du musst nicht wissen wie es geht! Du musst nur wissen wo es steht, wie es geht.
Support me to buy new test hardware for development: https://www.paypal.com/paypalme/MOldenburg
My FHEM Git: https://git.cooltux.net/FHEM/
Das TuxNet Wiki:
https://www.cooltux.net

betateilchen

Und dann solltest Du mal perl-Grundlagendoku lesen, um den Unterschied zwischen ' und " bei alphanumerischen Werten zu verstehen.
-----------------------
Formuliere die Aufgabe möglichst einfach und
setze die Lösung richtig um - dann wird es auch funktionieren.
-----------------------
Lesen gefährdet die Unwissenheit!

CoolTux

So weit hatte ich noch gar nicht geschaut. Danke betateilchen für die Info



Grüße
Du musst nicht wissen wie es geht! Du musst nur wissen wo es steht, wie es geht.
Support me to buy new test hardware for development: https://www.paypal.com/paypalme/MOldenburg
My FHEM Git: https://git.cooltux.net/FHEM/
Das TuxNet Wiki:
https://www.cooltux.net