Hylafax + модем (USR Sportster Flash X2) + MODEM TIMEOUT: чтение строки с модема

У меня есть следующая проблема с моим модемом Sportster Flash X2. Мы настроили его с помощью Hylafax, и он работал неделю или две. Но сегодня при получении факса он зависает и не отвечает. Вот лог с последнего времени работы модема

<-- [5:ATM0\r]
Oct 14 10:58:36 minos FaxGetty[62820]: --> [2:OK]
Oct 14 11:00:03 minos FaxGetty[62820]: --> [4:RING]
Oct 14 11:00:03 minos FaxGetty[62820]: DynamicConfig: bin/dynconf.php "/dev/ttyS0"
Oct 14 11:00:07 minos FaxGetty[62820]: ANSWER: FAX CONNECTION  DEVICE '/dev/ttyS0'
Oct 14 11:02:01 minos /USR/SBIN/CRON[638]: (logcheck) CMD (   if [ -x /usr/sbin/logcheck ]; then nice -n10 /usr/sbin/logcheck; fi)
Oct 14 11:06:06 minos FaxGetty[62820]: RECV FAX (000000019): from +XX XXX XXXXXX, page 1 in 0:05:59, A4, 3.85 line/mm, 2-D MMR, 14400 bit/s
Oct 14 11:06:06 minos FaxGetty[62820]: RECV FAX (000000019): recvq/fax000000010.tif from +43 316 720883, route to <unspecified>, 1 pages in 0:05:59
Oct 14 11:06:13 minos FaxGetty[62820]: RECV FAX (000000019): session with +XX XXX XXXXXX terminated abnormally: Timeout waiting for Phase C carrier drop
Oct 14 11:06:13 minos FaxGetty[62820]: RECV FAX: bin/faxrcvd.php "recvq/fax000000010.tif" "ttyS0" "000000019" "Timeout waiting for Phase C carrier drop"
Oct 14 11:06:13 minos FaxGetty[62820]: <-- [5:ATH0\r]
Oct 14 11:06:18 minos FaxGetty[62820]: MODEM TIMEOUT: reading line from modem <-- From here modem is not working

Сначала мы попытались перезагрузить модем, потому что он обычно делал магию, но теперь это не помогло. Таким образом, мы также перезапустили Hylafax и даже весь сервер. После того, как Hylafax был запущен снова, он висит здесь

Oct 14 11:10:44 minos FaxGetty[62820]: CLOSE /dev/ttyS0
Oct 14 11:10:44 minos FaxQueuer[62798]: MODEM /dev/ttyS0 appears to be wedged
Oct 14 11:10:44 minos FaxQueuer[62798]: MODEM WEDGED: bin/wedged "ttyS0" "/dev/ttyS0"
Oct 14 12:24:59 minos HylaFAX[3772]: HylaFAX INET Protocol Server: restarted.
Oct 14 12:24:59 minos FaxGetty[3790]: OPEN /dev/ttyS0  HylaFAX (tm) Version 6.0.6
Oct 14 12:25:00 minos FaxGetty[3790]: MODEM set DTR OFF
Oct 14 12:25:01 minos FaxGetty[3790]: MODEM set DTR ON
Oct 14 12:25:04 minos FaxGetty[3790]: MODEM set baud rate: 19200 baud, input flow XON/XOFF, output flow XON/XOFF
Oct 14 12:25:04 minos FaxGetty[3790]: MODEM flush i/o
Oct 14 12:25:04 minos FaxGetty[3790]: <-- [4:ATZ\r]
Oct 14 12:25:34 minos FaxGetty[3790]: MODEM TIMEOUT: reading line from modem

Вот конфиг для модема:

ModemType:              Class1          # use class 1 interface
ModemRate:              19200           # rate for DCE-DTE communication
ModemFlowControl:       xonxoff         # software flow control
#
ModemSetupDTRCmd:       ATS13=1&D2      # setup so DTR drop resets modem
ModemSetupDCDCmd:       AT&C1           # setup so DCD reflects carrier (or not)
ModemNoFlowCmd:         AT&H0&I0&R1     # setup modem for no flow control
ModemHardFlowCmd:       AT&H1&I0&R2     # setup modem for hardware flow control
ModemSoftFlowCmd:       AT&H2&I2&R1     # setup modem for software flow control
ModemResultCodesCmd:    ATQ0X4          # enable result codes
#
ModemMfrQueryCmd:       !USR
ModemModelQueryCmd:     ATI3
ModemRevQueryCmd:       ATI7            # XXX returns a multi-line result
#
# When AT+FCLASS=1 is issued the modem automatically switches
# to software flow control; these parameters let the fax software
# reset flow control as needed after entering Class 1.
#
Class1NFLOCmd:          AT&H0&I0&R1     # setup modem for no flow control
Class1HFLOCmd:          AT&H1&I0&R2     # setup modem for hardware flow control
Class1SFLOCmd:          ""              # modem does this automatically

#
# This should resolve "DIS/DTC received 3 times" errors:
#
Class1ResponseWaitCmd:  AT+FRS=1        # wait after sending TCF for response
#
# The remainder of this configuration is included so that the
# modem "idles" in Class 0 while not sending or receiving facsimile.
#
ModemSetupAACmd:        AT+FCLASS=0     # leave modem idling in class 0
ModemAnswerCmd:         AT+FCLASS=1A    # answer in Class 1
#
# When using AT+FRS=n we see USR modems reset themselves in the middle of sessions
# this is not good.  So, we seem to work-around that problem by not using the
# command.  Unfortunately, this isn't an ideal thing.
#
Class1SwitchingCmd:     "<delay\0727>"

#
## AvantFAX
#
FaxRcvdCmd:     bin/faxrcvd.php
DynamicConfig:  bin/dynconf.php
UseJobTSI:      true

Мы также попытались заменить Sportster на ZyXEL U1496 (который также работал до этой проблемы), и этот также не отвечает. После подключения к модему с помощью cu или minicom он появляется подключенным, но не отвечает после AT+FCLASS? команда или еще. Может ли это быть что-то в Hylafax или я что-то упустил. Я просмотрел много форумов и после перезагрузки модема все должно работать, но в нашем случае это не так.

Обновить

Хорошо, теперь мы на 100% уверены, что с модемом все в порядке. Мы попытались подключить модем к машине с Win XP, а также к другой машине с Linux. На обоих модем работает без проблем, и я могу запросить его с помощью базовых AT-команд. Кажется, проблема с последовательным портом на первом сервере, но в журналах нет ничего, что могло бы указывать на проблему. К серверу новый HP 360e Gen8 ProLiant, поэтому надеюсь порт не сдох. Я могу подключиться к модему с помощью cu -l /dev/ttyS0, но никакие AT-команды не работают. Я также пробовал /etc/init.d/setserial restart, но это не помогает. Система Debian Wheezy 7.6, ядро ​​3.2.0-4-amd64

Большое спасибо за вашу помощь.

1 ответ

Решение

ОК, наконец, мы выяснили, где проблема. Используемый нами HP Proliant DL360e Gen8 имеет ilo4, подключенный к последовательному порту, и через это соединение позволяет удаленно подключаться к консоли. После отключения виртуального последовательного порта ilo4 в биосе ilo4 (Настройки -> Статус последовательного интерфейса -> Отключено) все начинает работать без проблем.

Спасибо за ваше время

Другие вопросы по тегам