Страница 5 из 5
Re: Проблема с ExternalIVR()
Добавлено: 06 апр 2011, 10:20
bartram
Почему не существующую? Есть вполне конкретная задача, неоднократно описанная в пределах этого топика, явного решения "в лоб" я не нашел. Функций внутри agi я тоже не нашел, напрашивается вывод: найти решение в какой-то степени решающее эту задачу. Оно конечно не идеальное, но другого выхода я не вижу.
Re: Проблема с ExternalIVR()
Добавлено: 06 апр 2011, 10:56
bartram
Такое требование заказчика. Он хочет чтобы воспроизведение не прекращалось пока абонент нажимает кнопки.
Re: Проблема с ExternalIVR()
Добавлено: 06 апр 2011, 10:58
ded
Он объяснил: "Чтобы у человека были все возможности"
Думаю, что он просто идёт на поводу тупоголового начальства, которое по постановке задачи думает, что оно умнее всех умней.
Типа - "сделать так, как я сказал, и точка!"
Re: Проблема с ExternalIVR()
Добавлено: 06 апр 2011, 11:24
pan-user
gosha писал(а):
сделать промпты в виде MOH, включить этот MOH и собрать символы пока оно играет ?
Код: Выделить всё
#!/usr/bin/perl
use Asterisk::AGI;
use strict;
my $AGI = new Asterisk::AGI;
my %input = $AGI->ReadParse();
$AGI->answer();
$AGI->set_music('on');
my $result = '';
my $timeout = 600;
my $start_time = time;
while ( 1 ) {
my $ch = $AGI->wait_for_digit( $timeout * 1000 );
if ( $ch <= 0 ) {
last;
} else {
$ch = chr($ch);
if ( $ch eq '#' ) {
last;
} else {
$result .= $ch;
}
}
$AGI->verbose( "Result: $result" );
last if time - $start_time > $timeout;
}
$AGI->set_music('off');
$AGI->say_digits($result);
засада только с повторным использованием
а че ни каких ключиков нету чтобы MOH каждый раз заново играл ?
Re: Проблема с ExternalIVR()
Добавлено: 12 апр 2011, 15:07
Obi Van
ded
Совершенно точно!
Завтра начальство захочет чтобы по заданию в кроне, в кофе-машину забрасывалось кофе, далее скриптом генерился ринг-файл, который говорил секретарю, что кофе дескать готов, извольте нести.
ИМХО замороченая задача, поскольку уже в первом приближении трудно реализуема, либо порождает кучу костылей.