Top.Mail.Ru
Мастера DELPHI, Delphi programming community Титульная страница Поиск, карта сайта Написать письмо 
| Новости | Поиск | FAQ | Статьи | Книги | Новости VCL |
| Форумы ЧАТ | Орешник | KOL и MCK |
Форумы -» Основная («Начинающим»)/ Базы / WinAPI / Компоненты / Сети / Media / Игры / Corba и COM / KOL / FreePascal / .Net / Прочее / RSDN.ORG

« предыдущая ветвь | форум | следующая ветвь »

TAPI набор номера, конференция [D7, WinXP]


Страницы:   1 2

Dmitry_177 ©   (2008-05-14 10:27:00) 

У меня почему-то не набирается номер.. Набираю с ноутбука, модем встроенный, т.е. оборудование тоже ничего не меняется.. Однако дома позвонив на какой-то номер все ОК, звонок проходит.. А на работе, городской номер набирается "через девятку", пробовал так: "p9wНОМЕР" - не работает.. Пробовал на внутренний номер позвонить без всяких там девяток, тоже не дозванивается.. Подключаю к этому же проводу вместо ноутбука телефон - все ок, все работает.. вот что может быть? АТС LG LDK-300 Подскажите пожалуйста..

набираю номер функцией lineMakeCall

И еще.. чтобы собрать конференцию, я как понимаю нужно сначала создать вызов, а только потом использовать функцию lineSetupConference прописав в ней хендл созданного вызова? или как?


GanibalLector   (2008-05-16 13:33:00) [1]

Более того, до вызова lineMakeCall или lineDial, ты должен вызвать LineOpen.
Что в ней ?
Показывай весь код


GanibalLector   (2008-05-16 13:25:00) [2]

Хм...а почему собственно lineMakeCall, а не lineDial?
Она как раз делает многоступенчатый набор номера и обычно используется в конференц-связи.

Далее...есть же куча служебных элементов набора. p,t,w,@ и т.д.
Если у тебя АТС, то вероятно , нужно дождаться гудка, а только потом делать набор(w). Или делать паузы в наборе(,)


Dmitry_177   (2008-05-16 11:37:00) [3]


> Поле dwMediaMode  указывает вид вызова. Типа голос,факс
> и прочее.
> И на окно, указанное в [32] это поле не влияет.

хм.. если поставить LINEMEDIAMODE_INTERACTIVEVOICE то это окно какраз и выскакивает..


GanibalLector   (2008-05-16 11:00:00) [4]

2 Dmitry_177   (15.05.08 14:34) [32]

Поле dwMediaMode  указывает вид вызова. Типа голос,факс и прочее.
И на окно, указанное в [32] это поле не влияет.


Dmitry_177   (2008-05-15 14:34:00) [5]

И еще, когда я набираю номер, я не хочу чтобы выскакивало окно дозвона, поэтому я сделал так:
CallParams.dwMediaMode := LINEMEDIAMODE_DATAMODEM;
и после снятия трубки все вроде нормально, все слышно, но почему-то какие-то непонятьные гудки идут... При CallParams.dwMediaMode := LINEMEDIAMODE_INTERACTIVEVOICE; таких гудков нету.. Подскажите еще с этим пожалуйста..


medved_68   (2008-05-15 10:47:00) [6]


> Далеко не для всех АТС он стандартный

Разумеется, но на практике - он либо есть (тогда он обязан соответствовать, и такое наблюдается), либо его попросту нет. :))


Сергей М.   (2008-05-15 10:32:00) [7]


> medved_68 ©   (15.05.08 10:21) [28]


Далеко не для всех АТС он стандартный


Dmitry_177   (2008-05-15 10:27:00) [8]

Что-то всеравно не срабатывает Flash..((

Я и так пробовал:
lineGenerateDigits(call, LINEDIGITMODE_DTMF, '!,,\0', 0);

и так:
lineGenerateDigits(call, LINEDIGITMODE_DTMF, '!', 0);

и так:
var
 buffFlash: array[0..5] of Char;
..
StrPCopy(buffFlash, '!');
lineGenerateDigits(call, LINEDIGITMODE_DTMF, buffFlash, 0);


medved_68   (2008-05-15 10:21:00) [9]


> получить практически нахаляву (не считая расходов на Тырнет-
> трафик) доступ к своей УАТС

Стандартный режим DISA с линии ISDN BRI позволяет легко организовать не только это, но и доступ к режиму программирования АТС, что вполне необходимо для удаленного управления, к примеру, подведомственной АТС в пуле. :)))


medved_68   (2008-05-15 10:02:00) [10]


> Интересно, каким это макаром к ней подключен системный аппарат,
>  если он требует 4-хпроводную схему подключения ..

Сергей М.в данной АТС системник подключается по двухпроводной схеме. Режим работы порта (PULSE, DTMF, DKTU) определяется настройкой порта в АТС.
> Результат нажатия FLASH в обычных (не системных) аппаратах
> - посыл в линию DTMF-кода, соответствующего (!).
Хм...не всегда. Например, нажатие сброса линии - просто разрываетлинию, при этом никакой посылки не будет. Но на АТС при разрыве запускается таймер (время работы программируется) и если линия перейдет в состояние активно до окончания работы таймера - то входящий абонент будет поставлен на удержание. Такая реализация позволяет реализовать режим HOLD на телефонах где нет данной "магической" кнопки. Поэтому по сабжу (конференция по нажатию HOLD) - есть мысль инициировать разрыв линии и повторную активацию. Но опять же по умолчанию настройки таймера LG Nortell 300 - 650 ms по идее - должно хватить. :)))


Dmitry_177   (2008-05-15 09:52:00) [11]

где-то в дебрях интернета нашел вот это:
//issue hook flash
lineGenerateDigits(call, LINEDIGITMODE_DTMF, '!,,\0', 0);

но он что-то не работает.. гудка в линии нету(для набора следующего номера)..

И как потом набирать следующий номер? этой же функцией lineGenerateDigits?


Сергей М.   (2008-05-14 16:11:00) [12]

Кстати по поводу [16] - прелюбопытное плане ПО предлагает компания Teleon в продукте Skype-PSTN/PBX Gateway.

С его помощью суровый шеф может сидя с ноутбуком или коммуникатором/смартфоном  в сортире в любой точке мира, где имеется более-менее сносный доступ в Тырнет, получить практически нахаляву (не считая расходов на Тырнет-трафик) доступ к своей УАТС и устроить, скажем, ту самую конференцию для снятия стружки с подчиненных и просто дабы душу отвести)


Сергей М.   (2008-05-14 16:01:00) [13]


> han_malign ©   (14.05.08 15:45) [23]


> аналоговая линия понимает только DTMF


Кстати да.

Результат нажатия FLASH в обычных (не системных) аппаратах - посыл в линию DTMF-кода, соответствующего ( !).

А реакция на этот посыл определяется текущими настройками АТС.

Например, наша УАТС реагирует на него в зависимости от входящего или исходящего соединения по-разному - либо удерживает линию вх.соединения и позволяет набрать номер для переадресации, либо сбрасывает исх.соединение (эквив-но кратковременному опусканию трубы на аппарат) и инициирует новое исх.соединение (зуммер ГС)


han_malign   (2008-05-14 15:45:00) [14]

lineGenerateDigits
The exclamation (!) is a valid character. This character causes a "hookflash" operation, as described for dialable addresses.

Как только ты сделал lineMakeCall, про любые другие функции, кроме lineGenerateDigits/lineGenerateTone - забудь - аналоговая линия понимает только DTMF...
Все конференции/консультационные звонки/удержания/и т.д. - происходят в контексте одного вызова(call), по одному голосовому каналу - коммутация многих к одному целиком делается на станции...


Сергей М.   (2008-05-14 15:09:00) [15]


> Dmitry_177   (14.05.08 14:45) [20]


Посмотри вот это

http://www.3com.com/solutions/forms/us/spp_agreement/TAPI_Developers_Guide.pdf
http://www.e-tel.ru/~p_punks/pctel_commands.html


Сергей М.   (2008-05-14 15:05:00) [16]


> с аналового


Они всецифровые.

Какая м.б. FLASH на аналоговом аппарате)..

Если я не ошибаюсь, нажание FLASH на стандартных современных аппаратах эквивалентно опусканию трубки на 0,5 сек и последующее ее поднятие на допотопных аналоговых аппаратах.

Конкретная программируемая УАТС будет реагировать на это событие так как ее запрограммировали. В твоем случае это удержание текущего соединение и переключение в режим набора номера для вызова других абонентов с целью организации конфы.

Т.е. тебе следует сосредоточиться на TAPI-программировании модема в части реализации описанной выше FLASH-логики.


Dmitry_177   (2008-05-14 14:45:00) [17]

Я как понимаю это перевод вызова.. попробовал сделать так:

var
 line: THLine;
 call: THCall;
 callParams: TlineCallParams;

 buffPhone: array[0..30] of Char;
 buff2Phone: array[0..30] of Char;

begin
 StrPCopy(buffPhone, Edit1.Text);
 StrPCopy(buff2Phone, Edit2.Text);

 CallParams.dwMediaMode := LINEMEDIAMODE_DATAMODEM;

 lineMakeCall(line, call, buffPhone, 0, @callParams);

 lineRedirect(call, buff2Phone, 0);

..


и не работает.. набирается только первый номер и все.. пробовал еще перед функцией lineRedirect использовать функцию lineHold, тоже не дало результатов..


Dmitry_177   (2008-05-14 14:25:00) [18]


> > АТС позволяет с аналового номера собирать такие конференции
>
> > используя "FLASH"
>
>
> С любого или только с системного аппарата ?

с аналового.. пробовал, все собирается ))


> > непонятно как в TAPI это реализовать
>
>
> А док-ция на АТС имеется ?

нету, а в интернете что-то ненайду.. даже незнаю как и искать.. ввожу: "tapi flash" и находит ерунду одну..


Сергей М.   (2008-05-14 14:17:00) [19]


> у меня рабочий ноутбук, а не обычный комп


Так дело-то, насколько я понимаю, не в "носимости" рабочей станции, а в сопряжении ее онборд-модема с АУ-интерфейсом твоей офисной АТС..


> автоматически


Теперь понятно. Т.е. совершенно непринципиально, ноутбук там у тебя или не ноутбук .. Всуе, в общем, ты его упомянул) ..


> АТС позволяет с аналового номера собирать такие конференции
> используя "FLASH"


С любого или только с системного аппарата ?


> непонятно как в TAPI это реализовать


А док-ция на АТС имеется ?


Dmitry_177   (2008-05-14 14:10:00) [20]


> А почему с ноутбука ?
> Чтобы его по офису туда-сюда таскать ?

потому что у меня рабочий ноутбук, а не обычный комп..


> Тогда непонятно, нафих в офисе стационарные системные аппараты
> имеются, если они делают тоже самое и при этом не требуют
> ни какого программописательства ..

можно-то можно.. но ведь намного проще собирать из автоматически.. нажал кнопочку и пошел обзвон.. потом можно доработать - если связь разорвалась, то заново набрать номер..

в принципе вот что я и хочу... АТС позволяет с аналового номера собирать такие конференции используя "FLASH".. Только вот непонятно как в TAPI это реализовать..


Страницы:   1 2

Наверх

Титульная страница Поиск, карта сайта Написать письмо