Hallo zusammen (oder eher "Hallo setstate" ;) ),
ich hätte da einen Wunsch:
Könntest Du das slider Widget auch mit der Möglichkeit ausstatten, "data-lock" zu verwenden?
Ich verwende slider Widgets, um die Rolläden meiner Dachflächenfenster zu bedienen.
Nun möchte ich aber, dass die Bedienung über das Tablet-UI gesperrt ist, um Schäden an den Rolläden zu vermeiden, wenn Frost oder Schnee vorhergesagt ist (oder schon eingetreten ist). Eine Sperre direkt im Aktor zu setzen ist bei meiner verwendeten Kombi (Velux->Tahoma (Somfy)->FHEM) leider nicht möglich.
Für push Widgets, die ich zusätzlich für "open" und "close" gesamt verwende, funktioniert das "data-lock" hervorragend, aber die Rolläden bleiben leider über den slider bedienbar.
Falls ich da bisher etwas überlesen habe sollte, bitte ich um Entschuldigung.
Bei folgender Definition kann man den slider noch bedienen, das auch aufgeführte push Widget jedoch ist wie gewünscht gesperrt:
<div data-type="slider"
data-device="SZDG_ROLL"
data-get="ClosureState"
data-set="dim"
data-min="0"
data-max="100"
data-on="100"
data-off="0"
data-lock="XXDG_ROLL_Kaeltesperre:ftuiLock"
class="tap vertical">
</div>
<div data-type="push"
data-device="SZDG_ROLL"
data-icon="fa-hand-o-up"
data-background-icon="fa-square-o"
data-set-on="open"
data-lock="XXDG_ROLL_Kaeltesperre:ftuiLock"
class="">
</div>
Vielen Dank und Grüße,
Andreas
PS:
Falls es jemanden interessiert, bisher behelfe ich mir mit folgendem Workaround:
Ein DOIF "XXDG_ROLL_Wettersperre" wartet auf einen Event eines Dachgeschoss-Rolladens (Befehl dim, close, down), wobei der dim Befehl eine Position < 100 beinhalten muss.
Wenn dann auch noch Frost oder Schnee vorhergesagt sind (wird in einem weiteren DOIF namens "XXDG_ROLL_Kaeltesperre" untersucht und gesetzt) gibt es eine kurze Sprachnachricht und der Rolladen wird wieder auf seine Offen-Position 100 gefahren.
(((["..DG_ROLL:^dim [1-9][0-9]|^dim [0-9]"]
and [?$SELF:matched_event_c1_1:d] < 100)
or ["..DG_ROLL:^close$"]
or ["..DG_ROLL:^down$"])
and [?XXDG_ROLL_Kaeltesperre] eq "an")
(set AM_XXDG_Tablet01 notifySndFile HappySkykurz.mp3)
((set AM_XXDG_Tablet01 ttsMsg Achtung! Achtung! Es soll schneien oder frieren, daher werden die Rolläden wieder geöffnet!))
(set $DEVICE dim 100)
attr XXDG_ROLL_Wettersperre do always
attr XXDG_ROLL_Wettersperre wait 5,2,5
Kleine "Unschönheit":
Da es bei meinen Aktoren keinen stop-Befehl für das aktuelle Fahrmanöver gibt, wird auf jeden Fall die gewählte Position (dim xx, close, down) erst einmal angefahren, bevor dann der "dim 100"-Befehl den Rolladen wieder öffnet. :-[
Gerne doch. Bin gerade am großen Umbauen/Einbauen von data-lock, data-hide, data-reachable für einige Widgets.
Genial, vielen, vielen Dank!
:)
Andreas