Hauptmenü

DOIF Zeit abändern

Begonnen von Fixel2012, 16 Februar 2017, 10:51:36

Vorheriges Thema - Nächstes Thema

gloob

Ich hätte auch noch eine Variante mit DOIF, wo ich die Zeiten über FTUI einstellen kann:


define DOIF_Pflanzenlampe DOIF (["$SELF:P_mybutton: on"] or [[$SELF:P_mybegin,"06:00"]])(set sonoff7 on) DOELSEIF (["$SELF:P_mybutton: off"] or [[$SELF:P_myend,"19:00"]])(set sonoff7 off)
attr DOIF_Pflanzenlampe cmdState on|off
attr DOIF_Pflanzenlampe readingList P_mybutton P_mybegin P_myend P_mybeginHour P_mybeginMinute
attr DOIF_Pflanzenlampe room Pflanzen
attr DOIF_Pflanzenlampe setList P_mybutton:uzsuSelectRadio,on,off P_mybegin:time P_myend:time
attr DOIF_Pflanzenlampe webCmd P_mybutton:P_mybegin:P_myend


define DOIF_Pflanzenlampe_Set DOIF ([DOIF_Pflanzenlampe:P_mybeginHour] or [DOIF_Pflanzenlampe:P_mybeginMinute] or [DOIF_Pflanzenlampe:P_mybeginHour] or [DOIF_Pflanzenlampe:P_mybeginMinute])(setreading DOIF_Pflanzenlampe P_mybegin {(sprintf("%02d",[DOIF_Pflanzenlampe:P_mybeginHour]))}:{(sprintf("%02d",[DOIF_Pflanzenlampe:P_mybeginMinute]))},setreading DOIF_Pflanzenlampe P_myend {(sprintf("%02d",[DOIF_Pflanzenlampe:P_myendHour]))}:{(sprintf("%02d",[DOIF_Pflanzenlampe:P_myendMinute]))})
attr DOIF_Pflanzenlampe_Set do always
attr DOIF_Pflanzenlampe_Set room Pflanzen



IN FTUI habe ich dann einen Swiper für die Stunde und einen für die Minuten.Zusätzlich können die Zeiten natürlich auch im normalen FHEM Webinterface eingestellt werden.
Raspberry Pi 3 | miniCUL 433MHz | nanoCUL 868 MHz | nanoCUL 433 MHz | MySensors WLAN Gateway | LaCrosse WLAN Gateway | SignalESP 433 MHz | SignalESP 868 MHz | HM-MOD-UART WLAN Gateway | IR - 360 Grad WLAN Gateway

Fixel2012

Zitat von: gloob am 17 Februar 2017, 09:19:19
Ich hätte auch noch eine Variante mit DOIF, wo ich die Zeiten über FTUI einstellen kann:


define DOIF_Pflanzenlampe DOIF (["$SELF:P_mybutton: on"] or [[$SELF:P_mybegin,"06:00"]])(set sonoff7 on) DOELSEIF (["$SELF:P_mybutton: off"] or [[$SELF:P_myend,"19:00"]])(set sonoff7 off)
attr DOIF_Pflanzenlampe cmdState on|off
attr DOIF_Pflanzenlampe readingList P_mybutton P_mybegin P_myend P_mybeginHour P_mybeginMinute
attr DOIF_Pflanzenlampe room Pflanzen
attr DOIF_Pflanzenlampe setList P_mybutton:uzsuSelectRadio,on,off P_mybegin:time P_myend:time
attr DOIF_Pflanzenlampe webCmd P_mybutton:P_mybegin:P_myend


define DOIF_Pflanzenlampe_Set DOIF ([DOIF_Pflanzenlampe:P_mybeginHour] or [DOIF_Pflanzenlampe:P_mybeginMinute] or [DOIF_Pflanzenlampe:P_mybeginHour] or [DOIF_Pflanzenlampe:P_mybeginMinute])(setreading DOIF_Pflanzenlampe P_mybegin {(sprintf("%02d",[DOIF_Pflanzenlampe:P_mybeginHour]))}:{(sprintf("%02d",[DOIF_Pflanzenlampe:P_mybeginMinute]))},setreading DOIF_Pflanzenlampe P_myend {(sprintf("%02d",[DOIF_Pflanzenlampe:P_myendHour]))}:{(sprintf("%02d",[DOIF_Pflanzenlampe:P_myendMinute]))})
attr DOIF_Pflanzenlampe_Set do always
attr DOIF_Pflanzenlampe_Set room Pflanzen



IN FTUI habe ich dann einen Swiper für die Stunde und einen für die Minuten.Zusätzlich können die Zeiten natürlich auch im normalen FHEM Webinterface eingestellt werden.

Nicht schlecht! Im normalen Fhem habe ich es bisher mit Setlist gemacht (geht schneller als mit slidern). Wie genau hast du das in das FTUI eingebunden?  Ist es möglich im FTUI ein Setlist eines dummys zu übernhemen? Also die eingetragenen Zeiten zum auswählen?

Hatte mal angefangen mit FTUI aber irgendwie ist mir das zu viel Aufwand und dauert echt lange da durch zu blicken. Aber ich werde mich da wahrscheinlich nochmal ran machen!  :D 8)


Wenn du dein FTUI Code bereitstellen könntest werde ich mal schauen ob ich das auf die Schnelle eingebunden bekomme!
Fhem 5.8 auf Raspi 3, HMLAN und 868MHz CUL mit einigen Komponenten, Z-Wave Rollladenaktoren, Tablet UI, 433 MHz CUL mit Baumarktsteckdosen und Temp Sensoren, Amazon Echo, Echo Dot, 2x SONOS  play1, 1x SONOS Connect AMP,  presence, HUE, Lightify

gloob

Die Einbindung in FTUI ist relativ einfach:



<div class="hbox items-space-around">

<div class="tall thin">On<>
<div data-type="spinner" data-device="DOIF_Pflanzenlampe" data-cmd="setreading" data-get="P_mybeginHour" data-set="P_mybeginHour" data-min="0" data-max="23" data-step="1"  data-unit=" h" data-background-color="green" class="valueonly circulate" data-width="160" data-height="40"></>
<div data-type="spinner" data-device="DOIF_Pflanzenlampe" data-cmd="setreading" data-get="P_mybeginMinute" data-set="P_mybeginMinute" data-min="0" data-max="59" data-step="1"  data-unit=" min" data-background-color="green" class="valueonly circulate" data-width="160" data-height="40"><>
<>
Raspberry Pi 3 | miniCUL 433MHz | nanoCUL 868 MHz | nanoCUL 433 MHz | MySensors WLAN Gateway | LaCrosse WLAN Gateway | SignalESP 433 MHz | SignalESP 868 MHz | HM-MOD-UART WLAN Gateway | IR - 360 Grad WLAN Gateway

Thorsten Pferdekaemper

Zitat von: Fixel2012 am 17 Februar 2017, 09:16:29
Außerdem stellt sich für mich die Frage, ob !$we von $we im falle eines Feiertags überschrieben wird? Es ist dann ja ein Wochentag aber eigentlich auch ein Feiertag. Oder ist beides dann = true?
Der Perl-Ausdruck "!$we" ist keine Variable. Nur $we ist eine Variable. Das Ausrufungszeichen bedeutet "nicht". D.h. der Ausdruck "!$we" ist immer das Gegenteil von $we. Da wird nichts überschrieben oder so. Immer wenn $we true ist, dann ist !$we false und umgekehrt.
Gruß,
   Thorsten
FUIP

Fixel2012

Zitat von: Thorsten Pferdekaemper am 17 Februar 2017, 10:36:55
Der Perl-Ausdruck "!$we" ist keine Variable. Nur $we ist eine Variable. Das Ausrufungszeichen bedeutet "nicht". D.h. der Ausdruck "!$we" ist immer das Gegenteil von $we. Da wird nichts überschrieben oder so. Immer wenn $we true ist, dann ist !$we false und umgekehrt.
Gruß,
   Thorsten

Das war mir eigentlich schon klar, dass das "!" das umgekehrte bedeutet. Wusste nur nicht das nur eins von beiden gleichzeitig true sein kann.

Danke für die Erläuterung.
Fhem 5.8 auf Raspi 3, HMLAN und 868MHz CUL mit einigen Komponenten, Z-Wave Rollladenaktoren, Tablet UI, 433 MHz CUL mit Baumarktsteckdosen und Temp Sensoren, Amazon Echo, Echo Dot, 2x SONOS  play1, 1x SONOS Connect AMP,  presence, HUE, Lightify