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:

{code lang:bash hidden:false}

apt-get install mplayer
apt-get install mp3wrap

{/code} 

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

Einfach als letzte Zeile anhängen

{code lang:bash hidden:false}

ALL     ALL = NOPASSWD: /usr/bin/mplayer

{/code} 

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

{code lang:php hidden:false}

<?php
$tweets = simplexml_load_file(‚HTTPS://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‘ ‚HTTPS://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‘ ‚HTTPS://translate.google.com/translate_tts?tl=de&q=“ . $array[$i] . „‚;“;
# echo “ $satz“;
echo “ GESAGT“;
shell_exec($satz);
}
}
?>

{/code} 

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. (HTTPS://IPDESSERVERS/speak.php)

Von heckmic

Schreibe einen Kommentar

Deine E-Mail-Adresse wird nicht veröffentlicht. Erforderliche Felder sind mit * markiert

Diese Website verwendet Akismet, um Spam zu reduzieren. Erfahre mehr darüber, wie deine Kommentardaten verarbeitet werden.