FHEM Forum

FHEM => Anfängerfragen => Thema gestartet von: Vladi2010 am 28 Dezember 2017, 22:02:31

Titel: Klammern und Semikolon
Beitrag von: Vladi2010 am 28 Dezember 2017, 22:02:31
hallo, habe folgenden befehl geschrieben:

define Badezimmer_Anheizen notify HeizungBad_Rauchmelder_Reset:off|dimdown set heizung.5 desired 25 ;; attr Bewegungsmelder_BAD_.* do_not_notify 1 ;; set Aktor_Bad_Kanal_1 on ;; defmod reset_Heizung at +00:02:00 set heizung.5 desired 5 ;; attr Bewegungsmelder_BAD_.* do_not_notify 0 ;; set Aktor_Bad_Kanal_1 on-for-timer 180

einzeln kann ich die Befehle ausführen , allerdings zusammen geht es nicht.

set heizung.5 desired 25
attr Bewegungsmelder_BAD_.* do_not_notify 1
set Aktor_Bad_Kanal_1 on

>>>>defmod reset_Heizung at +00:02:00<<<< 2 Minuten Wartezeit

set heizung.5 desired 5
attr Bewegungsmelder_BAD_.* do_not_notify 0
set Aktor_Bad_Kanal_1 on-for-timer 180

info,...    die ersten 3 befehle sollen ausgeführt werden, danach 2 Minuten Wartezeit, und danach die nächsten drei Befehle.

sorry ich kann eigentlich gar keine Programmiersprache :(

danke für eure Hilfe

Andreas
Titel: Antw:Klammern und Semikolon
Beitrag von: franky08 am 28 Dezember 2017, 23:53:55
poste das Ganze bitte noch einmal in Code Tags (ist die #) sonst kann das keiner richtig lesen.

VG
Frank
Titel: Antw:Klammern und Semikolon
Beitrag von: Vladi2010 am 28 Dezember 2017, 23:57:08
was sind  Code Tags ??

ich habe das hier alle in einer Zeile geschrieben:

define Badezimmer_Anheizen notify HeizungBad_Rauchmelder_Reset:off|dimdown set heizung.5 desired 25 ;; attr Bewegungsmelder_BAD_.* do_not_notify 1 ;; set Aktor_Bad_Kanal_1 on ;; defmod reset_Heizung at +00:02:00 set heizung.5 desired 5 ;; attr Bewegungsmelder_BAD_.* do_not_notify 0 ;; set Aktor_Bad_Kanal_1 on-for-timer 180

meinst du dass?
Titel: Antw:Klammern und Semikolon
Beitrag von: Vladi2010 am 29 Dezember 2017, 00:03:34

define Badezimmer_Anheizen notify HeizungBad_Rauchmelder_Reset:off|dimdown # Notify FS20 Fernbedienung langes und kurzes drücken

set heizung.5 desired 25  # Stelle PID Regler  auf 25 Grad
attr Bewegungsmelder_BAD_.* do_not_notify 1  # schalte alle Bewegungsmelder im Bad auf nicht benachrichtigen
set Aktor_Bad_Kanal_1 on  # schalte Lampe im Badezimmer AN

defmod reset_Heizung at +00:02:00 #2 Minuten Wartezeit

set heizung.5 desired 5 # Stelle PID Regler  auf 5 Grad
attr Bewegungsmelder_BAD_.* do_not_notify 0 # schalte alle Bewegungsmelder im Bad auf  benachrichtigen
set Aktor_Bad_Kanal_1 on-for-timer 180 # schalte Lampe im Badezimmer für 180sec AN
Titel: Antw:Klammern und Semikolon
Beitrag von: KölnSolar am 29 Dezember 2017, 00:19:30
Frank meint das # Symbol über dem  :-X
Geht auch nachträglich im Ändernmodus ;)

Dein Problem dürfte die Dopplung der Semikolons sein.

Grüße Markus
Titel: Antw:Klammern und Semikolon
Beitrag von: Vladi2010 am 29 Dezember 2017, 00:25:24
ja  das ist sicher  etwas mit dem Semikolon   ,

aber einzel geht nicht und doppelt geht auch nicht...

zudem macht Fhem manchmal selber Semikolon   je nachdem ob ich in der Config schrebine oder im DEF Fenster.   hatte schon mahj  sogar ;;;;  oder ;;  obwohl ich nur  ; gemacht habe.
Titel: Antw:Klammern und Semikolon
Beitrag von: KölnSolar am 29 Dezember 2017, 00:35:04
Zitatob ich in der Config schrebine
Das solltest Du unterlassen ! Du kannst alles übers Webinterface machen.
Titel: Antw:Klammern und Semikolon
Beitrag von: Vladi2010 am 29 Dezember 2017, 00:56:16
muss ich im Webinterface ein oder zwei Semikolon machen ?
Titel: Antw:Klammern und Semikolon
Beitrag von: KölnSolar am 29 Dezember 2017, 01:25:17
einfache. und erst mal nur die ersten 3 Befehle. Bei den Befehlen des ats bin ich unschlüssig. Ich würd daher ein permanentes at anlegen mit attr disable 1 und im notify nur dass attr disable 0 setzen.
Titel: Antw:Klammern und Semikolon
Beitrag von: Vladi2010 am 29 Dezember 2017, 01:43:32
define Badezimmer_Anheizen notify HeizungBad_Rauchmelder_Reset:off|dimdown set heizung.5 desired 25 ;; attr Licht_Automatic_180sec disable 1 ;; set Aktor_Bad_Kanal_1 on ;; defmod reset_Heizung at +02:00:00 set heizung.5 desired 5 ;; set Aktor_Bad_Kanal_1 on-for-timer 180 ;; attr Licht_Automatic_180sec disable 0

Das ist meine alte Zeile, kopiert  direkt aus der Config.

diese Zeile Funktioniert !!!!!

setze ich die neuer Befehle ein, funktioniert sie nicht, trotz das die neuen Befehle einzeln funktionieren.....     ich verstehe das ganze nicht...

Guten Nacht allen ;-),  morgen bin ich wider online ;-)
Titel: Antw:Klammern und Semikolon
Beitrag von: Fixel2012 am 29 Dezember 2017, 02:04:33
Gewöhne dir wie Frank schon schrieb bitte an, mit den Code Tags zu Arbeiten.

So wird alles viel leserlicher!

Als vergleich:

define Badezimmer_Anheizen notify HeizungBad_Rauchmelder_Reset:off|dimdown set heizung.5 desired 25 ;; attr Licht_Automatic_180sec disable 1 ;; set Aktor_Bad_Kanal_1 on ;; defmod reset_Heizung at +02:00:00 set heizung.5 desired 5 ;; set Aktor_Bad_Kanal_1 on-for-timer 180 ;; attr Licht_Automatic_180sec disable 0


define Badezimmer_Anheizen notify HeizungBad_Rauchmelder_Reset:off|dimdown set heizung.5 desired 25 ;; attr Licht_Automatic_180sec disable 1 ;; set Aktor_Bad_Kanal_1 on ;; defmod reset_Heizung at +02:00:00 set heizung.5 desired 5 ;; set Aktor_Bad_Kanal_1 on-for-timer 180 ;; attr Licht_Automatic_180sec disable 0

Titel: Antw:Klammern und Semikolon
Beitrag von: Vladi2010 am 29 Dezember 2017, 09:19:06
aaaa   jetzt weis ich was franky08 meinte  :-)

ok, ab sofort werde ich es so machen :)
Titel: Antw:Klammern und Semikolon
Beitrag von: KölnSolar am 29 Dezember 2017, 10:01:59
Zitatkopiert  direkt aus der Config
Da wird dann aber die Dopplung automatisch vorgenommen. Guck Dir jetzt mal Dein funktionierendes notify über die Web-Oberfläche an. Da solltest Du nur jeweils 1 Semikolon haben.  ;)

Und jetzt, wo Du das mit den Code-Tags verstanden hast  ::), stellst Du mal das funktionierende u. das nichtfunktionierende notify hier ein und wir erkennen den Unterschied  ;)
Titel: Antw:Klammern und Semikolon
Beitrag von: Vladi2010 am 29 Dezember 2017, 10:30:25

Hier das alte funktionierende:
define Badezimmer_Anheizen notify HeizungBad_Rauchmelder_Reset:off|dimdown set heizung.5 desired 25 ;; attr Licht_Automatic_180sec disable 1 ;; set Aktor_Bad_Kanal_1 on ;; defmod reset_Heizung at +02:00:00 set heizung.5 desired 5 ;; set Aktor_Bad_Kanal_1 on-for-timer 180 ;; attr Licht_Automatic_180sec disable 0

und hier die Letzte version des nicht funktionierenden offenbar fehlen die doppel Semikolon, aber mit doppel hat es auch nicht funktioniert:
define Badezimmer_Anheizen notify HeizungBad_Rauchmelder_Reset:off|dimdown set heizung.5 desired 25 ;; attr Bewegungsmelder_BAD_.* do_not_notify 1 ;; set Aktor_Bad_Kanal_1 on ;; defmod reset_Heizung at +00:02:00 set heizung.5 desired 5 ;; attr Bewegungsmelder_BAD_.* do_not_notify 0 ;; set Aktor_Bad_Kanal_1 on-for-timer 180
Titel: Antw:Klammern und Semikolon
Beitrag von: KölnSolar am 29 Dezember 2017, 11:27:53
Dass das 1. Notify ein at mit relativer Zeit von 2 Std. hat und das 2. nur 2 min. ist beabsichtigt ?

Ansonsten fällt mir nur der .* als besonderer Unterschied auf. Da ich nie generisch in dieser Form arbeite: liegt es vielleicht daran ?  :-\ Ich würd es testweise also mal nur mit einem konkreten device probieren.

Was sagt denn eigentlich das Log ? Kann mir fast gar nicht vorstellen, dass sich dort nicht der Fehler äußert.
Titel: Antw:Klammern und Semikolon
Beitrag von: Vladi2010 am 29 Dezember 2017, 11:33:35
2 Std. und 2 min habe ich extra zum probieren eingestellt. später wenn es läuft kommt alles wider auf 2h umgestellt.

attr Bewegungsmelder_BAD_.* do_not_notify 1
und
attr Bewegungsmelder_BAD_.* do_not_notify 0
funktionieren wenn ich sie als einzelnes Kommando "abfeuere"