FHEM Forum

FHEM => Anfängerfragen => Thema gestartet von: malip am 13 November 2018, 17:41:19

Titel: Variable howto
Beitrag von: malip am 13 November 2018, 17:41:19
Hallo zusammen,

ich passe die Zeiten der Rollos alle paar Wochen manuell an und ändere die Zeiten.
Automatissmen passen bei uns nicht so optimal. J

Wie kann ich denn eine Variable verwenden anstatt 10 mal da gleiche zu ändern:
Ich meine anstatt 17:15 <Variable1> oder so?

define at_rollKueche_ZU at *17:15:01 set rollKueche off-for-timer 18
attr at_rollKueche_ZU room Küche
define at_rollWoZiHstGrZU at *17:15:03 set rollWoZiHstGr off-for-timer 45
attr at_rollWoZiHstGrZU room WoZi
define at_rollWoZiHstKlZU at *17:15:05 set rollWoZiHstKl off-for-timer 45
##define at_rollWoZiHintenZU at *17:15:07 set rollWoZiHinten off-for-timer 21
define at_rollBueroHintenZU at *17:15:08 set rollBueroHinten off-for-timer 21
attr at_rollBueroHintenZU room Büro
define at_rollBueroSeiteZU at *17:15:10 set rollBueroSeite off-for-timer 20
attr a

Ciao Markus
Titel: Antw:Variable howto
Beitrag von: Beta-User am 13 November 2018, 18:56:43
Pack alles in ein St und mach sleeps dazwischen.
Oder nutze eine structere, um alles auf einmal zu schalten. Da kann man ein delay setzen, mit.dem dann die einzelnen Mitglieder abgearbeitet werden.
Titel: Antw:Variable howto
Beitrag von: malip am 13 November 2018, 19:57:15
St?
Structure?

Hast Du ein Beispiel?
Titel: Antw:Variable howto
Beitrag von: hsepm am 13 November 2018, 19:59:14
Alternativ mit festem Offset zum Sonnenuntergang. Such mal nach sunset.
Titel: Antw:Variable howto
Beitrag von: kumue am 13 November 2018, 20:00:07
Zitat von: malip am 13 November 2018, 19:57:15
St?
Structure?

Hast Du ein Beispiel?

Tippfehler...
St =at
Titel: Antw:Variable howto
Beitrag von: abc2006 am 15 November 2018, 04:05:53
defmod DF_rollZu DOIF(1)()

und dann in die DEF folgenden Code posten (vorhandenen Code komplett löschen)

Zitat([17:15])
(set rollKueche off-for-timer 18)
(set rollWoZiHstGr off-for-timer 45)
(set rollWoZiHstKl off-for-timer 45)
(set rollWoZiHinten off-for-timer 21)
(set rollBueroHinten off-for-timer 21)
(set rollBueroSeite off-for-timer 20)

dann noch ein


attr DF_rollZu wait 0,2,2,2,1,2
attr DF_rollZu do always
attr DF_rollZu room ...



sollte das Problem ebenfalls lösen.
Und das ([17:15]) kannst du durch eine variable ersetzen (z.B. ein Reading im DOIF) und mit einem Timepicker die Zeit setzen - falls das dein Ziel war..


!ungetestet!


## nach dem dritten mal lesen bin ich gar nicht mehr so sicher, was genau überhaupt dein Ziel war..
Willst du den Abstand zwischen den Befehlen immer ändern?
Oder willst du die Zeit ändern, zu der die Befehlskette startet?



Grüße,
Stephan