FHEM Forum

FHEM => Automatisierung => Thema gestartet von: DD am 05 März 2017, 15:42:25

Titel: Unterscheiden zwischen long und short
Beitrag von: DD am 05 März 2017, 15:42:25
Hallo ich schon wieder  ;D
ich versuche über ein Notify nur auf das lange Drücken eines Tasters zu ragieren.
Leider kommt auch jedes Mal der smart Befehl durch.

Kann mir jemand helfen?

Hier der Notify:


(
  [Taster_G04:press_long]
)
(
   IF ([G4_Media:state] eq "on")
      (set G4_Media off)
   ELSE
      (set G4_Media on-for-timer 14400)
)


Im angehängten Bild habe ich die beieden Sequenzen (long und short) rauskopiert

Titel: Antw:Unterscheiden zwischen long und short
Beitrag von: rudolfkoenig am 05 März 2017, 15:46:49
Diese Syntax ist fuer notify falsch.
Bitte merken: DOIF und IF sind eigene Module, mit einem speziellen Syntax, was nur da gilt.
Fuer DOIF/IF Probleme gibt es einen speziellen Forumsbereich.
Titel: Antw:Unterscheiden zwischen long und short
Beitrag von: CoolTux am 05 März 2017, 15:58:35
Zitat von: DD am 05 März 2017, 15:42:25
Hallo ich schon wieder  ;D
ich versuche über ein Notify nur auf das lange Drücken eines Tasters zu ragieren.
Leider kommt auch jedes Mal der smart Befehl durch.

Kann mir jemand helfen?

Hier der Notify:


(
  [Taster_G04:press_long]
)
(
   IF ([G4_Media:state] eq "on")
      (set G4_Media off)
   ELSE
      (set G4_Media on-for-timer 14400)
)


Im angehängten Bild habe ich die beieden Sequenzen (long und short) rauskopiert

DD warum befolgst Du nicht meinen Rat und liest erstmal das Anfängerbuch. Toll das Thorsten Dir bei Deinem Problem helfen könnte das es weg ist, aber das entbehrt Dich nicht von Deinem Selbststudium zu FHEM. Du siehst ja selber das Dir ohne vernünftige Angaben keiner helfen kann.
Und so wird es Dir weiter und weiter gehen auch wenn dieses Problem vielleicht wieder gelöst wird.
Im letzten Beitrag war das noch eine Funktion für Dich in diesem ein Notify und beides ist falsch. Ich ha es Dir schon gesagt das es nach einem DOIF aus sieht und wo das Forum dafür ist.
Du musst doch wissen was Du angelegt hast.
Titel: Antw:Unterscheiden zwischen long und short
Beitrag von: Thorsten Pferdekaemper am 05 März 2017, 16:42:30
Zitat von: DD am 05 März 2017, 15:42:25Leider kommt auch jedes Mal der smart Befehl durch.
Was ist denn der "smart Befehl"?

Zitat
Hier der Notify:
Wie wär's wenn Du einfach wirklich mal ein notify anlegst?

Gruß,
   Thorsten
Titel: Antw:Unterscheiden zwischen long und short
Beitrag von: DD am 05 März 2017, 17:45:53
Hallo zusammen,

ja, ihr bet ja alle Recht.
Mit den Begriffen hapert es noch ein wenig.

Ich bin davon ausgegangen dass DOIF und Notify das selbe sind. Ist in der Anleitung nun wirklich nicht so toll beschrieben! DOIF gibt es da gar nicht....

O.k. - Ich habe also ein DOIF und dort unter DEF das besagte Makro geschrieben.
Ich möchte dass nu die "press_long" des Tasters ausgewertet werden. "press_short" könnte vielleicht über eine If...Then.. abgefangen werden.
Aber ich weis nicht wie....


Tobias
Titel: Antw:Unterscheiden zwischen long und short
Beitrag von: CoolTux am 05 März 2017, 18:33:32
Schau mal hier
https://fhem.de/commandref_DE.html#DOIF

Da suchst du auf Events reagieren und liest Dir das mal durch.
Fange ganz einfach an und dann baust du auf. Sorge erstmal dafür das Du den ersten Teil (Bedingungs oder Event) hin schreibst

define doifName DOIF ( [ ] ) ( )

Das erste Runde Klammernpaar ist immer der Event oder die Bedingung zum ausführen des Ausführungsteils. Das zweite runde Klammernpaar ist der Ausführungsteil.
In eckigen Klammern kommen die Devicenamen oder Events.

Lese dich, lasse dir Zeit. Teste mit Dummys wie im Anfänger PDF beschrieben. Erst dann fängt es auch an Spaß zu machen. Sonst wird es nur Frust.
Titel: Antw:Unterscheiden zwischen long und short
Beitrag von: Thorsten Pferdekaemper am 05 März 2017, 20:52:42
Hi,
ich hätte da ja eher notify empfohlen, aber wenn's partout DOIF sein soll, dann bin ich wegen Ahnungslosigkeit raus.
Gruß,
   Thorsten
Titel: Antw:Unterscheiden zwischen long und short
Beitrag von: DD am 05 März 2017, 21:28:16
Hallo,

habe die Lösung in der Onlinehilfe gefunden

[Taster_G04] =~ "long"

Tobias
Titel: Antw:Unterscheiden zwischen long und short
Beitrag von: betateilchen am 05 März 2017, 21:57:13
jetzt auch noch mit regexp zu arbeiten, macht die Sache nur noch grusliger...
Titel: Antw:Unterscheiden zwischen long und short
Beitrag von: Thorsten Pferdekaemper am 05 März 2017, 22:35:10
Zitat von: betateilchen am 05 März 2017, 21:57:13
jetzt auch noch mit regexp zu arbeiten, macht die Sache nur noch grusliger...
Ja, da hat auch meine Kreativität nicht ausgereicht, um mir so eine "Lösung" auszudenken.

@DD: Was wäre denn so schlimm an einem simplen notify Taster_G04:long_press:.* ?

Gruß,
   Thorsten
Titel: Antw:Unterscheiden zwischen long und short
Beitrag von: DD am 06 März 2017, 08:03:27
Wahrscheinlich wäre das die Lösung gewesen wenn ich es gestern gewusst hätte....
Ich versuche es mal am nächsten Wochenende. Ist sicher die bessere Lösung
Titel: Antw:Unterscheiden zwischen long und short
Beitrag von: automatisierer am 06 März 2017, 08:40:17
Zitat von: DD am 05 März 2017, 21:28:16
Hallo,

habe die Lösung in der Onlinehilfe gefunden

[Taster_G04] =~ "long"

Tobias


Ich wollte gestern schon auf die Folgefragen wetten...

"... DOIF funktioniert immer nur ein mal..."

oder

"... DOIF schaltet bei jedem Tastendruck zwei mal..."

:-X