Was ist falsch am Notify?

Begonnen von Guest, 30 Oktober 2012, 21:17:31

Vorheriges Thema - Nächstes Thema

Guest

Originally posted by: <email address deleted>

Das Notify hat die Aufgabe eine Mail mit aktueller Temperatur zu
verschicken.

Der Mailversand funktioniert auch, jedoch wird die Variable $gt (aktueller
Status) nicht in den Text eingefügt.
Es wird nur die Variable selbst in Textform dargestellt.

Beispiel Textausgabe: Temperatur $gt

Was ist hier falsch?

define Mail_Gartenhaus_Normal notify 1W.T_Gartenhaus:temperature.* {my
$gt=$defs{'1W.T_Gartenhaus'}{STATE};;\
fb_mail('xxx@@xxxx.com','Gartenhaus - Keine Frostgefahr','Temperatur $gt')
if ($value{D_Gartenhaus} ne "AUS") && ($defs{'1W.T_Gartenhaus'}{STATE} !~
m/.*Cool.*/);;\
}


Gruß Klaus

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

Guest

Originally posted by: <email address deleted>

Ich wurschtel mich gerade erst wieder in Perl rein aber es müsste
("Temperatur" . $gt) heißen. Sonst geht Perl ja davon aus das du Text
schreibst und nicht das es eine Variableist.

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

UliM

                                                 

Ausdrücke in 'einfachen Anführungszeichen' werden nicht interpretiert, die in "doppelten Anführungszeichen" aber schon.

--
To unsubscribe from this group, send email to
fhem-users+unsubscribe@googlegroups.com
RPi4/Raspbian, CUL V3 (ca. 30 HomeMatic-devices), LAN (HarmonyHub, alexa etc.).  Fördermitglied des FHEM e.V.

kud

                                                 

> define Mail_Gartenhaus_Normal notify 1W.T_Gartenhaus:temperature.* {my
> $gt=$defs{'1W.T_Gartenhaus'}{STATE};;\
> fb_mail('xxx@@xxxx.com','Gartenhaus - Keine Frostgefahr','Temperatur
> $gt') if ($value{D_Gartenhaus} ne "AUS") && ($defs{'1W.T_Gartenhaus'}{STATE}
> !~ m/.*Cool.*/);;\
> }
>
>
Hübsch kryptisch ;-)
Kann einer der Perl-Wissenden diesen Notivy mal aufdröseln und erklären?

Gruss
KUD

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

Guest

Originally posted by: <email address deleted>

Mein Perl ist ewig her und ich warte gerade auf ein aktuelles Kurz und Gut
:-).

Ich verstehe das so. Es gibt 2 Teile mit Gartenhaus einmal D_Gartenhaus
(Ich vermute Heizung o.ä.) und T_Gartenhaus ich denke ein Temperatursensor.
Und FHEM soll eine Mail rausschicken mit der aktuellen Temperatur wenn
D_Gartenhaus auf aus steht *und* T_Gartenhaus die Information "Cool"
enthält.
Mir sind die ganzen Perl Operatoren aber nicht mehr so geläufig.

Wer übrigens einen guten Einstieg in Perl sucht ich hab es damals mit
Selfhtml gelernt das ganze ist auch nach wie vor online, dazu kann ich ein
Perl kurz und gut empfehlen:
http://de.selfhtml.org/perl/index.htm

Am Mittwoch, 31. Oktober 2012 09:40:11 UTC+1 schrieb KUD:
>
>
> define Mail_Gartenhaus_Normal notify 1W.T_Gartenhaus:temperature.* {my
>> $gt=$defs{'1W.T_Gartenhaus'}{STATE};;\
>> fb_mail('xxx@@xxxx.com','Gartenhaus - Keine Frostgefahr','Temperatur
>> $gt') if ($value{D_Gartenhaus} ne "AUS") && ($defs{'1W.T_Gartenhaus'}{STATE}
>> !~ m/.*Cool.*/);;\
>> }
>>
>>
> Hübsch kryptisch ;-)
> Kann einer der Perl-Wissenden diesen Notivy mal aufdröseln und erklären?
>
> Gruss
> KUD
>

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

rudolfkoenig

                                                   

> $defs{'1W.T_Gartenhaus'}{STATE}

Ist "deprecated", bitte Value("1W.T_Gartenhaus") benutzen.

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

Guest

Originally posted by: <email address deleted>

Der Ansatz war richtig. Unter folgender Änderung funktioniert das Notify.

Falsch - > fb_mail('xxx@@xxxx.com','Gartenhaus - Keine Frostgefahr','Temperatur
$gt')

Richtig -> fb_mail('xxx@@xxxx.com','Gartenhaus - Keine Frostgefahr','Temperatur'.
$gt)

Danke für die Hilfe.

Gruß Klaus

Am Dienstag, 30. Oktober 2012 21:30:01 UTC+1 schrieb strauch:
>
> Ich wurschtel mich gerade erst wieder in Perl rein aber es müsste
> ("Temperatur" . $gt) heißen. Sonst geht Perl ja davon aus das du Text
> schreibst und nicht das es eine Variableist.
>

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

Guest

Originally posted by: <email address deleted>

Das Notify hat folgenden Hintergrund.

Ich möchte per Email informiert werden, wenn die Temperatur im Gartenhaus
einen normalen Wert angenommen hat.
Der normale Wert ist bei mir der Wert zwischen COOL und HOT.
<----Cool<-----Normal---->Hot----->

In der Email soll der aktuelle Temperaturwert mit übermittelt werden..

1.  {my $gt=$defs{'1W.T_Gartenhaus'}{STATE};;\ Auslesen des aktuellen
Status in die Variable $gt

2.  fb_mail('xxx@@xxxx.com','Gartenhaus - Keine Frostgefahr','Temperatur
$gt') if ($value{D_Gartenhaus} ne "AUS") && ($defs{'1W.T_Gartenhaus'}{STATE}
!~ m/.*Cool.*/);;\

    Email mit aktuellem Temperaturwert versenden, wenn der Dummy
D_Gartenhaus nicht auf AUS steht und im Status das Temperaturfühlers
    (1W.T_Gartenhaus) das Wort COOL nicht vorkommt.

    Der Dummy wird gesetzt, wenn die Temperatur COOL erreicht ist. Damit
verhindere ich eine mehrfach Mail wenn die Temperatur noch im
    Beriech COOL ist.

    Ich verwende 1Wire Elemente. Dort kann man tempHigh und tempLow Werte
setzen die bei mir durch die Worte Hot bzw. COOL hinter den
    eigentlichen Temperaturwert ergänzt werde.

    Hier ein grafisches Beispiel
   

<https://lh6.googleusercontent.com/-KNL6usCJkYc/UJJmKd8qRZI/AAAAAAAAAAM/-Ycr710QwHU/s1600/Bildschirmfoto+2012-11-01+um+13.07.23.png>
   

Gruß Klaus

Am Mittwoch, 31. Oktober 2012 09:40:11 UTC+1 schrieb KUD:
>
>
> define Mail_Gartenhaus_Normal notify 1W.T_Gartenhaus:temperature.* {my
>> $gt=$defs{'1W.T_Gartenhaus'}{STATE};;\
>> fb_mail('xxx@@xxxx.com','Gartenhaus - Keine Frostgefahr','Temperatur
>> $gt') if ($value{D_Gartenhaus} ne "AUS") && ($defs{'1W.T_Gartenhaus'}{STATE}
>> !~ m/.*Cool.*/);;\
>> }
>>
>>
> Hübsch kryptisch ;-)
> Kann einer der Perl-Wissenden diesen Notivy mal aufdröseln und erklären?
>
> Gruss
> KUD
>

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