автор HackLinux

Об авторе:

Прошло много времени с тех пор как я использовал Windows и вроде все нормально...


Содержание:

The Easy Fax Server!

Резюме:

Заметка рассказывает о превращении компьютера, работающего под ОС Linux в факс - сервер!



 

Введение

Составляющие факс - сервера, использующего Hylafax 4.0pl2.rjc11 и дистрибутив Mandrake 7.1

Серверная часть :

Клиентская часть (можно использовать и на сервере) :

Конфигурационные файлы в каталоге /var/spool/fax/etc/

.  

Инсталляция

Рекомендую установить следующие пакеты (входят в состав with Mandrake 7.1) :

Кроме того, данные пакеты доступны на официальном сайте http://www.hylafax.org/links.html

Если Hylafax не установился по умолчанию, выполните следующие команды (добавляем необходимые RPM пакеты) :

rpm -ivh hylafax-common-4.0pl2.rjc11-3mdk
rpm -ivh hylafax-client-4.0pl2.rjc11-3mdk
rpm -ivh hylafax-server-4.0pl2.rjc11-3mdk

 

Настройка Hylafax

Для настройки сервера выполните следующую команду :

faxsetup -server (с привилегией root)

Выбирайте ответы по умолчанию на все вопросы, кроме :

Hylafax по умолчанию не запускает демона faxgetty. Поэтому выполняем следующие действия :

1 - Редактируем файл /etc/inittab - добавляем следующую строку в конец :

mo:2345:respawn:/usr/sbin/faxgetty -D ttyS0
Команда kill -HUP 1 необходима для перезапуска faxgetty

или

Если вы хотите использовать файл rc.local :

2 - Добавляем следующую строку в /etc/rc.d/rc.local :
/usr/sbin/faxgetty -D /dev/ttyS0

и запускаем командой :

faxgetty -D /dev/ttyS0

Обратите внимание : команда faxaddmodem предназначена для добавления дополнительных модемов.

После этих действий faxgetty создает файл /var/spool/fax/etc/config.ttyS0 (для com1), в котором находятся настройки для вашего модема, подключаемого к /dev/ttyS0.
В файле /usr/share/fax/hfaxd.conf находятся настройки для демона hfaxd, там я оставил все как было!  

Возможные проблемы

Проверяем наличие модема командой probemodem. Стандартные настройки находятся в /var/spool/fax/config/

У меня модем 3Com US Robotics 56k, поэтому я взял файл usr-2.0, скопировал его в /var/spool/fax/etc/, переименовал его на config.ttyS0 и изменил его следующим образом :

# Configuration for using the Class 2.0 command interface
# with a USR v.34 Courier or Sporster modem.
#
# CONFIG: CLASS2.0: USRobotics*-*
#
CountryCode:         33
AreaCode:            1
#FAXNumber:          your number ex (for france): 0134123412
LongDistancePrefix:  0
InternationalPrefix: 00
DiadStringRules:     etc/dialrules.europe (Important .europe !)
ServerTracing:       1
SessionTracing:      11
RecvFileMode:        0600
LogFileMode:         0600
DeviceMode:          0600
RingsBeforeAnswer:   1
SpeakerVolume:       off
GettyArgs:           "-h %l dx_%s"
#LocalIdentifier:    "Your Company"   (uncomment if wanted on the fax)
#TagLineFont:        etc/lutRS18.pcf  (idem)
#TagLineFormat:      "De %%l|%c|Page %%p sur %%t" (idem)
#MaxRecvPages:       25
ModemType:           Class2.0    # use class 2.0 interface
ModemRate:           57600        # 38400 DCE-DTE communication rate
ModemFlowControl:    rtscts       # XON/XOFF flow control assumed
ModemDialCmd:     ATDT0%s # I added 0 because I go through a PABX !!
#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
#ModemSetupDTRCmd:   ATS13=1&D2   # setup so DTR drop resets modem
#ModemSetupDCDCmd:   AT&C1        # setup so DCD reflects carrier (or not)
ModemResultCodesCmd: ATQ0X4       # enable extended result codes
#ModemSetupAACmd:    AT+FAA=1
#ModemSetVolumeCmd:  "ATM0 ATM1 ATM1 ATM1 ATM1"
Class2BUGCmd:        AT+FBU=0
Class2CQQueryCmd:    !(0),(0)    # override modem response
Class2NRCmd:         AT+FNR=1,1,1,0


Далее добавляем следующие строки в /var/spool/fax/etc/host:

  localhost
  192.168.1

Теперь все компьютеры домена 192.168.1.0 могут использовать факс!

 

Запускаем Hylafax

Для автоматического запуска Hylafax во время загрузки, используйте команду drakxservices (для Mandrake) или setup (для Red Hat),
далее выполните:
/etc/rc.d/init.d/hylafax start 
Если faxgetty нет в списке процессов (ps -e), выполните
/usr/sbin/faxgetty -D /dev/ttyS0
 

Использование Hylafax

Посылаем факс :
sendfax -n -d number file1 file2 ..
Проверяем результаты :
faxstat -s (shows fax in the queue waiting to be sent)
faxstat -d (shows faxes sent)
faxstat -r (shows faxes received)
 

Удаляем факс из очереди :

faxrm number_of_job
Очистить spool :
faxqclean
Статистика :
faxcron
 

Использование Hylafax в сети

 

Настройка сервера

Для сетевого использования я применил ресурсы с http://www.hylafax.org/links.html
В частности Printfax и Repond, с сайта http://www.boerde.de/~horstf/:

Загрузите следующие три файла :

Скопируйте файл printfax.pl в /usr/bin/ и отредактируйте для использования с hylafax :

### Format of commandline
#    $cmdlinefmt='mgetty';
    $cmdlinefmt='hylafax';

### The faxspoolprogram
###   for mgetty+sendfax:
#    $faxspool = '/usr/bin/faxspool';
###   for hylafax:
    $faxspool = '/usr/bin/sendfax';

### Additional faxspool args (e.g. header, coverpage)
###   empty:
    @faxspool_args = qw(-n);
###   for mgetty+sendfax with a special header:
#   @faxspool_args = qw( -h /usr/local/etc/mgetty+sendfax/faxheader.smb);
###   for hylafax with send email when job is done or requeued and use
###   a4 sized paper:
#    @faxspool_args = qw(-D -R -s a4);


Обратите внимание :Внимательно просмотрите вашу версию printfax.pl, возможно у вас уже модифицированный вариант!

Добавьте модуль smb_conf.add в /etc/smb.conf :

  [Fax] comment = Fax Printer
  public = yes
  postscript = yes
  print command = ( /usr/bin/printfax.pl %I %s %U %m; rm %s ) &
  printable = yes
  writable = no
  path = /var/spool/samba

Проверьте строку print command специально для windows2000

И перезапустите Samba,

/etc/rc.d/init.d/smb restart
 

Настройка клиента

Рассмотрим стандартную настройку для WINDOWS 95,98,NT,2000...

Затем необходимо создать сетевой принтер:

Ну вот мы и на финишной прямой - открываем Wordpad, что-нибудь там набираем и распечатываем на факс - принтере! Далее должно появиться окно программы respond.exe (конечно если вы ее запустили) с просьбой о вводе номера факса. Просто наберите номер и ваш факс отправляется на факс - сервер hylafax

Для проверки используйте команду faxstat -s на сервере - там вы должны увидеть свой факс.

Стандартная настройка клиента для Linux :

Используйте утилиты с сайта Hylafax!

 

Почта через Fax

Обмен сообщениями через fax осуществляется локально на сервере с помощью StarOffice.

С другой стороны ваша база данных может быть где угодно в сети, доступ к которой можно осуществлять через StarOffice(ODBC,JDBC,...) Используйте утилиту spadmin и настройте вывод telefax : faxspool (PHONE) (TMP)

В документе, подготовленном для отправки в поле @@#num_tel_fax@@ замените num_tel_fax на поле из базы данных

Читайте StarOffice help, там все объясняется!

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

 

Ресурсы

http://www-phase.c-strasbourg.fr/inform/faxdoc/expose_fax/fonctionnement.html
http://www.hylafax.org

 

Несколько слов от автора

Если вам кажется, что документ не полный или содержит ошибки, пишите на адрес [email protected]. Если у вас есть немного свободного времени - подпишите no patents request!

 

Страница отзывов

У каждой заметки есть страница отзывов. На этой странице вы можете оставить свой комментарий или просмотреть комментарии других читателей.
 talkback page 

Webpages maintained by the LinuxFocus Editor team
© HackLinux, FDL
LinuxFocus.org

Click here to report a fault or send a comment to LinuxFocus
Translation information:
fr -> -- HackLinux
fr -> en John Perr
en -> ru Kirill Poukhliakov

2001-03-03, generated by lfparser version 2.8