Instalando un fax en linux. 4 – Gestionando HylaFax por web

Para gestionar Hylafax con un navegador, utilizaremos un paquete gratuito que es Avantfax

Lo primero que haremos sera instalar algunos paquetes que vamos a necesitar; la mayoria se instalarian automaticamente, pero asi vemos lo que hacemos

Necesitamos:

  • HylaFAX 4.4 or HylaFAX EE 3 (ya instalado)
  • PHP 5
  • PHP PEAR 5 including MDB2_driver_mysql, Mail and Mail_Mime
  • PECL FileInfo
  • PHP mbstring – for improved UTF-8 sorting support (optional)
  • PHP MySQL 5
  • MySQL server 4.1.12 or better (see Important Notes below)
  • Apache
  • ImageMagick
  • ghostscript
  • libtiff
  • netpbm-progs
  • libungif
  • sudo
  • sendmail/postfix/exim/qmail (ya instalado)
  • cups/lpr and psutils
  • expect

para ello lanzamos:

aptitude install -y apache2-mpm-prefork apache2-utils apache2.2-common \
libapache2-mod-php5 libapr1 libaprutil1 libpq4 libsqlite3-0 php5-cli php5-common \
mysql-server imagemagick libtiff4-dev netpbm libnetpbm10-dev libungif-bin \
libungif4-dev sudo php-mail php-mail-mime php-file php-db php5-mysql \
psutils wdiff

pear install Mail_mime MDB2_driver_mysql fileinfo

Ahora ya podemos descargar avantfax de www.avantfax.com; en mi caso he bajado avantfax-3.2.2.tgz al directorio /tmp

tar -xzvf avantfax-3.2.2.tgz

En el fichero debian-prefs.txt debemos indicar los datos de nuestra instalacion

FAXDOMAIN=fax.internetdoor.es  <—el nombre completo de nuestro servidor

INSTDIR=/var/www/avantfax <—- el directorio en donde hemos dejado avantfax

HYLADIR=/usr  <— el directorio en donde se instalo hylafax

SPOOL=/var/spool/hylafax  <—-directorio donde trabaha hylafax

USER=avantfax  <—nombre de usuario y contraseña que se desea cree en la base de datos para la gestion de avantfax

PASS=d58fe49   <— ATENCION: sicambiamos la contraseña, la deberemos modificar tambien en otros ficheros

DB=avantfax <— Nombre de la base de datos para avantfax

ROOTMYSQLPWD=      <— contraseña de root para mysql

HTTPDUSER=www-data  <—usuario y grupo con el que se identificara apache

HTTPDGROUP=www-data

Os aconsejo que en este momento deis un vistazo al fichero ./avantfax/includes/local_config.php y comprobeis los datos para vuestra instalacion, creo que son bastante claros; si no tuvierais este fichero, tendreis el de ejemplo (local_config-example.php que podeis renombrar

Bien, pues desde el directorio /tmp/avantfax-xxxx se puede ejecutar  ./debian-install.sh y observar como revisa lo instalado, y nos añade lo que falte

Si todo va bien, recibireis el mensaje de finalizacion

Log into the Administrative interface at: http://192.168.1.230/admin/

Username: admin

Password: password

De todas maneras, puede que haya problemas con el apache, en mi instalacion crea un virtual host en /etc/apache2/sites-available/default , pero deja mal configuradas las rutas al log con los valores

ErrorLog logs/avantfax-error_log

CustomLog logs/avantfax-access_log common

por lo que deberemos modificarlos par que apunten, por ejemplo a :
ErrorLog /var/log/apache2/avantfax-error_log
CustomLog /var/log/apache2/avantfax-access_log common
y una vez corregido, nos basta con arrancar apache con
/etc/init.d/apache2 start

Ahora podriamos revisar el fichero /hylafax/host.hfaxd para comprobar que tiene una estructura como esta:

# hosts.hfaxd
# This file contains permissions and password for every user in
# the system.
#
# For more information on this biject, please see its man page
# and the commands faxadduser and faxdeluser.
^www-data@:::/1Ry021hA0I1E
localhost:21::

ya que existe un problema con este fichero y avantfax necesita que su usuario sea el primero

A continuacion, y antes de empezar a jugar, podemos añadirun comando a CRON para actualizar la agenda cada hora;  en /etc/cron.d/avantfax algo como

# Cada hora para actualizar la agenda
0 * * * * /var/www/avantfax/includes/phb.php

Por ultimo:

Si quereis que los faxes recibidos antes de instalar AvantFax estén en la suite debéis teclear los siguientes comandos:

/var/www/avantfax/includes# cd /var/spool/hylafax /var/spool/hylafax# for i in `ls recvq/*`; do bin/faxrcvd.php $i ttyS1; done

Si quereis que los faxes enviados antes de la instalcaion de AvabtFax pasen a estar en AvantFax teclead los siguientes comandos:

/var/spool/hylafax# cd /var/spool/hylafax /var/spool/hylafax# for i in `ls doneq/q*`; do bin/notify.php $i done:30; done

Si queremos poder enviar faxes desde el correo electronico, editamos el fichero /tmp/avantfax-3.2.2/email2fax.txt y a continuacion lanzamos

./setup-postfix.sh

Si estais trabajando con Debian, debereis dejar este fichero asi:

#!/bin/sh
#
# This script will configure postfix for email to fax
# Only run once
#

./email2fax.txt

# INSTALL REQUIRED APPS IF NOT ALREADY INSTALLED

# CONFIGURE POSTFIX

/etc/init.d/postfix stop

echo "Configuring Email to FAX for domain ${FAXDOMAIN}"

cat >> /etc/postfix/master.cf << EOF
fax       unix  -       n       n       -       1       pipe
  flags= user=$FAXMAILUSER argv=/usr/bin/faxmail -d -n -NT \${user}

EOF

echo -e "${FAXDOMAIN}\tfax:localhost" >> /etc/postfix/transport
echo -e "transport_maps = hash:/etc/postfix/transport\nfax_destination_recipient_limit = 1" >> /etc/postfix/main.cf

postmap /etc/postfix/transport

# CONFIGURE FAXMAIL

cat > /etc/hylafax/faxmail.conf << EOF
AutoCoverPage: false
TextPointSize: 12pt
Headers: Message-id Date Subject From
MailUser: $FAXMAILUSER

EOF

/etc/init.d/postfix start

echo "Done"

# DONE #

Acerca de Miguel Garcia

Programador, Desarrollador web, Formador en distintas areas de informatica y director de equipos multidisciplinares.
Esta entrada fue publicada en HylaFax y etiquetada , , , , , , , , . Guarda el enlace permanente.

9 respuestas a Instalando un fax en linux. 4 – Gestionando HylaFax por web

  1. mundolinux dijo:

    gran trabajo….

  2. Jose dijo:

    Hola de nuevo, me está dando este error instalando los programas necesarios antes de Avantfax:

    No se encontró ninguna versión candidata para apache2.2-common
    No se puede encontrar ningún paquete cuyo nombre o descripción coincida con “libpq4”
    No se encontró ninguna versión candidata para apache2.2-common
    No se puede encontrar ningún paquete cuyo nombre o descripción coincida con “libpq4”
    No se instalará, actualizará o eliminará ningún paquete.
    0 paquetes actualizados, 0 nuevos instalados, 0 para eliminar y 0 sin actualizar.
    Necesito descargar 0 B de ficheros. Después de desempaquetar se usarán 0 B.

    -He buscado por google pero no encuentro respuestas. ¿Falta reinicar algo, actualizar repos?

    • Miguel dijo:

      Hola Jose. Observa que es un articulo de hace tres años, y tampoco me indicas tu distribución; el articulo se hizo sobre Debian.
      Sin embargo puedes, después de lanzar el install del articulo, probar de instalar Apache y continuar continuar con pear …. y el mismo fax; si detecta la falta de algo, aptitude te avisara….

  3. Jose dijo:

    Hola Miguel, estoy usando Debian Jessie y parece que funciona casi todo bien, aunque en la recta final me está dando este error:

    [email protected]:/tmp/avantfax-3.3.3# ./setup-postfix.sh
    ./setup-postfix.sh: 7: .: email2fax.txt: not found

    Y el fichero está ahí, en la misma carpeta que el setup-postfix.sh

    -También he buscado pero no encontré nada para que el modem USB distinga las llamadas de voz de las de fax … pero no encontré nada, ¿sabes tú algo sobre esta cuestión?

    Gracias de nuevo

    • Miguel dijo:

      Revisa el fichero setup-postfix para ver donde esta buscando el fichero y comprueba también los permisos de email2fax.txt….

      Si no recuerdo mal, los modems detectan fax/voz por su cuenta. lee las instrucciones del modem.

      y suerte

  4. Jose dijo:

    Como indica el fichero setup-postfix.sh … el fichero email2fax.txt, lo está buscando en:

    #!/bin/sh
    #
    # This script will configure postfix for email to fax
    # Only run once
    #

    . email2fax.txt

    # INSTALL REQUIRED APPS IF NOT ALREADY INSTALLED

    # CONFIGURE POSTFIX

    /etc/init.d/postfix stop


    Y me sigue dando:
    [email protected]:/tmp/avantfax-3.3.3# ./setup-postfix.sh
    ./setup-postfix.sh: 7: .: email2fax.txt: not found

    He cambiado los permisos a +rwx a ambos ficheros.
    El punto . delante del fichero dentro del script, ¿qué significa?

    • Miguel dijo:

      He visto que hay un error, ese punto que aparece suelto delante de email2fax es erróneo; esa linea debe decir ./email2fax.txt, por lo que este fichero deberá tener permisos de ejecución, que según tu comentario ya le diste

  5. Jose dijo:

    Bien, una cosa menos.

    Hay un momento en tu post que dice:
    -Si queremos poder enviar faxes desde el correo electronico, editamos el fichero /tmp/avantfax-3.2.2/email2fax.txt y a continuación lanzamos …

    Edito el fichero email2fax.txt :
    # This is the configuration file for Email 2 FAX
    # Edit your domain name below and save this file
    # before launching the scripts named below
    #
    # To setup Postfix run: ./setup-postfix.sh
    # To setup Sendmail run: ./setup-sendmail.sh

    FAXDOMAIN=soho.mitta

    # This user account must exist in your authentication system (ie. PAM, /etc/passwd, LDAP)
    # in order for the Postfix configuration to work (ie. uucp).
    # NOTE: Be sure to also set this value in local_config.php
    # DEBIAN users may want to set this to faxmaster for postfix installs
    FAXMAILUSER=faxmail

    En faxdomain está bien puesto así, el dominio de la maquina cuando instalé Debian?
    En faxmailuser en la linea comentada dice que usuarios de DEBIAN igual deberían poner faxmaster para instalaciones de Postfix, lo cambio, ¿verdad?

    • Miguel dijo:

      Si, de todas formas, creo recordar que el enviar fax desde mail, fue la parte que mas me costo poner en marcha, espero que a ti te cueste menos. Tambien quiero recordarte que el tema de Hylafax lo abandone hace tres años por el poco interes que tenian mis clientes en el fax, y la gran cantidad de alternativas online….De todas maneras, la inbstalacion es interesante, y espero que te sea util

Deja un comentario