Форум: "Сети";
Текущий архив: 2003.07.28;
Скачать: [xml.tar.bz2];
ВнизПроблема с модемом (определить поднятие трубки) Найти похожие ветки
← →
exciter__ (2003-05-22 14:31) [0]Я пользуюсь компонентами AsyncPro.
Проблема возникла в том, что функция Dial компонента TapiDevice
набирает номер в бэкграунде, затем после того как вызываемый номер поднимет трубку, надо проиграть в линию WAV файл,
но Dial пролетает и в линию еще посылающую вызов, сразу же
проигрывается WAV.
Как определить, подняли ли трубку на другом конце ? Пример
begin
TapiDevice.Dial("335533");
//----- Проблема здесь --------------------
repeat Application.ProcessMessages;
until TapiDevice.TapiState <> tsProceeding;
//-----------------------------------------
TapiDevice.PlayWaveFile(WavEdit.Text);
repeat Application.ProcessMessages;
until TapiDevice.WaveState<>wsPlaying;
ShowMessage("Сделано");
end;
← →
Reindeer Moss Eater (2003-05-22 14:38) [1]TApdTapiDevice.OnTapiConnect
← →
Exciter__ (2003-05-22 14:46) [2]Это всё фигня. Он срабатывает сразу после наборе номера. А надо определить поднятие трубки вызываемого абонента.
← →
Wonder (2003-05-22 14:53) [3]А на каком основании модем будет решать - подняли трубку или нет?
← →
Reindeer Moss Eater (2003-05-22 15:01) [4]Добавь порту дататриггер на строку "VOICE"
← →
Reindeer Moss Eater (2003-05-22 16:09) [5]Похоже что придется начать воспроизведение файла в цикле сразу после OnConnect (у абонента звонит телефон)
В звуковом файле предлагать нажать кнопки, что бы засинхронизироваться со слушающим. Ну и таймаут предусмотреть конечно.
← →
Wonder (2003-05-22 16:26) [6]Чего-то я не совсем понимаю.
На мой взгляд: модему неведомо, поднял ли абонент трубку или нет. Ему известны некие сигналы в линии от АТС.
Так вот, с некой долей вероятности, можно предположить, что труба поднята если:
1. Произошел успешный набор номера
2. Отсутствие сигнала DIALTONE + отсутствие сигнала BUSY + отсутствие сигнала "Вызов абонента" (если модем различает этот тип)
Какое это все связать к AsyncPro и можно ли вообще - понятия не имею.
← →
Verg (2003-05-22 16:51) [7]Многие модемы имеют VAD (Voice Activity Detection). Т.е. после набора номера, если через некоторое время появляется сигнал ответа модема, то он выдает CONNECT....., а если появился сигнал типа "алло", то он выдает VOICE.
Поищи в доке на Async ключевое слово VAD - если найдешь, то копай около него.
← →
Reindeer Moss Eater (2003-05-22 17:21) [8]А если трубу поднял немой?
← →
Дмитрий К.К. (2003-05-23 06:19) [9]А с каких ето пор немые стали подходить к трубе??? Шо они будут с ней делать?
← →
Reindeer Moss Eater (2003-05-23 08:58) [10]Дмитрий К.К. , не стоит напрягаться понять что они будут делать.
Смысл поста был такой: трубу подняли и молчат.
← →
Дмитрий К.К. (2003-05-23 11:48) [11]Ты наверное так и делаешь. Поднимешь трубку и упорно молчишь.
← →
Verg (2003-05-23 12:06) [12]Дмитрий К.К. ©
:-))))))
← →
Reindeer Moss Eater (2003-05-23 13:00) [13]Смысл так и не дошел до него.
Страницы: 1 вся ветка
Форум: "Сети";
Текущий архив: 2003.07.28;
Скачать: [xml.tar.bz2];
Память: 0.47 MB
Время: 0.007 c