|
Автоинформатор (автопрозвонка) с помощью голосового модема ZyXel
|
|||
---|---|---|---|
#18+
Всем доброго времени суток. У меня следующая ситуация: имеется голосовой модем ZyXel и необходимо оповещать абонентов о какой-либо информации. Я так полагаю нужно записать то что нужно в формате WAV. Это я сделал. Написал часть проги для вызова абонента, звонок у меня проходит. теперь не знаю как в проге написать, что как абонент поднимет трубку ему проиграется мелодия WAV. А когда проиграет сформирует сигнал занято. Может кто занимался покажет исходник, желательно с пояснениями... Может еще какое-н. НОУ ХАУ подскажите Заранее благодарен... Вот часть моей проги: Sub send_call() Dim comm As New MSComm ' в референсах подключить mscomm32.ocx If comm.PortOpen = False Then comm.CommPort = 1 ' номер порта к которому подключен модем comm.Settings = "9600,N,8,1" comm.Handshaking = comNone comm.InputLen = 0 comm.InBufferSize = 40 comm.OutBufferSize = 40 comm.RThreshold = 0 comm.PortOpen = True End If comm.Output = "ATD552208" & vbCrLf End Sub ... |
|||
:
Нравится:
Не нравится:
|
|||
06.06.2012, 21:17 |
|
Автоинформатор (автопрозвонка) с помощью голосового модема ZyXel
|
|||
---|---|---|---|
#18+
Техник55, Техник55имеется голосовой модем ZyXel Я так полагаю нужно записать то что нужно в формате WAV. Ну, полагаешь правильно. Техник55теперь не знаю как в проге написать, что как абонент поднимет трубку ему проиграется мелодия WAV. А когда проиграет сформирует сигнал занято. Может кто занимался покажет исходник, 1. Мысль # раз. VentaFax уже давно написали. Даже не запуская оболочки то что тебе надо делается из командной строки: Код: vbnet 1.
В папке обычно C:\Program Files\Venta\VentaFax & Voice 5\Service ждешь появления файла журнала, называется logbook.vlg Как он появился, значит задание выполнено, можешь его прочитать (байтовую структуру одной записи изучить несложно), сохранить инфо в своем логе, а можешь вообще не читать удалить перейти к следующему "заданию". Цикл написать сможешь, в принципе это можно и без vb двумя bat-файлами сделать (но с vb проще). 2. Мысль # два (если мысль # раз не навела на мысль бросить нудное занятие и воспользоваться готовым решением). >не знаю как в проге написать Тебе нужно понимать какие at-команды посылать, понимать/принимать и т.д. В VentaFax есть такая штука как лог, который все эти команды тебе конкретно с твоим модемом отобразит при выполнении желаемых действий. Делаешь по образу и подобию. 3. Мысль # три. Судя по многообещающему началу кода, принимать отклики от модема в буфер и оттуда их читать пока не умеешь. Ищешь где-то недавно тему про СМС-ы с мобильником, там я выложил аж целый project и думаю ссылка еще работает. Тебе от туда нужно понять как считывать из буфера те ответы, которые модем дает на твои at-команды. Но скажу так, еще надо изучать как посылать/принимать voice data пакеты и т.п., лог венты тебе в этом не поможет, надо читать теории. Пример подобных простынь (недавно закончил писанину, правда речь идет о CAPI 2.0 и мне надо делать на C++ для интеграции в телефонную систему) можешь глянуть здесь: Как заполнить структуру по одному байту? И ответь себе на вопрос. Оно тебе надо? ... |
|||
:
Нравится:
Не нравится:
|
|||
07.06.2012, 04:01 |
|
Автоинформатор (автопрозвонка) с помощью голосового модема ZyXel
|
|||
---|---|---|---|
#18+
Дмитрий77Техник55, Техник55имеется голосовой модем ZyXel Я так полагаю нужно записать то что нужно в формате WAV. Ну, полагаешь правильно. Техник55теперь не знаю как в проге написать, что как абонент поднимет трубку ему проиграется мелодия WAV. А когда проиграет сформирует сигнал занято. Может кто занимался покажет исходник, 1. Мысль # раз. VentaFax уже давно написали. Даже не запуская оболочки то что тебе надо делается из командной строки: Код: vbnet 1.
В папке обычно C:\Program Files\Venta\VentaFax & Voice 5\Service ждешь появления файла журнала, называется logbook.vlg Как он появился, значит задание выполнено, можешь его прочитать (байтовую структуру одной записи изучить несложно), сохранить инфо в своем логе, а можешь вообще не читать удалить перейти к следующему "заданию". Цикл написать сможешь, в принципе это можно и без vb двумя bat-файлами сделать (но с vb проще). 2. Мысль # два (если мысль # раз не навела на мысль бросить нудное занятие и воспользоваться готовым решением). >не знаю как в проге написать Тебе нужно понимать какие at-команды посылать, понимать/принимать и т.д. В VentaFax есть такая штука как лог, который все эти команды тебе конкретно с твоим модемом отобразит при выполнении желаемых действий. Делаешь по образу и подобию. 3. Мысль # три. Судя по многообещающему началу кода, принимать отклики от модема в буфер и оттуда их читать пока не умеешь. Ищешь где-то недавно тему про СМС-ы с мобильником, там я выложил аж целый project и думаю ссылка еще работает. Тебе от туда нужно понять как считывать из буфера те ответы, которые модем дает на твои at-команды. Но скажу так, еще надо изучать как посылать/принимать voice data пакеты и т.п., лог венты тебе в этом не поможет, надо читать теории. Пример подобных простынь (недавно закончил писанину, правда речь идет о CAPI 2.0 и мне надо делать на C++ для интеграции в телефонную систему) можешь глянуть здесь: Как заполнить структуру по одному байту? И ответь себе на вопрос. Оно тебе надо? ... |
|||
:
Нравится:
Не нравится:
|
|||
07.06.2012, 06:51 |
|
Автоинформатор (автопрозвонка) с помощью голосового модема ZyXel
|
|||
---|---|---|---|
#18+
Спасибо, что откликнулись. Жаль что еще никто это в VB не писал... По поводу: 1) мысли раз честно ничего не понял. 2) Мысли два: она мне ближе, прогу скачал VentaFax, надеюсь с ней не трудно работать. Буду логи смотреть... 3) мысли три: да тот кусок у меня еще остался с проги кот. я для смс писал для GSM модема (у меня ZTE билайн), она в принципе работает, только бывает смс то уйдет, то нет, хотя должна при аварии. Может что-то с буферами или чем напартачил. ну да ладно, щас все мысли направлены на голосовой модем. Правда дома его нет, только на работе и VentaFax опробывать не могу, конечно можно и для ZTE MF180 попробывать ту же идею, потом провести аналогию. Но чтобы сделать его голосовым надо опять же прошить, что-то не хочется разбираться!!! ... |
|||
:
Нравится:
Не нравится:
|
|||
07.06.2012, 07:12 |
|
Автоинформатор (автопрозвонка) с помощью голосового модема ZyXel
|
|||
---|---|---|---|
#18+
Техник55прогу скачал VentaFax 1) мысли раз честно ничего не понял. А что тут понимать. Настраиваешь венту со своим голосовым модемом, в главном окне есть кнопка Send (Передать), выбираешь звуковой файл wav, забиваешь номер, нажимаешь "Передать с набором номера", убеждаешься, что она набирает номер, воспроизводит файл и вешает трубку. Потом тоже самое делаешь из командной строки, которую я тебе написал. Она запустит драйвер, наберет номер 84951234567, и проиграет файл C:\111\mat.wav, потом положит трубку. Потом пишешь программу которая по циклу запускает эту командную строку (можно через Shell) с разными номерами (и файлами если надо). Появление заранее убитого файла журнала logbook.vlg означает, что Venta задание выполнила и можно запускать новую команду. А, ну да, в новых версиях папка service где этот файл лежит находится не в ProgramFiles а в ProgramData, думаю найдешь. Отслеживать можешь по таймеру или через цикл с DoEvent. >все мысли направлены на голосовой модем. >Правда дома его нет, только на работе и я б на твоем месте его купил (можно за счет начальства), цена разработки такой программы существенно превышает 3000 что стоит этот модем. (думаю этот модем даже меньше счас стоит, можешь DLink PCI за $10 купить - но Voice Command Set там другая, имей ввиду) > VentaFax опробывать не могу Триал версию имеешь право поставить. А другой и не надо, там триал бесконечно работает. Даже шапку на факсах не ставит, если из командной строки отсылать. ... |
|||
:
Нравится:
Не нравится:
|
|||
07.06.2012, 16:36 |
|
Автоинформатор (автопрозвонка) с помощью голосового модема ZyXel
|
|||
---|---|---|---|
#18+
Дмитрий77, запустил на работе VentaFax. Все работет, голосовое сообщение передает. Что то не могу логи найти, чтобы посмотреть АТ команды. Не подскажешь??? Вроде захожу в С/Program files/Venta и т д. Там куча файликов но логов вроде нет. Я так понимаю они должны быть в блокноте ну или в другом текством редакторе???? ... |
|||
:
Нравится:
Не нравится:
|
|||
08.06.2012, 11:14 |
|
Автоинформатор (автопрозвонка) с помощью голосового модема ZyXel
|
|||
---|---|---|---|
#18+
Все логи нашел. не там искал. Буду разбираться. а АТ команды там в явном виде. или как зашифрованы??? ... |
|||
:
Нравится:
Не нравится:
|
|||
08.06.2012, 11:31 |
|
Автоинформатор (автопрозвонка) с помощью голосового модема ZyXel
|
|||
---|---|---|---|
#18+
Техник55, Логи 1) можно сохранять в txt (в настройках смотри), видимо то что нашел. 2) есть кнопка в "драйвере" (тот что связан с иконкой) vfdrv32.exe , чтоб смотреть их в окошке "он-лайн". >АТ команды там в явном виде. или как зашифрованы??? AT-команды в явном виде, а вот как ты voice-data, по сколько байт, по каким алгоритмам и т.п. будешь посылать, это надо документейшн искать и читать. Этого лог тебе не скажет. ... |
|||
:
Нравится:
Не нравится:
|
|||
08.06.2012, 12:18 |
|
Автоинформатор (автопрозвонка) с помощью голосового модема ZyXel
|
|||
---|---|---|---|
#18+
Дмитрий77, лог Comand. пишет мне следующее в файле: 08.06.2012 11:36:34 2200 Received message Wm_user+10. LParam=1, WParam=8 и так после каждого звонка и посылки абоненту мелодии... Мало что из этого понятно??? Если я вас правильно понял, то чтобы написать прогу в VB6, нужно узнать не только АТ команды, а также заполнения байтов для отправки голоса??? Да... с заполнениями байтов я еще не занимался, я думал примерно также как при отправки смс, знать команды и все... ... |
|||
:
Нравится:
Не нравится:
|
|||
08.06.2012, 13:03 |
|
Автоинформатор (автопрозвонка) с помощью голосового модема ZyXel
|
|||
---|---|---|---|
#18+
Вы имеете ввиду, что он-лайн команды на самом изображении телефона(макете), в маленьком окошечке синем (или отдельно что-то запускать надо). Если они то, я в принципе видел их, но там была одна или пару АТ команд и они быстро исчезали, что особо не посмотрешь и назад не отматаешь. ... |
|||
:
Нравится:
Не нравится:
|
|||
08.06.2012, 13:49 |
|
Автоинформатор (автопрозвонка) с помощью голосового модема ZyXel
|
|||
---|---|---|---|
#18+
То есть включить логирование команд модема сложно? Туда ведь будут сброшены именно AT-команды... ... |
|||
:
Нравится:
Не нравится:
|
|||
08.06.2012, 23:45 |
|
Автоинформатор (автопрозвонка) с помощью голосового модема ZyXel
|
|||
---|---|---|---|
#18+
Техник55Вы имеете ввиду, (или отдельно что-то запускать надо). В трее есть иконка, у ней есть меню, в меню есть пункт VentaEngine. Открывается маленькое такое приложение - VentaEngine. По сути это "ядро" венты (а не картина Репина с изображением факса с синим окошечком про что вы говорили). В VentaEngine есть кнопочка "Отладочное окно" (нарисован лист бумаги и рука с пальцем). Нажимаете, открывается VentaEngine Debug окошко, куда она пишет лог в реальном времени. Это тот же лог, что потом будет в текстовухе, но для подобных анализов иногда полезно в реале смотреть чего пишет в лог. ... |
|||
:
Нравится:
Не нравится:
|
|||
09.06.2012, 01:51 |
|
Автоинформатор (автопрозвонка) с помощью голосового модема ZyXel
|
|||
---|---|---|---|
#18+
AndreTM, вы сказали включить логирование АТ команд? а где эту галочку поставить? ... |
|||
:
Нравится:
Не нравится:
|
|||
09.06.2012, 13:04 |
|
Автоинформатор (автопрозвонка) с помощью голосового модема ZyXel
|
|||
---|---|---|---|
#18+
Дмитрий77, прийду на работу обязательно попробую... ... |
|||
:
Нравится:
Не нравится:
|
|||
09.06.2012, 13:05 |
|
Автоинформатор (автопрозвонка) с помощью голосового модема ZyXel
|
|||
---|---|---|---|
#18+
Техник55AndreTM, вы сказали включить логирование АТ команд? а где эту галочку поставить?В свойствах модема на вкладке Диагностика есть галочка "Добавить в журнал". После этого в каталоге ОС должен появиться файл вроде автор modem.log , куда будет сбрасываться обмен с модемом. ... |
|||
:
Нравится:
Не нравится:
|
|||
09.06.2012, 14:15 |
|
Автоинформатор (автопрозвонка) с помощью голосового модема ZyXel
|
|||
---|---|---|---|
#18+
Дмитрий77, спасибо за подсказку. Теперь в VentaEngie вижу он-лайн все АТ команды. Помимо АТ команд кот мы посылаем, к примеру: > ATQ0V1E0&D2X4S0=0 и принимаем: < ОК Там еще идут какие-то команды типа: # Modem Voice Format: ZYXEL ADPCM 3bit или: # "C\........\admin\рабочий стол\Оповещение.wav" is transmiting С АТ командами все понятно посылаем и принимает ответы от модема, а после решетки что идет совсем не понятно. Я так полагаю, что это какие-то манипуляции внутренние VentaFax и ОС, но никак не обращение к модему!!!???? может ошибаюсь... Я решил переписать все АТ команды с VentaEngie и попробывать их отсылать в Гипертерминале. Отсылал, отсылал пока не дошел до команды АТ+VRX, после нее у меня экран сменился на черно-белый и по нему побежали КРАКОЗЯБРЫ какие-то и в конце их ответ на экране: VCON. Что это значит не знаю, звонок конечно до абонента дошел, но в трубке тишина.......... ... |
|||
:
Нравится:
Не нравится:
|
|||
09.06.2012, 18:38 |
|
Автоинформатор (автопрозвонка) с помощью голосового модема ZyXel
|
|||
---|---|---|---|
#18+
Техник55, Ну, # это думаю просто словестный комментарий что она делает. >АТ+VRX >побежали КРАКОЗЯБРЫ какие-то и в конце их ответ на экране: VCON. >Что это значит не знаю, звонок конечно до абонента дошел, но в трубке тишина ну, "голосовые данные" наверно побежали я ж тебе сказал, что просто не будет тебе надо знать как эти данные кодировать/декодировать, отправлять/принимать для этого надо читать документацию, искать примеры, писать большую нудную простыню кода, при этом на пальцах понимая что ты делаешь. Ты упертый, хочешь написать венту заново на раз-два, я тебе привел единственную строчку (командную строку отправки wav файла вента-драйвером на заданный номер), которая ляжет в основу твоей проги + алгоритм + цикл. Но ты не послушался и хочешь все сделать сам на низком уровне. Я не знаю, как кодировать/декодировать, отправлять/принимать голосовые данные для голосового модема. Я стараюсь не тратить время на то что можно "свистнуть" большим полезным и функциональным блоком (написать который у меня мозгов никогда не хватит). ... |
|||
:
Нравится:
Не нравится:
|
|||
09.06.2012, 20:12 |
|
Автоинформатор (автопрозвонка) с помощью голосового модема ZyXel
|
|||
---|---|---|---|
#18+
Ты возможно скажешь: как так? Взять чужое. Не, я честный, напишу сам. Дык вот, рассказываю конкретно про венту. Venta - отличная программа. Разрабатывалась с конца 80-х. Но. Они сейчас выпустили 7-ю версию с поддержкой VOIP. VOIP этот полностью ворованный, а не их. Назвать имена проектов? По именам. 3 основных: OpalVoip T38modem Spandsp + всякие libtiff, libssl и т.п. которые используются в этих 3-х основных. Каждый из проектов разрабатывался лет по 20 и не одним человеком. При этом упомянания о всевозможных GPL лицензиях на сайте www.ventafax.ru , равно как и исходные коды отсутствуют. И я вот думаю. Как такая солидная (ну, я так считал) фирма могла на такое пойти?... Буржуйскую версию они выпустить не рискнули. ... |
|||
:
Нравится:
Не нравится:
|
|||
09.06.2012, 20:36 |
|
Автоинформатор (автопрозвонка) с помощью голосового модема ZyXel
|
|||
---|---|---|---|
#18+
Дмитрий77, да что-то тяжко, надо использовать мысль раз: как я понял, пишу код для условия, как только оно сработало вызываю строку C:\Progra~1\Venta\VentaF~1\vfdrv32.exe /h /t:2208 C:\111\mat.wav Далее с помощью DoEvent отслеживаю когда закончится проигрываться мелодия по номеру 2208 и снова вызываю эту строку по другому уже номеру C:\Progra~1\Venta\VentaF~1\vfdrv32.exe /h /t: 2210 C:\111\mat.wav и т д Я правильно понял? Подскажите сразу чтобы не рыться какой командой вызвать строку можно? ... |
|||
:
Нравится:
Не нравится:
|
|||
09.06.2012, 22:35 |
|
Автоинформатор (автопрозвонка) с помощью голосового модема ZyXel
|
|||
---|---|---|---|
#18+
И еще вопрос я скачал VentaFax незарегистрированную версию. через месяц срок истечет. Т.е. начальству прийдется раскашелится, или ключи можно и так найти???? Модератор: грозит пальцем - обсуждение этого запрещено правилами форума ... |
|||
:
Нравится:
Не нравится:
|
|||
09.06.2012, 22:43 |
|
Автоинформатор (автопрозвонка) с помощью голосового модема ZyXel
|
|||
---|---|---|---|
#18+
Техник55Дмитрий77, да что-то тяжко, надо использовать мысль раз: Эта мысль правильная. Но видимо пока сам головой 10 раз об стенку не стукнешь, не поверишь что это больно. Техник55Я правильно понял? Да, правильно. Я тебе алгоритм в первом же посте в 3-х строчках выложил. Техник55Далее с помощью DoEvent отслеживаю когда закончится проигрываться мелодия по номеру 2208 Да, отслеживаешь тупо появление файла журнала logbook.vlg Техник55какой командой вызвать строку можно? функцией Shell() МодераторМодератор: грозит пальцем - обсуждение этого запрещено правилами форума Shocker, я все понимаю, без обид, но я никак не могу призывать человека покупать программу у людей, которые влегкую украли 3 проекта с мировым именем. Надеюсь пост выше ты прочитал. Или предлагаешь еще за вот это денег платить? Поэтому я ему отвечу. Техник55через месяц срок истечет. Не истечет, она будет работать точно также, там триал бесконечный. Ограничение: шапка на факсах, но при запуске драйвера из командной строки без оболочки даже она не пишется. Да тебе это и не важно. Еще ограничение на время записи автоответчика 15 сек, но тебе это не надо. Еще ограничение на количество записей в собственной рассылке, но если делать как я сказал, к вопросу не относится. ... |
|||
:
Нравится:
Не нравится:
|
|||
10.06.2012, 00:49 |
|
Автоинформатор (автопрозвонка) с помощью голосового модема ZyXel
|
|||
---|---|---|---|
#18+
я попробовал через Shell Sub send_call call Shell ("C:\Progra~1\Venta\VentaF~1\vfdrv32.exe /h /t: 2208 C:\adam.wav") End Sub В чем-то загвозка? вроде обращение к Venta идет, видно что мелодия проигрывается (я имею ввиду отчет времени мелодии), написано что передача голосового сообщения. Модем даже щелкает, загорается TX. Но набора на 2208 нет???!!!! В ручном режиме все нормально Venta отправляет и набирает 2208. и в журнале все появляется lookbook. Может командная строка не до конца правильная???? ... |
|||
:
Нравится:
Не нравится:
|
|||
10.06.2012, 01:08 |
|
Автоинформатор (автопрозвонка) с помощью голосового модема ZyXel
|
|||
---|---|---|---|
#18+
Техник55/t: 2208 Но набора на 2208 нет???!!!! Пробел убери. ... |
|||
:
Нравится:
Не нравится:
|
|||
10.06.2012, 01:29 |
|
Автоинформатор (автопрозвонка) с помощью голосового модема ZyXel
|
|||
---|---|---|---|
#18+
Техник55, И код оформляй, как положено, тебе замечание сделали уже. Есть кнопка SRC -> vba. Ты и пробел поставил от невнимательности и от неаккуратности. А собирался голосовые пакеты кодировать. Ошибка в одном байте - пизкирдык голосу. ... |
|||
:
Нравится:
Не нравится:
|
|||
10.06.2012, 01:46 |
|
Автоинформатор (автопрозвонка) с помощью голосового модема ZyXel
|
|||
---|---|---|---|
#18+
Дмитрий77, ну спасибо пошло. А чтобы отследить законченное событие нужно снова обращаться к logbook.vlg. и как только там появилась запись, то начинать новое... т.е. уже обращение к строчке в logbook.vlg??? ... |
|||
:
Нравится:
Не нравится:
|
|||
10.06.2012, 01:47 |
|
|
start [/forum/topic.php?fid=60&msg=37830677&tid=2157692]: |
0ms |
get settings: |
18ms |
get forum list: |
14ms |
check forum access: |
4ms |
check topic access: |
4ms |
track hit: |
33ms |
get topic data: |
10ms |
get forum data: |
2ms |
get page messages: |
61ms |
get tp. blocked users: |
1ms |
others: | 17ms |
total: | 164ms |
0 / 0 |