FHEM Forum

FHEM => fhem-users => Thema gestartet von: Puschel74 am 18 November 2012, 12:13:02

Titel: Syntax error bei Sunset/Sunrise in einem Define
Beitrag von: Puschel74 am 18 November 2012, 12:13:02
                                               

Hallo zusammen,

ich habe (mal wieder) ein gedankliches Problem was meine Rollosteuerung
anbelangt.

Ich würde gerne die Rollläden per sunset/sunrise ansteuern in Abhängigkeit
vom Wochenende.

Wenn ich das Define direkt mit sunset/sunrise definiere funktioniert es:
define OG_Zimmer_Rollo.runter at *{sunset(-3600,"18:30","20:30")} set
OG_Zimmer_Rollo on
Aber eben nicht am Wochenende da $we hier nicht abgefragt wird.
Nun habe ich mir (mit Sicherheit zu kompliziert) sowas gebaut:

*11:37:00 {
  if ($we) {
    fhem ("define OG_Zimmer_Rollo_hoch at *{sunrise(3600,"06:00","08:00")}
set OG_Zimmer_Rollo off");
    fhem ("attr OG_Zimmer_Rollo_hoch room 32_Rollo");
    fhem ("define OG_Zimmer_Rollo_runter at 16:00:00 set OG_Zimmer_Rollo
on");
    fhem ("attr OG_Zimmer_Rollo_runter room 32_Rollo");
  }
  else {
    fhem ("define OG_Zimmer_Rollo_hoch at 07:45:00 set OG_Zimmer_Rollo
off");
    fhem ("attr OG_Zimmer_Rollo_hoch room 32_Rollo");
    fhem ("define OG_Zimmer_Rollo_runter at 16:30:00 set OG_Zimmer_Rollo
on");
    fhem ("attr OG_Zimmer_Rollo_runter room 32_Rollo");
  }
}
11:37 war nur zu Testzwecken.
Nachdem das Define aufgerufen wurde stand

2012.11.18 11:37:00 3: syntax error at (eval 61340) line 1, near ""define OG_Zimmer_Rollo_hoch at *{sunrise(3600,"06"
Illegal octal digit '8' at (eval 61340) line 1, at end of line
im Logfile.

Wie hier http://www.fhemwiki.de/wiki/Zeitschaltuhr beschrieben hab ich auch
 { fhem ("define OG_Zimmer_Rollo_hoch at *{sunrise(3600,"06:00","08:00")} set OG_Zimmer_Rollo off") };
versucht.
Leider mit derselben Fehlermeldung.

Ich hab auch schon

fhem (""define OG_Zimmer_Rollo_hoch at *{sunrise(3600,"06:00","08:00")} set OG_Zimmer_Rollo off"");
und
fhem ("define OG_Zimmer_Rollo_hoch at *{sunrise(3600,""06:00"",""08:00"")} set OG_Zimmer_Rollo off");
und
fhem (""define OG_Zimmer_Rollo_hoch at *{sunrise(3600,""06:00"",""08:00"")} set OG_Zimmer_Rollo off"");
versucht.

Ich bin mir ziemlich sicher das ich wiedermal zu kompliziert denke und das ganze auch einfacher geht.


Grundgedanke: Die Rollläden sollen am Wochenende 1 Stunde nach
Sonnenaufgang und 1 Stunde vor Sonnenuntergang und an
Arbeitstagen 1/2 Stunde nach Sonnenaufgang und 1/2 vor Sonnenuntergang hoch
bzw. rauffahren.
Später möchte ich dann, für den Sommer, noch eine "Beschattung" hinzufügen
- das aber, wie gesagt später.
Erstmal soll nur die Unterscheidung $we true/false funktionieren.

Ich bin mir sicher das sich einige von Euch wieder an den Kopf fassen und
denken - nene, so wird das nix. Ist doch soo einfach.
Ich bin mal wieder für jeden Lichtblick und jede Hilfe dankbar.

Also danke schonmal im voraus.

Grüße

--
To unsubscribe from this group, send email to
fhem-users+unsubscribe@googlegroups.com
Titel: Re: Syntax error bei Sunset/Sunrise in einem Define
Beitrag von: borsti67 am 18 November 2012, 12:25:39
                                                 

Anführungzeichen in Anführungszeichen sind glaub' ich immer eine schlechte
Idee.
Ob das mit Verdopplung so geht oder die anders "escaped" werden müssen,
weiß ich gerade nicht. Probier' doch mal verschiedene:

    fhem ("define OG_Zimmer_Rollo_hoch at *{sunrise(3600,'06:00','08:00')}
set OG_Zimmer_Rollo off");

...was passiert dann?

--
To unsubscribe from this group, send email to
fhem-users+unsubscribe@googlegroups.com
Titel: Re: Syntax error bei Sunset/Sunrise in einem Define
Beitrag von: Puschel74 am 18 November 2012, 12:35:13
                                               

Hallo,

ok, das wars.
Die doppelten Anführungszeichen waren in diesem Fall das Problem bei der
Uhrzeit.

Vielen Dank Borsti

Grüße

Am Sonntag, 18. November 2012 12:25:41 UTC+1 schrieb Borsti67:
>
> Anführungzeichen in Anführungszeichen sind glaub' ich immer eine schlechte
> Idee.
> Ob das mit Verdopplung so geht oder die anders "escaped" werden müssen,
> weiß ich gerade nicht. Probier' doch mal verschiedene:
>
>     fhem ("define OG_Zimmer_Rollo_hoch at *{sunrise(3600,'06:00','08:00')}
> set OG_Zimmer_Rollo off");
>
> ...was passiert dann?
>
>

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