Ich glaube, ich stehe gerade auf dem Schlauch, vielleicht hat jemand eine Tipp.
Problem: Mein Türsensor an der Haustür meldet bei Öffnen ein
on-for-timer 256
Genau das soll nun einen Alarm auslösen über ein notify. Wie muss ich jetzt das schreiben? Folgendes hat nicht funktioniert:
define MyNotify notify Haustuer:on-for-timer.256 .......
geht nicht.
define MyNotify notify Haustuer:on.* ......
geht zwar, führt aber zu Fehlermeldungen, da aus unerklärten Gründen manchmal ein
on-for-timer 20
auftaucht.
was ist das denn für ein seltsammer Türsensor?? na egal...
wenn du einen Auszug aus dem Event-Monitor in CodeTags postest, kann dir bestimmr weiter geholfen werden...
Ein FS20 Tür-Fenster-Kontakt. Den habe ich so konfiguriert, dass er bei geschlossener Tür alle 4 Minuten die Meldung "Off" bringt. bei Geöffnet würde er dann kein wiederholtes Signal schicken, daher die Konfiguration auf "on-for-timer 256". Das dient zur Sicherheit, falls mal ein Signal verloren geht.
Da ich jetzt nicht zu Hause bin, kann ich nicht mir einem Auszug aus dem Event Monitor dienen.
... und jetzt der Auszug aus dem Event Monitor:
2017-02-19 21:07:43 Global global DEFINED Haustuer_timer
2017-02-19 21:07:43 FS20 Haustuer on-old-for-timer 256
2017-02-19 21:07:48 Global global DELETED Haustuer_timer
ZitatHaustuer on-old-for-timer 256
Mit old kannte ich das gar nicht :o Wie sieht Dein set aus ? Ist doch bestimmt ein notiy/DOIF, das auf den Türsensor reagiert, oder ?
Hallo,
Zitat von: duke-f am 18 Februar 2017, 19:27:00
define MyNotify notify Haustuer:on-for-timer.256 .......
geht nicht.
Zitat von: duke-f am 19 Februar 2017, 21:12:52
... und jetzt der Auszug aus dem Event Monitor:
2017-02-19 21:07:43 Global global DEFINED Haustuer_timer
2017-02-19 21:07:43 FS20 Haustuer on-old-for-timer 256
2017-02-19 21:07:48 Global global DELETED Haustuer_timer
on-old-for-timer 256
Deinen Eventnamen im Notify mal vergleichen...
Gruß
Andi
Das "old" muss da stehen, hatte ich oben vergessen.
Das Notify sieht insgesamt etwas umfangreich aus, da es automatisch mittel Alarm erstellt wird.
(Fenster_Bad:Offen)|(Fenster_Da:Offen)|(Fenster_Dach:Offen)|(Fenster_Dach_WC:Offen)|(Fenster_Ke_li:Offen)|(Fenster_Ke_re:Offen)|(Fenster_Ki_li:Offen)|(Fenster_Ki_re:Offen)|(Fenster_Ku:Offen)|(Fenster_Sz:Offen)|(Fenster_Terrassentuer:Offen)|(Fenster_WC:Offen)|(Fenster_Wz_G:Offen)|(Fenster_Wz_S:Offen)|(Haustuer:on-old-for-timer.256) {main::Alarm_Exec("Hausalarm",0,"$NAME","$EVENT","on")}
Hi,
versuch mal testweise ein notify mit dem Gewünschten als einzelnen Trigger und stell das hier rein.
Gruß,
Thorsten
Zitat von: KölnSolar am 19 Februar 2017, 21:31:13
Mit old kannte ich das gar nicht :o Wie sieht Dein set aus ? Ist doch bestimmt ein notiy/DOIF, das auf den Türsensor reagiert, oder ?
Ich kann das mit old immer noch nicht recht glauben. Wie sieht die Definition des Türsensors aus ?
Edit: Löst der Sensor das seltsame event direkt aus oder hängt da noch ein notify/DOIF dahinter ? Wenn Letzteres, dann auch mal dieses notify posten.
@KölnSolar
Das mit dem on-old-for-timer gehört zu den Standard-FS20-Befehlen. Der Türsensor gibt das von sich aus so aus, wenn er gemäß Beschreibung Seite 16, Abschnitt 6.1 programmiert wurde. (https://files.elv.com/service/manuals/FS20TFK/FS20TFK_UM_G_050727.pdf). Hatte ich erst auch mal etwas gestaunt, hatte es aber damals nicht weiter in Frage gestellt. Hängt wahrscheinlich damit zusammen, dass man beispielsweise mittels des Türkontaktes auch einen Dimmer ansteuern könnte: Tür auf-> Licht geht auf 100% für eine definierte Zeit und geht danach wieder auf den vorhergehenden Dimmwert.
Aber ich gebe gerne natürlich nochmal die komplette Definition an - wobei ich jetzt natürlich zugeben muss, bisher etwas verschwiegen zu haben: Ich habe über ein eventMap "on" durch "offen" ersetzt. Das hatte ich in den bisherigen Posts wieder rückgängig gemacht, weil ich dadurch unnötige Verwirrung befürchtete.
define Haustuer FS20 632d 58
attr Haustuer IODev CUL_0
attr Haustuer alarmDevice Sensor
attr Haustuer alarmSettings alarm0,|Haustuer:offen.*|Zugang|on
attr Haustuer devStateIcon zu:fts_door@green offen.*:fts_door_open@red
attr Haustuer eventMap on:offen off:zu
attr Haustuer follow-on-for-timer 1
attr Haustuer icon fts_door
attr Haustuer room FS20,Fenster,Security
attr Haustuer verbose 2
define FileLog_Haustuer FileLog ./log/Haustuer-%Y.log Haustuer
attr FileLog_Haustuer logtype text
attr FileLog_Haustuer room FS20
Woher im Laufe der Zeit unregelmäßig immer mal wieder ein
offen-old-for-timer 20
kommt, konnte ich auch trotz erhöhtem Verbose nicht nachvollziehen. (Ab jetzt bleibe ich beim "offen" statt "on".)
Aber schon mal Dank an alle für die rege Hilfeversuche. Mit dem Trigger werde ich das mal versuchen nachzuvollziehen. Jetzt geht das gerade nicht, da ich selber meist nicht zu Hause bin und meine Frau nicht mit gewagten Versuchen durch die Rauchmelder, Stereoanlagen, Blinklichter usw erschrecken will....
ZitatDas mit dem on-old-for-timer gehört zu den Standard-FS20-Befehlen.
Standard ? Zumindest kann ich das bei meinen FS20-Aktoren nicht über das Webinterface setzen. Das liegt daran, dass ich das model-Attribut gesetzt habe. Bei Dir evtl. mal auf fs20tfk setzen und den event-monitor beobachten ?
Habs jetzt aber in der commandref gesehen:
Zitaton-old-for-timer # set to previous (before switching it on)
Das sollte dann aber eher nicht das event sein, auf das Du triggern müsstest. Es müsste doch dann noch ein weiteres event für on oder on-for-timer kommen.
commandref:
Zitat◾As the FS20 protocol needs about 0.22 seconds to transmit a sequence, a pause of 0.22 seconds is inserted after each command.
Könnte das vielleicht Dein
ZitatWoher im Laufe der Zeit unregelmäßig immer mal wieder ein
Code: [Auswählen]
offen-old-for-timer 20
kommt,
Problem erklären ?
Hi,
ist das nicht alles ziemlich egal? Solange das Event im Event Monitor erscheint, muss man auch ein notify machen können, das darauf trigger. Mir scheint hier nur das Problem zu sein, dass es unklar ist, wie das Event denn nun aussieht:
on-for-timer 256
on-for-timer 20
offen-old-for-timer 256
offen-old-for timer 20
...ja was denn nun?
Gruß,
Thorsten
Nein, das ist nicht das Problem.
Das Problem ist, dass das Event hinter dem
offen-old-for-timer
die Zahl 256 hat, die ich im notify mit einbeziehen will. Das ist alles. Alles was das "old" betrifft ist nicht mein Problem - bin aber gerne auch bereit, darüber zu diskutieren. Im Eventmonitor kommt das auch in der Form vor, siehe mein obiger Beitrag. Ich will jetzt auch wirklich nicht einen Elefanten aus einer Mücke machen. Da keiner den funktionierenden Tipp geben kann, werde ich mich die Tage mal an eine Testreihe machen. Wenn ich's hab, werde ich berichten.
Zitat von: duke-f am 20 Februar 2017, 12:55:04
Da keiner den funktionierenden Tipp geben kann
Wenn du weiterhin so spärlich mit Informationen rüber kommst und immer nur so viel sagst, wie die Helfer selber schon rausgefunden haben, dann wird das auch so bleiben!!
Zitat von: duke-f am 20 Februar 2017, 12:55:04
offen-old-for-timer
die Zahl 256 hat, die ich im notify mit einbeziehen will.
Also wenn der Event etwa so aussieht:
FS20 Haustuer offen-old-for-timer 256
Dann sollte folgendes Notify trigger:
define blabla notify Haustuer:offen-old-for-timer.256
Vielleicht kommt da aber auch irgendwas wegen des Leerzeichens aus dem Tritt. Dann könntest Du mal versuchen, für das notify das Attribut addStateEvent zu setzen und dann das:
define blabla notify Haustuer:state:.offen-old-for-timer.256
Gruß,
Thorsten
sehe ich ähnlich, unter den nun veränderten Voraussetzungen sollte ein
define MyNotify notify Haustuer:offen-old-for-timer.25.* .......
doch funktionieren :-\ Das .* würde noch irgendwelche Zeichen(neben der 6) hinter der 25 abfangen.
Besten Dank, das werde ich heute Abend versuchen und berichten.
define blabla notify Haustuer:offen-old-for-timer.256
hatte ich versucht, hat aber zu keiner Aktion geführt. Die Version mit addStateEvent habe ich bisher noch nicht gekannt, werde ich mir zu Gemüte führen.
@automatisierer
Ich stimme Dir im Großen und Ganzen natürlich zu. Aber manchmal hoffe ich eben auf etwas Verständnis für diejenigen FHEM-Fans, die sich leider nur sehr gelegentlich mit diesem Hobby beschäftigen können. Wenn man dann mal gerade zwischen verschiedenen anderen Verpflichtungen ein paar Minuten Zeit hat, und das auch nicht am Stück, kommt es halt schon mal zu etwas nicht wirklich vorbildlichen Fragestellungen. Um so mehr gilt mein Dank denen, die sich trotzdem die Mühe machen, thematisch zu helfen.
define blabla notify Haustuer:offen-old-for-timer.256
Das kann auch zu nichts führen, da fehlt ja der Teil der Ausgeführt werden soll...
Die Regex die du in dem Notify hast, passt auf jeden Fall nicht zu dem Event, dass du gepostet hast:
2017-02-19 21:07:43 FS20 Haustuer on-old-for-timer 256
Stammen die restlichen geposteten Events aus deinem Gedächtnis oder hast du die per copy/paste aus dem Event Monitor geholt?
Wenn du einfach den Event Monitor auf machst, dort meinetwegen die Regex auf deine Haustür anpasst (muss aber nicht) und dann die Tür einmal öffnest und wieder schließt, diese Ausgabe dann hier in Code Tags postest (und zwar per copy/paste und ohne irgend was zu unterschlagen), dann wissen alle wo der Hase lang läuft und dann kann dir geholfen werden! Das Problem, welches du da hast, ist bei weitem kein Hexenwerk.
Der erste Tipp von Thorsten Pferdekaemper war der richtige. Ich hatte zwar genau das auch gestern eigentlich probiert und es hatte offensichtlich nicht funktioniert, lag aber vielleicht an meinem Testversuch von Außerhalb. Jetzt zu Hause unter realen Bedingungen geht es wie gewünscht.
Dank an alle.