Hallo
Wollte folgende string in rhasspyMapping verketten
GetState:response='Diese Woche habe ich '.{replace_str(ReadingsVal("Schicht","state",""),"_"," ")}
Dabei ist "replace_str" ein kleines Tool das das ein string/charakter austauscht.
Leider wird das Tool nicht ausgeführt stattdessen nur verkettet.
Komm da nicht weiter.
Vielleicht hat jemand von euch eine Idee wie "replace_str" zum auführen gebracht werden könnte.
Gruß
Klaus
Moin.
Auf die Schnelle glaube ich nicht, dass das ohne einen externen Zwischenschritt (userReadings mit dem aufbereiteten Text) funktioniert.
In der commandref ist "nur" die "einfache" "set-magic-like" Ersetzung beschrieben:
GetState:response=The temperature in the kitchen is at [lamp:temperature] degrees
Perl-Code dürfte dagegen nicht funktionieren, selbst wenn du die erweiterte {(Perl)}-Schreibweise verwenden würdest, oder den ganzen Ausdruck als Perl-Aufruf notierst (und wenn, bitte daran denken, die Funktion "replace_str()" ausdrücklich als "main"-zugehörig markern (Doppelpunkte!)).
Letzteres (Alles als Perl-Aufruf) wäre evtl. relativ einfach in den Code zu integrieren, ich werde allerdings zumindest die nächsten paar Wochen nicht dazu kommen, mich damit zu befassen.
Hallo
Danke für deine Unterstützung.
Hatte mir auch schon überlegt ob ich das mit userReadings löse.
Gruß
Klaus
Es funktioniert ziemlich gut mit userReadings
GetState:response={return "Diese Woche habe ich ".replace_str(ReadingsVal("Schicht","state",""),"_"," ")}
...sollte auch funktionieren.
Gruß Jens
Vielen Dank
Funktioniert wunderbar.
Und brauche die Krücke über userReadings nicht. :)