Read the statement by Michael Teeuw here.
MMM-TTS
-
@davericher should be, but that wouldn’t work for people with serveronly mode
-
@strawberry-3.141 True, but it would work for every connected client
-
@davericher if you like you can create a pr to let the user decide via config if he wants to use festival or speech synthesis :)
-
Question…this is what I"m trying to do…
else if (/(HIDE)/g.test(data) && /(CLOCK)/g.test(data)) { this.hide(0, {lockString: 'MMM-voice'}); this.sendNotification('MMM-TTS', 'Hiding Clock'); } else if (/(SHOW)/g.test(data) && /(CLOCK)/g.test(data)) { this.show(0, {lockString: 'MMM-voice'}); this.sendNotification('MMM-TTS', 'Showing clock'); }
It works buttttttttttttttt the 1st time you fire it off it doesn’t stop LOL
“Showing clock”…“showing clock”…“showing clock”…
Same for Hiding clock
Apparently I’m not using it correctly hahahhahhahhaha
SO which is the correct way?
-
@cowboysdude where did you put that code piece?
-
checkCommands(data) { if (/(HELP)/g.test(data)) { if (/(CLOSE)/g.test(data) || (this.help && !/(OPEN)/g.test(data))) { this.help = false; this.interval = this.createInterval(); } else if (/(OPEN)/g.test(data) || (!this.help && !/(CLOSE)/g.test(data))) { this.help = true; clearInterval(this.interval); } } else if (/(HIDE)/g.test(data) && /(CLOCK)/g.test(data)) { this.hide(300, {lockString: 'MMM-voice'}); // if (this.hide){ // this.sendNotification('MMM-TTS', 'Hiding Clock'); // } } else if (/(SHOW)/g.test(data) && /(CLOCK)/g.test(data)) { this.show(300, {lockString: 'MMM-voice'}); // this.sendNotification('MMM-TTS', 'Showing clock'); } },
-
@cowboysdude could it be that the output of tts is putting you in a loop because it is triggering the command again :D try to change the output of tts so it will not trigger any output and then see if it still occurs
-
OK have no idea what that means but I didn’t change anything and now this is all I get…
Error: SIOD ERROR: unbound variable : voice_us1_mbrola
at Socket. (/home/cowboysdude/MagicMirror/modules/MMM-TTS/node_modules/say/index.js:83:14) at Socket.g (events.js:286:16) at emitOne (events.js:96:13) at Socket.emit (events.js:188:7) at readableAddChunk (_stream_readable.js:176:18) at Socket.Readable.push (_stream_readable.js:134:10) at Pipe.onread (net.js:543:20)
-
@cowboysdude For me it sounds like the output of tts
showing clock
triggered the voice module to recognize the command again, so tts saidshowing clock
again -> infinite loopNot sure what this error is
-
Thanks!!! I got it… can’t understand the jibberish it’s saying but I think TTS didn’t install properly…
FOR the record in simple form DO NOT use the same phrases in TTS that you use for sentences for voice…
if anyone needs examples please let me know I’ll be happy to help.