[asterisk-users] WAIT FOR DIGIT not working

Joel Lansden Joel at digitalparadise.net
Thu Sep 14 08:20:54 MST 2006


Hello all,

I have been trying to solve this problem for days, with no luck.

When I run an AGI script from my extensions.conf, it seems no matter what I do, the "WAIT FOR DIGIT" command will not work.  The system just flies past it without waiting a single millisecond, and of course my script crashes because it doesn't have the input it needs.  I have run 3 different versions of Asterisk in the hopes of clearing this up, and presently am on 1.2.12.1.

My script is simple:
------------------------------------------------------------------------

#!/usr/bin/perl

use POSIX;

$| = 1;

sub trim {
        my @out = @_;
        for (@out)
        {
               s/^\s+//;
               s/\s+$//;
        }
        return wantarray ? @out : $out[0];
}

while(<STDIN>) {
        chomp;
        last unless length($_);
        if (/^agi_(\w+)\:\s+(.*)$/) {
                $AGI{$1} = $2;
        }
}

print "EXEC Ringing\n";
print "EXEC Wait 1\n";
print "EXEC Answer\n";
print "EXEC Festival 'Please enter the extension you want to call'\n";
$target = "";

print "WAIT FOR DIGIT 5000\n";
$target .= <STDIN>;
print "WAIT FOR DIGIT 5000\n";
$target .= <STDIN>; 
print "WAIT FOR DIGIT 5000\n";
$target .= <STDIN>;

print STDERR "Result was $target\n";
------------------------------------------------------------------------

That's all there is to it, but it won't work.

Can anyone help?
Thanks!!!

~Joel

-------------- next part --------------
An HTML attachment was scrubbed...
URL: http://lists.digium.com/pipermail/asterisk-users/attachments/20060914/4d26c93a/attachment.htm


More information about the asterisk-users mailing list