Gibt es eine Variable hnlich $we, fr die Feiertage?

Begonnen von rudolfkoenig, 06 Januar 2012, 10:35:55

Vorheriges Thema - Nächstes Thema

rudolfkoenig

                                                   

> Gibt es eine der "$we" ähnlichen Funktion ob der aktuelle Tag ein
> Eintrag aus der *.holiday Datei ist?

Value("myHol") liefert "none" oder was anderes :) zurueck.
Siehe auch http://fhem.de/commandref.html#holiday


> Kann man auch zwei *.holiday Dateien nutzen, eine für Schulferien und
> die andere für gesetzliche Feiertage ?

Man kann (fast) beliebig viele holiday Instanzen anlegen, aber nur einen mit
$we verheiraten.

--
To unsubscribe from this group, send email to
fhem-users+unsubscribe@googlegroups.com

Guest

Originally posted by: <email address deleted>

Hallo Rudolf,

genau so, das habe ich gesucht.

Vielen Dank!

--
To unsubscribe from this group, send email to
fhem-users+unsubscribe@googlegroups.com

Guest

Originally posted by: <email address deleted>

Hallo FHEM-Users,

ich versuche nun schon seit einiger Zeit, in Abhängigkeit von Wochen- bzw.
Wochenendtagen sowie Feiertagen
unterscheidliche Zeiten für bestimmte Aktoren zu setzen.
Dabei habe ich natürlich zunächst auf auf

define holiday2we st

gesetzt und anschließend die Datei st.holiday mit

define st holiday

eingebunden.

bei STATE wird auch entweder der definierte Feiertag oder eben "none"
angezeigt.
Verwunderlich für mich ist, dass $we sofort "1" wird, wenn man

define holiday2we st

in die fhem.cfg schreibt, unabhängig davon, was in der st.holiday steht.
Selbst bei einer vollkommen auskommentierten Datei ist dieses Verhalten
festzustellen,

Der nächste Versuch ging dahin, auf

define holiday2we st

zu verzichten und STATE von

define st holiday

auszuwerten.

{Value("st")}

über die Kommandozeile eingegeben liefert hier auch den Wert von STATE.

Verwende ich dieses jedoch innerhalb der fhen.cfg kommt immer ???.
Damit ist natürlich eine Auswertung zum Scheitern verurteilt.

Was mache ich falsch, dass bereits das Setzen von

define holiday2we st

dazu führt, dass $we bereits auf "1" gesetzt wird, obwohl weder Wochenende
noch Feiertag ist?
Warum verhält sich {Value("st")} anders, je nach dem, ob es in der
Kommandozeile benutzt wird
oder innerhalb der .cfg-Datei?
Gibt es eventuell eine anderen Weg, den Wert von STATE abzufragen, da ja
GET auch nicht funktioniert?

Viele Grüße
Hubert


--
To unsubscribe from this group, send email to
fhem-users+unsubscribe@googlegroups.com

Guest

Originally posted by: <email address deleted>

Hi,
bei mir funktioniert das prima (alles aus meiner fhem.cfg kopiert):

define Bayern holiday
attr global holiday2we Bayern

define HeizungAn holiday

define HeizungAnCheck at *10:00 {\
if (Value("HeizungAn") ne "none") {\
   fhem "set ez_FHT desired-temp 21";;\
  }\
}

Dient bei mir dazu, die Heizung am Rückkehrtag von Dienstreisen rechtzeitig
wieder anzuschmeissen, damits abends schön warm ist :)

Häufiger Stolperstein: $we wird m.W. nur einmal um Mitternacht gesetzt und
bleibt dann den ganzen Tag gleich.

Gruß, Uli

--
To unsubscribe from this group, send email to
fhem-users+unsubscribe@googlegroups.com

Guest

Originally posted by: <email address deleted>

Hi Uli,

es geht ja auch nicht um $we ansich. Die Variable wird ja auch richtig
gesetzt wenn Wochenende ist und man holiday2we außer Acht lasst.
Es geht darum, dass bei mir $we sofort "1" wird, sobald man die Definition
dafür einfügt und eine entsprechende Datei existiert, ganz gleich,
was da drin steht, auch, wenn die entsprechende Feiertage auskommentiert
sind.

Gruß Hubert

On Saturday, March 17, 2012 12:00:11 AM UTC+1, UliM wrote:
>
> Hi,
> bei mir funktioniert das prima (alles aus meiner fhem.cfg kopiert):
>
> define Bayern holiday
> attr global holiday2we Bayern
>
> define HeizungAn holiday
>
> define HeizungAnCheck at *10:00 {\
> if (Value("HeizungAn") ne "none") {\
>    fhem "set ez_FHT desired-temp 21";;\
>   }\
> }
>
> Dient bei mir dazu, die Heizung am Rückkehrtag von Dienstreisen
> rechtzeitig wieder anzuschmeissen, damits abends schön warm ist :)
>
> Häufiger Stolperstein: $we wird m.W. nur einmal um Mitternacht gesetzt und
> bleibt dann den ganzen Tag gleich.
>
> Gruß, Uli
>

--
To unsubscribe from this group, send email to
fhem-users+unsubscribe@googlegroups.com

rudolfkoenig

                                                   

> Es geht darum, dass bei mir $we sofort "1" wird, sobald man die Definition
> dafür einfügt und eine entsprechende Datei existiert, ganz gleich,
> was da drin steht, auch, wenn die entsprechende Feiertage auskommentiert
> sind.

$we is 1 falls Wochenende ist ($wday ist 0 oder 6) ODER der Status des mit
holiday2we gesetzten holiday Instanzes nicht none ist.  Letzteres kann man auch
einfach mit list oder mit {Value("holidayname")} pruefen. $we wird beim
ausfuehren von jedem Perl-Code neu berechnet, das holiday Instanz rechnet aber
nur einmal am Tag.

--
To unsubscribe from this group, send email to
fhem-users+unsubscribe@googlegroups.com

Guest

Originally posted by: <email address deleted>

Hallo hm.pos,

da es bei Uli und anderen richtig geht müssen wir wohl iwas falsch machen
aber bei mir geht es auch nicht allerdings ist da $we imer 0, und da ich es
eh komplexer wollte und auch abfragen wollte, was morgen ist, habe ich es
so gemacht. Ich habe bisher nicht weiter geprüft was ich mit $we falsch
mache es war mir in dem Moment egal weil u.g. Code eh das liefert was ich
brauche. Das könntest du auch bei dir nutzen und du trägst einfach nur die
Abwesenheitszeiten ein. Wenn dann MORGEN nicht abwesend ist, geht die
Heizung ab einer bestimmten Uhrzeit an, vll. ja erst später, als wenn du
schon heute nicht abwesend wärst...

Die Tage habe ich in dem Holiday-Device "urlaub" ganz normal...

define urlaub_heute dummy
define at_urlaub at 03:00:00 {fhem "set urlaub_heute ".fhem("get urlaub
".strftime("%m-%d",localtime()));;}
{fhem "set urlaub_heute ".fhem("get urlaub
".strftime("%m-%d",localtime()));;}

define urlaub_morgen dummy
define at_urlaub_morgen at 03:00:00 {fhem "set urlaub_morgen ".fhem("get
urlaub ".strftime("%m-%d",localtime(time+86400)));;}
{fhem "set urlaub_morgen ".fhem("get urlaub
".strftime("%m-%d",localtime(time+86400)));;}


Am Samstag, 17. März 2012 00:00:11 UTC+1 schrieb UliM:
>
> Hi,
> bei mir funktioniert das prima (alles aus meiner fhem.cfg kopiert):
>
> define Bayern holiday
> attr global holiday2we Bayern
>
> define HeizungAn holiday
>
> define HeizungAnCheck at *10:00 {\
> if (Value("HeizungAn") ne "none") {\
>    fhem "set ez_FHT desired-temp 21";;\
>   }\
> }
>
> Dient bei mir dazu, die Heizung am Rückkehrtag von Dienstreisen
> rechtzeitig wieder anzuschmeissen, damits abends schön warm ist :)
>
> Häufiger Stolperstein: $we wird m.W. nur einmal um Mitternacht gesetzt und
> bleibt dann den ganzen Tag gleich.
>
> Gruß, Uli
>

--
To unsubscribe from this group, send email to
fhem-users+unsubscribe@googlegroups.com

Guest

Originally posted by: <email address deleted>

Hallo Hubert,
du hast oben geschrieben das du " define holiday2we st " in deiner cfg hast.
Probier doch mal " attr global holiday2we st ", so ist meiner Meinung nach
die Syntax.
Siehe auch http://fhem.de/commandref.html#global

MfG

Volker

Am Freitag, 16. März 2012 23:21:52 UTC+1 schrieb hm.pos:
>
> Hallo FHEM-Users,
>
> ich versuche nun schon seit einiger Zeit, in Abhängigkeit von Wochen- bzw.
> Wochenendtagen sowie Feiertagen
> unterscheidliche Zeiten für bestimmte Aktoren zu setzen.
> Dabei habe ich natürlich zunächst auf auf
>
> define holiday2we st
>
> gesetzt und anschließend die Datei st.holiday mit
>
> define st holiday
>
> eingebunden.
>
> bei STATE wird auch entweder der definierte Feiertag oder eben "none"
> angezeigt.
> Verwunderlich für mich ist, dass $we sofort "1" wird, wenn man
>
> define holiday2we st
>
> in die fhem.cfg schreibt, unabhängig davon, was in der st.holiday steht.
> Selbst bei einer vollkommen auskommentierten Datei ist dieses Verhalten
> festzustellen,
>
> Der nächste Versuch ging dahin, auf
>
> define holiday2we st
>
> zu verzichten und STATE von
>
> define st holiday
>
> auszuwerten.
>
> {Value("st")}
>
> über die Kommandozeile eingegeben liefert hier auch den Wert von STATE.
>
> Verwende ich dieses jedoch innerhalb der fhen.cfg kommt immer ???.
> Damit ist natürlich eine Auswertung zum Scheitern verurteilt.
>
> Was mache ich falsch, dass bereits das Setzen von
>
> define holiday2we st
>
> dazu führt, dass $we bereits auf "1" gesetzt wird, obwohl weder Wochenende
> noch Feiertag ist?
> Warum verhält sich {Value("st")} anders, je nach dem, ob es in der
> Kommandozeile benutzt wird
> oder innerhalb der .cfg-Datei?
> Gibt es eventuell eine anderen Weg, den Wert von STATE abzufragen, da ja
> GET auch nicht funktioniert?
>
> Viele Grüße
> Hubert
>
>
>

--
To unsubscribe from this group, send email to
fhem-users+unsubscribe@googlegroups.com

Guest

Originally posted by: <email address deleted>

Hallo Volker,
du hast natürlich Recht. Aber das war nur ein Verschreibsel in meinem Post.
Natürlich steht im Script
"attr global holiday2we st".

Auf jedem Fall konnte ich mich gestern wie heute freuen, da mein Rollo
statt wie gewünscht um 6:00 Uhr, erst um 7:45 Uhr aufging.
Für das Rollo war Feiertag, für mich aber Arbeitstag.

Gruß Hubert

On Sunday, March 18, 2012 12:28:20 PM UTC+1, Volker wrote:
>
> Hallo Hubert,
> du hast oben geschrieben das du " define holiday2we st " in deiner cfg
> hast.
> Probier doch mal " attr global holiday2we st ", so ist meiner Meinung nach
> die Syntax.
> Siehe auch http://fhem.de/commandref.html#global
>
> MfG
>
> Volker
>
> Am Freitag, 16. März 2012 23:21:52 UTC+1 schrieb hm.pos:
>>
>> Hallo FHEM-Users,
>>
>> ich versuche nun schon seit einiger Zeit, in Abhängigkeit von Wochen-
>> bzw. Wochenendtagen sowie Feiertagen
>> unterscheidliche Zeiten für bestimmte Aktoren zu setzen.
>> Dabei habe ich natürlich zunächst auf auf
>>
>> define holiday2we st
>>
>> gesetzt und anschließend die Datei st.holiday mit
>>
>> define st holiday
>>
>> eingebunden.
>>
>> bei STATE wird auch entweder der definierte Feiertag oder eben "none"
>> angezeigt.
>> Verwunderlich für mich ist, dass $we sofort "1" wird, wenn man
>>
>> define holiday2we st
>>
>> in die fhem.cfg schreibt, unabhängig davon, was in der st.holiday steht.
>> Selbst bei einer vollkommen auskommentierten Datei ist dieses Verhalten
>> festzustellen,
>>
>> Der nächste Versuch ging dahin, auf
>>
>> define holiday2we st
>>
>> zu verzichten und STATE von
>>
>> define st holiday
>>
>> auszuwerten.
>>
>> {Value("st")}
>>
>> über die Kommandozeile eingegeben liefert hier auch den Wert von STATE.
>>
>> Verwende ich dieses jedoch innerhalb der fhen.cfg kommt immer ???.
>> Damit ist natürlich eine Auswertung zum Scheitern verurteilt.
>>
>> Was mache ich falsch, dass bereits das Setzen von
>>
>> define holiday2we st
>>
>> dazu führt, dass $we bereits auf "1" gesetzt wird, obwohl weder
>> Wochenende noch Feiertag ist?
>> Warum verhält sich {Value("st")} anders, je nach dem, ob es in der
>> Kommandozeile benutzt wird
>> oder innerhalb der .cfg-Datei?
>> Gibt es eventuell eine anderen Weg, den Wert von STATE abzufragen, da ja
>> GET auch nicht funktioniert?
>>
>> Viele Grüße
>> Hubert
>>
>>
>>

--
To unsubscribe from this group, send email to
fhem-users+unsubscribe@googlegroups.com