Und wieder Code-Schnipsel, die Zehnte – Sprachausgabe fuer den FHEM-Server
FHEM ist ein beliebter Server zur Heimautomation, mit welchem man zB. FS20 oder Homematic-Komponenten mittels FritzBox oder Raspberry Pi und Busware- oder HMLan-Funkinterface ueber ein Frontend steuern kann.
Hat man ein „pures“ Linux zur Verfuegung, muss man zuerst mplayer (Grundlage) installieren:
$ sudo apt-get install mplayer
Anschliessend mit visudo den mplayer fuer alle aufrufbar machen und im Texteditor die folgende Zeile anfuegen:
$ sudo visudo
ALL ALL = NOPASSWD: /usr/bin/mplayer
Ausserdem empfiehlt sich der Einsatz von MP3wrap, damit mindestens ab dem zweiten Aufruf die Sprachwiedergaben fluessig rueberkommen:
$ sudo apt-get install mp3wrap
Jetzt kann man in FHEM das Sprachmodul initialisieren. Wichtig natuerlich, dass ueberhaupt eines da ist. Deshalb am besten auf dem FHEM-Mirror nachschauen und das entspechende Perl-Modul (98_text2speech.pm) herunterladen und in das Modulverzeichnis von FHEM kopieren. Danach in der fhem.cfg folgendes definieren:
define myTTS Text2Speech hw=0.0
attr myTTS room Text2Speech
attr myTTS TTS_UseMp3Wrap 1
attr myTTS verbose 4
Und jetzt geht in der Kommandozeile von FHEM oder in Verbindung von diversen Notifies das Folgende:
$fhem: set myTTS tts ‚Ich liebe Dich.‘
Es gilt, Gross- und Kleinschreibung zu beachten. Damit wird jedenfalls der Satz oben „vorgelesen“ mit der Stimme der Google-Engine und ueber das Device.Subdevice „0.0“. Die zur Verfuegung stehenden Hardware-Devices lassen sich uebrigens mit aplay -l anzeigen und gegebenenfalls aendern.
Bei uns ist dann an der Klinkenbuchse des Raspi ein aktiver Notebook-Lautsprecher angekoppelt. Viel Spass beim Ausprobieren…