[Gelöst] notify mit set BLABLA on-for-timer 30

Begonnen von stehlampe, 26 Mai 2022, 18:49:09

Vorheriges Thema - Nächstes Thema

stehlampe

Moin, ich brauche eure Hilfe, weil ich mich mit dem on-for-timer verstrickt habe.

Was ich möchte: ich möchte, dass ke_Wasserpumpe-StkDo_2 (FS20-Funksteckdose) der Variable ke_Wasserpumpe_2 (dummy) "folgt", aber nur wenn ke_Wasserpumpe_Hauptschalter_2 (dummy) auf "ON" steht.

Meine Definitionen:
define ke_Wasserpumpe_2 dummy
define ke_Wasserpumpe_StkDo_2 FS20 a000 01
define ke_Wasserpumpe_Hauptschalter_2 dummy

define ke_Wasserpumpe_At_On1 at *18:34:00 set ke_Wasserpumpe_2 on-for-timer 30

define ke_Wasserpumpe_notify1_On notify ke_Wasserpumpe_2:on { \
      if (Value("ke_Wasserpumpe_Hauptschalter_2") eq "ON") { fhem("set ke_Wasserpumpe_StkDo_2 on")}}
define ke_Wasserpumpe_notify1_Off notify ke_Wasserpumpe_2:off { \
      if (Value("ke_Wasserpumpe_Hauptschalter_2") eq "ON") { fhem("set ke_Wasserpumpe_StkDo_2 off")}}


Aber ke_Wasserpumpe-StkDo_2 folgt einfach nicht. Ich habe das "on-for-timer" im Verdacht.  Vielleicht hab ich das Konzept nicht verstanden ?!

VG Die Stehlampe
"Advice is like snow; the softer it falls the longer it dwells upon, and the deeper it sinks into the mind." -- Samuel Taylor Coleridge -

DetlefR

1. Frage:
Zitatat *18:34:00 set ke_Wasserpumpe_2 on-for-timer 30
funktioniert? "UseSetExtensions" für ke_Wasserpumpe_2  ist aktiviert?

2.Frage: Warum schaltet der eine Dummy mit ON/OFF und der andere mit on/off?

stehlampe

zu 1. Frage: ja, das funktioniert, aber das notify triggert nicht. "UseSetExtensions" kenne ich noch nicht ... werde gleich mal lesen.
zu 2. Frage: alle Schalter, die ich über das Webinterface betätigen sind bein mir in großer Schrift - aber ich denke, dass sollte mit meinem Problem nix zu tun haben.


"Advice is like snow; the softer it falls the longer it dwells upon, and the deeper it sinks into the mind." -- Samuel Taylor Coleridge -

stehlampe

habe jetzt folgendes gesetzt:

attr ke_Wasserpumpe_2 useSetExtensions 1


jetzte bekomme ich immer die Meldung "Unknown argument off, choose one of " wenn ich ke_Wasserpumpe_2 z.B. von Hand setze ("set ke_Wasserpumpe_2 off")

nu bin ich völlig verwirrt. Was macht denn das UseSetExtensions ? So richtig finde ich das in der Referenz nicht erklärt.
"Advice is like snow; the softer it falls the longer it dwells upon, and the deeper it sinks into the mind." -- Samuel Taylor Coleridge -

DetlefR

Damit wir beide mal vom gleichem reden.
Entweder in die Kommandozeile "list ke_Wasserpumpe_2" eingeben oder unten in der Fusszeile auf "Raw definition" drücken.
Das Ergebnis mal hier reinstellen. Am besten für die anderen beiden Device gleich mit.

stehlampe

Hallo DetlefR,

vielen Dank für deine Unterstützung.

Hier die Raw Definitions

defmod ke_Wasserpumpe_2 dummy
attr ke_Wasserpumpe_2 room Keller,Garten
attr ke_Wasserpumpe_2 useSetExtensions 1

setstate ke_Wasserpumpe_2 on-for-timer 30
setstate ke_Wasserpumpe_2 2022-05-26 18:46:00 state on-for-timer 30

defmod ke_Wasserpumpe_StkDo_2 FS20 a000 01
attr ke_Wasserpumpe_StkDo_2 model fs20st
attr ke_Wasserpumpe_StkDo_2 room Keller,FS20

setstate ke_Wasserpumpe_StkDo_2 off
setstate ke_Wasserpumpe_StkDo_2 2022-05-26 21:29:05 IODev CUL_0
setstate ke_Wasserpumpe_StkDo_2 2022-05-26 18:43:29 state off

defmod ke_Wasserpumpe_Hauptschalter_2 dummy
attr ke_Wasserpumpe_Hauptschalter_2 devStateIcon ON:rc_GREEN:OFF OFF:rc_RED:ON
attr ke_Wasserpumpe_Hauptschalter_2 icon sani_domestic_waterworks
attr ke_Wasserpumpe_Hauptschalter_2 room Garten,Keller,Schalter
attr ke_Wasserpumpe_Hauptschalter_2 webCmd ON:OFF

setstate ke_Wasserpumpe_Hauptschalter_2 ON
setstate ke_Wasserpumpe_Hauptschalter_2 2022-05-26 18:25:25 state ON

"Advice is like snow; the softer it falls the longer it dwells upon, and the deeper it sinks into the mind." -- Samuel Taylor Coleridge -

DetlefR

#6
Als erstes:
attr ke_Wasserpumpe_2  setList on off
Damit sollte dann in der set Auswahlbox u.a. on-for-timer erscheinen.


EDIT: Für ke_Wasserpumpe_Hauptschalter_2 das gleiche.

stehlampe

Super !!! Vielen Dank !

Ich fasse mal zusammen:
- ich hätte bei der dummy-Variable die "UseSetExtensions" setzen müssen
- wenn man die "Use SetExtensions" setzt, muss man dem dummy erklären, welche Zustände er haben kann.

Gibt es irgendwo ein gut Erklärung, was die UseSetExtensions machen ? Ich hab schon mal die Referenz bemüht und gegoogelt, aber nix substantielles gefunden ...
"Advice is like snow; the softer it falls the longer it dwells upon, and the deeper it sinks into the mind." -- Samuel Taylor Coleridge -

DetlefR

ZitatGibt es irgendwo ein gut Erklärung
https://fhem.de/commandref_DE.html#dummy

Noch ein Tipp. Um spätere Verwirrungen zu vermindern, einige Dich mit Dir selber, ob Du ON oder on verwendest. Und das ganze dann auch konsequent durchziehen.
if (Value("ke_Wasserpumpe_Hauptschalter_2") eq "ON") ist es nicht egal ob da "ON" oder "on" drin steht.