Ich lese per Textparser Börsennachrichten aus und lasse diese per TTS am Abend vorlesen. Es gibt allerdings das Problem, dass die Nachrichten zwischen 50-200s differieren und dann bei einem sleep zwischendurch sehr lange Pausen entstehen wo nix passiert.
Gibt es eine Lösung um festzustellen wann der TTS Befehl abgearbeitet ist?
Oder hat jemand eine andere Lösung…
Mal den Teil des Scripts, zur besseren Verdeutlichung, vieleicht hat jemand eine Idee wie ich die Pausenzeit zwischen den TTS Befehlen der genauen Größe des anzusagenden Textes anpassen kann…
$days=Array(1,2,3,4,5);
if ($hrs < 9 or $hrs > 16)
{
if(in_array(date("w"), $days))
{
TTS_Speak($TTS_SK1, "Der letzte Schlusstand des deutschen Aktienindex war");
sleep(3);
TTS_Speak($TTS_SK1, GetValueString("DAX"));
sleep(4);
TTS_Speak($TTS_SK1, "Das ist eine Veränderung von");
sleep(2);
TTS_Speak($TTS_SK1, GetValueString("DAX_Veraenderung"));
sleep(3);
//Neues von der deutschen Börse
TTS_Speak($TTS_SK1, GetValueString("DAX_1_Gewandelt"));
sleep(2);
TTS_Speak($TTS_SK1, GetValueString("DAX_2_Gewandelt"));
if ($DAX_1_Gewandelt != "Keine Informationen") {sleep(120);}
//Neues von der US Börse
TTS_Speak($TTS_SK1, GetValueString("DOW_1_Gewandelt"));
sleep(2);
TTS_Speak($TTS_SK1, GetValueString("DOW_2_Gewandelt"));
if ($DOW_1_Gewandelt != "Keine Informationen") {sleep(120);}
}
else
{
//kein Wochentag
}
}
else
{
//falsche Zeit
}
warum ertsellst Du nicht erst den kompletten Text und legst ihn in einer Variablen ab?
Bsp.:
$nachricht="Der letzte Schlusstand des deutschen Aktienindex war ".GetValueString("DAX").". ";
$nachricht+="Das ist eine Veränderung von ".GetValueString("DAX_Veraenderung").". ";
...u.s.w....
TTS_Speak($TTS_SK1,$nachricht);
$nachricht="Der letzte Schlusstand des deutschen Aktienindex war ".GetValueString("DAX").". ";
$nachricht.="Das ist eine Veränderung von ".GetValueString("DAX_Veraenderung").". ";
...u.s.w....
TTS_Speak($TTS_SK1,$nachricht);