FHEM Forum

FHEM => Anfängerfragen => Thema gestartet von: heikoh81 am 30 September 2014, 20:45:46

Titel: delete XYZ: Not Found - obwohl Objekt vorhanden ist
Beitrag von: heikoh81 am 30 September 2014, 20:45:46
Hallo zusammen,

ich lösche jeden Tag meine RandomTimer tagsüber per at:

define Zufall1SchlafLoeschen at *09:00:00 {\
    fhem ("delete Zufall1SchlafTimer");;\
}
attr Zufall1SchlafLoeschen room Zufallslicht


Abends werden diese per at neu erstellt.

define Zufall1SchlafperTimer at *{sunset_abs(-3000,"16:41","21:30")} {\
  Zufallslicht ("Zufall1Schlaf", "PollinZufall1Schlaf", "17:00:00", "23:59:59", "1800", "400/400", $we);;\
}
attr Zufall1SchlafperTimer group Aktivitaeten
attr Zufall1SchlafperTimer room Zufallslicht


Problem:
Das Löschen per at klappt nicht. Der Timer bleibt stehen. Im Log steht dann:

2014.09.30 15:00:00 3: delete Zufall1SchlafTimer : Please define Zufall1SchlafTimer first
2014.09.30 15:00:00 3: Zufall1SchlafLoeschen2: Please define Zufall1SchlafTimer first


Und das, obwohl der Timer noch als Objekt auftaucht.
Manuelles löschen über das WebIf per "delete Zufall1SchlafTimer" funktioniert problemlos.
Ich hatte einige Monate kein Update mehr gemacht, aber seit dem Einspielen der aktuellen Updates funktioniert das delete aber nicht mehr.

Ausführliche Erläuterungen - hängen nicht direkt mit dem Problem zusammen:
Der RandomTimer wird mittels der Funktion "Zufallslicht" erstellt.
Hierhin führe ich Zeit-Berechnungen durch, die in Abhängigkeit des Sunset usw. den frühesten Einschaltpunkt berechnen.
Außerdem habe ich realisiert, dass auch Abends - wenn man spontan das Haus verlässt - die RandomTimers sofort starten kann - in Abhängigkeit der Startzeit bis zum angegebenen Endzeitpunkt.

Als Ergebnis wird folgender Timer erstellt:

define Zufall1SchlafTimer RandomTimer 20:57:05 PollinZufall1Schlaf +03:02:54 1800
attr Zufall1SchlafTimer room Zufallslicht
attr Zufall1SchlafTimer stateFormat { ReadingsVal('PollinZufall1Schlaf', 'state', 'off') }
attr Zufall1SchlafTimer switchmode 400/400


Viele Grüße,
Heiko
Titel: Antw:delete XYZ: Not Found - obwohl Objekt vorhanden ist
Beitrag von: Puschel74 am 01 Oktober 2014, 06:10:51
Hallo,

es ist doch eindeutig - du versucht einen Timer zu löschen der nicht existiert.

Glaube mir, FHEM weiß schon wann es eine Meldung ausspucken muss und wann nicht - und auch was in der Meldung stehen muss  ;)
Und wenn FHEM sagt das das Device nicht existiert das du löschen willst dann ist das auch so.
Das hervorheben von Wörtern in Notepad++ sollte dir dabei helfen können den "Fehler" zu finden.

Aber ich bin mal nicht so  8)
Du willst löschen:
Zitatdelete Zufall1SchlafTimer
Erzeugt wird aber:
Zitatdefine Zufall1SchlafperTimer
Fällt dir das per vor Timer auf?

Wenn du schon soetwas programmierst dann sollte dir das auch auffallen - zumal dich FHEM ja auch drauf stösst.

Grüße
Titel: Antw:delete XYZ: Not Found - obwohl Objekt vorhanden ist
Beitrag von: heikoh81 am 01 Oktober 2014, 18:55:20
Hallo puschel,

danke für deine Antwort,
auch wenn ich manchmal eine solche Feinheiet durchaus schon übersehen habe, ist es diesmal leider nicht die Erklärung.

Ich hatte versucht, es verständlich zu erklären, aber das ganze ist kompliziert.

define Zufall1SchlafperTimer at

ruft lediglich die Funktion auf, die dann jeden Abend einen Randomtimer erzeugt.
Dies hatte ich auch ganz unten in meinem Post in der ausführlichen Erläuterung geschrieben.
Der RandomTimer wird dann in dieser Form erstellt:

define Zufall1SchlafTimer RandomTimer 20:57:05


Das Problem ist, dass das Löschen nur manchmal nicht klappt.
Heute morgen z.B. wurden alle RandomTimer gelöscht.

Ich habe den Eindruck, dass seit dem Einspielen aller Updates dieses Problem auftritt.
Am RandomTimer wurde ja auch etwas geändert.
Davor hat alles wunderbar funktioniert.

Viele Grüße,
Heiko