Hauptmenü

Variable howto

Begonnen von malip, 13 November 2018, 17:41:19

Vorheriges Thema - Nächstes Thema

malip

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

Beta-User

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.
Server: HP-elitedesk@Debian 12, aktuelles FHEM@ConfigDB | CUL_HM (VCCU) | MQTT2: ZigBee2mqtt, MiLight@ESP-GW, BT@OpenMQTTGw | ZWave | SIGNALduino | MapleCUN | RHASSPY
svn: u.a Weekday-&RandomTimer, Twilight,  div. attrTemplate-files, MySensors

malip

St?
Structure?

Hast Du ein Beispiel?

hsepm

Alternativ mit festem Offset zum Sonnenuntergang. Such mal nach sunset.

kumue


abc2006

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
FHEM nightly auf Intel Atom (lubuntu) mit VDSL 50000 ;-)
Nutze zur Zeit OneWire und KNX