define ... at --> ignoriert rel. Zeitangabe

Begonnen von duu75, 13 April 2016, 18:34:57

Vorheriges Thema - Nächstes Thema

duu75

Ich habe ein Problem mit einem "define ... at" in einem Notify mit mehreren auszuführenden Befehlen.

Folgendes Notify tut nicht was er soll!
... notify Taster1 get Cam image ; define timerdummy at +00:00:15 set Lamp on


Dazu habe ich folgende Tests in der Kommandozeile eingegeben:

define timerdummy at +00:00:15 set Lamp on
OK: Lampe geht nach 15 Sek. an.

set Lamp off ; define timerdummy at +00:00:15 set Lamp on
OK: Lampe geht aus, falls an, und nach 15 Sek. an.

Jetzt ersetze ich das erste Lamp off mit einem IPCAM Modul Aufruf.
get Cam image ; define timerdummy at +00:00:15 set Lamp on

OK: Die Cam macht den Snapshot erfolgreich, ersichtlich aus den Readings und auf HDD das aktuelle JPG.
NOK: Die Lampe geht am nächsten Tag um 00:00:15 an!!!!

Es wird das "+" beim "define ... at" ignoriert und nicht als rel. Zeit definiert!

Jetzt tausche ich die Befehle:
define timerdummy at +00:00:15 set Lamp on ; get Cam image
OK: Die Cam macht den Snapshot erfolgreich, ersichtlich aus den Readings und nach 15 Sek. geht die Lampe an.

Oder schreibe ich das Notify um und nutze den Perlausdruck mit {fhem ...}, geht es wie gewünscht!

... notify Taster1 {fhem ("get Cam image ; define timerdummy at +00:00:15 set Lamp on")}

Was ist das faul oder habe ich einen Denkfehler?
Warum verhält sich das aber nur bei dem IPCAM Aufruf so?

FHEM ist Latest Revision: 11150
fhem.pl              11144 2016-03-29 09:10:53Z rudolfkoenig
90_at.pm          10594 2016-01-22 13:27:34Z rudolfkoenig
91_notify.pm     11109 2016-03-21 09:29:52Z rudolfkoenig

rudolfkoenig

Wo wurde diese Zeile definiert?
Ist dir das Unterschied zw. ; und ;; bekannt?
Gelesen / Verstanden: http://fhem.de/commandref.html#command ?

duu75

Das ist die Definition direkt aus der WebGUI.
Also mit ; ist schon richtig und nicht aus der cfgDatei mit ;; .

Grundsätzlich geht es ja mit anderen Befehlen bzw. wenn der Ipcam an zweiter Stelle steht.
Ist das ein Problem mit dem Ipcam Modul?
Da habe ich was gelesen mit Blockierung von Fhem usw. bzw. Verzögerungen etc.
Aber warum soll durch evtl. Blockierung die AT Definition zwar angelegt werden und dabei das + unter den Tisch fallen?

rudolfkoenig

Wiederhole bitte den Problemfall mit einem "attr global verbose 5", und haeng den Logausschnitt hier an.

duu75

Jetzt auf einmal gibts es keine Probleme mehr!!!???
Schon sehr merkwürdig.
Habe verbose auf 5 gestellt und alles wie von Zauberhand geht ohne Probleme.
Zurück auf 3 und geht immer noch.
Alles ohne FHEM RESTART oder jegliche Änderung an der Konfig.

SPOOKY! :-)

Kann also erstmal geschlossen werden.
Ich hoffe es bleibt auch so. ;-)