©2002, INPRO Development Corporation
 
 FAQFAQ   ПоискПоиск   ПользователиПользователи   ГруппыГруппы   РегистрацияРегистрация
 ПрофильПрофиль   Войти и проверить личные сообщенияВойти и проверить личные сообщения   ВходВход

Voice

 
Начать новую тему   Ответить на тему    Список форумов Форум по модемам IDC -> General
Предыдущая тема :: Следующая тема  
Автор Сообщение
makky
Junior member


Зарегистрирован: 22.12.2008
Сообщения: 5
Откуда: msk

СообщениеДобавлено: Пн Дек 22, 2008 11:02 am    Заголовок сообщения: Voice Ответить с цитатой

Приветсвую.
У меня возникни проблемы с голосовыми функциями. В этом форуме нашел топик по теме и фак, но все это оказалось 2 годовалой давности, поэтому решил апнуть топик отдельным тредом.

FreeBSD 7.0R-p3, hylafax+ 5.2.7, idc 5614+. Вроде как все прекрасно жило и с hylafax 4, инсталлированного из портов. Но мне захотелось проигрывать сообщение перед тем, как послать факс.
Почитав список рассылки на hylafax.org, я понял что в 4 версии какие-то проблемы со звуком, поэтому я инсталлировал версию 5+. Добиться звука не удалось, максимум треск какой-то, а на данный момент и вовсе умерло все.

Приведу конфиг модема:
Код:

ModemType:              Class1
ModemRate:              19200
ModemFlowControl:       xonxoff
ModemSetupDTRCmd:       AT&D2
ModemSetupDCDCmd:       AT&C1
ModemSetVolumeCmd:      "ATL3M1"

ModemDialCmd: "ATS7=50\nAT&K3#CLS=8\nAT#VRN=0#VBT=1\nAT#VSR=7200\nAT#VBS=8\nATDT%s#\n<waitfor:VCON>AT#VLS=4\nAT#VTX\n<waitfor:
CONNECT><play:1>AT&K4+FCLASS=1\nATD"


Теперь лог работы с данным конфигом (явно в класс1 модем не перелчается):
Код:

Dec 22 10:19:07.80: [ 8282]: SESSION BEGIN 000000003 48926ххххххх
Dec 22 10:19:07.80: [ 8282]: HylaFAX (tm) Version 5.2.7
Dec 22 10:19:07.80: [ 8282]: SEND FAX: JOB 2 DEST 4,8,926ххххххх COMMID 000000003 DEVICE '/dev/cuad0' FROM 'Maxim Klyuev <max@principal.it-e.ru>' USER max
Dec 22 10:19:07.80: [ 8282]: STATE CHANGE: RUNNING -> SENDING
Dec 22 10:19:07.80: [ 8282]: <-- [12:AT+FCLASS=1\r]
Dec 22 10:19:07.80: [ 8282]: --> [2:OK]
Dec 22 10:19:07.80: [ 8282]: MODEM set XON/XOFF/FLUSH: input ignored, output disabled
Dec 22 10:19:08.18: [ 8282]: DIAL 4,8,926ххххххх
Dec 22 10:19:08.18: [ 8282]: <-- [8:ATS7=50\r]
Dec 22 10:19:08.18: [ 8282]: --> [2:OK]
Dec 22 10:19:08.18: [ 8282]: <-- [12:AT&K3#CLS=8\r]
Dec 22 10:19:08.19: [ 8282]: --> [2:OK]
Dec 22 10:19:08.19: [ 8282]: <-- [15:AT#VRN=0#VBT=1\r]
Dec 22 10:19:08.19: [ 8282]: --> [2:OK]
Dec 22 10:19:08.19: [ 8282]: <-- [12:AT#VSR=7200\r]
Dec 22 10:19:08.19: [ 8282]: --> [2:OK]
Dec 22 10:19:08.19: [ 8282]: <-- [9:AT#VBS=8\r]
Dec 22 10:19:08.20: [ 8282]: --> [2:OK]
Dec 22 10:19:08.20: [ 8282]: <-- [20:ATDT4,8,926ххххххх#\r]
Dec 22 10:19:18.60: [ 8282]: --> [2:h]
Dec 22 10:19:18.60: [ 8282]: --> [4:VCON]
Dec 22 10:19:18.60: [ 8282]: <-- [9:AT#VLS=4\r]
Dec 22 10:19:18.71: [ 8282]: --> [2:OK]
Dec 22 10:19:18.71: [ 8282]: <-- [7:AT#VTX\r]
Dec 22 10:19:18.72: [ 8282]: --> [7:CONNECT]
Dec 22 10:19:18.72: [ 8282]: Playing file "etc/play1.raw".
Dec 22 10:19:18.72: [ 8282]: <-- data [1023]
Dec 22 10:19:18.73: [ 8282]: <-- data [1023]
Dec 22 10:19:18.73: [ 8282]: <-- data [1023]
Dec 22 10:19:18.74: [ 8282]: <-- data [1023]
Dec 22 10:19:18.74: [ 8282]: <-- data [1023]
Dec 22 10:19:19.10: [ 8282]: <-- data [1023]
Dec 22 10:19:19.10: [ 8282]: <-- data [1023]
Dec 22 10:19:19.11: [ 8282]: <-- data [1023]
Dec 22 10:19:19.11: [ 8282]: <-- data [1023]
Dec 22 10:19:19.45: [ 8282]: <-- data [1023]
Dec 22 10:19:19.46: [ 8282]: <-- data [1023]
Dec 22 10:19:19.46: [ 8282]: <-- data [1023]
Dec 22 10:19:19.47: [ 8282]: <-- data [1023]
Dec 22 10:19:19.81: [ 8282]: <-- data [1023]
Dec 22 10:19:19.81: [ 8282]: <-- data [1023]
Dec 22 10:19:19.82: [ 8282]: <-- data [1023]
Dec 22 10:19:19.82: [ 8282]: <-- data [1023]
Dec 22 10:19:20.16: [ 8282]: <-- data [1023]
Dec 22 10:19:20.17: [ 8282]: <-- data [1023]
Dec 22 10:19:20.17: [ 8282]: <-- data [495]
Dec 22 10:19:20.17: [ 8282]: <-- data [2]
Dec 22 10:19:20.17: [ 8282]: <-- [15:AT&K4+FCLASS=1\r]
Dec 22 10:19:21.95: [ 8282]: --> [4:VCON]
Dec 22 10:19:51.95: [ 8282]: MODEM TIMEOUT: reading line from modem
Dec 22 10:19:51.95: [ 8282]: MODEM <Timeout>
Dec 22 10:19:51.95: [ 8282]: SEND FAILED: JOB 2 DEST 4,8,926ххххххх ERR Unknown problem {E006}
Dec 22 10:19:52.95: [ 8282]: <-- [5:ATH0\r]
Dec 22 10:19:54.52: [ 8282]: --> [2:OK]
Dec 22 10:19:54.52: [ 8282]: MODEM set DTR OFF
Dec 22 10:19:54.52: [ 8282]: STATE CHANGE: SENDING -> MODEMWAIT (timeout 5)
Dec 22 10:19:54.52: [ 8282]: SESSION END


Скорее всего проблема где-то на поверхности. но взгялд уменяуже замыленный, поэтому прошу некоторой помощи.

Если надо показать как генерировал файл с голосом, могу тоже показать.
_________________
А что ты сделал ради эксперимента?
Вернуться к началу
Посмотреть профиль Отправить личное сообщение MSN Messenger
Technical Support
Expert


Зарегистрирован: 31.10.2002
Сообщения: 6330

СообщениеДобавлено: Пн Дек 22, 2008 12:06 pm    Заголовок сообщения: Ответить с цитатой

Сразу заметим, что мы не являемся экспертами в области Hylafax, поэтому всё изложенное ниже воспринимайте с должным скептицизмом.

На наш взгляд, в конфигурации имеются две проблемы:

1. Низкая скорость обмена между компьютером и модемом:

ModemRate: 19200

Режим #VSR=7200 #VBS=8 - это PCM-кодирование, 8-бит в сэмпле, 7200 сэмплов/с. Грубо говоря, получаем поток в 7.2Кбайт/с. При 19200 бит/с имеем 1.9Кбайт/с. Иными словами, компьютер не успевает получать данные с той скоростью, с которой они должны поступать для воспроизведения в линии, поэтому воспроизведение постоянно включается (в буфере накопились данные) и выключается (буфер пуст), что воспринимается как "треск".

Для нормальной работы в данном режиме требуется 115200 бит/с.

2. Несовпадение метода управления потоком, заданного в модеме, с применяемым в программе:

Dec 22 10:19:08.18: [ 8282]: <-- [12:AT&K3#CLS=8\r]
ModemFlowControl: xonxoff

&K3 - управление аппаратное, с помощью CTS/RTS. Зачем вообще потребовалось использовать &K3 в начале и переключаться на &K4 после CONNECT?!

ModemDialCmd: "ATS7=50\nAT&K3#CLS=8\nAT#VRN=0#VBT=1\nAT#VSR=7200\nAT#VBS=8\nATDT%s#\n<waitfor:VCON>AT#VLS=4\nAT#VTX\n<waitfor:
CONNECT><play:1>AT&K4+FCLASS=1\nATD"

Вторая причина, естественно, сейчас врядли играла роль, поскольку скорость передачи данных от компьютера к модему была низкой и управление потоком "молчало". Однако, когда Вы исправите ситуацию по п.1, сразу же выплывет проблема управления потоком.
_________________
Inpro
Technical Support
Вернуться к началу
Посмотреть профиль Отправить личное сообщение Отправить e-mail Посетить сайт автора
makky
Junior member


Зарегистрирован: 22.12.2008
Сообщения: 5
Откуда: msk

СообщениеДобавлено: Пн Дек 22, 2008 12:32 pm    Заголовок сообщения: Ответить с цитатой

Technical Support писал(а):
Сразу заметим, что мы не являемся экспертами в области Hylafax, поэтому всё изложенное ниже воспринимайте с должным скептицизмом.

Да это я понимаю... У вас об этом почти в каждой теме упоминается. Зато Вы замечательно разбираетесь в АТ командах именно этого модема, чем не раз выручали купивших его.

Technical Support писал(а):

На наш взгляд, в конфигурации имеются две проблемы:

1. Низкая скорость обмена между компьютером и модемом:

ModemRate: 19200

Режим #VSR=7200 #VBS=8 - это PCM-кодирование, 8-бит в сэмпле, 7200 сэмплов/с. Грубо говоря, получаем поток в 7.2Кбайт/с. При 19200 бит/с имеем 1.9Кбайт/с. Иными словами, компьютер не успевает получать данные с той скоростью, с которой они должны поступать для воспроизведения в линии, поэтому воспроизведение постоянно включается (в буфере накопились данные) и выключается (буфер пуст), что воспринимается как "треск".

Для нормальной работы в данном режиме требуется 115200 бит/с.

Пробовал =(

Technical Support писал(а):

2. Несовпадение метода управления потоком, заданного в модеме, с применяемым в программе:

Dec 22 10:19:08.18: [ 8282]: <-- [12:AT&K3#CLS=8\r]
ModemFlowControl: xonxoff

&K3 - управление аппаратное, с помощью CTS/RTS. Зачем вообще потребовалось использовать &K3 в начале и переключаться на &K4 после CONNECT?!

Изменил на так
Код:
ModemRate:              115200
ModemFlowControl:       rtscts

Но я так уже пробовал.

Technical Support писал(а):

ModemDialCmd: "ATS7=50\nAT&K3#CLS=8\nAT#VRN=0#VBT=1\nAT#VSR=7200\nAT#VBS=8\nATDT%s#\n<waitfor:VCON>AT#VLS=4\nAT#VTX\n<waitfor:
CONNECT><play:1>AT&K4+FCLASS=1\nATD"

Вторая причина, естественно, сейчас врядли играла роль, поскольку скорость передачи данных от компьютера к модему была низкой и управление потоком "молчало". Однако, когда Вы исправите ситуацию по п.1, сразу же выплывет проблема управления потоком.

Ага, теперь становится более менее понятно. Поменял на вот так:
Код:
ModemDialCmd: "ATS7=60\nAT&K3#CLS=8\nAT#VRN=0#VBT=1\nAT#VSR=11025\nAT#VBS=8\nATDT%s#\n<waitfor:VCON>AT#VLS=4\nAT#VTX\n<waitfor
:CONNECT><play:1>AT+FCLASS=1\nATD"


Жду результатов отзвона =) Спасибо за супер-быстрый ответ.

Отзвонился..
Код:

Dec 22 12:32:26.76: [ 9957]: SESSION BEGIN 000000023 48926ххххххх
Dec 22 12:32:26.76: [ 9957]: HylaFAX (tm) Version 5.2.7
Dec 22 12:32:26.76: [ 9957]: SEND FAX: JOB 1 DEST 4,8,926ххххххх COMMID 000000023 DEVICE '/dev/cuad0' FROM 'Maxim Klyuev <max@principal.it-e.ru>' USER max
Dec 22 12:32:26.76: [ 9957]: STATE CHANGE: RUNNING -> SENDING
Dec 22 12:32:26.76: [ 9957]: <-- [12:AT+FCLASS=1\r]
Dec 22 12:32:26.76: [ 9957]: --> [2:OK]
Dec 22 12:32:27.13: [ 9957]: DIAL 4,8,926ххххххх
Dec 22 12:32:27.13: [ 9957]: <-- [8:ATS7=60\r]
Dec 22 12:32:27.14: [ 9957]: --> [2:OK]
Dec 22 12:32:27.14: [ 9957]: <-- [12:AT&K3#CLS=8\r]
Dec 22 12:32:27.14: [ 9957]: --> [2:OK]
Dec 22 12:32:27.14: [ 9957]: <-- [15:AT#VRN=0#VBT=1\r]
Dec 22 12:32:27.14: [ 9957]: --> [2:OK]
Dec 22 12:32:27.14: [ 9957]: <-- [13:AT#VSR=11025\r]
Dec 22 12:32:27.15: [ 9957]: --> [2:OK]
Dec 22 12:32:27.15: [ 9957]: <-- [9:AT#VBS=8\r]
Dec 22 12:32:27.15: [ 9957]: --> [2:OK]
Dec 22 12:32:27.15: [ 9957]: <-- [20:ATDT4,8,926ххххххх#\r]
Dec 22 12:32:37.51: [ 9957]: --> [2:^Ph]
Dec 22 12:32:37.51: [ 9957]: --> [4:VCON]
Dec 22 12:32:37.51: [ 9957]: <-- [9:AT#VLS=4\r]
Dec 22 12:32:37.62: [ 9957]: --> [2:OK]
Dec 22 12:32:37.62: [ 9957]: <-- [7:AT#VTX\r]
Dec 22 12:32:37.63: [ 9957]: --> [7:CONNECT]
Dec 22 12:32:37.63: [ 9957]: Playing file "etc/play1.raw".
Dec 22 12:32:37.64: [ 9957]: <-- data [1023]
Dec 22 12:32:37.64: [ 9957]: <-- data [1023]
Dec 22 12:32:37.65: [ 9957]: <-- data [1023]
Dec 22 12:32:37.65: [ 9957]: <-- data [1023]
Dec 22 12:32:37.65: [ 9957]: <-- data [1023]
Dec 22 12:32:38.01: [ 9957]: <-- data [1023]
Dec 22 12:32:38.02: [ 9957]: <-- data [1023]
Dec 22 12:32:38.02: [ 9957]: <-- data [1023]
Dec 22 12:32:38.02: [ 9957]: <-- data [1023]
Dec 22 12:32:38.37: [ 9957]: <-- data [1023]
Dec 22 12:32:38.37: [ 9957]: <-- data [1023]
Dec 22 12:32:38.38: [ 9957]: <-- data [1023]
Dec 22 12:32:38.38: [ 9957]: <-- data [1023]
Dec 22 12:32:38.72: [ 9957]: <-- data [1023]
Dec 22 12:32:38.73: [ 9957]: <-- data [1023]
Dec 22 12:32:38.73: [ 9957]: <-- data [1023]
Dec 22 12:32:38.73: [ 9957]: <-- data [1023]
Dec 22 12:32:39.08: [ 9957]: <-- data [1023]
Dec 22 12:32:39.08: [ 9957]: <-- data [1023]
Dec 22 12:32:39.08: [ 9957]: <-- data [495]
Dec 22 12:32:39.08: [ 9957]: <-- data [2]
Dec 22 12:32:39.08: [ 9957]: <-- [12:AT+FCLASS=1\r]
Dec 22 12:32:39.90: [ 9957]: --> [4:VCON]
Dec 22 12:33:09.91: [ 9957]: MODEM TIMEOUT: reading line from modem
Dec 22 12:33:09.91: [ 9957]: MODEM <Timeout>
Dec 22 12:33:09.91: [ 9957]: SEND FAILED: JOB 1 DEST 4,8,926ххххххх ERR Unknown problem {E006}
Dec 22 12:33:10.91: [ 9957]: <-- [5:ATH0\r]
Dec 22 12:33:12.47: [ 9957]: --> [2:OK]
Dec 22 12:33:12.47: [ 9957]: MODEM set DTR OFF
Dec 22 12:33:12.47: [ 9957]: STATE CHANGE: SENDING -> MODEMWAIT (timeout 5)
Dec 22 12:33:12.47: [ 9957]: SESSION END



Смущает вот эта строчка:
Код:

Dec 22 12:32:37.51: [ 9957]: --> [2:^Ph]
Dec 22 12:32:37.51: [ 9957]: --> [4:VCON]


В каком-то из тредов обсудалась она и вроде как виноваты были <dte> символы.
Сейчас звонки идут, я слышу тишину, потом какой-то короткий пип и сброс. блин. в голове каша уже..

PS: нашел откуда я взял предыдующую строку дозвона. Вот отсюда: http://www.inpro.us.com/forum/viewtopic.php?t=1979&highlight=hylafax
_________________
А что ты сделал ради эксперимента?
Вернуться к началу
Посмотреть профиль Отправить личное сообщение MSN Messenger
Technical Support
Expert


Зарегистрирован: 31.10.2002
Сообщения: 6330

СообщениеДобавлено: Пн Дек 22, 2008 1:22 pm    Заголовок сообщения: Ответить с цитатой

Цитата:
Смущает вот эта строчка:
Код:
Dec 22 12:32:37.51: [ 9957]: --> [2:^Ph]
Dec 22 12:32:37.51: [ 9957]: --> [4:VCON]


А чем эта строчка Вас смущает? Модем переходит в голосовой режим и сообщает о состоянии трубки телефона, включённого в гнездо модема. Трубка положена, поэтому выдаётся <DLE>h. Символ <DLE> имеет десятичный код 16, что соответствует Ctrl-P, и мы полагаем, что Hylafax использует ^P для обозначения этого символа.

Вопрос к Вам: воспроизведение голоса сейчас работает? (Вы должны были слышать всё, что происходит на линии, поскольку включён режим #VLS=4). Если нет... быть может, Вы забыли переконвертировать файл? В первом примере было #VSR=7200 (т.е. 7200 сэмплов/сек), а сейчас - 11025.

Что касается проблем с передачей факса, то с этим всё более-менее понятно... разберём позже, после решения проблемы отправки голосового файла.
_________________
Inpro
Technical Support
Вернуться к началу
Посмотреть профиль Отправить личное сообщение Отправить e-mail Посетить сайт автора
makky
Junior member


Зарегистрирован: 22.12.2008
Сообщения: 5
Откуда: msk

СообщениеДобавлено: Пн Дек 22, 2008 1:43 pm    Заголовок сообщения: Ответить с цитатой

Конвертирую вот так:
Код:

[max@principal ~]$ wavtopvf 208385.wav 2083852.pvf
Reading Wave file: Microsoft PCM format, 1 channel, 11025 samp/sec
11025 byte/sec, 1 block align, 8 bits/samp, 60937 data bytes
[max@principal ~]$ pvftormd V253modem 8 2083852.pvf 2083852.rmd
[max@principal ~]$ sudo cp 2083852.rmd /var/spool/hylafax/etc/play1.raw


Переконвертировал файл обратно и прослушал - все хорошо. Хочу уточнить, я звоню на свою мобилу через коммутатор.

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

Пробовал вот так, вроде бы даже что-то было обрывком концовки реплики:
Код:
ModemDialCmd: "ATS7=60\nAT&K3#CLS=8\nAT#VRN=0#VBT=1\nAT#VSR=11025\nAT#VBS=8\nATDT%s#@\n<waitfor:VCON>AT#VLS=4\nAT#VTX\n<waitf
or:CONNECT><play:1>AT+FCLASS=1\n"


Вот если так как было, то по-любому он раньше проигрывает:
Код:
ModemDialCmd:  "ATS7=60\nAT&K3#CLS=8\nAT#VRN=0#VBT=1\nAT#VSR=11025\nAT#VBS=8\nATDT%s#\n<waitfor:VCON>AT#VLS=4\nAT#VTX\n<waitfo
r:CONNECT><play:1>AT+FCLASS=1\nATD"


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

Проверил - да , все ок стало вдруг... Значит проблема в способе определения ответа. Точнее даже не проблема, ведь коммутатор ответил, а значит надо начинать проигрывать. Паузами забить может быть стоит?
_________________
А что ты сделал ради эксперимента?


Последний раз редактировалось: makky (Пн Дек 22, 2008 2:03 pm), всего редактировалось 1 раз
Вернуться к началу
Посмотреть профиль Отправить личное сообщение MSN Messenger
Technical Support
Expert


Зарегистрирован: 31.10.2002
Сообщения: 6330

СообщениеДобавлено: Пн Дек 22, 2008 1:52 pm    Заголовок сообщения: Ответить с цитатой

Цитата:
Вероятно файл начинает проигрываться раньше, я по логам замечал.В линии что-то происходит, пытаюсь как-то переделать строку звонка. чтобы понять.

Файл проигрывается сразу же по окончанию набора номера, Вы сами так запрограммировали (#VRN=0).

Тема определения момента снятия трубки не раз поднималась в этом форуме, посмотрите:

http://www.inpro.us.com/forum/viewtopic.php?t=2116
http://www.inpro.us.com/forum/viewtopic.php?t=1150

В любом случае, мы спрашивали о другом: слышите ли Вы правильное воспроизведение файла в динамике модема? (Естественно, оно может накладываться на гудки и прочие сигналы в телефонной линии)
_________________
Inpro
Technical Support
Вернуться к началу
Посмотреть профиль Отправить личное сообщение Отправить e-mail Посетить сайт автора
makky
Junior member


Зарегистрирован: 22.12.2008
Сообщения: 5
Откуда: msk

СообщениеДобавлено: Пн Дек 22, 2008 2:25 pm    Заголовок сообщения: Ответить с цитатой

Да, слышно чётко. Даже через коммутатор получилось, я "," пауз набил. то есть теперь все правильно.

Показываю настройки:

Код:

ModemType:              Class1
ModemRate:              115200
ModemFlowControl:       rtscts
ModemSetupDTRCmd:       AT&D2
ModemSetupDCDCmd:       AT&C1
ModemSetVolumeCmd:      "ATL3M1"

ModemDialCmd: "ATS7=60\nAT&K3#CLS=8\nAT#VRN=1#VBT=1\nAT#VSR=11025\nAT#VBS=8\nATDT%s#,,\n<waitfor:VCON>AT#VLS=4\nAT#VTX\n<waitfor:CONNECT><play:1>AT+FCLASS=1"


Только не стоило бы play и connect местами поменять? А-то он после проигрывания сбрасывает сразу Embarassed
_________________
А что ты сделал ради эксперимента?
Вернуться к началу
Посмотреть профиль Отправить личное сообщение MSN Messenger
Technical Support
Expert


Зарегистрирован: 31.10.2002
Сообщения: 6330

СообщениеДобавлено: Пн Дек 22, 2008 3:16 pm    Заголовок сообщения: Ответить с цитатой

Ну вот, теперь можно разбираться с тем, почему не происходит отправки факса. А дело тут в том, что команда перехода в режим факса посылается раньше, чем модем закончит проигрывание голосового файла:
Код:
Dec 22 12:32:39.08: [ 9957]: <-- data [1023]
Dec 22 12:32:39.08: [ 9957]: <-- data [495]
Dec 22 12:32:39.08: [ 9957]: <-- data [2]
Dec 22 12:32:39.08: [ 9957]: <-- [12:AT+FCLASS=1\r]
Dec 22 12:32:39.90: [ 9957]: --> [4:VCON]
Dec 22 12:33:09.91: [ 9957]: MODEM TIMEOUT: reading line from modem
Dec 22 12:33:09.91: [ 9957]: MODEM <Timeout>
Dec 22 12:33:09.91: [ 9957]: SEND FAILED: JOB 1 DEST 4,8,926ххххххх ERR Unknown problem {E006}

Последние 2 байта ("data [2]") - это наверняка последовательность <DLE><ETX>, которая сообщает модему аб окончании передачи голосового файла. Вот тут бы программе подождать ответа модема (VCON), прежде чем переходить к дальнейшим действиям. Вместо этого она немедленно отправляет AT+FCLASS=1, модем команду игнорирует, а программа безуспешно ждёт ответа.

Как исправить - смотрите в документации к Hylafax.
_________________
Inpro
Technical Support
Вернуться к началу
Посмотреть профиль Отправить личное сообщение Отправить e-mail Посетить сайт автора
makky
Junior member


Зарегистрирован: 22.12.2008
Сообщения: 5
Откуда: msk

СообщениеДобавлено: Пн Дек 22, 2008 7:04 pm    Заголовок сообщения: Ответить с цитатой

В итоге сделано вот так:
Код:

ModemDialCmd:  "ATS7=50\nAT&K3#CLS=8\nAT#VRA=1#VRN=5\nAT#VSR=11025#VBS=8\nATDT%s#,,,,,\n<waitfor:VCON>AT#VLS=4\nAT#VTX\n<waitfor:CONNECT><play:1><waitfor:VCON>AT+FCLASS=1"


Конечно, я не получаю результата, о котором думал...
Хотелось так: если трубу взяли раньше гудка 5, то фигачить сообщение с паузой в ",,,,,", если не взяли, то говорить, пытаться установить соединение и, если соединения все равно нет, то отключаться.

Я незнаю возможно ли так сделать или как-то похоже, но попытаюсь...

А вы не думали раздел сайта посвятить как раз факсам, я смотрю много народа задавалось одним и тем же вопросом. Я могу доку по hylafax накидать, достаточно давно уж занимаюсь.
_________________
А что ты сделал ради эксперимента?
Вернуться к началу
Посмотреть профиль Отправить личное сообщение MSN Messenger
Technical Support
Expert


Зарегистрирован: 31.10.2002
Сообщения: 6330

СообщениеДобавлено: Пн Дек 22, 2008 7:51 pm    Заголовок сообщения: Ответить с цитатой

Цитата:
Конечно, я не получаю результата, о котором думал...
Хотелось так: если трубу взяли раньше гудка 5, то фигачить сообщение с паузой в ",,,,,", если не взяли, то говорить, пытаться установить соединение и, если соединения все равно нет, то отключаться.

Запятыми Вы лишь откладываете переход модема в голосовой режим. Пока "отрабатываются" задержки, соответствующие "запятым", модем не контролирует сигналы в линии, не переходит в голосовой режим... он просто ничего не делает, лишь ждёт окончания положенного интервала времени.

Прежде, чем устанавливать #VRN=5, Вам следовало прочитать описание работы этого параметра Smile Уж если взялись его менять, то делайте это правильно! Smile

Подсчитать количество длинных (коротких) гудков модем вполне способен, посмотрите описание регистров S102, S101. Также есть возможность "удержать линию" (т.е. запретить модему бросать трубку в случае, если после, скажем, 5 длинных гудков ответа не последовало) - см. описание команды *Kn.

Насколько возможно реализовать этот алгоритм в Hylafax? Трудно сказать, но врядли удастся ограничиться chat-подобными скриптами, которыми Вы сейчас оперируете. Скорее всего, придётся дописывать код.
Цитата:
А вы не думали раздел сайта посвятить как раз факсам, я смотрю много народа задавалось одним и тем же вопросом. Я могу доку по hylafax накидать, достаточно давно уж занимаюсь.

Это - очень хорошее предложение. Давайте начнём с темы, посвящённой Hylafax и документации по ней. Будет спрос - откроем раздел! Smile
_________________
Inpro
Technical Support
Вернуться к началу
Посмотреть профиль Отправить личное сообщение Отправить e-mail Посетить сайт автора
Показать сообщения:   
Начать новую тему   Ответить на тему    Список форумов Форум по модемам IDC -> General Часовой пояс: GMT + 3
Страница 1 из 1

 
Перейти:  
Вы не можете начинать темы
Вы не можете отвечать на сообщения
Вы не можете редактировать свои сообщения
Вы не можете удалять свои сообщения
Вы не можете голосовать в опросах


Powered by phpBB © 2001, 2005 phpBB Group

Created this page in 0.041467 seconds : 16 queries executed : GZIP compression enabled : Debug Mode

©2002, INPRO Development Corporation

Rambler's Top100