Przewodnik administratora > Konfiguracja Hylafax na serwerze Linux

W wersji na serwerze Linux możliwa jest do skonfigurowania zintegrowana z eDokumentami usługa Serwera faksów, oparta o oprogramowanie Hylafax Server, z którym można się komunikować poprzez interfejs eDokumentów.

Instalacja

Generalnie instalacja samego serwera Hylafax sprowadza się do wydania kilkunastu komend. Opisane są dokładnie np. tutaj http://www.aboutdebian.com/fax.htm. Poniżej znajduje się skrócona wersja:

#faxsetup (akceptujemy yes to co mówi system)
#faxaddmodem (niżej wymienione zmieniamy, pozostałe akceptujemy)
CountryCode:        48
AreaCode:       32
FAXNumber:      032 376 95 95
LongDistancePrefix: 0
InternationalPrefix:    00
Protection mode for received fax - 0644
Protection mode for session logs - 0644
Protection mode for ttySx - 0666 
#vim /etc/hylafax/hosts.hfaxd 
dodajemy maskę sieci np. 192\.168\.10\.:::
#/etc/init.d/hylafax restart

Sprawdzić poprawność wpisu w inittab, powinien wyglądać następująco:

S0:23:respawn:/usr/sbin/faxgetty ttyS0

Jeśli wpis jest prawidłowy wykonujemy polecenie:

#init q

W tym momencie Hylafax może już odbierać faksy. Można to sprawdzić wysyłając faks na numer linii do której jest podpięty modem. Faks powienien wylądować w recvq. Pomocna w oglądaniu aktywności faksu jest komenda faxstat z różnymi parametrami np.

#faxstat 
       -d        Display  the  status  of  all  jobs that have completed; i.e.
                 those jobs located in  the  doneq  directory  on  the  server
                 machine.
       -f        Display the status of document  files  located  in  the  docq
                 directory  on the server machine.
       -r        Display the receive queue status for each server.
       -s        Display  the  status  of jobs in the send queue on the server
                 machine.

Jeżeli faxstat -r zwróci nam coś w tym stylu

Protect Page  Owner        Sender/TSI  Recvd@ Filename
-rw----    1  14       +48322812806 2 Wed07AM fax000000494.tif
-rw----    1  14           0322376477   07:51 fax000000500.tif

to znaczy że jest OK i faksy są odbierane i znajdują się w katalogu recvq.

Następnym krokiem jest sprawdzenie czy faksy są prawidłowo wysyłane. do tego użyjemy komendy sendfax.

Wysyłamy zawartość pliku /etc/hosts na numer 201
#sendfax -vv -n -m -d 201 /etc/hosts

-d destination
-f from - adres email
-m/-l m - fine mode, -l low resolution mode
-n - zapobiega generowaniu CoverSheet (strony tytułowej)
-vv - bądź gadatliwy - wyświetlaj również komendy protokołu

Sprawdzamy czy poszło...

#faxstat -d
JID  Pri S  Owner Number       Pages Dials     TTS Status
512  126 F   root 912155551212  0:2   1:12         Busy signal detected
513  127 D   root 201           2:2   1:12

Przykładowy wynik oznacza że wysyłka na numer 912155551212 nie powiodła się (kolumna S = Failed), oraz że wysyłka na numer 280 powiodła się(S = done). Jeżeli chcemy anulować job to wykonujemy #faxrm 512

Odbieranie faksów przez eDokumenty

Aby uzyć system eDokumenty do odbioru faksów należy wykonać kolejno czynności:

  • skonfigurować przetwarzanie maili przez Fetchmail Konfiguracja Emaili?
  • skopiować odpowiednie pliki z installation:
    cd installation
    cp conf/FaxDispatch /var/spool/hylafax/etc/
    vim /var/spool/hylafax/etc/FaxDispatch
        FILETYPE=pdf;
        SENDTO=archiwum@edoc.beta;
        FROMADDR=faxserver@edoc.beta;
    
  • Restart usługi /etc/init.d/hylafax restart
  • w eDokumentach dodać w kartotece pracownika odpowiedzialnego za odbiór faksów (np. sekretarce) mail z którego są DOSTARCZANE faksy - tutaj: faxserver@…

W przypadku kiedy występuje konieczność uwierzytelniania smtp należy uzupełnić plik /var/spool/uucp/.msmtprc prawidłowymi danymi np:

account ips
host ips-automation.com.pl
from faxserver@ips-automation.com.pl
auth login
user faxserver@ips-automation.com.pl
password fax123
logfile /var/spool/uucp/msmtp.log

account default : ips

W pliku /var/spool/hylafax/bin/faxrcvd należy podmienić linie 252 tak aby wyglądała następująco:

) 2>$ERRORSTO | msmtp --logfile=/var/spool/uucp/msmtp.log --file=/var/spool/uucp/.msmtprc $SENDTO

W przypadku gdyby wystąpiły problemy należy sprawdzić uprawnienia do pliku /dev/pts/0 ($ERRORSTO).

Przykładowe wywołanie wiadomości (plik: test.mail):

To: <adresat@domena.pl>
From: <nadawca@inna.domena.pl>
Subject: Temat wiadomości

Treść wiadomości

Testowe wysłanie wiadomości:

cat test.mail | msmtp --logfile=/var/spool/uucp/msmtp.log --file=/var/spool/uucp/.msmtprc -a default <adresat@domena.pl>

Od tej pory wszystkie faksy przychodzące wpadać będą na konto tej osoby w formie pliku formatu określonego w FaxDispatch (tif lub pdf).

Wysyłanie faksów przez eDokumenty

Aby uzyskać możliwość wysyłania faksów bezpośrednio z systemu eDokumenty. Zalecanym formatem plików do faksowania jest doc utworzony przez Worda lub pdf utworzony w OpenOffice. Od wersji 1.9.6 formaty RTF i JPG również są wspierane. Konwersji pliku do formatu pdf można poddawać pliki doc (lub inny format) utworzone Wordem lub OpenOffice.

Konfiguracja

konfiguracja jest prosta i wymaga edycji pliku /etc/sudoers programem visudo, tak aby umożliwić procesowi serwera apache wykonywanie komendy sendfax poprzez mechanizm sudo.

User_Alias CGI=www-data
Cmnd_Alias SENDFAX=/usr/bin/sendfax *
CGI     ALL=NOPASSWD: SENDFAX

Testowanie skryptu faxrcvd

W celu przetestowania działania wysyłania faxów mailem:

./faxrcvd "../recvq/fax000000002.tif" "ttyS0" "0322482224" "msg"

Wysyłanie faksów poprzez wydruk na drukarce sieciowej (dla stacji Windows)

Lepszą być może i wygodniejszą opcją jest możliwość wysyłania faksów poprzez mechanizm drukarki sieciowej. Te możliwości stwarzają klienty serwera Hylafax:

http://winprinthylafax.sourceforge.net/ - Najprostszy w konfiguracji http://whfc.uli-eckhardt.de/ - Nieco trudniejszy ale z możliwością oglądania kolejki

Aby kopię doręczonego faksu przesłać na swoje konto pocztowe należy użyć opcji -f sendfaxa i odpowiedniej konfiguracji innego klienta.

---

Obsługa faksu na serwerze z Windows

Instalacja na serwerze Windows wymaga innego mechanizmu obsługi faksów Więcej o tym: Faks i eDokumenty Windowsach?

UWAGI

W ostatnich wersja serwera hylafax pojawia się problem z konwersją czcionek pojawia się błąd:

textfmt: No font metric information found for "Courier-Bold".

Problem jest z ścieżkami do czcionek, należy do pliku hyla.conf dopisać właściwe ścieżki do czcionek. Plik w zależności od dystrybucji powinien wyglądać tak:

VRes: 196
# FontMap/FontPath added by faxsetup (wto, 17 mar 2009, 15:18:24 CET)
FontMap:   %rom%lib/:/usr/share/ghostscript/8.63/lib:/usr/share/ghostscript/8.63/Resource:/usr/share/ghostscript/fonts:/usr/share/fonts:/usr/share/fonts/Type1:/usr/share/fonts/Type1/afm
FontPath:  %rom%lib/:/usr/share/ghostscript/8.63/lib:/usr/share/ghostscript/8.63/Resource:/usr/share/ghostscript/fonts:/usr/share/fonts:/usr/share/fonts/Type1:/usr/share/fonts/Type1/afm

W PLD plik hyla.conf znajduje się w /usr/share/fax, w Debianie /var/spool/hylafax/etc. Należy również pamiętać o właściwych ścieżkach do plików map czcionek.

Zerwowy zalocznik pdf - problem z encodowaniem. Dosinstalowac pakiet metamail i poprawic linie 240: jest: encode powinno byc: mimencode

W przypadku gdy jest brak sygnału ciągłego związane z konfiguracją centrali należy zmienić wpis w config.ttyXX z istniejącego

ModemResultCodesCmd:    ATQ0X4

na:

ModemResultCodesCmd:    ATQ0X3

Problem może się pojawiać dalej w przypadku modemów class 2.