Вот. Имелся в наличии телефон Sony Erricson T630. Кабеля к нему не было, зато был Блутус-адаптер. Вот на хитром свойстве этого адаптера и построен весь шлюз.
Во-первых, если у вас шнурок вставляется в СОМ-порт, забудьте о шлюзе. ИМХО 115200, а это максимальная скорость стандартного СОМ-порта маловата для передачи голоса. Так вот, еще работая под виндой, я заметил у телефона интересную особенность. Если соединить по БлуТусу телефон и ПК, на телефоне загоралась иконка "хэндс-фри" и весь звук шел через колонки ПК, и я мог разговаривать по телефону через микрофон. И это - без установки дополнительных дров, без ничего..
После настройки Линукса на использование Блутус (в инете море статей на эту тему), я перенаправил на сервере (на котором звук не используется) /dev/mixer (т.е. уже готовый звук в свою программу. Задача программы была элементарная. Она в реальном времени сканировала звуковой поток на тональные сигналы (когда вы нажимаете клавишу во время разговора, микрофон на секунду выключается и посылается тональный сигнал известной частоты, поэтому определить его не составляет большого труда). Когда программа слышала знак "#" она заканчивала считывание и передавала полученную строку как номер на голосовой модем. У модема выход для наушников и вход для микрофона были подключены в звуковуху. Нажатие "*" на телефоне прекращало вызов.
Т.е. как это все работало:
- я дозванивался на свой "шлюз"
- набирал номер (к примеру) 779-77-43
- нажимал #
- в это время начинался прозвон этого номера и я слышал как голосовой модем набирает номер, удалось ли соединение и т.п.
- окончив разговор я нажимал "*", что давало голосовому модему команду повесить трубку
- если нужно было позвонить еще куда-то повторял все действия
- вешал трубку
Из возникших проблем:
- долго парился завставить комп посылать сотовому команду "снять трубку"
- еще дольше парился с написанием проги обработки звука "на лету"
Недостатки:
- скорее всего работает только с БлуТус телефонами, которые стоят недешево, т.к.
программ, способных передавать голос по ЮСБ-кабелю я еще не встречал (правда не сильно и искал)
- на машине выступающей шлюзом приходится жертвовать звуком
. Т.е. музыку на ней уже не послушаешь. У меня стоял сервер, так что это было не проблемой