Twitter Posts vorlesen

 

Du benötigst ein laufendes Linux mit Apache und PHP.

Verwendet wird hier die google Sprachsynthese (bekannt von deinem Android Phone) - es ist also eine Internetanbindung erforderlich.

Bei mir läuft das ganze auf meinem Wohnzimmer VDR (yavdr 0.5).

Auf der Konsole:

Show/Hidden bash code

View source
 
 
 
apt-get install mplayer
apt-get install mp3wrap
 
 
 
 

Dann noch die Datei /usr/sbin/visudo anpassen (nano oder vim).

Einfach als letzte Zeile anhängen

Show/Hidden bash code

View source
 
 
 
ALL     ALL = NOPASSWD: /usr/bin/mplayer
 
 
 
 

Dieses Script legst du als speak.php unter /var/www ab.

Show/Hidden php code

View source
 
 
 
<?php
$tweets = simplexml_load_file('http://www.twitter.com/status/user_timeline/kurzewitze');
$satz=$tweets->status->text;
list($satz,$rest) = split('http',$satz);
echo "$satz";
$satz = str_replace(array("\r\n", "\r", "\n"), chr(0), $satz);
$array = explode(chr(0), wordwrap($satz, 100, chr(0)));
echo print_r ($array);
#echo strlen($satz);
$einleitung="Ich lache mich schlapp. Einen hab ich noch. Aufgepasst.";
 echo "$einleitung";
$einleitung="sudo mplayer -ao alsa:device=hw=0.0 -nolirc -noconsolecontrols -http-header-fields 'User-Agent:Mozilla/5.0 (Windows NT 6.2; WOW64) AppleWebKit/537.22 (KHTML, like Gecko) Chrome/25.0.1364.172 Safari/537.22m' 'http://translate.google.com/translate_tts?tl=de&q=$einleitung';";
# echo " $einleitung";
 shell_exec($einleitung);
 
 
sleep (2);
 
 
$arrayLength = count($array);
 
 
for ($i = 0; $i < $arrayLength; $i++){
 echo "\n" . $array[$i];
 if ("x" != "x" . $array[$i] )
 {
 $satz="sudo mplayer -ao alsa:device=hw=0.0 -nolirc -noconsolecontrols -http-header-fields 'User-Agent:Mozilla/5.0 (Windows NT 6.2; WOW64) AppleWebKit/537.22 (KHTML, like Gecko) Chrome/25.0.1364.172 Safari/537.22m' 'http://translate.google.com/translate_tts?tl=de&q=" . $array[$i] . "';";
# echo " $satz";
 echo " GESAGT";
 shell_exec($satz);
 }
}
?>
 
 
 
 

Die URL oben kann nat√ľrlich angepasst werden. In diesem Fall wird dir der Witz des Tages vorgelesen.

Da die Sprachsynthese auf 100 Zeichen beschr√§nkt ist, m√ľssen wir ein wenig tricksen. Mit dem Script wird das umgangen.

Wenn man das ganze mit der vorhanden Haussteuerung in Fhem koppelt, kann z.B. der Witz des Tages auf Knopfdruck an der Wand vorgelesen werden. Die Anwendungsmöglichkeiten sind unbegrenzt.

 

Dir hat das Projekt gefallen? Dann¬†Unterst√ľtze mich, damit ich weiterhin solche Projekte vorstellen kann!

 

Aufrufen kannst du das Script nun indem du z.B. in deinem Webbrowser die Adresse aufrufst. (http://IPDESSERVERS/speak.php)

Kommentar schreiben

Sicherheitscode
Aktualisieren