it seems your “Talk” programm can’t cope with double quotes. Have you tried the whole thing from the commandline?
Maybe you need single quotes around your sentence. Or double-double quotes, like talk ““Lorem ipsum dolor amed””
Manually doing it in the command line results in the following:
talk “my sentence 123” <— Success
talk ‘my sentence 123’ <—Success
Copying the output from the openhab log: executed commandLine 'talk “my speech string is great”'
is the same as the first one of these two examples, right?
executeCommandLine(‘talk “Dimming the light”’) <— results in it saying: Dimming.
executeCommandLine(“talk “Dimming the light””) <— results in it saying: Dimming.
Nope, can’t get it to work What you wrote in that post just gives “Dimming backslash”. Double or single quotes doesn’t seem to make a difference, tried multiple ways.
Using @@ works fine as long as i do it manually in the command line but when openhab does it, it fails completely.
I’m starting to feel it must be the exec binding that parses stuff strangely…
Edit: Or not… it works using say (other TTS software). It must be my program after all but don’t get how… Will look over later.
Edit2: Say works because it can take arguments like: say dimming the light <— without quotes.
Will probably just add support for this in my program even though it should be possible to pass a string within quotes.
Fixed this using $* in my bash program. Making it take all arguments as one string. Still believe the exec binding has some issues though. This was more of a work around.