Hallo zusammen,
ich wollte mich morgendlich mit einer Temperaturansage begrüßen lassen. Ich habe einen HM Bewegungsmelder im Flur als Auslöser. Die Begrüßung soll nur einmal am Tag kommen. Die Temperatur lese ich aus dem HM-WDS10-TH-O aus.
Für den morgendlichen Trigger verwende ich ein DOIF:
define Good_Morning DOIF ## ?motion aus Eventmonitor (nicht aus reading)\
([FL.EG.bm:?motion] and \
[04:30-11:00]) \
(({Good_Morning(ReadingsVal('Wetterstation','temperature',''))}))\
Damit die Meldung nur einmal zw. 04:30 und 11:00 kommt, brauchts noch:
attr Good_Morning cmdpause 36000
attr Good_ Morning do always
Die Routine Good_Morning in 99_myUtils generiert die PlayTone Commands:
######## GoodMorning !! #############
############ Aufruf mit {Good_Morning(ReadingsVal('Wetterstation','temperature',''))} #############
sub
Good_Morning($)
{
my ($t) = @_; # Temperatur wird uebergeben
my @a = split(/\./,$t); # $a[0] = Integer $a[1] = Mantisse
$a[1] = $a[1]+100;
if ($a[0] < 0) { $a[0] = abs($a[0]);
$a[0] = $a[0]+100;
fhem("set FL.EG.gong.mp3 playTone 24,25,$a[0],29,$a[1],28 ");
}
else { $a[0] = $a[0]+100; # Nummer des MP3 entspricht jetzt dem Integer
fhem("set FL.EG.gong.mp3 playTone 24,$a[0],29,$a[1],28 ");
}
}
Die bnötigten MP3's:
024.mp3 Good morning Mr. xyz !! The current temperature is approximately
025.mp3 minus
029.mp3 Point
028.mp3 degrees !! I wisch you a nice day ..
100-125 ==> 0-25
Wenn jemand die mp3 files braucht(bis auf 024.mp3 natürlich), kann ich diese gerne hochladen...
Gruß Klaus
:-[
ich bekomme
syntax error at ./FHEM/99_myUtils.pm line 605, near "sub Good_Morning($) " Can't use global @_ in "my" at ./FHEM/99_myUtils.pm line 606, near "= @_" syntax error at ./FHEM/99_myUtils.pm line 616, near "}"
nach einfügen in die 99_my