powered by simpleCommunicator - 2.0.53     © 2025 Programmizd 02
Форумы / Visual Basic [игнор отключен] [закрыт для гостей] / Автоинформатор (автопрозвонка) с помощью голосового модема ZyXel
34 сообщений из 34, показаны все 2 страниц
Автоинформатор (автопрозвонка) с помощью голосового модема ZyXel
    #37828444
Техник55
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Всем доброго времени суток.
У меня следующая ситуация: имеется голосовой модем 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
...
Рейтинг: 0 / 0
Автоинформатор (автопрозвонка) с помощью голосового модема ZyXel
    #37828700
Дмитрий77
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Техник55,

Техник55имеется голосовой модем ZyXel
Я так полагаю нужно записать то что нужно в формате WAV.
Ну, полагаешь правильно.
Техник55теперь не знаю как в проге написать, что как абонент поднимет трубку ему проиграется мелодия WAV. А когда проиграет сформирует сигнал занято.
Может кто занимался покажет исходник,
1. Мысль # раз.
VentaFax уже давно написали.
Даже не запуская оболочки то что тебе надо делается из командной строки:
Код: vbnet
1.
C:\Progra~1\Venta\VentaF~1\vfdrv32.exe /h /t:84951234567 C:\111\mat.wav


В папке обычно
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++ для интеграции в телефонную систему) можешь глянуть здесь:
Как заполнить структуру по одному байту?
И ответь себе на вопрос. Оно тебе надо?
...
Рейтинг: 0 / 0
Автоинформатор (автопрозвонка) с помощью голосового модема ZyXel
    #37828723
Техник55
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Дмитрий77Техник55,

Техник55имеется голосовой модем ZyXel
Я так полагаю нужно записать то что нужно в формате WAV.
Ну, полагаешь правильно.
Техник55теперь не знаю как в проге написать, что как абонент поднимет трубку ему проиграется мелодия WAV. А когда проиграет сформирует сигнал занято.
Может кто занимался покажет исходник,
1. Мысль # раз.
VentaFax уже давно написали.
Даже не запуская оболочки то что тебе надо делается из командной строки:
Код: vbnet
1.
C:\Progra~1\Venta\VentaF~1\vfdrv32.exe /h /t:84951234567 C:\111\mat.wav


В папке обычно
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++ для интеграции в телефонную систему) можешь глянуть здесь:
Как заполнить структуру по одному байту?
И ответь себе на вопрос. Оно тебе надо?
...
Рейтинг: 0 / 0
Автоинформатор (автопрозвонка) с помощью голосового модема ZyXel
    #37828728
Техник55
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Спасибо, что откликнулись.
Жаль что еще никто это в VB не писал...
По поводу: 1) мысли раз честно ничего не понял.
2) Мысли два: она мне ближе, прогу скачал VentaFax, надеюсь с ней не трудно работать. Буду логи смотреть...
3) мысли три: да тот кусок у меня еще остался с проги кот. я для смс писал для GSM модема (у меня ZTE билайн), она в принципе работает, только бывает смс то уйдет, то нет, хотя должна при аварии. Может что-то с буферами или чем напартачил. ну да ладно, щас все мысли направлены на голосовой модем.
Правда дома его нет, только на работе и VentaFax опробывать не могу, конечно можно и для ZTE MF180 попробывать ту же идею, потом провести аналогию. Но чтобы сделать его голосовым надо опять же прошить, что-то не хочется разбираться!!!
...
Рейтинг: 0 / 0
Автоинформатор (автопрозвонка) с помощью голосового модема ZyXel
    #37829826
Дмитрий77
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Техник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 опробывать не могу
Триал версию имеешь право поставить. А другой и не надо, там триал бесконечно работает. Даже шапку на факсах не ставит, если из командной строки отсылать.
...
Рейтинг: 0 / 0
Автоинформатор (автопрозвонка) с помощью голосового модема ZyXel
    #37830677
Техник55
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Дмитрий77, запустил на работе VentaFax. Все работет, голосовое сообщение передает.
Что то не могу логи найти, чтобы посмотреть АТ команды. Не подскажешь???
Вроде захожу в С/Program files/Venta и т д. Там куча файликов но логов вроде нет. Я так понимаю они должны быть в блокноте ну или в другом текством редакторе????
...
Рейтинг: 0 / 0
Автоинформатор (автопрозвонка) с помощью голосового модема ZyXel
    #37830717
Техник55
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Все логи нашел. не там искал. Буду разбираться. а АТ команды там в явном виде. или как зашифрованы???
...
Рейтинг: 0 / 0
Автоинформатор (автопрозвонка) с помощью голосового модема ZyXel
    #37830847
Дмитрий77
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Техник55,

Логи
1) можно сохранять в txt (в настройках смотри), видимо то что нашел.
2) есть кнопка в "драйвере" (тот что связан с иконкой) vfdrv32.exe , чтоб смотреть их в окошке "он-лайн".

>АТ команды там в явном виде. или как зашифрованы???
AT-команды в явном виде,
а вот как ты voice-data, по сколько байт, по каким алгоритмам и т.п. будешь посылать, это надо документейшн искать и читать.
Этого лог тебе не скажет.
...
Рейтинг: 0 / 0
Автоинформатор (автопрозвонка) с помощью голосового модема ZyXel
    #37830971
Техник55
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Дмитрий77, лог Comand. пишет мне следующее в файле:
08.06.2012 11:36:34 2200 Received message Wm_user+10. LParam=1, WParam=8
и так после каждого звонка и посылки абоненту мелодии...
Мало что из этого понятно???
Если я вас правильно понял, то чтобы написать прогу в VB6, нужно узнать не только АТ команды, а также заполнения байтов для отправки голоса???
Да... с заполнениями байтов я еще не занимался, я думал примерно также как при отправки смс, знать команды и все...
...
Рейтинг: 0 / 0
Автоинформатор (автопрозвонка) с помощью голосового модема ZyXel
    #37831068
Техник55
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Вы имеете ввиду, что он-лайн команды на самом изображении телефона(макете), в маленьком окошечке синем (или отдельно что-то запускать надо). Если они то, я в принципе видел их, но там была одна или пару АТ команд и они быстро исчезали, что особо не посмотрешь и назад не отматаешь.
...
Рейтинг: 0 / 0
Автоинформатор (автопрозвонка) с помощью голосового модема ZyXel
    #37832027
Фотография AndreTM
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
То есть включить логирование команд модема сложно? Туда ведь будут сброшены именно AT-команды...
...
Рейтинг: 0 / 0
Автоинформатор (автопрозвонка) с помощью голосового модема ZyXel
    #37832080
Дмитрий77
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Техник55Вы имеете ввиду, (или отдельно что-то запускать надо).
В трее есть иконка, у ней есть меню, в меню есть пункт VentaEngine.
Открывается маленькое такое приложение - VentaEngine. По сути это "ядро" венты (а не картина Репина с изображением факса с синим окошечком про что вы говорили).
В VentaEngine есть кнопочка "Отладочное окно" (нарисован лист бумаги и рука с пальцем).
Нажимаете, открывается VentaEngine Debug окошко, куда она пишет лог в реальном времени. Это тот же лог, что потом будет в текстовухе, но для подобных анализов иногда полезно в реале смотреть чего пишет в лог.
...
Рейтинг: 0 / 0
Автоинформатор (автопрозвонка) с помощью голосового модема ZyXel
    #37832592
Техник55
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
AndreTM, вы сказали включить логирование АТ команд? а где эту галочку поставить?
...
Рейтинг: 0 / 0
Автоинформатор (автопрозвонка) с помощью голосового модема ZyXel
    #37832596
Техник55
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Дмитрий77, прийду на работу обязательно попробую...
...
Рейтинг: 0 / 0
Автоинформатор (автопрозвонка) с помощью голосового модема ZyXel
    #37832725
Фотография AndreTM
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Техник55AndreTM, вы сказали включить логирование АТ команд? а где эту галочку поставить?В свойствах модема на вкладке Диагностика есть галочка "Добавить в журнал". После этого в каталоге ОС должен появиться файл вроде автор modem.log , куда будет сбрасываться обмен с модемом.
...
Рейтинг: 0 / 0
Автоинформатор (автопрозвонка) с помощью голосового модема ZyXel
    #37833158
Техник55
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Дмитрий77, спасибо за подсказку. Теперь в VentaEngie вижу он-лайн все АТ команды.
Помимо АТ команд кот мы посылаем, к примеру: > ATQ0V1E0&D2X4S0=0
и принимаем: < ОК
Там еще идут какие-то команды типа: # Modem Voice Format: ZYXEL ADPCM 3bit
или: # "C\........\admin\рабочий стол\Оповещение.wav" is transmiting
С АТ командами все понятно посылаем и принимает ответы от модема, а после решетки что идет совсем не понятно.
Я так полагаю, что это какие-то манипуляции внутренние VentaFax и ОС, но никак не обращение к модему!!!???? может ошибаюсь...
Я решил переписать все АТ команды с VentaEngie и попробывать их отсылать в Гипертерминале.
Отсылал, отсылал пока не дошел до команды АТ+VRX, после нее у меня экран сменился на черно-белый и по нему побежали КРАКОЗЯБРЫ какие-то и в конце их ответ на экране: VCON.
Что это значит не знаю, звонок конечно до абонента дошел, но в трубке тишина..........
...
Рейтинг: 0 / 0
Автоинформатор (автопрозвонка) с помощью голосового модема ZyXel
    #37833227
Дмитрий77
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Техник55,

Ну, # это думаю просто словестный комментарий что она делает.

>АТ+VRX
>побежали КРАКОЗЯБРЫ какие-то и в конце их ответ на экране: VCON.
>Что это значит не знаю, звонок конечно до абонента дошел, но в трубке тишина

ну, "голосовые данные" наверно побежали
я ж тебе сказал, что просто не будет
тебе надо знать как эти данные кодировать/декодировать, отправлять/принимать
для этого надо читать документацию, искать примеры, писать большую нудную простыню кода, при этом на пальцах понимая что ты делаешь.
Ты упертый, хочешь написать венту заново на раз-два, я тебе привел единственную строчку (командную строку отправки wav файла вента-драйвером на заданный номер), которая ляжет в основу твоей проги + алгоритм + цикл.
Но ты не послушался и хочешь все сделать сам на низком уровне.

Я не знаю, как кодировать/декодировать, отправлять/принимать голосовые данные для голосового модема. Я стараюсь не тратить время на то что можно "свистнуть" большим полезным и функциональным блоком (написать который у меня мозгов никогда не хватит).
...
Рейтинг: 0 / 0
Автоинформатор (автопрозвонка) с помощью голосового модема ZyXel
    #37833242
Дмитрий77
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Ты возможно скажешь: как так? Взять чужое. Не, я честный, напишу сам.

Дык вот, рассказываю конкретно про венту.
Venta - отличная программа. Разрабатывалась с конца 80-х.

Но. Они сейчас выпустили 7-ю версию с поддержкой VOIP.
VOIP этот полностью ворованный, а не их.
Назвать имена проектов? По именам.
3 основных:
OpalVoip
T38modem
Spandsp

+ всякие libtiff, libssl и т.п. которые используются в этих 3-х основных.

Каждый из проектов разрабатывался лет по 20 и не одним человеком.

При этом упомянания о всевозможных GPL лицензиях на сайте www.ventafax.ru , равно как и исходные коды отсутствуют.
И я вот думаю. Как такая солидная (ну, я так считал) фирма могла на такое пойти?...
Буржуйскую версию они выпустить не рискнули.
...
Рейтинг: 0 / 0
Автоинформатор (автопрозвонка) с помощью голосового модема ZyXel
    #37833320
Техник55
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Дмитрий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 и т д
Я правильно понял? Подскажите сразу чтобы не рыться какой командой вызвать строку можно?
...
Рейтинг: 0 / 0
Автоинформатор (автопрозвонка) с помощью голосового модема ZyXel
    #37833327
Техник55
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
И еще вопрос я скачал VentaFax незарегистрированную версию. через месяц срок истечет. Т.е. начальству прийдется раскашелится, или ключи можно и так найти???? Модератор: грозит пальцем - обсуждение этого запрещено правилами форума
...
Рейтинг: 0 / 0
Автоинформатор (автопрозвонка) с помощью голосового модема ZyXel
    #37833424
Дмитрий77
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Техник55Дмитрий77, да что-то тяжко, надо использовать мысль раз:
Эта мысль правильная. Но видимо пока сам головой 10 раз об стенку не стукнешь, не поверишь что это больно.
Техник55Я правильно понял?
Да, правильно. Я тебе алгоритм в первом же посте в 3-х строчках выложил.
Техник55Далее с помощью DoEvent отслеживаю когда закончится проигрываться мелодия по номеру 2208
Да, отслеживаешь тупо появление файла журнала logbook.vlg
Техник55какой командой вызвать строку можно?
функцией Shell()
МодераторМодератор: грозит пальцем - обсуждение этого запрещено правилами форума
Shocker,
я все понимаю, без обид, но я никак не могу призывать человека покупать программу у людей, которые влегкую украли 3 проекта с мировым именем. Надеюсь пост выше ты прочитал. Или предлагаешь еще за вот это денег платить?



Поэтому я ему отвечу.
Техник55через месяц срок истечет.
Не истечет, она будет работать точно также, там триал бесконечный. Ограничение: шапка на факсах, но при запуске драйвера из командной строки без оболочки даже она не пишется. Да тебе это и не важно. Еще ограничение на время записи автоответчика 15 сек, но тебе это не надо. Еще ограничение на количество записей в собственной рассылке, но если делать как я сказал, к вопросу не относится.
...
Рейтинг: 0 / 0
Автоинформатор (автопрозвонка) с помощью голосового модема ZyXel
    #37833446
Техник55
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
я попробовал через 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.
Может командная строка не до конца правильная????
...
Рейтинг: 0 / 0
Автоинформатор (автопрозвонка) с помощью голосового модема ZyXel
    #37833461
Дмитрий77
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Техник55/t: 2208
Но набора на 2208 нет???!!!!
Пробел убери.
...
Рейтинг: 0 / 0
Автоинформатор (автопрозвонка) с помощью голосового модема ZyXel
    #37833468
Дмитрий77
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Техник55,
И код оформляй, как положено, тебе замечание сделали уже. Есть кнопка SRC -> vba. Ты и пробел поставил от невнимательности и от неаккуратности. А собирался голосовые пакеты кодировать. Ошибка в одном байте - пизкирдык голосу.
...
Рейтинг: 0 / 0
Автоинформатор (автопрозвонка) с помощью голосового модема ZyXel
    #37833470
Техник55
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Дмитрий77, ну спасибо пошло.
А чтобы отследить законченное событие нужно снова обращаться к logbook.vlg. и как только там появилась запись, то начинать новое...
т.е. уже обращение к строчке в logbook.vlg???
...
Рейтинг: 0 / 0
Автоинформатор (автопрозвонка) с помощью голосового модема ZyXel
    #37833485
Дмитрий77
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Техник55,

Читаешь невнимательно что тебе пишут.
logbook.vlg -это файл журнала VentaFax.
Если его удалить, то он появится только тогда, когда очередное задание буде выполнено.
Появление этого файла (известно где он лежит и как называется) можно отследить программно.
В твоем случае он появится когда Venta наберет номер, дождется ответа (или не дождется), проиграет файл и повесит трубку (или трубку бросят раньше чем она кончит).
Когда файл появится, его можно убить и запустить командную строку с новыми параметрами заново.
Журнал венты у тебя сохраняться не будет, но перед тем как убивать файл его можно программно прочитать и сделать запись в своем логе (txt, mdb, xls -чего больше нравится). Например начиная с байта 5 номер телефона, начиная с байта 225 код ошибки (занято, нет ответа, OK, послали в баню не дослушав твоего спама и т.п.). А уж конкретно где там какой байт сам анализируй /смотри. Скажу только, что расшифровать одну (!) строчку вентовского журнала - а она у тебя всегда будет одна, проще чем кодировать голос на 5 порядков.
...
Рейтинг: 0 / 0
Автоинформатор (автопрозвонка) с помощью голосового модема ZyXel
    #37833519
Дмитрий77
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Дмитрий77При этом упомянания о всевозможных GPL лицензиях на сайте www.ventafax.ru , равно как и исходные коды отсутствуют.
И я вот думаю. Как такая солидная (ну, я так считал) фирма могла на такое пойти?...
Буржуйскую версию они выпустить не рискнули.
Смотрю, появилась труднонаходимая сомнительная отмазка на вентовском сайте и даже искореженные коды:

http://ventafax.ru/3rdparties.html

Раньше ее не было. Видимо факт воровства распознал не только я. Не, ну автору модема я сообщил (и считаю правильно сделал) как только эта хрень вышла в свет, от других действий на тот момент воздержался.

Кстати, вопрос к экспертам, если таковые есть.
Так вообще делать можно? Отмазка законная или этого недостаточно?
...
Рейтинг: 0 / 0
Автоинформатор (автопрозвонка) с помощью голосового модема ZyXel
    #37833521
Дмитрий77
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Ух ты,еще отмазка:

http://ventafax.ru/legal.html
www.ventafax.com8.1. Настоящий Сайт, продукты и услуги, предлагаемые на Сайте, а также любая информация, тексты, графика и другие элементы Сайта подчиняются исключительно законодательству Российской Федерации. Соответственно, Правообладатель не несет никакой ответственности, если по какой-то причине продукт или услуга, доступные через Сайт нарушает национальное законодательство какого-либо государства. Неужели?
...
Рейтинг: 0 / 0
Автоинформатор (автопрозвонка) с помощью голосового модема ZyXel
    #37833894
Техник55
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Дмитрий77Техник55,

Читаешь невнимательно что тебе пишут.
logbook.vlg -это файл журнала VentaFax.
Если его удалить, то он появится только тогда, когда очередное задание буде выполнено.
Появление этого файла (известно где он лежит и как называется) можно отследить программно.
.
А он точно появится??? А если его не удалять, то там просто будет много строк???
Где можно будет изучить байтовую структуру?
И какие команды отслеживают появление файла, зная точное его местоположение???
...
Рейтинг: 0 / 0
Автоинформатор (автопрозвонка) с помощью голосового модема ZyXel
    #37833951
Дмитрий77
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
>А он точно появится???
Да

>А если его не удалять, то там просто будет много строк???
Да, но не узнаешь когда твое задание окончилось

>И какие команды отслеживают появление файла, зная точное его местоположение???[/quot]
Dir
либо FileSystemObject
(проверка файла на существование)

Где можно будет изучить байтовую структуру?
Открываешь файл(ы) в hex-редакторе (да можно и в far-овском текст-редакторе, ставил бы номер символа и чему равен байт), пытаешься догадаться какой байт(ы) какую информацию кодирует.
Сравниваешь с журналом.
Потом пишешь свой декодер. Делай сам. Вот начало функции(все байты считываются в массив, каждый чего-нибудь да значит), остальное делай сам, или тебе готовую целиком дать? У меня такого желания честно нет. Я тебе и так слишком много сказал.

Код: vbnet
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.
19.
20.
21.
22.
23.
Function LogVenta5(LogPath As String) As LogType5
'fax-путь к файлу передаваемого факса
'Number-набираемый номер
'LogPath-путь к файлу Журнала logbook.vlg
Dim mas(2000) As String
Dim ChMas(2000) As Integer
Dim LogV As LogType5
    Open LogPath For Binary As #1    ' Open file.
    i = 1
    Do While Not EOF(1)    ' Loop until end of file.
        mychar = Input(1, #1)   ' Get one character.
        If EOF(1) Then
            Exit Do
        End If
        mas(i) = mychar
        ChMas(i) = Asc(mychar)
        i = i + 1
    Loop
    Close #1    ' Close file.
    LogV.VentData = CDate(CStr(ChMas(1345)) & "/" & CStr(ChMas(1343)) & "/" & CStr(ChMas(1342) * 256 + ChMas(1341)))
    LogV.VentTime = ChMas(1347) & ":" & ChMas(1349) & ":" & ChMas(1351)
    LogV.VentInterval = "0:" & ChMas(1353) & ":" & ChMas(1355)
...



Не, можешь письмо в венту написать, типа дайте документацию на структуру vlg.
...
Рейтинг: 0 / 0
Автоинформатор (автопрозвонка) с помощью голосового модема ZyXel
    #37834949
Техник55
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Дмитрий77, еще раз здравствуйте.
Как использовать появление файла по указанному пути с помощью функции Dir???
По вашему наставлению проанализировал байты через hex редактор и понял, что мне нужно оценить всего один байт (а именно 1334). Если 1134=0F, тогда "Абонент не отвечает", если 1334=10 - "Абонент занят", если 1334=00 - "Абонент взял трубку".
В принципе мне больше ничего и не надо!!! Можно ли как то обратиться к конкретному байту файла Lookbook.vlg и узнать, какое о принимает значение??? Если да то как?
...
Рейтинг: 0 / 0
Автоинформатор (автопрозвонка) с помощью голосового модема ZyXel
    #37834968
Дмитрий77
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Техник55,

если верить моему коду (а он проверенный), то это ChMas(1335) - не знаю как ты байты считал...
А начало кода(как прочитать файл) я тебе написал постом выше

Код: vbnet
1.
2.
3.
4.
5.
6.
7.
8.
9.
    LogV.VentResaltKod = ChMas(1335)
    Select Case LogV.VentResaltKod
        Case 0:
            LogV.VentResaltText = "OK"
        Case 1:
            LogV.VentResaltText = "Не открыть файл факсимильного сообщения"
        Case 2:
            LogV.VentResaltText = "Ошибка чтения файла факсимильного сообщения"
        Case 3:



Ну, коды ошибок можешь сам из вентовского хэлпа переписать.

> =10 - "Абонент занят", это не 10, это 16, если ты в hex смотришь 10-это 0A, 15-это 0F
Но с моим кодом этого даже не надо.
Код: vbnet
1.
2.
      Case 16:
            LogV.VentResaltText = "Номер абонента занят"
...
Рейтинг: 0 / 0
Автоинформатор (автопрозвонка) с помощью голосового модема ZyXel
    #37835220
Техник55
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Дмитрий77, глянь, наверно ошибок куча... Заранее благодарен
Задача такая в зависимости от байта 1335, либо еще раз вызываем абонента, либо другого оповещаем...

[SRC vba]Function ФайлСуществует(logbook As String) As Boolean ' этой функцией отслеживаю
On Error Resume Next
nf = FreeFile
Open logbook.vlg For Input As #nf
If Err Then
ФайлСуществует = False
Else
ФайлСуществует = True
End If
Close #nf
End Function

Sub Send_message()
call Shell("здесь адрес запускаемой программы") ' вызываю нужную мне програмку
End Sub

Sub Send_message1()
Function LogVenta5("С:\.....\service\ logbook.vlg" As String) As LogType5
Dim mas(2000) As String
Dim ChMas(2000) As Integer
Dim LogV As LogType5

Call ФайлСуществует ' Запускаю на оббнаружение файла
If ФайлСуществует=True Then 'Если файл появился тогда
Open "С:\.....\service\ logbook.vlg" For Binary As #1 ' Open file.
i = 1
Do While Not EOF(1) ' Loop until end of file.
mychar = Input(1, #1) ' Get one character.
If EOF(1) Then
Exit Do
End If
mas(i) = mychar
ChMas(i) = Asc(mychar)
i = i + 1
Loop
Close #1 ' Close file.
If ChMas(1334)=0F Then
call Shell ("C:\...\") 'вызов другого абонента
End if
Kill "C:\......\Service\ logbook.vlg" ' Убиваем файл
End Function
End Sub
...
Рейтинг: 0 / 0
Автоинформатор (автопрозвонка) с помощью голосового модема ZyXel
    #37835222
Техник55
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
пардон забыл отделить текст от кода, исправляюсь...
Дмитрий77, глянь, наверно ошибок куча... Заранее благодарен
Задача такая в зависимости от байта 1335, либо еще раз вызываем абонента, либо другого оповещаем...

Код: vbnet
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.
19.
20.
21.
22.
23.
24.
25.
26.
27.
28.
29.
30.
31.
32.
33.
34.
35.
36.
37.
38.
39.
40.
41.
42.
Function ФайлСуществует(logbook As String) As Boolean ' этой функцией отслеживаю
On Error Resume Next
nf = FreeFile
Open logbook.vlg For Input As #nf
If Err Then
ФайлСуществует = False
Else
ФайлСуществует = True
End If
Close #nf
End Function

Sub Send_message()
call Shell("здесь адрес запускаемой программы") ' вызываю нужную мне програмку
End Sub

Sub Send_message1()
Function LogVenta5("С:\.....\service\ logbook.vlg" As String) As LogType5
Dim mas(2000) As String
Dim ChMas(2000) As Integer
Dim LogV As LogType5

Call ФайлСуществует ' Запускаю на оббнаружение файла
If ФайлСуществует=True Then 'Если файл появился тогда
Open "С:\.....\service\ logbook.vlg" For Binary As #1 ' Open file.
i = 1
Do While Not EOF(1) ' Loop until end of file.
mychar = Input(1, #1) ' Get one character.
If EOF(1) Then
Exit Do
End If
mas(i) = mychar
ChMas(i) = Asc(mychar)
i = i + 1
Loop
Close #1 ' Close file.
If ChMas(1334)=0F Then
call Shell ("C:\...\") 'вызов другого абонента
End if
Kill "C:\......\Service\ logbook.vlg" ' Убиваем файл
End Function
End Sub 
...
Рейтинг: 0 / 0
34 сообщений из 34, показаны все 2 страниц
Форумы / Visual Basic [игнор отключен] [закрыт для гостей] / Автоинформатор (автопрозвонка) с помощью голосового модема ZyXel
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]