Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > Delphi программирование > Мультимедиа в Delphi
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 22.02.2011, 12:37   #1
drak2000
Пользователь
 
Регистрация: 10.12.2010
Сообщений: 11
Печаль кто работал с nrComm Lib?

Кто имел дело с этими компонентами, а в особенности с выводом звука в телефон. линию. Отзовитесь. Плз.. Но может мне помогут и на форуме?
Проблема вот в чем. Пойду по очереди. Есть люди, которые должны деньги. Я их выбираю из базы. Т.к. это список не из одного человека, то все делаю в цикле while not EOF... Потом формирую текст "Тра-ля-ля вы должны н-сумму". Сохраняю в wav файл. Потом перевожу модем в голосовой режим. Звонок по номеру должника(метод Call). Далее после набора номера, должен вызываться метод (OnLineConnected), но он не вызывается... Вот в чем проблема. Что и как делаю...
...
var
TSW:TSpFileStream;
WaveFile:string;
// звонок должнику
procedure CallBorg;
begin
Log('Створюємо список абонентів');
try
Log('Начало : %s', [DateToStr(Now)+' '+TimeToStr(Now)]);
CreateDolgList;// создаем список должников
with QDolg do
begin
First;
while not EOF do
begin
// номер телефона
if GetNumber(Fields[1].asString) then // функция проверки № телефона(есть-нету номера)
begin
CreateWav; // создаем wav файл
FrmMain.nrCommTAPI1.Phone:='83p2334 7';
FrmMain.nrCommTAPI1.Voice:=true;
frmmain.nrCommTAPI1.Call;// тут должно перейти в OnLineConnected, а не переходит после набора номера
SysUtils.DeleteFile(WaveFile);
end;
Next;
end;
end;
finally
Log('Конец : %s', [DateToStr(Now)+' '+TimeToStr(Now)]);
end;
end;
// процедура создания wav
procedure CreateWav ;
begin
try
TSW:=TSpFileStream.Create(nil);
TSW.Format.type_:=SAFT8kHz16BitMono ;
if not DirectoryExists(ExtractFilePath(App lication.ExeName)+'Voice') then
CreateDir(ExtractFilePath(Applicati on.ExeName)+'Voice');
TSW.Open(ExtractFilePath(Applicatio n.ExeName)+'Voice\'+QBorg.Fields[0].AsString+'.wav', SSFMcreateForWrite, false);
gpIVTxt.AudioOutputStream:=TSW.Defa ultInterface;
gpIVTxt.Speak(GetBorgText(QDolg), SVSFDefault);
finally
Tsw.Close;
end;
end;
// когда соединились...
procedure TFrmMain.nrCommTAPI1LineConnected(S ender: TObject);
begin
nrWave1.PlayFileName:=WaveFile;
//Sleep(2000);
nrWave1.PlayStart;
end;
drak2000 вне форума Ответить с цитированием
Старый 22.02.2011, 15:03   #2
raxp
Старожил
 
Регистрация: 29.09.2009
Сообщений: 9,713
По умолчанию

другой способ.
Разработки и научно-технические публикации :: Видеоблог :: Твиттер
Radar systems engineer & Software developer of industrial automation
raxp вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
срочно! кто работал с f1book linarka Общие вопросы Delphi 1 11.06.2011 15:31
Кто работал с OpenCV? belomorinka Общие вопросы C/C++ 0 24.07.2010 20:21
Кто работал с DelphiX? selenux Общие вопросы Delphi 0 16.11.2006 15:57