Befehl wird nicht ausgeführt

Begonnen von Guest, 18 Dezember 2012, 12:25:51

Vorheriges Thema - Nächstes Thema

Guest

Originally posted by: <email address deleted>

Hallo zusammen,

ich habe ein Problem mit einem Perl Befehl.
Folgende Zeile habe ich in meiner Config eingefüggt:

define  HeizungNotifyOn notify dAbwesend:off {my $hm = sprintf("%02d:%02d",
$hour, $min);;if($hm gt "06:00" && $hm lt "22:00" && Value("dHeizung") eq
"on"){fhem "set Heizung on"};; Log 1, "HeizungNotifyOn"}

Es funktioniert aber nicht.
Wenn notify "dAbwesend:off" auftritt, sehe ich im Log meine Testausgabe
"HeizungNotifyOn".
Der Befehl  "set Heizung on" wurde aber nicht ausgeführt.
Wenn dann einfach den gesamten Perlbefehl ausführe (im Webeingabefeld):
{my $hm = sprintf("%02d:%02d", $hour, $min);;if($hm gt "06:00" && $hm lt
"22:00" && Value("dHeizung") eq "on"){fhem "set Heizung on"};; Log 1,
"HeizungNotifyOn"}

funktioniert es. Der Befehl  "set Heizung on" wird gesendet.

Woran liegt das?
Was mache ich falsch?

Danke
Thomas

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

Guest

Originally posted by: <email address deleted>

fhem ("set Heizung on")

VG
Ralf

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

Guest

Originally posted by: <email address deleted>

hat keider nichts gebracht:
define  HeizungNotifyOn notify dAbwesend:off {my $hm = sprintf("%02d:%02d",
$hour, $min);;if($hm gt "06:00" && $hm lt "22:00" && Value("dHeizung") eq
"on"){fhem ("set Heizung on")}}

Klappt auch nicht!

??

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

Guest

Originally posted by: <email address deleted>

Ich habe jetzt rausgefunden, dass es an den %-Zeichen liegt.
Diese werden mit dem Status des notify ersetzt, also : off02d:off02d

Ich bin ja ein Neuling in FHEM, aber bei dem ganzen Beispielcode den ich
bisher gelesen habe,
wurden die % Zeichen nie geschützt.
Ist es ein Bug oder wie muss ich die Prozentzeichen schützen?

Danke
Thomas


Am Dienstag, 18. Dezember 2012 12:25:51 UTC+1 schrieb Thomas:
>
> Hallo zusammen,
>
> ich habe ein Problem mit einem Perl Befehl.
> Folgende Zeile habe ich in meiner Config eingefüggt:
>
> define  HeizungNotifyOn notify dAbwesend:off {my $hm =
> sprintf("%02d:%02d", $hour, $min);;if($hm gt "06:00" && $hm lt "22:00" &&
> Value("dHeizung") eq "on"){fhem "set Heizung on"};; Log 1,
> "HeizungNotifyOn"}
>
> Es funktioniert aber nicht.
> Wenn notify "dAbwesend:off" auftritt, sehe ich im Log meine Testausgabe
> "HeizungNotifyOn".
> Der Befehl  "set Heizung on" wurde aber nicht ausgeführt.
> Wenn dann einfach den gesamten Perlbefehl ausführe (im Webeingabefeld):
> {my $hm = sprintf("%02d:%02d", $hour, $min);;if($hm gt "06:00" && $hm lt
> "22:00" && Value("dHeizung") eq "on"){fhem "set Heizung on"};; Log 1,
> "HeizungNotifyOn"}
>
> funktioniert es. Der Befehl  "set Heizung on" wird gesendet.
>
> Woran liegt das?
> Was mache ich falsch?
>
> Danke
> Thomas
>

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

Guest

Originally posted by: <email address deleted>

OK mit doppelten %% klappt es!



Am Dienstag, 18. Dezember 2012 12:25:51 UTC+1 schrieb Thomas:
>
> Hallo zusammen,
>
> ich habe ein Problem mit einem Perl Befehl.
> Folgende Zeile habe ich in meiner Config eingefüggt:
>
> define  HeizungNotifyOn notify dAbwesend:off {my $hm =
> sprintf("%02d:%02d", $hour, $min);;if($hm gt "06:00" && $hm lt "22:00" &&
> Value("dHeizung") eq "on"){fhem "set Heizung on"};; Log 1,
> "HeizungNotifyOn"}
>
> Es funktioniert aber nicht.
> Wenn notify "dAbwesend:off" auftritt, sehe ich im Log meine Testausgabe
> "HeizungNotifyOn".
> Der Befehl  "set Heizung on" wurde aber nicht ausgeführt.
> Wenn dann einfach den gesamten Perlbefehl ausführe (im Webeingabefeld):
> {my $hm = sprintf("%02d:%02d", $hour, $min);;if($hm gt "06:00" && $hm lt
> "22:00" && Value("dHeizung") eq "on"){fhem "set Heizung on"};; Log 1,
> "HeizungNotifyOn"}
>
> funktioniert es. Der Befehl  "set Heizung on" wird gesendet.
>
> Woran liegt das?
> Was mache ich falsch?
>
> Danke
> Thomas
>

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