Hauptmenü

DOIF zum Wochentag

Begonnen von mfeske, 25 November 2015, 20:24:47

Vorheriges Thema - Nächstes Thema

mfeske

Hallo zusammen,
ich verwende folgendes DOIF:
([19:14|01234] and [rr_location_janic] eq "home" and [Ferientag_Berlin] eq "NEIN") ((set gong_MP3 playTone 254,021,254)) DOELSEIF ([20:14] and [rr_location_janic] eq "home") ((set gong_MP3 playTone 254,021,254))

Es soll am SO,MO,DI,MI,DO wenn Janic zu Hause ist und kein Ferientag ist den gong auslösen. An allen anderen Tagen wenn Janic zu Hause ist um 20:14.

Von der Sache her funktioniert es auch, was mich aber wundert ist das es an manchen Tagen (wie heute) eine Erinnerung um 19:14 UND eine um 20:14 gibt :-(
Hardware:
1 x Raspberry Pi Mod. B 512 MB
eq-3 2 x MAX! eTRV Heizungssteller, 1 x MAX! Fensterkontakt, 1 x MAX! Cube - LAN Gateway (ausser Betrieb)
Intertechno 1x ITZ-500, 3x ITT-1500, 9x ITR-1500, 3 x ITDL-1000, 2 x ITL-500
1 x CC1101-USB-Lite 433MHz (CUL433)  V3 1 x CC1101-USB-Lite 868MHz (CUL868)

kumue

Ich sehe das so...
aus der commandref DOIF
ZitatSyntax:
    define <name> DOIF (<Bedingung>) (<Befehle>) DOELSEIF (<Bedingung>) (<Befehle>) DOELSEIF ... DOELSE (<Befehle>)
Die Angaben werden immer von links nach rechts abgearbeitet.

Um 19:14Uhr wird die erste Bedingung abgearbeit..SO,MO,DI,MI,DO, Janic zu Hause ist, Berlin kein Ferientag => DingDong
Um 20:14Uhr wird DOIF wieder aktiv und arbeitet von links nach rechts ab...
Die erste Bedingung triff nicht mehr zu, da es nun schon 1h später ist.
Ist 20:14 Uhr Janic immer noch zu Hause => DingDong

Sozusagen müßte es täglich - wenn Janic daheim ist - 20:14Uhr DingDong machen


mfeske

also sollte ich vermutlich die Tage 5, 6 noch in die zweite Bedingung einbringen und eine dritte dafür wenn Ferien sind.
Hardware:
1 x Raspberry Pi Mod. B 512 MB
eq-3 2 x MAX! eTRV Heizungssteller, 1 x MAX! Fensterkontakt, 1 x MAX! Cube - LAN Gateway (ausser Betrieb)
Intertechno 1x ITZ-500, 3x ITT-1500, 9x ITR-1500, 3 x ITDL-1000, 2 x ITL-500
1 x CC1101-USB-Lite 433MHz (CUL433)  V3 1 x CC1101-USB-Lite 868MHz (CUL868)

Damian

#3
Zitat von: mfeske am 26 November 2015, 09:46:17
also sollte ich vermutlich die Tage 5, 6 noch in die zweite Bedingung einbringen und eine dritte dafür wenn Ferien sind.

In einem DOIF-Modul wird bei Zeittriggern nur der DO-Fall ausgewertet, bei dem die getriggerte Zeit vorkommt, alle anderen DOELSEIF-Zweige werden zu diesem Zeitpunkt nicht ausgewertet,

Gruß

Damian
Programmierte FHEM-Module: DOIF-FHEM, DOIF-Perl, DOIF-uiTable, THRESHOLD, FHEM-Befehl: IF

mfeske

Vermutlich habe ich da etwas noch nicht verstanden, dabei dachte ich langsam mit DOIF zu mindest befreundet zu sein :-(
([20:16|01234] and [rr_location_janic] eq "home" and [Ferientag_Berlin] eq "NEIN") ((set gong_MP3 playTone 254,020,254)) DOELSEIF ([21:16|56] and [rr_location_janic] eq "home") ((set gong_MP3 playTone 254,020,254))

ergibt aber laut list trotzdem eine Ausführung heute an einem Sonntag um 20:16 und 21:16 :-(
2015-11-29 19:40:05   timer_1_c1      29.11.2015 20:16:00|01234
     2015-11-29 19:40:05   timer_2_c2      29.11.2015 21:16:00|56
Hardware:
1 x Raspberry Pi Mod. B 512 MB
eq-3 2 x MAX! eTRV Heizungssteller, 1 x MAX! Fensterkontakt, 1 x MAX! Cube - LAN Gateway (ausser Betrieb)
Intertechno 1x ITZ-500, 3x ITT-1500, 9x ITR-1500, 3 x ITDL-1000, 2 x ITL-500
1 x CC1101-USB-Lite 433MHz (CUL433)  V3 1 x CC1101-USB-Lite 868MHz (CUL868)

Damian

Zitat von: mfeske am 29 November 2015, 19:44:07
Vermutlich habe ich da etwas noch nicht verstanden, dabei dachte ich langsam mit DOIF zu mindest befreundet zu sein :-(
([20:16|01234] and [rr_location_janic] eq "home" and [Ferientag_Berlin] eq "NEIN") ((set gong_MP3 playTone 254,020,254)) DOELSEIF ([21:16|56] and [rr_location_janic] eq "home") ((set gong_MP3 playTone 254,020,254))

ergibt aber laut list trotzdem eine Ausführung heute an einem Sonntag um 20:16 und 21:16 :-(
2015-11-29 19:40:05   timer_1_c1      29.11.2015 20:16:00|01234
     2015-11-29 19:40:05   timer_2_c2      29.11.2015 21:16:00|56


Benutzt du FHEM 5.7? Hast du schon ein Update gemacht?

siehe: http://forum.fhem.de/index.php/topic,44757.0.html

Gruß
Damian

Programmierte FHEM-Module: DOIF-FHEM, DOIF-Perl, DOIF-uiTable, THRESHOLD, FHEM-Befehl: IF

mfeske

Ich habe den Hinweis oben in rot schon gesehen :-) Ich führe regelmässig update, damit dürfte ich dann auch 5.7 haben ?! Habe keine Stelle gefunden wo ich mir die FHEM Version anzeigen lassen kann :-(.

Mein Code sollte doch aber so korrekt sein, oder ?

Gruß
Micha
Hardware:
1 x Raspberry Pi Mod. B 512 MB
eq-3 2 x MAX! eTRV Heizungssteller, 1 x MAX! Fensterkontakt, 1 x MAX! Cube - LAN Gateway (ausser Betrieb)
Intertechno 1x ITZ-500, 3x ITT-1500, 9x ITR-1500, 3 x ITDL-1000, 2 x ITL-500
1 x CC1101-USB-Lite 433MHz (CUL433)  V3 1 x CC1101-USB-Lite 868MHz (CUL868)

Damian

Zitat von: mfeske am 29 November 2015, 20:33:38
Ich habe den Hinweis oben in rot schon gesehen :-) Ich führe regelmässig update, damit dürfte ich dann auch 5.7 haben ?! Habe keine Stelle gefunden wo ich mir die FHEM Version anzeigen lassen kann :-(.

Mein Code sollte doch aber so korrekt sein, oder ?

Gruß
Micha

Deswegen musst du die DOIF-Version von heute nehmen.

Gruß

Damian
Programmierte FHEM-Module: DOIF-FHEM, DOIF-Perl, DOIF-uiTable, THRESHOLD, FHEM-Befehl: IF

mfeske

update check --> nothing to do...
Hardware:
1 x Raspberry Pi Mod. B 512 MB
eq-3 2 x MAX! eTRV Heizungssteller, 1 x MAX! Fensterkontakt, 1 x MAX! Cube - LAN Gateway (ausser Betrieb)
Intertechno 1x ITZ-500, 3x ITT-1500, 9x ITR-1500, 3 x ITDL-1000, 2 x ITL-500
1 x CC1101-USB-Lite 433MHz (CUL433)  V3 1 x CC1101-USB-Lite 868MHz (CUL868)

Damian

Zitat von: mfeske am 29 November 2015, 20:41:49
update check --> nothing to do...

Was liefert "Version DOIF"?
Programmierte FHEM-Module: DOIF-FHEM, DOIF-Perl, DOIF-uiTable, THRESHOLD, FHEM-Befehl: IF

mfeske

Version DOIF
98_DOIF.pm 10040 2015-11-28 22:25:32Z damian-s
Version FHEM
01_FHEMWEB.pm  9988 2015-11-24 13:45:07Z rudolfkoenig
Hardware:
1 x Raspberry Pi Mod. B 512 MB
eq-3 2 x MAX! eTRV Heizungssteller, 1 x MAX! Fensterkontakt, 1 x MAX! Cube - LAN Gateway (ausser Betrieb)
Intertechno 1x ITZ-500, 3x ITT-1500, 9x ITR-1500, 3 x ITDL-1000, 2 x ITL-500
1 x CC1101-USB-Lite 433MHz (CUL433)  V3 1 x CC1101-USB-Lite 868MHz (CUL868)

Damian

Zitat von: mfeske am 29 November 2015, 20:47:55
Version DOIF
98_DOIF.pm 10040 2015-11-28 22:25:32Z damian-s
Version FHEM
01_FHEMWEB.pm  9988 2015-11-24 13:45:07Z rudolfkoenig

OK, dann sollte alles korrekt funktionieren. Die Timer stehen als Reading immer da. Das heißt nicht gleichzeitig, dass etwas ausgeführt wird. Um 21:16 Uhr kann heute nichts ausgeführt werden, weil wir heute nicht Freitag und auch nicht Samstag haben.

Um 20:15 Uhr wäre das Kommando heute nur ausgeführt worden, wenn Janic zu diesem Zeitpunkt auch at home gewesen wäre.

Gruß

Damian
Programmierte FHEM-Module: DOIF-FHEM, DOIF-Perl, DOIF-uiTable, THRESHOLD, FHEM-Befehl: IF