Originally posted by: <email address deleted>
Hallo
ich habe folgenden Code aus der FAQ bei FHEM bei mir aktiviert.
---
define fht_ExtendedAutoMode notify .*mode.*auto {\
$r = $defs{@}{READINGS};;\
return if (!defined($r));;\
my $olddesired = $r->{"desired-temp"}{VAL};;\
return if (!defined($olddesired));;\
my @@day = ("sun", "mon", "tue", "wed", "thu", "fri", "sat");;\
my $now = sprintf("%%02d:%%02d", $hour, $min);;\
my $wd = $day[$wday];;\
my $desired;;\
if (defined($r->{"warnings"}{VAL}) && $r->{"warnings"}{VAL} eq
"Window open") {\
$desired = $r->{"windowopen-temp"}{VAL};;\
} elsif (defined($r->{"$wd-from1"}{VAL}) && $r->{"$wd-from1"}
{VAL} le $now && defined($r->{"$wd-to1"}{VAL}) && $r->{"$wd-to1"}{VAL}
ge $now) {\
$desired = $r->{"day-temp"}{VAL};;\
} elsif (defined($r->{"$wd-from2"}{VAL}) && $r->{"$wd-from2"}
{VAL} le $now && defined($r->{"$wd-to2"}{VAL}) && $r->{"$wd-to2"}{VAL}
ge $now) {\
$desired = $r->{"day-temp"}{VAL};;\
} else {\
$desired = $r->{"night-temp"}{VAL};;\
}\
fhem ("set @ desired-temp $desired") if (defined($desired) &&
$desired ne $olddesired);;\
}
attr fht_ExtendedAutoMode comment Setzt fuer den Auto mode die
desired-temp in Abhaengigkeit von Temperaturprofil und Fensterkontakt
attr fht_ExtendedAutoMode room hidden
---
Seitdem fallen mir folgende Log-Einträge auf.
Hat jemand ein Lösung oder einen Vorschlag?
2011.11.21 15:20:56 3: Global symbol "$r" requires explicit package
name at (eval 675) line 1.
Global symbol "$r" requires explicit package name at (eval 675) line
1.
Global symbol "$r" requires explicit package name at (eval 675) line
1.
........
2011.11.21 15:20:57 3: NTFY return: Global symbol "$r" requires
explicit package name at (eval 675) line 1.
Global symbol "$r" requires explicit package name at (eval 675) line
1.
Global symbol "$r" requires explicit package name at (eval 675) line
1.
......
2011.11.21 15:20:57 3: Global symbol "$r" requires explicit package
name at (eval 676) line 1.
Global symbol "$r" requires explicit package name at (eval 676) line
1.
Global symbol "$r" requires explicit package name at (eval 676) line
1.
.....
2011.11.21 15:20:57 3: NTFY return: Global symbol "$r" requires
explicit package name at (eval 676) line 1.
Global symbol "$r" requires explicit package name at (eval 676) line
1.
Global symbol "$r" requires explicit package name at (eval 676) line
1.
....
Gruss Peter
--
To unsubscribe from this group, send email to
fhem-users+unsubscribe@googlegroups.com
> Global symbol "$r" requires explicit package name at (eval 676) line
Bitte
$r = $defs{@}{READINGS};;
durch
my $r = $defs{@}{READINGS};;
ersetzen.
Oder gleich
$r = $defs{@}{READINGS};;\
return if (!defined($r));;\
my $olddesired = $r->{"desired-temp"}{VAL};;\
durch
my $olddesired = ReadingsVal("@", "desired-temp", 20);;\
ersetzen.
--
To unsubscribe from this group, send email to
fhem-users+unsubscribe@googlegroups.com
Originally posted by: <email address deleted>
Hallo Rudolf,
danke für die Hilfe.
Kurze Nachfrage.
my $olddesired = ReadingsVal("@", "desired-temp", 20);;\
was bedeutet hier die 20, .... wird hier die Temperatur 20°C
vorgegeben?
Danke.
--
To unsubscribe from this group, send email to
fhem-users+unsubscribe@googlegroups.com
Originally posted by: <email address deleted>
> my $olddesired = ReadingsVal("@", "desired-temp", 20);;\
> was bedeutet hier die 20, .... wird hier die Temperatur 20°C
> vorgegeben?
Wenn "desired-temp" (noch) nicht definiert ist, wird 20 zurückgeliefert.
Gruss
Torsten
--
To unsubscribe from this group, send email to
fhem-users+unsubscribe@googlegroups.com
Originally posted by: <email address deleted>
Hallo Torsten,
danke für die Bestätigung.
Gruss Peter
--
To unsubscribe from this group, send email to
fhem-users+unsubscribe@googlegroups.com
Originally posted by: <email address deleted>
Hallo,
ich hab dieses Problem auch. Ich habe schon die Änderungen vorgenommen,
trotzdem geht es aber nicht.
So sieht also mein ExtendedAutoMode aus:
.*mode.*auto {
my $olddesired = ReadingsVal("@", "desired-temp", 20);;\
return if (!defined($olddesired));
my @@day = ("sun", "mon", "tue", "wed", "thu", "fri", "sat");
my $now = sprintf("%%02d:%%02d", $hour, $min);
my $wd = $day[$wday];
my $desired;
if (defined($r->{"warnings"}{VAL}) && $r->{"warnings"}{VAL} eq "Window
open") {
$desired = $r->{"windowopen-temp"}{VAL};
} elsif (defined($r->{"$wd-from1"}{VAL}) && $r->{"$wd-from1"}{VAL} le
$now && defined($r->{"$wd-to1"}{VAL}) && $r->{"$wd-to1"}{VAL} ge $now) {
$desired = $r->{"day-temp"}{VAL};
} elsif (defined($r->{"$wd-from2"}{VAL}) && $r->{"$wd-from2"}{VAL} le
$now && defined($r->{"$wd-to2"}{VAL}) && $r->{"$wd-to2"}{VAL} ge $now) {
$desired = $r->{"day-temp"}{VAL};
} else {
$desired = $r->{"night-temp"}{VAL};
}
fhem ("set @ desired-temp $desired") if (defined($desired) && $desired
ne $olddesired);
}
Und das ist dann die Ausgabe im Log
ExtendedAutoMode return value: Global symbol "$r" requires explicit package
name at (eval 29) line 1.
Global symbol "$r" requires explicit package name at (eval 29) line 1.
Global symbol "$r" requires explicit package name at (eval 29) line 1.
Global symbol "$r" requires explicit package name at (eval 29) line 1.
Global symbol "$r" requires explicit package name at (eval 29) line 1.
Global symbol "$r" requires explicit package name at (eval 29) line 1.
Global symbol "$r" requires explicit package name at (eval 29) line 1.
Global symbol "$r" requires explicit package name at (eval 29) line 1.
Global symbol "$r" requires explicit package name at (eval 29) line 1.
Global symbol "$r" requires explicit package name at (eval 29) line 1.
Global symbol "$r" requires explicit package name at (eval 29) line 1.
Global symbol "$r" requires explicit package name at (eval 29) line 1.
Global symbol "$r" requires explicit package name at (eval 29) line 1.
Global symbol "$r" requires explicit package name at (eval 29) line 1.
Könnt ihr mir helfen?
Am Montag, 21. November 2011 13:50:17 UTC+1 schrieb Peter Maier:
>
> Hallo
>
> ich habe folgenden Code aus der FAQ bei FHEM bei mir aktiviert.
>
> ---
> define fht_ExtendedAutoMode notify .*mode.*auto {\
> $r = $defs{@}{READINGS};;\
> return if (!defined($r));;\
> my $olddesired = $r->{"desired-temp"}{VAL};;\
> return if (!defined($olddesired));;\
> my @@day = ("sun", "mon", "tue", "wed", "thu", "fri", "sat");;\
> my $now = sprintf("%%02d:%%02d", $hour, $min);;\
> my $wd = $day[$wday];;\
> my $desired;;\
> if (defined($r->{"warnings"}{VAL}) && $r->{"warnings"}{VAL} eq
> "Window open") {\
> $desired = $r->{"windowopen-temp"}{VAL};;\
> } elsif (defined($r->{"$wd-from1"}{VAL}) && $r->{"$wd-from1"}
> {VAL} le $now && defined($r->{"$wd-to1"}{VAL}) && $r->{"$wd-to1"}{VAL}
> ge $now) {\
> $desired = $r->{"day-temp"}{VAL};;\
> } elsif (defined($r->{"$wd-from2"}{VAL}) && $r->{"$wd-from2"}
> {VAL} le $now && defined($r->{"$wd-to2"}{VAL}) && $r->{"$wd-to2"}{VAL}
> ge $now) {\
> $desired = $r->{"day-temp"}{VAL};;\
> } else {\
> $desired = $r->{"night-temp"}{VAL};;\
> }\
> fhem ("set @ desired-temp $desired") if (defined($desired) &&
> $desired ne $olddesired);;\
> }
> attr fht_ExtendedAutoMode comment Setzt fuer den Auto mode die
> desired-temp in Abhaengigkeit von Temperaturprofil und Fensterkontakt
> attr fht_ExtendedAutoMode room hidden
> ---
>
> Seitdem fallen mir folgende Log-Einträge auf.
> Hat jemand ein Lösung oder einen Vorschlag?
>
>
> 2011.11.21 15:20:56 3: Global symbol "$r" requires explicit package
> name at (eval 675) line 1.
> Global symbol "$r" requires explicit package name at (eval 675) line
> 1.
> Global symbol "$r" requires explicit package name at (eval 675) line
> 1.
> ........
> 2011.11.21 15:20:57 3: NTFY return: Global symbol "$r" requires
> explicit package name at (eval 675) line 1.
> Global symbol "$r" requires explicit package name at (eval 675) line
> 1.
> Global symbol "$r" requires explicit package name at (eval 675) line
> 1.
> ......
> 2011.11.21 15:20:57 3: Global symbol "$r" requires explicit package
> name at (eval 676) line 1.
> Global symbol "$r" requires explicit package name at (eval 676) line
> 1.
> Global symbol "$r" requires explicit package name at (eval 676) line
> 1.
> .....
> 2011.11.21 15:20:57 3: NTFY return: Global symbol "$r" requires
> explicit package name at (eval 676) line 1.
> Global symbol "$r" requires explicit package name at (eval 676) line
> 1.
> Global symbol "$r" requires explicit package name at (eval 676) line
> 1.
> ....
>
> Gruss Peter
>
>
--
To unsubscribe from this group, send email to
fhem-users+unsubscribe@googlegroups.com
Originally posted by: <email address deleted>
Hallo,
ich hab dieses Problem auch. Ich habe schon die Änderungen vorgenommen,
trotzdem geht es aber nicht.
So sieht also mein ExtendedAutoMode aus:
.*mode.*auto {
my $olddesired = ReadingsVal("@", "desired-temp", 20);;\
return if (!defined($olddesired));
my @@day = ("sun", "mon", "tue", "wed", "thu", "fri", "sat");
my $now = sprintf("%%02d:%%02d", $hour, $min);
my $wd = $day[$wday];
my $desired;
if (defined($r->{"warnings"}{VAL}) && $r->{"warnings"}{VAL} eq "Window
open") {
$desired = $r->{"windowopen-temp"}{VAL};
} elsif (defined($r->{"$wd-from1"}{VAL}) && $r->{"$wd-from1"}{VAL} le
$now && defined($r->{"$wd-to1"}{VAL}) && $r->{"$wd-to1"}{VAL} ge $now) {
$desired = $r->{"day-temp"}{VAL};
} elsif (defined($r->{"$wd-from2"}{VAL}) && $r->{"$wd-from2"}{VAL} le
$now && defined($r->{"$wd-to2"}{VAL}) && $r->{"$wd-to2"}{VAL} ge $now) {
$desired = $r->{"day-temp"}{VAL};
} else {
$desired = $r->{"night-temp"}{VAL};
}
fhem ("set @ desired-temp $desired") if (defined($desired) && $desired
ne $olddesired);
}
Und das ist dann die Ausgabe im Log
ExtendedAutoMode return value: Global symbol "$r" requires explicit package
name at (eval 29) line 1.
Global symbol "$r" requires explicit package name at (eval 29) line 1.
Global symbol "$r" requires explicit package name at (eval 29) line 1.
Global symbol "$r" requires explicit package name at (eval 29) line 1.
Global symbol "$r" requires explicit package name at (eval 29) line 1.
Global symbol "$r" requires explicit package name at (eval 29) line 1.
Global symbol "$r" requires explicit package name at (eval 29) line 1.
Global symbol "$r" requires explicit package name at (eval 29) line 1.
Global symbol "$r" requires explicit package name at (eval 29) line 1.
Global symbol "$r" requires explicit package name at (eval 29) line 1.
Global symbol "$r" requires explicit package name at (eval 29) line 1.
Global symbol "$r" requires explicit package name at (eval 29) line 1.
Global symbol "$r" requires explicit package name at (eval 29) line 1.
Global symbol "$r" requires explicit package name at (eval 29) line 1.
Könnt ihr mir helfen?
--
To unsubscribe from this group, send email to
fhem-users+unsubscribe@googlegroups.com