holiday-we innerhalb eines Perl-Modus-DOIFs

Begonnen von chq, 02 November 2018, 10:09:15

Vorheriges Thema - Nächstes Thema

chq

Hallo,

es besteht hier offenbar ein Problem mit der Implementierung von Holiday.

Ich möchte einen Teil meiner "normalen DOIFs" in Perl-Modus-DOIFs umbauen.

{if([10:05:18]){set_State("idle")}} ## idle

{if ([Bewohner:state] eq "home" and [Wetterstation:luminosity] >= "36000" and [Wetterstation:UVR] >= "350" and [HM_drehgriffEsszimmer:state] ne "open")
{
if ((!we and [17:00-00:00]) or we)
{
{if([twilight:azimuth] >= "219" and [twilight:azimuth] < "265" and [twilight:elevation:d1] <= "28.7" and [twilight:elevation:d1] > "23.3" and [?HM_rolloEsszimmer:control] > "92") {set_Reading("doifState","fhemCmd");fhem_set("HM_rolloEsszimmer pct 92");set_State("Linker Platz 1.Reihe 1.Fenster")}} ## L11
{if([twilight:azimuth] >= "265" and [twilight:azimuth] < "292" and [twilight:elevation:d1] <= "30.3" and [twilight:elevation:d1] > "24.5" and [?HM_rolloEsszimmer:control] > "92") {set_Reading("doifState","fhemCmd");fhem_set("HM_rolloEsszimmer pct 92");set_State("Linker Platz 1.Reihe 2.Fenster")}} ## L12
{if([twilight:azimuth] >= "292" and [twilight:azimuth] < "301" and [twilight:elevation:d1] <= "22.3" and [twilight:elevation:d1] > "18.7" and [?HM_rolloEsszimmer:control] > "92") {set_Reading("doifState","fhemCmd");fhem_set("HM_rolloEsszimmer pct 92");set_State("Linker Platz 1.Reihe 3.Fenster")}} ## L13
{if([twilight:azimuth] >= "202" and [twilight:azimuth] < "229" and [twilight:elevation:d1] <= "23.7" and [twilight:elevation:d1] > "18.4" and [?HM_rolloEsszimmer:control] > "92") {set_Reading("doifState","fhemCmd");fhem_set("HM_rolloEsszimmer pct 92");set_State("Rechter Platz 1.Reihe 1.Fenster")}} ## R11
{if([twilight:azimuth] >= "229" and [twilight:azimuth] < "265" and [twilight:elevation:d1] <= "30.5" and [twilight:elevation:d1] > "26.2" and [?HM_rolloEsszimmer:control] > "92") {set_Reading("doifState","fhemCmd");fhem_set("HM_rolloEsszimmer pct 92");set_State("Rechter Platz 1.Reihe 2.Fenster")}} ## R12
{if([twilight:azimuth] >= "265" and [twilight:azimuth] < "288" and [twilight:elevation:d1] <= "30.1" and [twilight:elevation:d1] > "25.5" and [?HM_rolloEsszimmer:control] > "92") {set_Reading("doifState","fhemCmd");fhem_set("HM_rolloEsszimmer pct 92");set_State("Rechter Platz 1.Reihe 3.Fenster")}} ## R13

{if([twilight:azimuth] >= "219" and [twilight:azimuth] < "265" and [twilight:elevation:d1] <= "23.3" and [twilight:elevation:d1] > "15.6" and [?HM_rolloEsszimmer:control] > "84") {set_Reading("doifState","fhemCmd");fhem_set("HM_rolloEsszimmer pct 84");set_State("Linker Platz 2.Reihe 1.Fenster")}} ## L21
{if([twilight:azimuth] >= "265" and [twilight:azimuth] < "292" and [twilight:elevation:d1] <= "24.5" and [twilight:elevation:d1] > "17.6" and [?HM_rolloEsszimmer:control] > "84") {set_Reading("doifState","fhemCmd");fhem_set("HM_rolloEsszimmer pct 84");set_State("Linker Platz 2.Reihe 2.Fenster")}} ## L22
{if([twilight:azimuth] >= "292" and [twilight:azimuth] < "301" and [twilight:elevation:d1] <= "18.7" and [twilight:elevation:d1] > "12.6" and [?HM_rolloEsszimmer:control] > "84") {set_Reading("doifState","fhemCmd");fhem_set("HM_rolloEsszimmer pct 84");set_State("Linker Platz 2.Reihe 3.Fenster")}} ## L23
{if([twilight:azimuth] >= "202" and [twilight:azimuth] < "229" and [twilight:elevation:d1] <= "18.4" and [twilight:elevation:d1] > "13.8" and [?HM_rolloEsszimmer:control] > "84") {set_Reading("doifState","fhemCmd");fhem_set("HM_rolloEsszimmer pct 84");set_State("Rechter Platz 2.Reihe 1.Fenster")}} ## R21
{if([twilight:azimuth] >= "229" and [twilight:azimuth] < "265" and [twilight:elevation:d1] <= "26.2" and [twilight:elevation:d1] > "18.3" and [?HM_rolloEsszimmer:control] > "84") {set_Reading("doifState","fhemCmd");fhem_set("HM_rolloEsszimmer pct 84");set_State("Rechter Platz 2.Reihe 2.Fenster")}} ## R22
{if([twilight:azimuth] >= "265" and [twilight:azimuth] < "288" and [twilight:elevation:d1] <= "25.5" and [twilight:elevation:d1] > "18.5" and [?HM_rolloEsszimmer:control] > "84") {set_Reading("doifState","fhemCmd");fhem_set("HM_rolloEsszimmer pct 84");set_State("Rechter Platz 2.Reihe 3.Fenster")}} ## R23

{if([twilight:azimuth] >= "219" and [twilight:azimuth] < "265" and [twilight:elevation:d1] <= "15.6" and [twilight:elevation:d1] > "8.0" and [?HM_rolloEsszimmer:control] > "78") {set_Reading("doifState","fhemCmd");fhem_set("HM_rolloEsszimmer pct 78");set_State("Linker Platz 3.Reihe 1.Fenster")}} ## L31
{if([twilight:azimuth] >= "265" and [twilight:azimuth] < "292" and [twilight:elevation:d1] <= "17.6" and [twilight:elevation:d1] > "8.9" and [?HM_rolloEsszimmer:control] > "78") {set_Reading("doifState","fhemCmd");fhem_set("HM_rolloEsszimmer pct 78");set_State("Linker Platz 3.Reihe 2.Fenster")}} ## L32
{if([twilight:azimuth] >= "292" and [twilight:azimuth] < "301" and [twilight:elevation:d1] <= "12.6" and [twilight:elevation:d1] > "6.4" and [?HM_rolloEsszimmer:control] > "78") {set_Reading("doifState","fhemCmd");fhem_set("HM_rolloEsszimmer pct 78");set_State("Linker Platz 3.Reihe 3.Fenster")}} ## L33
{if([twilight:azimuth] >= "202" and [twilight:azimuth] < "229" and [twilight:elevation:d1] <= "13.8" and [twilight:elevation:d1] > "6.6" and [?HM_rolloEsszimmer:control] > "78") {set_Reading("doifState","fhemCmd");fhem_set("HM_rolloEsszimmer pct 78");set_State("Rechter Platz 3.Reihe 1.Fenster")}} ## R31
{if([twilight:azimuth] >= "229" and [twilight:azimuth] < "265" and [twilight:elevation:d1] <= "18.3" and [twilight:elevation:d1] > "10.2" and [?HM_rolloEsszimmer:control] > "78") {set_Reading("doifState","fhemCmd");fhem_set("HM_rolloEsszimmer pct 78");set_State("Rechter Platz 3.Reihe 2.Fenster")}} ## R32
{if([twilight:azimuth] >= "265" and [twilight:azimuth] < "288" and [twilight:elevation:d1] <= "18.5" and [twilight:elevation:d1] > "11.0" and [?HM_rolloEsszimmer:control] > "78") {set_Reading("doifState","fhemCmd");fhem_set("HM_rolloEsszimmer pct 78");set_State("Rechter Platz 3.Reihe 3.Fenster")}} ## R33
}
}
}


Als Fehlermeldung bekomme ich das hier angezeigt:

condition c02: Bareword "we" not allowed while "strict subs" in use at (eval 391662) line 3.
Bareword "we" not allowed while "strict subs" in use at (eval 391662) line 3.


Wie müsste ich Holiday denn einbauen, um keine Fehlermeldung mehr zu erhalten?

Gruß Chris
So einfach wie möglich, so kompliziert wie nötig

Otto123

Hi,

wie immer mit $we anstatt nur we? ;D
Aber von dem DOIF Perl habe ich ansonsten keine Ahnung.

Gruß Otto
Viele Grüße aus Leipzig  ⇉  nächster Stammtisch an der Lindennaundorfer Mühle
RaspberryPi B B+ B2 B3 B3+ ZeroW,HMLAN,HMUART,Homematic,Fritz!Box 7590,WRT3200ACS-OpenWrt,Sonos,VU+,Arduino nano,ESP8266,MQTT,Zigbee,deconz