Hallo, ich habe bei einem DOIF Probleme mit dem Command.
Im Perl-Modus wird das Kommando nicht ausgeführt, während es im Fhem-Modus normal funktioniert.
Also
(set Wohnzimmerlautsprecher speak "Bitte füllen Sie das Wasser auf und montieren das Wischtuch")
funktioniert
{fhem("set Wohnzimmerlautsprecher speak /"Bitte füllen Sie das Wasser auf und montieren das Wischtuch/"")}
funktioniert nicht
Wo habe ich den Denkfehler?
und so?
{fhem("set Wohnzimmerlautsprecher speak 'Bitte füllen Sie das Wasser auf und montieren das Wischtuch'")}
Bzw. wenn "escapen", dann richtig:
Zitat
/"
vs.
\"
;)
Es gibt auch noch q(String) oder qq(String)
(aber das habe ich mir noch nicht näher zu Gemüte geführt)
Gruß, Joachim
Ok, da hat sich ein Dreher eingeschlichen. Danke.
Nach dem ich es geändert hat, hat es auch funktioniert.
Allerdings komischerweise nur zweimal und dann kam keine Ansage mehr. Die Lautstärkeanpassung hingegen funktioniert jedesmal.
Hier das List:
Internals:
CFGFN
DEF ([Test] eq "on")
({my $volume=ReadingsVal("Wohnzimmerlautsprecher","volume","50");fhem("set Wohnzimmerlautsprecher volume 85");fhem("set Wohnzimmerlautsprecher speak \"Bitte füllen Sie das Wasser auf und montieren das Wischtuch\"");fhem("sleep 5");fhem("set Wohnzimmerlautsprecher volume $volume");})
FUUID 60a635ee-f33f-793a-cd0b-27371ba54687c97d
MODEL FHEM
NAME Benachrichtigung_universell
NOTIFYDEV global,Test
NR 38592
NTFY_ORDER 50-Benachrichtigung_universell
STATE initialized
TYPE DOIF
VERSION 24330 2021-04-24 21:09:16
.attraggr:
.attrminint:
READINGS:
2021-05-20 17:17:13 cmd 0
2021-05-20 17:17:13 mode enabled
2021-05-20 17:17:13 state initialized
Regex:
accu:
collect:
cond:
Test:
0:
&STATE ^Test$
attr:
cmdState:
wait:
waitdel:
condition:
0 ::InternalDoIf($hash,'Test','STATE') eq "on"
do:
0:
0 {my $volume=ReadingsVal("Wohnzimmerlautsprecher","volume","50");fhem("set Wohnzimmerlautsprecher volume 85");fhem("set Wohnzimmerlautsprecher speak \"Bitte füllen Sie das Wasser auf und montieren das Wischtuch\"");fhem("sleep 5");fhem("set Wohnzimmerlautsprecher volume $volume");}
1:
helper:
DEVFILTER ^global$|^Test$
NOTIFYDEV global|Test
globalinit 1
last_timer 0
sleeptimer -1
internals:
all Test:STATE
uiState:
uiTable:
Attributes:
do always