Главная страница
    Top.Mail.Ru    Яндекс.Метрика
Форум: "Сети";
Текущий архив: 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.005 c
4-91948
МДа..
2003-05-24 16:21
2003.07.28
Z Order & WS_EX_TOOLWINDOW


3-91665
АТ
2003-07-04 15:47
2003.07.28
Надо сравнить в таблице значения типа Date...


4-91949
Mr. API
2003-05-23 07:34
2003.07.28
ListView на WinAPI


7-91930
iliann
2003-05-16 22:50
2003.07.28
мышь


3-91666
Солер
2003-07-05 10:39
2003.07.28
Как посчитать сумму в столбце?





Afrikaans Albanian Arabic Armenian Azerbaijani Basque Belarusian Bulgarian Catalan Chinese (Simplified) Chinese (Traditional) Croatian Czech Danish Dutch English Estonian Filipino Finnish French
Galician Georgian German Greek Haitian Creole Hebrew Hindi Hungarian Icelandic Indonesian Irish Italian Japanese Korean Latvian Lithuanian Macedonian Malay Maltese Norwegian
Persian Polish Portuguese Romanian Russian Serbian Slovak Slovenian Spanish Swahili Swedish Thai Turkish Ukrainian Urdu Vietnamese Welsh Yiddish Bengali Bosnian
Cebuano Esperanto Gujarati Hausa Hmong Igbo Javanese Kannada Khmer Lao Latin Maori Marathi Mongolian Nepali Punjabi Somali Tamil Telugu Yoruba
Zulu
Английский Французский Немецкий Итальянский Португальский Русский Испанский