Cela fait bien longtemps que je n'utilise plus windows
et je m'en porte pas plus mal...
Voici une configuration pour un serveur de fax sous Hylafax 4.0pl2.rjc11 et sur une Mandrake 7.1
Sur le serveur, Hylafax se compose de trois démons :
Sur les stations clientes, il y a les utilitaires suivants (qui peuvent être sur le serveur) :
Les fichiers de configuration intéressants se trouvent dans le répertoire /var/spool/fax/etc/
Je conseille vivement d'ajouter les packages suivants (fournis avec la Mandrake 7.1) :
Ces ressources sont disponibles sur le site officiel http://www.hylafax.org/links.html
Si Hylafax n'est pas installé par défaut, il suffit de le faire :
rpm -ivh hylafax-common-4.0pl2.rjc11-3mdk
rpm -ivh hylafax-client-4.0pl2.rjc11-3mdk
rpm -ivh hylafax-server-4.0pl2.rjc11-3mdk
Pour configurer le serveur Hylafax, exécutez la commande :
faxsetup -server (en tant que root)
Pour la plupart des questions, il suffit de valider le choix par défaut, sauf pour :
- Country code [1]? entrez 33 pour la France
- Area code []? entrez 1 pour Paris
- Long distance dialing prefix [1]? entrez 0
- International dialing prefix [011]? entrez 00
- Dial string rules file [etc/dialrules]? entrez etc/dialrules.europe
- Serial port that modem is connected to []? entrez ttyS0 (pour COM1) ou ttyS1 (pour COM2)
Hylafax ne lance pas le démon faxgetty par défaut, il faut donc le faire manuellement :
1 - Éditez le fichier /etc/inittab et insérez la ligne suivante à la fin du fichier :
mo:2345:respawn:/usr/sbin/faxgetty -D ttyS0
cela nécessite la commande kill -HUP 1 pour démarrer faxgetty
Ou
Si vous voulez passer par le fichier rc.local :
2 - Ajoutez à votre /etc/rc.d/rc.local la ligne suivante :/usr/sbin/faxgetty -D /dev/ttyS0
et lancez la commande :
faxgetty -D /dev/ttyS0
Note : La commande faxaddmodem vous permet d'ajouter un ou plusieurs modems a posteriori
Après ces manipulations, le fichier /var/spool/fax/etc/config.ttyS0 (pour com1) a été crée pour faxgetty,
il contient la configuration de votre modem sur /dev/ttyS0
Le fichier /usr/share/fax/hfaxd.conf contient la configuration du démon hfaxd, je n'y ai pas touché !
Pour détecter son modem, il y a la commande probemodem
De plus, il existe des configurations types dans le répertoire /var/spool/fax/config/
Pour mon 3Com US Robotics 56k, j'ai recupéré le fichier usr-2.0 que j'ai copié dans le répertoire /var/spool/fax/etc/
en le renommant config.ttyS0 et en le modifiant un peu :
# 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: votrenumrero genre: 0134123412
LongDistancePrefix: 0
InternationalPrefix: 00
DiadStringRules: etc/dialrules.europe (surtout .europe !)
ServerTracing: 1
SessionTracing: 11
RecvFileMode: 0600
LogFileMode: 0600
DeviceMode: 0600
RingsBeforeAnswer: 1
SpeakerVolume: off
GettyArgs: "-h %l dx_%s"
#LocalIdentifier: "votre societe" (a decommenter si vous voulez le voir sur le 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 # j'ai ajoute un 0 car je passe par un 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
Ensuite on ajoute au fichier /var/spool/fax/etc/host les lignes suivantes :
localhost
192.168.1
On autorise ainsi toutes les machines du domaine 192.168.1.0 à faxer !
Pour lancer Hylafax automatiquement au démarrage utilisez la commande drakxservices (sur Mandrake) ou setup (sur Red Hat),
ensuite lancez le manuellement par la commande :
/etc/rc.d/init.d/hylafax start
Si faxgetty n'est pas présent dans les processus (ps -e) lancez le par :
/usr/sbin/faxgetty -D /dev/ttyS0
Pour envoyer un fax :
sendfax -n -d number fichier1 fichier2 ..
Pour en verifier l'envoi :
faxstat -s (montre les fax en attente d'envoi)
faxstat -d (montre ceux qui ont été envoyé)
faxstat -r (ceux reçus)
Pour supprimer un fax :
faxrm numero_du_job
Pour nettoyer le spool :
faxqclean
Pour effectuer des statistiques :
faxcron
Pour une utilisation en réseau, j'ai choisi une des ressources disponible sur http://www.hylafax.org/links.html
En particulier Printfax et Repond, disponible sur le site http://www.boerde.de/~horstf/ :
Récupérez ces trois fichiers :
Copiez le script printfax.pl dans le repertoire /usr/bin/ et modifiez le pour qu'il fonctionne avec 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);
Note : Verifiez aussi votre version du script printfax.pl, des modifications peuvent avoir eu lieu !
Ajoutez dans /etc/smb.conf le module smb_conf.add par copier/coller :
[Fax] comment = Imprimante Fax
public = yes
postscript = yes
print command = ( /usr/bin/printfax.pl %I %s %U %m; rm %s ) &
printable = yes
writable = no
path = /var/spool/samba
Verifiez la ligne print command surtout pour windows2000
Il ne reste plus qu'à redémarrer samba,
/etc/rc.d/init.d/smb restart
Configuration typique d'un client sous WINDOWS 95,98,NT,2000
Il faut installer Respond.zip, qui contient les fichiers config.exe et respond.exe :
Il faut ensuite créer une imprimante distante :
Vous voilà au bout du chemin, ouvrez Wordpad, tapez un texte et imprimez le sur l'imprimante fax !
La boîte de dialogue de respond apparaît alors (si vous avez démarré respond.exe) vous demandant le
numéro de fax, entrez juste le numéro et validez, votre fax va être envoyé au serveur hylafax
Pour vérifier le bon fonctionnement, allez sur le serveur et tapez faxstat -s, il doit apparaître.
Configuration typique d'un client sous Linux :
Utilisez les utilitaires disponibles sur le site d'Hylafax !
Le mailing-Fax se fait en local sur le serveur avec StarOffice.
En revanche votre base de données peut être
n'importe où sur le réseau, on y accède avec StarOffice(ODBC,JDBC,...)
Pour cela utilisez l'utilitaire spadmin et configurez la sortie telefax : faxspool (PHONE) (TMP)
Dans le document à faxer mettre @@#num_tel_fax@@ en transparent et avec un champ de base de données pour num_tel_fax
Consultez l'aide de StarOffice, tout y est expliqué !
L'inconvénient de cette méthode est que
vous devez installer StarOffice sur le serveur de Fax :-(
Pour faire du mailing-Fax via le réseau, la solution par Respond n'est pas pratique si on utilise StarOffice
car on doit entrer le numéro de Fax pour chaque destinataire !
J'étudie actuellement une solution alternative pour les mailings importants !
http://www-phase.c-strasbourg.fr/inform/faxdoc/expose_fax/fonctionnement.html
http://www.hylafax.org
Si ce document vous semble incomplet ou que vous y trouviez quelques fautes, merci d'écrire à contact@hacklinux.org
Et si vous avez un peu de temps, pensez à signer les pétitions du libre (brevets logiciels,...) !