Hi! I am a newbie using Asterisk. I am developing an IVR using perl from AGI and
Cepstral as voices
The AGI is this
use Asterisk::AGI;
use File::Basename;
use Digest::MD5 qw(md5_hex);
 
 
 $AGI = new Asterisk::AGI;
 %input = $AGI->ReadParse();
 #
$AGI->say_number('9865');
$AGI->say_digits('873746');
 
speak("Hello World....");
 
 
 
sub speak
  {
    $text = $_[0];
 
    my $hash = md5_hex($text);
 
    my $ttsdir = "/var/lib/asterisk/sounds/tts";
    my $cepoptions = "-p audio/sampling-rate=8000,audio/channels=1";
 
    my $wavefile = "$ttsdir/tts-$hash.wav";
 
    unless (-f $wavefile)
      {
        open(fileOUT,
">/var/lib/asterisk/sounds/tts/say-text-$hash.txt");
        print fileOUT "$text";
        close(fileOUT);
 
        my $execf="/opt/swift/bin/swift -f $ttsdir/say-text-$hash.txt -o
$wavefile $cepoptions";
        system($execf);
 
        unlink("$ttsdir/say-text-$hash.txt");
      }
    $filename =
'tts/'.basename('tts/'.basename($wavefile,".wav"));
    $AGI->stream_file($filename);
#  unlink("$wavefile");
This function I took from internet where i found it
My problem is that i cant hear anything when play the file sound using 
$AGI->stream_file($filename);
I put asterisk in verbose mode but just see that it plays the sound but I cant
hear anything.
I thought maybe was the codec but asterisk can play .wav
But this works
$AGI->say_number('9865');
Any help or cluees will be so appreciate~!
Thks!
*-------------------------------------------------------*
*-Edwin Quijada
*-Developer DataBase
*-JQ Microsistemas
*-809-849-8087
* " Si deseas lograr cosas excepcionales debes de hacer cosas fuera de lo
comun"
*-------------------------------------------------------*
_________________________________________________________________
Get your fix of news, sports, entertainment and more on MSN Mobile
http://www.msnmobilefix.com/Default.aspx
Daniel Hazelbaker
2008-Jul-11  15:10 UTC
[asterisk-users] Asterisk cant play sounds from AGI
On Jul 10, 2008, at 7:54 PM, Edwin Quijada wrote:> > Hi! I am a newbie using Asterisk. I am developing an IVR using perl > from AGI and Cepstral as voices > The AGI is this >[snip]> My problem is that i cant hear anything when play the file sound > using $AGI->stream_file($filename); > I put asterisk in verbose mode but just see that it plays the sound > but I cant hear anything. > > I thought maybe was the codec but asterisk can play .wav > But this works > $AGI->say_number('9865');If Asterisk says it is playing the file, then I would suspect the file itself has nothing to say. Try copying the file to your computer and playing it. If it does indeed play locally on your computer with audio, double check to make sure it is in the right format. I use AGI to play files all the time. Actually, I use an AGI script as my whole menu and dialing system to replace having to do it in AEL (so much nicer to add a single MySQL record and suddenly have voicemail and direct dial work instantly). Daniel> *-------------------------------------------------------* > *-Edwin Quijada > *-Developer DataBase > *-JQ Microsistemas > *-809-849-8087 > * " Si deseas lograr cosas excepcionales debes de hacer cosas fuera > de lo comun" > *-------------------------------------------------------*