Hauptmenü

Licht Zeitsteuern

Begonnen von Timmi, 21 Oktober 2015, 18:32:00

Vorheriges Thema - Nächstes Thema

Timmi

Hallo zusammen,

ich habe mit notify eine einfache Lichtsteuerung gebaut (das ist nur ein Beispiel), das funktioniert auch, allerdings bekomme ich folgende Fehlermeldungen:

blinkerA already defined, delete it first
blinkerB already defined, delete it first

bzw.

Please define blinkerA first
Please define blinkerB first


define Licht_on_off notify Licht { if (Value ("Intervall") eq "Activ") {fhem ("set Keller on;; define blinkerA at +00:00:10 set Flur on-for-timer 20;; define blinkerB at +00:00:20 set Zimmer on-for-timer 30")} else {fhem ("set Keller off;; set Flur off;; set Zimmer off;; set blinkerA inactive;; set blinkerB inactive");;}}



Das kann man auch mit DIOF lösen, aber ich würde gerne wissen, warum diese Fehlermeldungen entstehen !?

Wäre sehr nett, wenn mir jemand helfen könnte.

Vielen Dank !
Tim

gero

Wenn du blinkerA und blinkerB einmal per define angelegt hast, kannst du es nicht nochmal anlegen, ohne es vorher zu löschen.

Gruß,
Gero
Odroid C1 - CULV3-868, JeeLink
16 x TX 29 DTH
MAX!: 15x Heizkörperthermostat+, 2x Wandthermostat, 14x Fenserkontakt, 1x Ecotaster
FS20 S4A, FS20IRF, BSB-Heizungssteuerung über Atmega2560
Z-Wave: ZME_UZB1, Fibaro Wall Plug + Motion Sensor

Timmi

Danke für deine Antwort!

Das heisst, es fehlen am Ende : delete blinkerA;; delete BlinkeB ?

Und warum gibt es diese Fehlermeldungen :

Please define blinkerB first
Please define blinkerA first

marvin78

Schau dir mal defmod an (commandref). Das ist das, was du brauchst.

Timmi

Vielen Danke !

Ist der Befehl nun mit "defmod" so richtig :


define Licht_on_off notify Licht { if (Value ("Intervall") eq "Activ") {fhem ("set Keller on;; defmod blinkerA at +00:00:10 set Flur on-for-timer 20;; defmod blinkerB at +00:00:20 set Zimmer on-for-timer 30")} else {fhem ("set Keller off;; set Flur off;; set Zimmer off;; set blinkerA inactive;; set blinkerB inactive");;}}


Es gibt weiterhin Fehlermeldungen :

Please define blinkerA first
Please define blinkerB first

GrußTim

marvin78

Das inactive setzen am Ende kannst und musst du dir sparen. Die ats existieren ja nach dem Ausführen bzw. zu dem Zeitpunkt nicht (mehr).

Timmi

Herzlichen Dank !

Es gibt keine Fehlermeldungen mehr  :)

Gruß
Tim