notify nur in einem Zeitraum?

Begonnen von schrader, 19 Januar 2014, 12:11:41

Vorheriges Thema - Nächstes Thema

schrader

HE ,ich habe folgendes vor...
define nf_Film2an notify TV.* {\
   my $now = sprintf("%%02d:%%02d",$hour,$min);;\
   my $TV = Value("Sascha_android");;\
if (($TV eq "present") && ($now gt "20:15:00")) {\
     fhem("set TV_Licht on") if(Value("TV_Licht") ne "on");;\
}\
}


nur mein Problem ist das mein Handy nie das WLAN ausschaltet, also das immer ab 20.15 die gewünschten Aktoren angesteuert werden.
kann ich ein Zeitfenster angeben wo das notify reagieren soll wie z.b. von 20.15 bis 22.00

ich auch folgendes notify zum abschalten gemacht
define nf_Film2aus notify TV.* {\
   my $now = sprintf("%%02d:%%02d",$hour,$min);;\
   my $TV = Value("Sascha_android");;\
if (($TV eq "absent") && ($now gt "20:15:00")) {\
     fhem("set TV_Licht off") if(Value("TV_Licht") ne "off");;\
}\
}


ich hatte das alles über mein TV vorher geregelt, da dieser ein LAN Anschluss hatte und der neue leider nicht mehr...früher war es so TV present lichter an TV absent lichter aus

kann man ein Zeitfenster angeben?
CUL 868Mhz, CUL 433Mhz, FB 7390, FB7290, FB 7312, Elro IT,, FS20, HomeMatic,HMLAN

Puschel74

Hallo,

Zitatkann man ein Zeitfenster angeben?
Ja.
Du prüfst in beiden notify bisher nur ob die Uhrzeit größer ist.
Erweitere die Prüfung einfach auch auf kleiner 22:00 Uhr

Grüße
Zotac BI323 als Server mit DBLog
CUNO für FHT80B, 3 HM-Lan per vCCU, RasPi mit CUL433 für Somfy-Rollo (F2F), RasPi mit I2C(LM75) (F2F), RasPi für Panstamp+Vegetronix +SONOS(F2F)
Ich beantworte keine Supportanfragen per PM! Bitte im Forum suchen oder einen Beitrag erstellen.

schrader

Also quasie so oder?

define nf_Film2an notify TV.* {\
   my $now = sprintf("%%02d:%%02d",$hour,$min);;\
   my $TV = Value("Sascha_android");;\
if (($TV eq "present") && ($now gt "20:15:00" &&  lt "22:00:00")) {\
     fhem("set TV_Licht on") if(Value("TV_Licht") ne "on");;\
}\
}
CUL 868Mhz, CUL 433Mhz, FB 7390, FB7290, FB 7312, Elro IT,, FS20, HomeMatic,HMLAN

betateilchen

Du kannst auch einfach das notify per at zu einem bestimmten Zeitpunkt auf disabled setzen.
Genauso funktioniert auch das Wiedereinschalten des notify.
-----------------------
Formuliere die Aufgabe möglichst einfach und
setze die Lösung richtig um - dann wird es auch funktionieren.
-----------------------
Lesen gefährdet die Unwissenheit!

Puschel74

Hallo,

ZitatAlso quasie so oder?
Quasi ja, praktisch wird dir FHEM im Logfile mit einer Fehlermeldung mitteilen was nicht passt.

Aber du kannst das auch mit betateilchens Vorschlag lösen.

Grüße
Zotac BI323 als Server mit DBLog
CUNO für FHT80B, 3 HM-Lan per vCCU, RasPi mit CUL433 für Somfy-Rollo (F2F), RasPi mit I2C(LM75) (F2F), RasPi für Panstamp+Vegetronix +SONOS(F2F)
Ich beantworte keine Supportanfragen per PM! Bitte im Forum suchen oder einen Beitrag erstellen.

schrader

ok mit at ....und wie ...das hatte ich noch nicht...
CUL 868Mhz, CUL 433Mhz, FB 7390, FB7290, FB 7312, Elro IT,, FS20, HomeMatic,HMLAN

Puschel74

Hallo,

ich hab heut mal einen gutmütigen Tag - sonst hätte ich dir die commandref zu at verlinkt  ;D

define notify_ein at *20:15:00 attr <Name_des_notify> disable 0
Mit disable 1 kannst du das notify deaktivieren.

Grüße
Zotac BI323 als Server mit DBLog
CUNO für FHT80B, 3 HM-Lan per vCCU, RasPi mit CUL433 für Somfy-Rollo (F2F), RasPi mit I2C(LM75) (F2F), RasPi für Panstamp+Vegetronix +SONOS(F2F)
Ich beantworte keine Supportanfragen per PM! Bitte im Forum suchen oder einen Beitrag erstellen.

schrader

CUL 868Mhz, CUL 433Mhz, FB 7390, FB7290, FB 7312, Elro IT,, FS20, HomeMatic,HMLAN

schrader

he das alles funktioniert wunderbar ;-)

nun habe ich volgendes problem.
habe 2 notifys laufen und zwar
wenn handy nine und /oder handy sascha im wlan ist soll der aktor schalten.
nur mein problem ist wenn ich ausserhalb des wlan netzes komme ,geht kurz der aktor aus und gleich wieder an da ja handy nine noch im wlan ist....geht das  ohne an und ausschalten oder muss ich damit leben......;-)
define nf_Film2an notify TV.* {\
   my $now = sprintf("%%02d:%%02d",$hour,$min);;\
   my $TV = Value("Sascha_android");;\
if (($TV eq "present") && ($now gt "20:15:00")) {\
     fhem("set TV_Licht on") if(Value("TV_Licht") ne "on");;\
}\
}
define notify_ein2 at *20:15:00 attr nf_Film2an disable 0
define notify_aus2 at *22:00:00 attr nf_Film2an disable 1

define nf_Film3an notify TV.* {\
   my $now = sprintf("%%02d:%%02d",$hour,$min);;\
   my $TV = Value("Nine_android");;\
if (($TV eq "present") && ($now gt "20:15:00")) {\
     fhem("set TV_Licht on") if(Value("TV_Licht") ne "on");;\
}\
}
define notify_ein3 at *20:15:00 attr nf_Film3an disable 0
define notify_aus3 at *22:00:00 attr nf_Film3an disable 1

define nf_Film2aus notify TV.* {\
   my $now = sprintf("%%02d:%%02d",$hour,$min);;\
   my $TV = Value("Sascha_android");;\
if (($TV eq "absent") && ($now gt "20:15:00")) {\
     fhem("set TV_Licht off") if(Value("TV_Licht") ne "off");;\
}\
}

define nf_Film3aus notify TV.* {\
   my $now = sprintf("%%02d:%%02d",$hour,$min);;\
   my $TV = Value("Nine_android");;\
if (($TV eq "absent") && ($now gt "20:15:00")) {\
     fhem("set TV_Licht off") if(Value("TV_Licht") ne "off");;\
}\
}
CUL 868Mhz, CUL 433Mhz, FB 7390, FB7290, FB 7312, Elro IT,, FS20, HomeMatic,HMLAN

Puschel74

Hallo,

was hindert dich daran beide notifys in eines zu packen?
Man kann in einem notify auch mehr Sachen abfragen und verknüpfen  ;)

Grüße
Zotac BI323 als Server mit DBLog
CUNO für FHT80B, 3 HM-Lan per vCCU, RasPi mit CUL433 für Somfy-Rollo (F2F), RasPi mit I2C(LM75) (F2F), RasPi für Panstamp+Vegetronix +SONOS(F2F)
Ich beantworte keine Supportanfragen per PM! Bitte im Forum suchen oder einen Beitrag erstellen.

schrader

ok dann muss ich mich mal schlau lesen ;-) :P
CUL 868Mhz, CUL 433Mhz, FB 7390, FB7290, FB 7312, Elro IT,, FS20, HomeMatic,HMLAN

Puschel74

Hallo,

so ganz verstehe ich den Sinn hinter deinen 4!  :o notify aber noch nicht.
Wozu um Himmels willen 4 Stück für so eine einfache Abfrage?
Pack alles in ein notify und gut ist.

Ach ja - wozu prüfst du im notify noch auf die Uhrzeit wenn du es sowieso erst um 20:15 Uhr "scharf schaltest" und um 22:00 Uhr wieder still legst?

Grüße

P.S.: Wenn ich nachher mal Muße habe und nicht jemand anders schneller ist und DU es selbst noch nicht geschafft hast bau ich dir die notifys mal auf eines zusammen.
Zotac BI323 als Server mit DBLog
CUNO für FHT80B, 3 HM-Lan per vCCU, RasPi mit CUL433 für Somfy-Rollo (F2F), RasPi mit I2C(LM75) (F2F), RasPi für Panstamp+Vegetronix +SONOS(F2F)
Ich beantworte keine Supportanfragen per PM! Bitte im Forum suchen oder einen Beitrag erstellen.

schrader

#12
Mein Problem ist...das ich wenig Ahnung habe...habe mir mehr oder weniger alles zusammengereimt oder vorschreiben lasse;-)

ich will folgendes:
durch Anwesenheit der Handys soll gesagt werden es ist jemand da und ab 20:15 uhr kann das Tv licht angehen....Wenn wir in der zeit von 20:15 bis 22:00 Uhr das Haus verlassen  (quasi mal feiern gehen)soll es wieder aus ,oder wenn der TV im Netzwerk ist (der im Schlafzimmer) soll das Licht ausgehen .das soll heißen wenn wir ins Bett gehen soll es ausgehen....

das wollte ich versuchen....

achso und wenn der TV im Schlafzimmer an ist soll das licht auf jedenfall ausgehen auch vor 22:00Uhr
CUL 868Mhz, CUL 433Mhz, FB 7390, FB7290, FB 7312, Elro IT,, FS20, HomeMatic,HMLAN

Puschel74

Hallo,

Zitatdefine nf_Film2an notify TV.* {
  my $now = sprintf("%%02d:%%02d",$hour,$min);
  my $TV_Sascha = Value("Sascha_android");
  my $TV_Nine = Value("Nine_android");
  if ($now gt "20:15:00") {
    if (($TV_Sascha eq "present") || ($TV_Nine eq "present")) {
      fhem("set TV_Licht on") if(Value("TV_Licht") ne "on");
    }
   if (($TV_Sascha eq "absent") && ($TV_Nine eq "absent")) {
     fhem("set TV_Licht off") if(Value("TV_Licht") ne "off");
    }
  }
}

Ich habe die UND mal gegen ODER getauscht.
Ich denke mal das Licht soll auch angehen wenn nur einer von euch anwesend ist ;)
Beim ausschalten sollen dann natürlich beide absent sein - daher dort &&
Die Zeile mit der Uhrzeitprüfung halte ich aber immer noch für sinnlos da das notify nur in der Zeit von 20:15 bis 22:00 Uhr aktiv ist aber ok.

Ich hoffe ich hab nichts übersehen - ungetestet und ohne Gewähr.

Grüße

P.S.: Ja, das direkt kopieren in die fhem.cfg wird mit diversen Fehlermeldungen im Logfile enden.
Nein ich werde das notify nicht korrigieren. Wenn du es direkt in die fhem.cfg schreiben willst dann korrigier es bitte selbst.
Zotac BI323 als Server mit DBLog
CUNO für FHT80B, 3 HM-Lan per vCCU, RasPi mit CUL433 für Somfy-Rollo (F2F), RasPi mit I2C(LM75) (F2F), RasPi für Panstamp+Vegetronix +SONOS(F2F)
Ich beantworte keine Supportanfragen per PM! Bitte im Forum suchen oder einen Beitrag erstellen.

schrader

he vielen vielen vielen dank.......hab die "Fehler "korrigiert läuft!!!!
CUL 868Mhz, CUL 433Mhz, FB 7390, FB7290, FB 7312, Elro IT,, FS20, HomeMatic,HMLAN