Hauptmenü

DOIF und Perl

Begonnen von Senior Service, 02 April 2018, 16:40:59

Vorheriges Thema - Nächstes Thema

Senior Service

Hallo

Bekomme ein Problem einfach nicht zum Laufen.
Vielleicht kann jemand helfen:


Folgende Befehlskette funktioniert einwandfrei in der Kommandozeile

{ my $hour12 = 0 ;; if($hour<13) {($hour12 = $hour)} else {($hour12 = $hour - 12)} ;;  fhem("set Signalgeber_Aussen_MP3 playTone 152 ".($hour12)." 2 ;; set Stundenschlag1 off")}

aber eingebettet in DOIF bekomme ich es nicht zum Laufen

define Stundenschlag_T_DI DOIF ([Stundenschlag1:"on"]) ({ my $hour12 = 0 ;; if($hour<13) {($hour12 = $hour)} else {($hour12 = $hour - 12)} ;;  fhem("set Signalgeber_Aussen_MP3 playTone 152 ".($hour12)." 2 ;; set Stundenschlag1 off")})

Denke die Trennungszeichen der Befehle stimmen nicht, aber alle getesteten Varianten haben nicht gefruchtet.

Hat jemand Rat?
Schon jetzt vielen Dank!





Damian

Das ist ein Fall für DOIF-Perl:

define Stundenschlag_T_DI DOIF {if ([Stundenschlag1:"on"]) {
my $hour12 = 0 ;
if($hour<13) {($hour12 = $hour)} else {($hour12 = $hour - 12)} ;
fhem("set Signalgeber_Aussen_MP3 playTone 152 ".($hour12)." 2 ; set Stundenschlag1 off")}
}
Programmierte FHEM-Module: DOIF-FHEM, DOIF-Perl, DOIF-uiTable, THRESHOLD, FHEM-Befehl: IF

Senior Service

Danke für die schnelle Hilfe!