Hallo zusammen,
ich möchte in unserer Abwesenheit vordeffinierte Lichter zur Abschreckung evtl. Langfinger schalten.
Ziel ist es in der Zeit zwischen 16:30 und 21 Uhr bei "absent" zwei Lichter einzuschalten und eine Pushover Message zu verschicken.
Bisher habe ich es für ganze Stunden wie folgt umgesetzt...
define Abwesenheitslicht_AN notify test_abwesenheitslicht_iPhone_Christian:off { if ($hour ~~ [16..21]) { fhem ("set Licht_EZ on;; set Pushover1 msg 'TEST' 'Abwesenheitslicht AN' '' 0 ''") }}
Funktioniert, sofern ich im Zeitraum von 16-21 Uhr auf "absent" gehe.
Funktioniert NICHT, wenn ich bereits vor 16 Uhr "absent" bin. Ich habe dann etwsa mit dem watchdog aus der veröffentlichten Abwesenheitsautomatisierung experimentiert. Leider jedoch nur mit dem Erfolg das der Code immer grösser wird und ich es trotzdem nicht hin bekomme.
Ferner ist $hour ~~ [16..21]
wohl nur mit ganzen Stunden möglich, mir jedoch eigentlich zu ungenau.
--- noch gewünschte Erweiterung ---
Wäre es von zwei pder mehr Handy´s abhängig zu machen. Wenn also wirklich alle Familienmitglieder ausser Haus sind. Derzeit habe ich einen Abwesenheitserkennung mit PRESENCE für mich und meine Frau laufen...
Leider geht mit dieser gewünschten Erweiterung einher, dass ich gerne auch bei Alle_Handys:absent eine vordeffinierte Anzahl von Lampen/Verbrauchern ausschalten will. Ich habe dies mit "structure" umgesetzt, aber leider nur mit dem Erfolg, dass bei jedem "Auslösen" nur eine Lampe der HM-Komponenten, keine Lampe der ELRO´s-Steckdosen abgeschalten wird. Beim erneuten "Auslösen" geht dann die nächste HM-Komponente aus, wieder keine ELRO usw.
Ich habe hierzu alte Beiträge mir der 0.3 Verzögerung gefunden, aber offensichtlich sollte das bereits seit Anfang 2012 gefixed sein und somit die Frage was ich hier falsch macht.
Hier der Code, den ich als letztes getestet hatte:
define Alles_AUS structure Alle_Lichter_aus Licht_Backlight_TV Licht_Deko_Esszimmerfenster Licht_Deko_Terrassentuere Licht_Deko_WZ_Fenster Licht_Vitriene Licht_Deko_Maria_und_Josef Licht_Eingang Licht_EZ Licht_WZ
attr Alles_AUS room Haus
Ich habe das "Auslösen" über das fhem Webinterface gemacht, da ich mit dem PRESENCE aller Handys hier noch das obige Problem habe.
Hoffe Ihr könnt mir helfen.
Gruss
Chris
Hallo nochmal,
vielleicht ein bischen viel auf einmal gewesen :(
Also mein Problem ist, dass
define Abwesenheitslicht_AN notify test_abwesenheitslicht_iPhone_Christian:off { if ($hour ~~ [16..21]) { fhem ("set Licht_EZ on;; set Pushover1 msg 'TEST' 'Abwesenheitslicht AN' '' 0 ''") }}
nur dann funktioniert wenn ich zwischen 16 und 21 vom Status "present" -> "absent" wechsle.
Wie bekomme ich es hin, dass die Aktion auch ausgeführt wird, wenn ich um 16 Uhr bereits "absent" bin?
Hoffe so ist es klarer und mir kann jemand helfen. Danke.
Gruss
Chris
Du musst per notify die Anwesenheit der Familien Mitglieder tracken. wenn der trackvalue zwischen 16 und 21 Uhr dann 0 wird oder ist, schaltest du das Licht an.
Hallo Dietmar,
danke für den Tipp, leider binge ich es nicht hin. Ich denke es hackt an meinem Verständnis fürs notify...
Folgendes habe ich probiert...
###
define Alle_Handys_anwesend dummy
attr Alle_Handys_anwesend room System
define Alle_Handys_anwesend_On notify iPhone_Christian on|off { if ($iPhone_Christian:on) { fhem ("set Alle_Handys_anwesend on") } elsif ($iPhone_Iris:on) { fhem ("set Alle_Handys_anwesend on") } else { fhem ("set Alle_Handys_anwesend off") }}
define Alle_Handys_anwesend_On notify iPhone_Iris on|off { if ($iPhone_Christian:on) { fhem ("set Alle_Handys_anwesend on") } elsif ($iPhone_Iris:on) { fhem ("set Alle_Handys_anwesend on") } else { fhem ("set Alle_Handys_anwesend off") }}
####
define Min_ein_Handy_anwesend dummy
attr Min_ein_Handy_anwesend room System
define Handy1_anwesend_On notify iPhone_Christian on|off { if ($iPhone_Christian:on) && ($iPhone_Iris:on) { fhem ("set Min_ein_Handy_anwesend on") } else { fhem ("set Min_ein_Handy_anwesend off") }}
define Handy2_anwesend_On notify iPhone_Iris on|off { if ($iPhone_Christian:on) && ($iPhone_Iris:on) { fhem ("set Min_ein_Handy_anwesend on") } else { fhem ("set Min_ein_Handy_anwesend off") }}
#####
define Min_ein_Handy_anwesend dummy
attr Min_ein_Handy_anwesend room System
define Handy1_anwesend_On notify iPhone_Christian on|off { if ($iPhone_Christian:on) { fhem ("set Min_ein_Handy_anwesend on") } elsif ($iPhone_Iris:on) { fhem ("set Min_ein_Handy_anwesend on") } else { fhem ("set Min_ein_Handy_anwesend off") }}
define Handy2_anwesend_On notify iPhone_Iris on|off { if ($iPhone_Christian:on) { fhem ("set Min_ein_Handy_anwesend on") } elsif ($iPhone_Iris:on) { fhem ("set Min_ein_Handy_anwesend on") } else { fhem ("set Min_ein_Handy_anwesend off") }}
Hm, Licht für ich ? :(
Gruss
Chris
Hallo,
erstmal so:
define Alle_Handys_anwesend_On notify iPhone_Christian:(on|off) { if (Value("iPhone_Christian") eq "on") ...
(Ich hoffe das mit der Klammer stimmt so) 8)
Ich glaub das mit dem notify übe ich noch etwas :o
Vergiss den Blödsinn von mir - klappt auch nicht.
Ein bischen Geduld bitte aber evtl. ist ja jemand anders schneller.
Grüße
Edith: So. Das klappt zumindest mit meinen Dummys:
define Alle_Handys_anwesend_On notify iPhone_.*:(on|off) {
if ((Value("iPhone_Christian") eq "on") && (Value("iPhone_Iris") eq "on)) {
fhem("set Alle_Handys_anwesend on");
}
else {
fhem("set Alle_Handys_anwesend off");
}
}
Hallo Puschel,
ich bekomme beim Eintrag von
define Alle_Handys_anwesend dummy
attr Alle_Handys_anwesend room System
define Alle_Handys_anwesend_On notify iPhone_.*:(on|off) {
if ((Value("iPhone_Christian") eq "on") && (Value("iPhone_Iris") eq "on)) {
fhem("set Alle_Handys_anwesend on");
}
else {
fhem("set Alle_Handys_anwesend off");
}
}
die Ausgabe:
Unknown command if, try help. Unknown command fhem("set, try help. Unknown command }, try help. Unknown command else, try help. Unknown command fhem("set, try help. Unknown command }, try help. Unknown command }, try help.
rereadcfg gibt:
Unknown command if, try help.
Unknown command fhem("set, try help.
Unknown command }, try help.
Unknown command else, try help.
Unknown command fhem("set, try help.
Unknown command }, try help.
Unknown command }, try help.
Gruss
Chris
Hallo,
hier fehlt ein "
if ((Value("iPhone_Christian") eq "on") && (Value("iPhone_Iris") eq "on"))
Grüße
fehlen nicht auch die \ um anzudeuten, dass eine Fortsetzungszeile folgt?
Hallo,
define Alle_Handys_anwesend dummy
attr Alle_Handys_anwesend room System
define Alle_Handys_anwesend_On notify iPhone_.*:(on|off) {
if ((Value("iPhone_Christian") eq "on") && (Value("iPhone_Iris") eq "on")) {
fhem("set Alle_Handys_anwesend on");
}
else {
fhem("set Alle_Handys_anwesend off");
}
}
bekomme ich ->
Unknown command if, try help. Unknown command fhem("set, try help. Unknown command }, try help. Unknown command else, try help. Unknown command fhem("set, try help. Unknown command }, try help. Unknown command }, try help.
Edit:
\ setzen habe ich auch versucht, bekomme dann unterschiedliche Fehlermeldungen, aber leider nicht alle weg "}" Fehler bleibt mir 3x....
Hallo,
schreibst du das direkt in die fhem.cfg?
Grüße
so etwa müßte es aussehen - bitte die entsprechende doku ansehen.
define Alle_Handys_anwesend dummy
attr Alle_Handys_anwesend room System
define Alle_Handys_anwesend_On notify iPhone_.*:(on|off) {\
if ((Value("iPhone_Christian") eq "on") && (Value("iPhone_Iris") eq "on")) {\
fhem("set Alle_Handys_anwesend on");\
}\
else {\
fhem("set Alle_Handys_anwesend off");\
}\
}
Hallo,
oder sich nicht um Zeilenenden, -abschlüsse und Verdoppelungen kümmern und ausschliesslich das DEF eines notify bearbeiten.
Grüße
Edith:
define Alle_Handys_anwesend_On notify iPhone_.*:(on|off) {\
if ((Value("iPhone_Christian") eq "on") && (Value("iPhone_Iris") eq "on")) {\
fhem("set Alle_Handys_anwesend on");;\
}\
else {\
fhem("set Alle_Handys_anwesend off");;\
}\
}
So sollte der Code auch direkt in der fhem.cfg funktionieren - die ; mussten noch verdoppelt werden
Ich hatte ein ähnliches Problem mal und habe es aber mit einer structure gemacht die Status present hatte, wenn eines der "Presences" on war, dass schöne daran ist, dass man nur die Structure vergrößert mit mehr Presences und nicht die komplette watchdog Funktion ändern muss, dabei hatte ich vergessen die beiden watchdog on und off wieder auf defined zurück zu setzen, sprich watchdog_off setzt watchdog_on wieder auf defined und umgekehrt, dadurch waren irgendwann beide watchdog triggered und hatten ihre Arbeit beendet. Vllt. muss der Befehl bei dir auch mit integriert werden ...
Habe den Code selbst gerade nicht zur Hand aber wenn ich wieder zuhause bin such ich den mal raus, wenn Interesse besteht.
MFG Chris
Zitat von: Puschel74 am 11 Dezember 2013, 15:00:56
Hallo,
schreibst du das direkt in die fhem.cfg?
Grüße
Hallo,
ja, derzeit schon, bin mir noch unschlüssig für alle "Bereiche" eine eigene Datei mit einzulesen, aber ich erkenne auch das es bereits jetzt sehr unübersichtlich wird. Wie macht Ihr denn das, oder was ist die Empfehlung?
Gruss
Chris
Zitat von: Strippenzieher am 11 Dezember 2013, 16:27:08
Ich hatte ein ähnliches Problem mal und habe es aber mit einer structure gemacht die Status present hatte, wenn eines der "Presences" on war, dass schöne daran ist, dass man nur die Structure vergrößert mit mehr Presences und nicht die komplette watchdog Funktion ändern muss, dabei hatte ich vergessen die beiden watchdog on und off wieder auf defined zurück zu setzen, sprich watchdog_off setzt watchdog_on wieder auf defined und umgekehrt, dadurch waren irgendwann beide watchdog triggered und hatten ihre Arbeit beendet. Vllt. muss der Befehl bei dir auch mit integriert werden ...
Habe den Code selbst gerade nicht zur Hand aber wenn ich wieder zuhause bin such ich den mal raus, wenn Interesse besteht.
MFG Chris
...klar, lass mal sehen, ich lerne gerne dazu ...
Hallo,
danke das nachfolgende geht direkt in der fhem.cfg. Ich bin einen Schritt weiter... Danke
Zitat von: Puschel74 am 11 Dezember 2013, 15:23:34
Hallo,
oder sich nicht um Zeilenenden, -abschlüsse und Verdoppelungen kümmern und ausschliesslich das DEF eines notify bearbeiten.
Grüße
Edith:
define Alle_Handys_anwesend_On notify iPhone_.*:(on|off) {\
if ((Value("iPhone_Christian") eq "on") && (Value("iPhone_Iris") eq "on")) {\
fhem("set Alle_Handys_anwesend on");;\
}\
else {\
fhem("set Alle_Handys_anwesend off");;\
}\
}
So sollte der Code auch direkt in der fhem.cfg funktionieren - die ; mussten noch verdoppelt werden
Gruss
Chris
Hallo zusammen,
hallo Dietmar 63,
ich weiss nicht ob ich es falsch verstanden habe, oder aber einfach nur Wissenslücken vorhanden sind. Für mich aggiert ein notify derzeit nur aktiv, wenn sich etwas ändert. Also wenn schon alle Handys ausser Haus sind und die Zeitspanne zwischen x-y erreicht wird, erreiche ich damit doch nichts, oder ?
Ich habe z.B. folgendes versucht....
define Alle_weg_und_Zeit_erreicht notify Min_ein_Handys_anwesend:off { if ($hour ~~ [01..02]) { fhem ("set Licht_EZ on;; set Pushover1 msg 'Test Zeit erricht' 'Abwesenheitslicht AN' '' 0 ''") }}
Das funktioniert wurderbar solange ich mich zwischen 1-2 Uhr in den State :off begebe, aber nicht wenn ich bereits vor 1 Uhr alle Handys :off habe
habe ich Deine Anregung ->
Zitat von: Dietmar63 am 07 Dezember 2013, 11:59:40
Du musst per notify die Anwesenheit der Familien Mitglieder tracken. wenn der trackvalue zwischen 16 und 21 Uhr dann 0 wird oder ist, schaltest du das Licht an.
<- falsch verstanden, oder fehlt mir hier einfach noch Wissen???
Gruss
Chris
Zitat von: aqua_chris am 11 Dezember 2013, 23:34:10
...klar, lass mal sehen, ich lerne gerne dazu ...
Also ich habe ne Struktur errichtet:
define Handys structure Handy1 Handy2 ... HandyX
attr Handys clientstate_behavior relative
attr Handys clientstate_priority present absent
da muss man im define nur alle Handys nachtragen.
den wachdog habe ich dann so gemacht:
define watchdog_Abwesenheit watchdog Handys:absent 00:05 Handys:present set Gesamte_Wohnung off ; setstate watchdog_Anwesenheit defined
attr watchdog_Abwesenheit regexp1WontReactivate 1
define watchdog_Anwesenheit watchdog Handys:present 00:00:05 Handys:absent set Willkommen on ; setstate watchdog_Abwesenheit defined
attr watchdog_Anwesenheit regexp1WontReactivate 1
Nun muss man in der Abwesenheit noch ein at 16:30 für dich daraus machen btw. Gesamte_Wohnung ist bei mir auch eine Struktur wo alle Geräte einzeln aufgelistet sind, ich habe aber nur Hues und der Gleichen, wie sich das mit deinen anderen Geräten verhält weiß ich nicht, auch nicht wie sich das nach einem Restart verhält.
Ich habe die watchdog_Anwesenheit defined und watchdog_Abwesenheit defined bei mir getauscht weil sonst jedes triggered bei mir "Willkommen´" immer wieder auf On gesetzt hatte, wenn ich "present" war. In deinem Fall wäre es aber wahrscheinlich besser es nicht zu tun um die beiden Variablen "absent" und "16:30h" immer zu checken, aber glaube für das Security Licht wäre evtl. noch ein weiterer watchdog oder was anderes zu empfehlen.
EDIT:
Mal abgesehen davon würde ich das Security Licht auch von mehr Variablen abhängig machen wie z.B. sunset mit absent da du ja sicher im Sommer nicht um 16:30h licht an machen würdest oder?
Bezugsquellen:
Zitat von: Icebear am 09 März 2013, 18:03:42
Hallo,
vermutlich bin ich nicht der einzigste der mehrere Handys in der Familie hat.
Ich habe daher den Presence mit mehreren Handys am laufen und es wird ein status gesetzt (bei mir reicht es wenn EINER von uns da ist).
Falls jemand das auch braucht, eine structure ist die lösung.
Also erst alle beteiligten Geräte lt. Anleitung konfigurieren.
Dann alle in eine structure wie hier:
Configuration lt. Listbefehl
fhem> list global.bt.homestat
Internals:
ATTR BT_Homestatus
DEF BT_Homestatus Ice_Handy Melle_Handy
NAME global.bt.homestat
NR 280
NTFY_ORDER 50-global.bt.homestat
STATE present
TYPE structure
Content:
Ice_Handy 1
Melle_Handy 1
Readings:
2013-03-08 22:46:24 state present
Attributes:
clientstate_behavior relative
clientstate_priority present absent
wichtig ist der behavior und die priority damit die ganze Structure auch Present ist wenn nur EIN Handy da ist.
den Watchdog den ihr definiert, damit erst nach 15 mins absent die Aktionen ausgelöst werden natürlich auch für die Structure definieren (nicht fuer die einzelnen Devices).
mein entsprechendes Listing:
Internals:
CMD { fhem "set HomeStat absent"; fhem "setstate global.wd.homestat defined";}
DEF global.bt.homestat:absent 00:15 global.bt.homestat:present { fhem "set HomeStat absent"; fhem "setstate global.wd.homestat defined";}
NAME global.wd.homestat
NR 300
NTFY_ORDER 50-global.wd.homestat
RE1 global.bt.homestat:absent
RE2 global.bt.homestat:present
STATE defined
TO 900
TYPE watchdog
Attributes:
regexp1WontReactivate 1
das ganze noch fein (wie hier) einen entsprechenden Dummy setzen lassen und schon ists egal welches der Handys (im Beispiel 2) da ist.
So ich hoffe ich habe euch geholfen. Gruesse aus dem schönen Wesel.
Zitat von: Markus Bloch am 15 Mai 2013, 18:00:58
Hallo febus,
direkt innerhalb des PRESENCE Moduls ist das so nicht möglich. Dafür existiert das Modul watchdog. Dieses kannst du benutzten um einen Befehl auszuführen, wenn man 15 Minuten durchgehend abwesend ist.
Zum Beispiel:
# Nach 15 Minuten Abwesenheit (Handy im Status "absent") soll die gesamte Wohnung ausgeschaltet werden.
define watchdog_Anwesenheit watchdog Handy:absent 00:15 Handy:present set Gesamte_Wohnung off ; setstate watchdog_Anwesenheit defined
attr watchdog_Anwesenheit regexp1WontReactivate 1
Weitere Informationen findest du auch im Wiki (http://www.fhemwiki.de/wiki/Anwesenheitserkennung)
Viele Grüße
Markus
MFG Chris
Hallo,
ein Notify hat den Aufbau:
define <Name> notify <Device:regexp> <was soll passieren>
Hier sieht man schon das ein notify nur auslöst wenn <Device:regexp> eintreten.
Du gehst um z.B.: 12 Uhr weg wird das notify auslösen - etwaige progerammierte Bedingungen prüfen und entsprechend reagieren.
En notify wird aber niemals auf eine Uhrzeit reagieren - das macht ein "at".
Grüße
P.S.: Bitte zukünftig Fullqoutes vermeiden - für den Code genügt es auch den Ausschnitt aus der fhem.cfg in Code-Tags zu posten (oben die Raute # ). Es müssen nicht unbedingt die Intenals aller Geräte sein.
danke
Zitat von: Dietmar63 am 07 Dezember 2013, 11:59:40
Du musst per notify die Anwesenheit der Familien Mitglieder tracken. wenn der trackvalue zwischen 16 und 21 Uhr dann 0 wird oder ist, schaltest du das Licht an.
Hallo nochmal,
ich bekomme es nicht hin, mein
define Abwesenheitslicht_AN notify Handy_Mutti:off { if ($hour ~~ [16..21]) { fhem ("set Schalter_WZ on;; set Schalter_Kueche on;; set PushoverMAPLA11 msg 'MAPLA11nR' 'Abwesenheitslicht AN' '' 0 ''") }}
schaltet wie ich will, wenn sich der Handy Status in der Teitspanne von 16-21 auf "off" ändert
Ich bekommenes aber nicht hin, wenn der Status bereits vor 16 Uhr auf "off" ist. Meinem Verständnis nach müsste ich mittels watchdog prüfen ob sich der Status ändert, ist es zwischen 16-21 Uhr -> schalte! wenn 21-16 Uhr -> tue nichts.
Hoffe Ihr könnt mir helfen
Gruß Chris
Zitat von: Puschel74 am 12 Dezember 2013, 07:31:45
Hallo,
ein Notify hat den Aufbau:
define <Name> notify <Device:regexp> <was soll passieren>
Hier sieht man schon das ein notify nur auslöst wenn <Device:regexp> eintreten.
Du gehst um z.B.: 12 Uhr weg wird das notify auslösen - etwaige progerammierte Bedingungen prüfen und entsprechend reagieren.
En notify wird aber niemals auf eine Uhrzeit reagieren - das macht ein "at".
Also wie auch schon im letzten post angedeutet, würde ich das doch auch mit einem watchdog lösen mit at sunset - 21:00h
das schöne an einem watchdog ist, er prüft in vor definierten Intervallen ob die Variablen zutreffen um auszulösen ...
Also ich habe echt nicht allzu viel Ahnung von Fhem, aber wieso probierst du nicht statt des notify ein watchdog genauso wie vorher:
definiere ein Security dummy
sage ihm wann er an geht und wann er aus zu gehen hat(16.30-21:00h oder sunset-21:00h)
define Security dummy
define Security_on at *{sunset(0,"16:30","20:59")} set Security on
define Security_off at *21:00 set Security off
(Nicht Vergessen deine Längen- und Breitengrade im GLOBAL einzutragen, wenn du sunset nutzt. siehe auch:Wiki (http://www.fhemwiki.de/wiki/Sunset_Sunrise))
Pack einen watchdog dummy für die Handys mit dem Security Dummy in eine Structure so dass nur Status on ist wenn beide Status on haben und sonst off
define watchdog_security dummy
define watchdog_sec_on watchdog Handys:absent 00:05 Handys:present set watchdog_security on ; set Gesamte_Wohnung off ; setstate watchdog_sec_off defined
define watchdog_sec_off watchdog Handys:present 00:00:01 Handys:absent set watchdog_security off ; set Eingangsbereich on ; setstate watchdog_sec_on defined
define SecurityLight structure Security watchdog_security
attr SecurityLight clientstate_behavior relative
attr SecurityLight clientstate_priority off on
lass die neue Structure wiederum auch mit einem watchdog überwachen der dann das Licht steuert.
define Against_Thiefs_ON watchdog SecurityLight:on SecurityLight:off set Against_Thiefs_Light on ; setstate Against_Thiefs_OFF defined
define Against_Thiefs_OFF watchdog SecurityLight:off SecurityLight:on set Against_Thiefs_Light off ; setstate Against_Thiefs_ON defined
Hmm war das jetzt richtig so ??
Wie gesagt ich bin nicht wirklich gut darin, könnte man sicher noch etwas kompakter machen, aber es müsste funktionieren, glaub ich. :o
MFG Chris
PS.: Nur zu deiner Info ... Heutzutage passieren die wenigsten Einbrüche noch abends, meistens passieren diese Tagsüber ... die Einbrecher checken eine Weile ihr Objekt der Begierde und brechen dann ein wenn gerade alle aus dem Haus sind, weil Tagsüber der Krach auch nicht ganz so auffällt, der dabei entstehen kann, wenn man ein Tür aufbricht oder eine Fensterscheibe einschlägt ... Und die checken das auch ziemlich schnell, wenn jeden Tag um 16:30h das Licht im Haus angeht, dass das eine Automatik ist ;)
Hallo,
okay soweit verstanden, jetzt stolpere ich noch über die Timespezifikation und bekomme den Fehler
"Please define watchdog_sec_off first Wrong timespec, must be HH:MM[:SS] Please define Against_Thiefs_OFF first Wrong timespec, must be HH:MM[:SS] Please define Against_Thiefs_ON first"
ein define Security_on at *{sunset(0,"16:30[:00]","20:59[:59]")} set Security on
oder define Security_on at *{sunset(0,16:30[:00],20:59[:59])} set Security on
geht leider auch nicht...
... Wie deffiniere ich das am Besten? Ich hatte woanders ein ($hour ~~ [16..21]) eingesetzt, was mir - da es nur für ganze Stunden geht - jedoch zu ungenau ist...
Gruss
Chris
Zitat"Please define watchdog_sec_off first Wrong timespec, must be HH:MM[:SS] Please define Against_Thiefs_OFF first Wrong timespec, must be HH:MM[:SS] Please define Against_Thiefs_ON first"
1. Frage)
Kommt das wenn du:
define watchdog_sec_on watchdog Handys:absent 00:05 Handys:present set watchdog_security on ; set Gesamte_Wohnung off ; setstate watchdog_sec_off defined
eingibst oder wann?
Wenn ja, kann es sein weil du ein setstate für eine Definition bestimmst die noch nicht existiert (setstate watchdog_sec_off defined)
define watchdog_sec_off watchdog Handys:present 00:00:01 Handys:absent set watchdog_security off ; set Eingangsbereich on ; setstate watchdog_sec_on defined
wird ja erst danach geschrieben. ich habe "setstate watchdog_sec_off defined" damals glaube auch erst nachdem ich beide watchdogs definiert hatte umgeändert ... ist alles letze Nacht nur aus dem Kopf geschrieben worden. Probier mal:
define watchdog_sec_on watchdog Handys:absent 00:05 Handys:present set watchdog_security on ; set Gesamte_Wohnung off ; setstate watchdog_sec_on defined
define watchdog_sec_off watchdog Handys:present 00:00:01 Handys:absent set watchdog_security off ; set Eingangsbereich on ; setstate watchdog_sec_off defined
und tausch dann danach einfach die setstate watchdog_sec_on defined gegen setstate watchdog_sec_off defined und umgekehrt beim anderen.
2. Frage)
Wenn es daran nicht liegt, wie hast du watchdog definiert, dass er Fehler in der Zeitbestimmung hat?
Bitte genauen Code schreiben!!die Zeitangabe im watchdog ist keine Uhrzeit sondern wie lange die Handys z.B. abwesend(absent) sein müssen damit der watchdog auslöst. Wenn du also in den watcchdog 16:30 angibst müssen die Handys 16Std. und 30 Min. abwesend sein damit der watchdog auslöst. Das HH:MM reicht aus, das in Klammern [SS] soll nur heißen das optional auch Sekunden verwendet werden kann, dabei wird es aber nicht in Klammern geschrieben sondern HH:MM:SS ...
EDIT: Es kann sein, dass im watchdog eine Zeitbestimmung angegeben werden muss, somit muss auch:
define Against_Thiefs_ON watchdog SecurityLight:on SecurityLight:off set Against_Thiefs_Light on ; setstate Against_Thiefs_OFF defined
define Against_Thiefs_OFF watchdog SecurityLight:off SecurityLight:on set Against_Thiefs_Light off ; setstate Against_Thiefs_ON defined
zu:
define Against_Thiefs_ON watchdog SecurityLight:on 00:00:01 SecurityLight:off set Against_Thiefs_Light on ; setstate Against_Thiefs_OFF defined
define Against_Thiefs_OFF watchdog SecurityLight:off 00:00:01 SecurityLight:on set Against_Thiefs_Light off ; setstate Against_Thiefs_ON defined
geändert werden. Kannst aber auch mal probieren ob es mit "00:00:00" geht, bzw. der Teil könnte evtl. auch über Notify gelöst werden ...3. und für mich die komischste Frage)
Was hat
define watchdog_sec_on watchdog Handys:absent 00:05 Handys:present set watchdog_security on ; set Gesamte_Wohnung off ; setstate watchdog_sec_off defined
mit
define Security_on at *{sunset(0,"16:30","20:59")} set Security on
zu tun??
Der Dummy für den Sonnenuntergang hat rein Garnichts mit dem Dummy für den Wachhund zu tun. Beides sind eigenständige Dummys die erst in der Structure SecurityLight einen neuen Status ausgeben damit ein Abschreckungslicht geschalten werden kann ...
Im Übrigen würde ich dir auch empfehlen diese beiden Links nochmal genau zu studieren:
http://www.fhemwiki.de/wiki/Sunset_Sunrise
http://www.fhemwiki.de/wiki/Anwesenheitserkennung
Da steht eigentlich alles drin was du wissen musst.
Wichtig ist nur, in den Codes die ich dir geschriebenn habe, dass der Status der letzten Structure (SecurityLight) dazu genutzt wird um das Abschreckungslicht an und aus zu schalten ...
MFG Chris
Hallo,
ich habe alles nochmal neu definiert und umgesetzt, jetzt klappt es soweit.
Das mit der Zeitangabe für den watchdog habe ich auch gelesen, die 16:30 sind aus dem sunset
sagen somit "nicht vor" 16:30Uhr, richtig? Der zweite Wert heißt dann, nicht nach x Uhr, wenn ich es
richtig verstanden habe.
Mit dem von Dir vorgeschlagenem sunset 0..... verändert sich die Einschaltzeit dann aber je nach
gerade gültigem Wert in Abhängigkeit zur Sonne, korrekt ? Finde ich so gut. Nur noch zum
lernen für mich, was müsste ich setzen wenn ich jeden Tag ohne Sonnenabhängigkeit um z.B. 15 Uhr
schalten wollte?
Danke für die Unterstützung
Gruß Chris
Zitat von: aqua_chris am 16 Dezember 2013, 23:31:04
Hallo,
ich habe alles nochmal neu definiert und umgesetzt, jetzt klappt es soweit.
Das mit der Zeitangabe für den watchdog habe ich auch gelesen, die 16:30 sind aus dem sunset
sagen somit "nicht vor" 16:30Uhr, richtig? Der zweite Wert heißt dann, nicht nach x Uhr, wenn ich es
richtig verstanden habe.
Mit dem von Dir vorgeschlagenem sunset 0..... verändert sich die Einschaltzeit dann aber je nach
gerade gültigem Wert in Abhängigkeit zur Sonne, korrekt ? Finde ich so gut. Nur noch zum
lernen für mich, was müsste ich setzen wenn ich jeden Tag ohne Sonnenabhängigkeit um z.B. 15 Uhr
schalten wollte?
Danke für die Unterstützung
Gruß Chris
der Sunset-Befehl in den Klammern ist eine sagen wir mal Erweiterung im "at" Befehl, du hast mit
define Security_off at *21:00 set Security off
die Antwort zu deiner jetzigen Frage eigentlich schon vor Augen gehabt. Da wird ja die Abschaltzeit mit "at*21:00" unabhängig vom Sonnenstand festgelegt.
Und ja sunset ist eine variable Uhrzeit abhängig von dem Ort wo du wohnst (Längen- und Breitengrad) bzw. wann bei dir die Sonne unter geht und wenn du dir das Wiki dazu durchliest,
findest du sogar verschiedene Sonnenuntergangs-Zustände die du auch noch mit definieren kannst (ZIVIL/REAL/HORIZON=-6),
aber wenn es richtig freakig werden soll, lese dir mal das Anwendungsbeispiel zu Twilight (http://www.fhemwiki.de/wiki/Twilight_Anwendungsbeispiel) durch.
Und ja "nicht vor 16:30Uhr, richtig? Der zweite Wert heißt dann, nicht nach x Uhr" das heißt es genau.
MFG Chris
Hallo Chris,
danke nochmal für die Erläuterungen, klappt jetzt sicher wie gewollt und ich werde mein Unwissen durch die "Schublade" des Halbwissens in "das hatte ich mal und weiß wo es steht" schieben können. Danke
Gruss
Chris
Gruss
Chris
Hallo nochmal,
bei den watchdog´s die "setstate ...." wird nicht angenommen, da das entsprechende define hierfür erst später kommt. Kann man das noch anders aufteilen, z.B. vorher alle defines machen und es dannach nochmal setzen?
Ergänzend: wenn ich es mit ; direkt in die fhem.cfg eingebe, bekomme ich den Fehler. Gebe ich es in fhem über die DEF ein, kein Fehler, aber dann steht beim watchdag STATE "on setstate.....", so als würde er das Commando nicht erkennen.
Gruss
Chris
Hallo,
ZitatErgänzend: wenn ich es mit ; direkt in die fhem.cfg eingebe, bekomme ich den Fehler. Gebe ich es in fhem über die DEF ein, kein Fehler, aber dann steht beim watchdag STATE "on setstate.....", so als würde er das Commando nicht erkennen.
Und das ist das was Zrrronggg! und ich sagen - entweder oder - aber nicht - mal so mal so.
Entweder wird die Konfiguration nur und ausschliesslich über FHEMWEB bearbeitet oder nur und ausschliesslich über die fhem.cfg
Dann braucht man sich nur einen Syntax merken und "provoziert" keine Fehlermeldungen.
Grüße
Zitat von: Puschel74 am 17 Dezember 2013, 19:06:46
Hallo,
Und das ist das was Zrrronggg! und ich sagen - entweder oder - aber nicht - mal so mal so.
Entweder wird die Konfiguration nur und ausschliesslich über FHEMWEB bearbeitet oder nur und ausschliesslich über die fhem.cfg
Dann braucht man sich nur einen Syntax merken und "provoziert" keine Fehlermeldungen.
Grüße
Naja die Lösung des Problems hatte ich ja schon im vorletzten Post mit dazu geschrieben, was setstate anging ... Ich habe es damals alles in FHEMWEB genauso gemacht und das mit den setstate nachträglich geändert wo ich dann beide watchdog defines fertig hatte ... ich bin noch nicht so weit alles direkt in die fhem.cfg zu schreiben, aber zu mindestens bin ich schon so weit aus 5000+ Thread mit jeweils 38+ Seiten mir das was ich suche oder was ich erreichen will raus zu holen und durch try and learn, zu gut deutsch probieren, auch umzusetzen, nicht jeder hat die Muße, und bevor ich zu sehe wie jemand etwas harsch abserviert wird, versuch ich als Anfänger demjenigen etwas zu unterstützen auch wenn es ein eingeweihter Puschel74 eigentlich viel besser könnte ...
Firma Dankt ...
Hallo,
Zitatnicht jeder hat die Muße, und bevor ich zu sehe wie jemand etwas harsch abserviert wird, versuch ich als Anfänger demjenigen etwas zu unterstützen auch wenn es ein eingeweihter Puschel74 eigentlich viel besser könnte ...
Harsch?
Ok. Dann definieren wir harsch unterschiedlich.
Aber seis drum.
Da ich leider keinen watchdog verwende kann ich dazu leider auch nicht viel sagen.
Von daher kann es "ein eingeweihter Puschel74" leider nicht besser.
Und schon garnicht - viel besser.
Nämlich genau gar nicht - was den watchdog und einige andere Module angeht.
Zitatversuch ich als Anfänger demjenigen etwas zu unterstützen
Und genau DAS versuche ich auch - demjenigen zu helfen.
Und ich möchte die Beiträge jetzt nicht zählen anfangen (ok bis 10 komm ich noch nicht) wo sich auch so Anfänger wie ich verheddert haben (bei mir wars noch zu google.groups-Zeiten) weil sie - kreuz und quer - herum editiert haben.
Und sich dann als Anfänger! wohlgemerkt 2 unterschiedliche Syntax merken und auseinander halten müssen kann etwas "stressig" werden.
Um es mal so zu umschreiben.
Und da das zu diesem Thema leider das einzig ist das ich im Moment beitragen kann werde ich mir auch die Freiheit heraus nehmen und einen Anfänger (so wie ich immer noch einer bin) darauf hinweisen das das keine gute Idee ist und der einfachere Syntax mMn der aus FHEMWEB ist (wobei ich auch ab und zu die fhem.cfg direkt bearbeite).
Aber das ist Geschmackssache und andere finden den fhem.cfg-Syntax einfacher.
Grüße
P.S.: Ich muss mal kurz weg - neues Kabelmodem ist heut gekommen.
Hoffentlich komm ich heut nochmal online - Telefon wär dann auch tot und der WAF von mir im Keller zwischen den ganzen Kabel ;D
Wow,
ruhig Blut... Die Unterstützung hier im Forum ist Klasse und wenn man mir indirekt "unterstellen" mag nicht ausreichend gesucht zu haben, okay. Wenn Ihr meint, dann ist das so. Die Beiträge habe ich alle gelesen und unterschiedliche Vorgehensweisen zur Bearbeitung zu "erahnen" ist nicht mein Ding. Auf Grund der Tatsache das ich auch fam. mehr als andere eingebunden bin und nicht denke etwas falsch gemacht zu haben war das mein letzter Beitrag. Will nicht das sich hier jemand wegen mir aufregen muss.
Danke an all die, die mich so kräftig unterstützt haben. Toll von Euch.
Und den Andere. (Sätze fängt man nicht mit UND an) , trotzdem danke, Ihr seid sicherlich auch in Eurer Gemeinschaft die Besten. Danke das Ihr Euch die Mühe gemacht habt meinen ..... zu lesen.
Einen letzten Gruss
Chris
Ich denk nicht, dass hier irgendwo Blutwurst gekocht wird, ich unterstelle jemanden auch nicht er habe nicht ausreichend Informationen gesammelt, das ging eher in Richtung, dass es wirklich nicht einfach ist, in dem ganzen Überfluss an Informationen hier, den richtigen oder einen geeigneten Weg zu finden. Das Kommentar von Puschel hat mich wohl auf dem falschen Fuß erwischt, wahrscheinlich auch weil er ja eigentlich auch recht hat ... Wenn man es nicht über FhemWEB gemacht hätte sondern gleich in FHEM.cfg eingetragen hätte, wär der Fehler vielleicht nicht aufgetreten da ja nach dem speichern beide defines gleich fertig gewesen wären. Aber viel interessanter wäre eigentlich, ob denn jetzt alles auch so geht wie du dir es vorgestellt hast? Das mit dem State "ON" verstehe ich nicht ganz normal steht bei mir defined oder triggered ...
MFG Chris
Hallo,
hier kocht keine Wurst ;D
Keine Panik.
Zitatund wenn man mir indirekt "unterstellen" mag nicht ausreichend gesucht zu haben, okay.
Ich denke mal das ich nicht damit gemeint bin.
Ich "unterstelle" hier niemandem etwas.
ZitatDie Beiträge habe ich alle gelesen und unterschiedliche Vorgehensweisen zur Bearbeitung zu "erahnen" ist nicht mein Ding.
Da bist du nicht alleine.
ZitatWill nicht das sich hier jemand wegen mir aufregen muss.
Ummrührn 8)
Hier regt sie niemand auf.
Zitat(Sätze fängt man nicht mit UND an)
Ok. Waren einige UND drinnen.
Ich versuch mich zu bessern ::)
Aber ich bin auch schon dran eine Beschreibung in Form eines Tutorial - wie man FHEM ohne Hardware kennen lernen kann - zusammen zu stellen.
Erstmal FHEM kennen lernen - vor allem das Logfile, der Event Monitor kommt dann im zweiten Teil ;)
Und wie man erstmal mit 2 Dummy ein notify auslösen kann.
Das ganze dann noch gewürzt mit at und etwas sunset/sunrise und im Anschluss und im Anschluss der Weekdaytimer.
Die 99_myUtils kommt dann in Teil 4 ;D
Dazwischen fällt mir schon noch was ein.
Aber da auch ich familiär nicht als Single in einer 2 Zimmer-Wohnung hänge (nix gegen Singels in 2 Zimmer-Wohnungen) und auch beruflich kurz vor den Feiertagen noch gut was um die Ohren hab macht sich das leider auch nicht grad so eben neben her.
Ich brauch noch ein bischen Zeit aber wenn ich dann ab Freitag endlich mal 3 Wochen Urlaub hab werd ich hoffentlich was vorwärts bringen.
Auch wenn es für den einen oder anderen zu spät kommen mag - sorry.
Also mal nicht alles gleich so persönlich nehmen.
Grüße
P.S.: Ich verfogle den Beitrag nicht weil ich "jemandem was unterstellen" möchte sondern weil ich hoffe etwas zu lernen.
Wollte mich mal kurz einklinken, weil ich auch vor einem ähnlichen Problem stand.
ich habe das einfach mit einem einzigen Notify gelöst, ich denke das "belastet" das System weniger:
define act_on_Nachtlicht_an notify Nachtlicht:on { fhem "define Securitylicht at *{sunset('REAL',0,'16:00','23:00')} set FS20_4eb100 on-till 23:00" }
Zum Hintergrund, Nachtlich kann manuel eingeschalten werden, wird aber auch über das Presence Modul gesteuert.
Hallo,
Danke, ja ich habe es jetzt auch etwas anders umgesetzt. Für mich war die größte Hürde drauf zu kommen das ich mit mehreren Statis auf ein zu generierendes Ereignis mit Aktion komme.
Also "Anwesenheit", "Zeitintervall", etc. auf den gleichen State bringen, zusammen zu fassen in einem "Gruppenstate" und dann per watchdog überwachen und schalten.
Damit habe ich auch ziemlich lange gekämpft ;)
Vor allem, weil ich die Handies per BT und WLAN tracke.
Schlussendlich habe ich aber einen "relativ" einfachen und kurzen Code hinbekommen.
Von der Logic schaut PRESENCE nach den Hadies, ein watchdog setzt einen Dummy und das Nachtlicht.
Wenn noch Interesse besteht, poste ich gerne ein paar Codeschnipsel dazu.
Also ich würde mich jedenfalls freuen, wenn ich eure Umsetzungen mal mit meiner Vergleichen könnte.
Da ich jetzt auch wieder in Deutschland bin und damit auch wieder an meinem Fhem experimentieren kann ...
Vielleicht lern ich ja dadurch noch etwas dazu ;D
Hier mal meine Umsetzung:
Anweseheitscheck:
define AlleWeg dummy
attr AlleWeg alias Anwesenheit
attr AlleWeg fm_order 6
attr AlleWeg group Info
attr AlleWeg icon user_unknown
attr AlleWeg room Zentrale,Anwesend
attr AlleWeg setList ja nein
attr AlleWeg verbose 1
##Markus##
define AT.Markus dummy
attr AT.Markus alias Markus iPhone
attr AT.Markus group Handy
attr AT.Markus room Anwesend
attr AT.Markus setList present absent
define BT.Markus PRESENCE local-bluetooth xx:xx:xx:xx:xx:xx 30 60
attr BT.Markus event-on-change-reading state
attr BT.Markus verbose 0
define WLAN.Markus PRESENCE lan-ping xxx.xxx.xxx.xxx
attr WLAN.Markus event-on-change-reading state
attr WLAN.Markus verbose 0
define AT.Markus.Check at +*00:01 {\
if (ReadingsVal("BT.Markus", "state", "") eq "present" || ReadingsVal("WLAN.Markus", "state", "") eq "present") {\
fhem("set AT.Markus present");;\
}\
else {\
fhem("set AT.Markus absent");;\
}\
}
so werden drei iPhone getrackt und der Dummy AlleWeg auf ja oder nein geschalten.
Anhand von AlleWeg schalte ich einige andere Dinge, wie Nachtlicht, Mail bei Tür auf, etc.
und hier noch die Nachtlichtschlatung:
define Nachtlicht FS20 1111 03
attr Nachtlicht comment Nachtlicht abends an
attr Nachtlicht dummy 1
attr Nachtlicht fm_order 11
attr Nachtlicht fm_view 0,0
attr Nachtlicht group Info
attr Nachtlicht icon day_night
attr Nachtlicht model fs20st
attr Nachtlicht room Zentrale
attr Nachtlicht sortby 6
define act_on_Nachtlicht_an notify Nachtlicht:on { fhem "define Securitylicht at *{sunset('REAL',0,'16:00','23:00')} set FS20_4eb100 on-till 23:00" }
define act_on_Nachtlicht_aus notify Nachtlicht:off { fhem "delete FS20_4eb100_till ;; delete Securitylicht" }
Auf jeden fall erstmal Danke, dass du/ihr die Codes gepostet hast/habt. So hat man mal die Möglichkeit, das Ganze mal aus einer anderen Perspektive zu betrachten.
Hmm ... Mal abgesehen davon, dass ich einige Attribute nachher mal nachschlagen muss ...
Die Dummys setzt du noch für was anderes ein oder sind die für dich einfach nur besser zu Händeln als Strukturen?
Ich grüble nämlich gerade, ob es Vorteile bringt, wenn statt einer presence structure für jedes presence bzw. Handy ein Dummy erstellt wird. Setlist ist die Liste der möglichen States?
Ich frage mich dabei nämlich gerade warum ich das in meinen Strukturen nicht festlegen musste, da habe ich ja nur das attr für clientstate_behavior und clientstate_priority festgelegt,
vielleicht war das ja auch einer der Fehler bei meinen Codes, den Aqua-Chris beschrieben hatte (STATE:ON) ...
Ich bin mir auch nicht ganz im klaren darüber, ob event-on-change-reading beim abmelden eines der Handy-Presences (BT/WLAN) nicht für eine Minute, oder zumindest für den Bruchteil einer Sekunde
oder Millisekunde den State auf absent setzt auch wenn andere Handy-Presences noch da sind? Aber es funktioniert bei dir ja, dann kann man es anscheinend vernachlässigen.
Mal abgesehen davon, weiß ich auch nicht ob es in Fhem Prioritäten oder Einstufungen der Befehle und Module gibt.
Ich sehe ja, dass du die Dummys einer Gruppe zuweist, nen Icon setzt und in einem Raum anzeigst. Ich bin mir gerade nicht ganz sicher,
aber kann man das mit Strukturen nicht auch machen? Das wäre dann schon mal ein Vorteil für Dummys.
Ja an sowas habe ich dabei gar nicht gedacht, ist dann wahrscheinlich von Interesse, wenn man über Fernzugriff checken will ob und wer zuhause ist ...
AT.Markus.Check ist dann wohl deine Form eines Watchdogs, der prüft dann alle 60 sec. ob sich der Status von BT.Markus und/oder WLAN.Markus ändert.
Durch das "*" beim at ist es ja dann auch nicht nötig irgendwas zurück zusetzen, so wie es beim watchdog der Fall ist (defined/triggered). Ich weiß jetzt nicht, ob es ein direktes reset Attribut gibt,
daher hatte ich es mit setstate defined gelöst, so stand es auch in meinen Bezugsquellen (das waren übrigens zum Teil Internals und keine Befehlsketten für Fhem.cfg oder FhemWeb),
nur dass ich stattdessen den einen watchdog sagte er soll den anderen watchdog zurücksetzen. Was anderes fiel mir nicht ein, da das Treppenlicht sonst immer an gewesen wäre,
wenn eines unserer Handys present gewesen wär. Wenn man das dann aber Zeile für Zeile direkt in FhemWeb so nachher rein schreibt, meckert Fhem und es kommt eine Fehlermeldung,
dass setstate defined auf ein noch nicht definiertes Gerät zugreifen will und man möge das Gerät doch vorher definieren. Das hatte ich bloß schon wieder vergessen,
als ich den Code hier gepostet hatte ...
Durch den Vergleich kann man ziemlich gut erkennen, dass es scheinbar eine sehr verwirrende Vielzahl an Möglichkeiten gibt zu dem selben/gleichen Ergebnis zu gelangen.
Ich könnte jetzt fragen wieso man das "Modul" watchdog überhaupt geschrieben hat, aber das hat denke ich mal mit FhemWeb zu tun, was ich momentan hauptsächlich nutze,
da man alles erst nochmal testen kann bevor man es abspeichert. Den Code für AT.Markus.Check könnte man, so wie es aussieht, zumindest nicht über FhemWeb schreiben ...
Ich habe bisher noch nicht nachgeschaut ob watchdog für andere Anwendungsbereiche noch weitere Funktionen hat.
In dem einen Post von mir habe ich ja auch schon festgestellt, dass man bei dem einen Code das AGAINST_THIEFS/Nachtlicht auch mit notify statt mit watchdog hätte lösen können (so wie in dem Code von Mitch z.B.),
zumindest wenn ich Puschel richtig verstanden habe und notify löst immer sofort aus, wenn sich der Status SecurityLight ändert, watchdog braucht dafür immer einen Zeitwert wie z.B. 00:00:01,
also 1 Sekunde absent/present bevor der "Wachhund" anfängt zu bellen.
OFFTOPIC:
Ich mache momentan halt noch viel mit try & learn (mein Schweizer Kollege sagt immer: "studiere beim schaffe"), ich beschäftige mich mit Fhem zwar schon seit über 2 Jahren,
aber Fhem zu konfigurieren probiere ich erst seit etwa einem halben Jahr, da mir vorher noch die Entscheidung schwer fiel, welche Hardware ich zum Einsatz bringen möchte (fällt mir eigentlich immer noch schwer),
daher ist das imaginäre Wörterbuch Perl<->Deutsch in meinem Oberstübchen auch noch ziemlich klein ...
Die Codes von mir hier in dem Thread habe ich alle aus dem Gedächtnis heraus für Aqua-Chris erweitert und konnte sie nicht vorher testen, da ich zu dem Zeitpunkt 1000Km von meinem Fhem entfernt war
und meine Fritzbox auch jetzt noch weder über MyFritz!, noch über VPN erreichbar ist.
Ich selber hatte bisher nur vereinzelt zu Testzwecken mit Dummys zutun und da ich vor einem Monat erst Presence mit Structure benutzt hatte damit das Licht im Haus automatisch aus geht,
wenn wir außer Haus gehen und uns nicht auf die Fresse packen, wenn wir bei dieser Jahreszeit die Treppen im dunkeln hoch stolpern müssten, ging mein Lösungsansatz halt auch eher in die Richtung.
MFG Chris
Hallo,
habe mich auch in der Anwesenheitssteuerung versucht, hier meine config:
###Handy Anwesenheit
define Jojos_Handy PRESENCE fritzbox Jojos-Handy
attr Jojos_Handy BT_Homestatus Handys
attr Jojos_Handy Jannis_Handy Handys
attr Jojos_Handy content Jojos_Handy Jannis_Handy Martinas_Handy
attr Jojos_Handy room Technik
define Jannis_Handy PRESENCE fritzbox Jannis-Handy
attr Jannis_Handy BT_Homestatus Handys
attr Jannis_Handy content Jojos_Handy Jannis_Handy Martinas_Handy
attr Jannis_Handy room Technik
define Martinas_Handy PRESENCE fritzbox Martinas-Handy
attr Martinas_Handy BT_Homestatus Handys
attr Martinas_Handy Jannis_Handy Handys
attr Martinas_Handy content Jojos_Handy Jannis_Handy Martinas_Handy
attr Martinas_Handy room Technik
####Handy Sammelabwesenheit
define Handys structure BT_Homestatus Jojos_Handy Jannis_Handy Martinas_Handy
attr Handys clientstate_behavior relative
attr Handys clientstate_priority present absent
attr Handys content Jojos_Handy Jannis_Handy Martinas_Handy
attr Handys room Technik
####Abwesenheitssteuerung
define watchdog_Abwesenheit watchdog Handys:absent 00:10:00 Handys:present set Verreist ja
attr watchdog_Abwesenheit regexp1WontReactivate 1
attr watchdog_Abwesenheit room Technik
####Anwesenheitssteuerung
define watchdog_Anwesenheit watchdog Handys:present 00:00:02 Handys:absent set Verreist nein
attr watchdog_Anwesenheit regexp1WontReactivate 1
attr watchdog_Anwesenheit room Technik
leider gehen die An- und Abwesenheitssteuerung nur einmal, dann kommt der Status triggered und der watchdog schaltet den Verreist Status nicht mehr.
du mußt die watchdog wieder auf zurücksetzen wenn du einen bestimmten pesesence erreicht hast (setstate defined) ... ich schaue mir deinen Code nochmal in ruhe an .. evtl. findest du die Lösung aber auch in den vorigen Posts des Threads ...
Beispiel:
define watchdog_Anwesenheit watchdog Handy:absent 00:15 Handy:present set Gesamte_Wohnung off ; setstate watchdog_Anwesenheit defined
Habe den Fehler gefunden,
der entsprechende Abschnitt muss so aussehen:
####Abwesenheitssteuerung
define watchdog_Abwesenheit watchdog Handys:absent 00:15:00 Handys:present set Verreist ja ;; setstate watchdog_Abwesenheit defined
attr watchdog_Abwesenheit regexp1WontReactivate 1
attr watchdog_Abwesenheit room Technik
####Anwesenheitssteuerung
define watchdog_Anwesenheit watchdog Handys:present 00:00:01 Handys:absent set Verreist nein ;; setstate watchdog_Anwesenheit defined
attr watchdog_Abwesenheit regexp1WontReactivate 1
attr watchdog_Anwesenheit room Technik
wichtig sind die 2 Semikolon hintereinander, sonst geht es nicht.
Danke für den Tip