[LinuxFocus-icon]
<--  | Hogar  | Mapa  | Indice  | Busqueda

Noticias | Arca | Enlaces | Sobre LF
Este documento está disponible en los siguientes idiomas: English  Castellano  Deutsch  Nederlands  Turkce  

Sebastian Bauer
por Sebastian Bauer
<sebastian.baua(at)t-online.de>

Sobre el autor:

Cuando comencé la universidad me encontré con Linux. Desde entonces he aprendido bastante sobre la libertad y las posibilidades que uno tiene con Linux y el Código Abierto. Visita mi página haciendo clic en www.goblin.kicks-ass.org



Traducido al español por:
Juan José Marí Morate <juanjosemari(en)telefonica.net>

Contenidos:

 

Fax con Linux a través de ISDN

penguin_fax

Resumen:

En este artículo describiré cómo usar Linux como máquina de fax a través de una línea ISDN y la suite HylaFAX.

_________________ _________________ _________________

 

Introducción

No son necesarios demasiados programas para enviar faxes con Linux a través de ISDN.

He restringido este artículo a las tarjetas pasivas de AVM, porque únicamente encontré controladores para Linux de este tipo de tarjetas. Aunque cualquier tarjeta activa debería funcionar, pero no he podido probarlas porque no he conseguido ninguna de ellas. (Para alguna caridad respecto a hardware, por favor, contacten conmigo). Todos los programas que he usado para la redacción de este artículo han sido compilados desde el código fuente para asegurarme que este tutorial sea funcional para el mayor número de distribuciones Linux. He realizado las pruebas con una FritzCard PCI y una adaptador clásico RDSI (ISDN) "ISA" con SuSE 8.1 y Red Hat 8.0 (funcionó en esas distribuciones). Desafortunadamente no puedo garantizar que funcione en otras configuraciones o distribuciones.

 

Ajustes del kernel

Para los siguientes pasos, es necesario que dispongas de un kernel que soporte capi, por lo que es recomendable que primero compiles un nuevo kernel. Encontrarás información sobre cómo compilar el kernel en El Proyecto de documentación de Linux (The Linux Documentation Project) en la sección ¿Cómo? que versa sobre el kernel. Algunas distribuciones no incluyen soporte para capi en el kernel o no usan el código fuente estándar. Sería interesante que consiguieses el código fuente desde www.kernel.org. A parte de los ajustes al kernel, es necesario que actives las siguientes opciones específicas de RDSI (ISDN):

Kernel Settings

Después de realizar esos cambios se debe compilar el kernel como usualemente se hace con los comandos:

make dep
make bzImage
make modules
make modules_install

Acabado el proceso, se debe reiniciar con el nuevo kernel. Ahora ya estás listo para adentrarte en la instalación de capi4linux.

 

capi4linux

En principio, los controladores oficiales de capi4linux de AVM sólo están disponibles para SuSE Linux, pero es posible usarlos con cualquier otra distribución (kernel) que sea de tu preferencia. Antes que todo, descarga los controladores para tu tarjeta de www.avm.de. Asegúrate de obtener los correctos para tu hardware. La versión de SuSE es prácticamente irrelevante, pero debes procurar elegir la versión de gcc más aproximada que esté disponible a la que tengas. Ha llegado el momento de descomprimir o desempacar los archivos con los siguientes comandos:

tar xfz fcpci-suseX.X-XX.XX.XX.tar.gz

o bien prueba con...

tar xfz fcclassic-suseX.X-XX.XX.XX.tar.gz

Ahora ya puedes compilar el archivo src.drv/fcpci.o o bien src.drv/fcclassic.o con el siguiente comando:

make

en el directorio fritz. Este archivo ha de ser copiado entonces a /lib/modules/2.4.XX/kernel/drivers/isdn/avmb1/. Después de todo el trabajo debes ordenar el siguiente comando:

depmod

para obtener las dependencias correctas del sistema. Los mensajes de error con símbolos irresolubles en /lib/modules/2.4.XX/kernel/drivers/isdn/avmb1/fcpci.o que muy probablemente aparecerán deben ser ignorados. Para completar la configuración de tu tarjeta RDSI (ISDN) necesitas crear el archivo /etc/capi.conf. El archivo de ejemplo de AVM tiene un aspecto parecido al siguiente:

# card      file    proto  io     irq  mem  cardnr  options
#b1isa      b1.t4   DSS1   0x150  7    -    -       P2P
#b1pci      b1.t4   DSS1   -      -    -    -
#c4         c4.bin  DSS1   -      -    -    -
#c4         -       DSS1   -      -    -    -
#c4         -       DSS1   -      -    -    -       P2P
#c4         -       DSS1   -      -    -    -       P2P
#t1isa      t1.t4   DSS1   0x340  9    -    0
#t1pci      t1.t4   DSS1   -      -    -    -
#fcpci      -       -      -      -    -    -
#fcclassic  -       -      0x300  5    -    -

En este no es necesario comentar la entrada de la tarjeta, en cambio si usas fcclassic probablemente tendrás que editar el archivo para hacer los ajustes específicos a tu hardware.

 

capi4k-utils

Los capi4k-utils proveen de muchas herramientas prácticas para la interfaz de capi. Para instalarlas necesitas conseguir el archivo de código fuente capi4k-utils-XXXX-XX-XX.tar.gz aquí y descomprímelos con los siguientes comandos:

tar xfz capi4k-utils-XXXX-XX-XX.tar.gz

Ahora ya puedes compilar e instalar los capi4k-utils con:

cd capi4k-utils
make menuconfig
make
make install

Puedes dejar las opciones en make menuconfig como están si tienes duda o no estás seguro. Asegúrate a la hora de hacer cambios puesto que son permanentes. Ahora deberás añadir o cambiar las siguientes entradas en /etc/modules.conf

alias char-major-43 capidrv
alias char-major-44 capidrv
alias char-major-45 capidrv

Después de esta preparación, puedes cargar los modulos de capi con:

capiinit start
modprobe capidrv

Y descargarlos otra vez con:

rmmod capidrv
capiinit stop

Si obtienes algún mensaje de error cuando descargas los módulos... ¡ignóralos!. He escrito un pequeño script para automatizar este procedimiento de carga/descarga:

#!/bin/bash
#
# Script de inicio del subsistema ISDN-capi

case "$1" in
     start)
        echo -n "Setting up capi-drivers for ISDN subsystem"
        capiinit start
        modprobe capidrv
        ;;

     stop)
        echo -n "Remove capi-drivers for ISDN subsystem"
        rmmod capidrv
        capiinit stop
        ;;
     restart)
        $0 stop
        $0 start
        ;;
     *)
        echo "Usage:$0{start|stop|restart}"
        ;;
esac
exit 0

Este script puede ser copiado a /etc/init.d/ o bien a /etc/rc.d y puedes usarlos para cargar los módulos automáticamente cada vez que inicies el sistema.

 

libtiff

Si no tienes instalado libtiff en tu sistema o tu libtiff actual no cuenta con los archivos necesarios, necesitas compilarlo desde el código fuente y instalarlo antes de que puedas utilizar HylaFAX. El paquete libtiff puede ser descargado desde www.libtiff.org y todo debería funcionar bien con los siguientes comandos:

tar xfz tiff-vX.X.X.tar.gz
cd tiff-vX.X.X
./configure
make
make install

A partir de aquí puedes comenzar con la instalación de HylaFAX.

 

HylaFAX

Para instalar HylaFAX requieres el código fuente que podrás descargar de la página www.hylafax.org. Después ejecuta el comando:

tar xfz hylafax-X.X.X.tar.gz

Entonces debes ejecutar:

cd hylafax-X.X.X
./configure

En las siguientes preguntas que aparecerán deberás ajustar el directorio (opción 7) a /var/spool/fax y el tamaño del papel (opción 13) a A4. Puedes dejar los otros ajustes como están. Una vez acabado este proceso, debes instalar HylaFAX con los siguientes comandos:

make
make install
faxsetup

Ahora necesitas ejecutar faxsetup para elegir los ajustes correctos para tu código de área, código internacional, (el mismo pero sin los ceros que le preceden, que suele estar en los prefijos de larga distancia) y demás opciones. IMPORTANTE: Nos resta hacer una cosa. A la pregunta...

faxaddmodem

se ha de responder NO. Una vez ajustado todo, deberás cambiar el script /etc/init.d/hylafax o bien /etc/rc.d/hylafax un poco. Es necesario que insertes...

$ECHO "Iniciando recepción capifax..."
/usr/local/bin/c2faxrecv &

al final de la sección "start" y

$ECHO "Finalizando recepción capifax..."
killall -15 c2faxrecv

al pricipio de la sección "stop". Estos cambios son prácticos para iniciar el demonio de recepción de faxes cuando HylaFAX está activo.

 

capi4hylafax

HylaFAX fue originalmente diseñados para modems "reales" y por eso debes instalar el parche capi4hylafax. Esta actualización hace que tu tarjeta RDSI (ISDN) conecte con HylaFAX. Para instalar el parche debes descargarlo de www.avm.de y descomprimirlo con:

tar xfz capi4hylafax-XX.XX.XX.tar.gz

Ahora haz...

cd capi4hylafax-XX.XX.XX
./install

para configurar y instalar el parche. Los parámetros que tienen que ajustarse están explicados en la siguiente tabla:

Outgoinging MSN Este es el número (sin el código de área) que capi4hylafax usa para enviar un fax. Si no está ajustado a 0, el receptor podrá ver el número en la parte superior de su fax.
Incoming MSN Este es el número (de nuevo sin el código de región) que es usado para recibir los faxes. Si deseas utilizar más de un número, sepáralos mediante comas.
DDI Parameter Esta opción es necesaria para la operación con linea de punto a punto PBX ISDN con marcación directa (DDI), DDIOffset es el número que precede, la extensión y DDILength es la duración de la extensión. En IncomingDDIs puedes especificar una lista de las extensiones utilizadas.
Ejemplo: Número de fax 123456-78
DDIOffset=123456, DDILength = 2
FaxNumber Este número será mostrado al receptor. HylaFAX no puede manejar espacios así que debes usar la fórmula 00XX.XX.XXXXXXXX. Los puntos serán reemplazados automáticamente por espacios.
FaxIdentifier Aquí puedes ingresar el nombre que deseas que aparezca o el nombre de la compañía. Esta entrada será mostrada en los faxes que sean enviados.
NumberPrefix Esta opción define el número requerido para acceder a una línea externa cuando operas con PBX (Por norma "0")

Después de ajustar todas las opciones como se han descrito, debe ser posible enviar faxes con

c2faxsend -f TIFF -d [TelNum] [TIFF-File]

Y recibir uno con

c2faxrecv -f TIFF

A partir de este punto no necesitarás HylaFAX. Los siguientes comandos son sólo para asegurarnos de que la instalación funciona.

 

Probando

Ahora que todo está instalado y funcionando, es el momento de reiniciar HylaFAX (/etc/init.d/hylafax restart o algo parecido) e intenta enviar un fax a alguien.

sendfax -n -d [TelNum] [Fax-File]

Puedes usar muchos archivos de formato como PostCript, PDF o TIFF. Cuando un fax se recibe c2faxrecv debería aceptar la llamada y dejar el fax en /var/spool/fax/recvq como un archivo TIFF

 

Y para terminar...

Según AVM puedes usar los controladores capi solo con tarjetas RDSI pasivas porque, el envio de faxes causa una alta carga en la CPU. A mi me funciona bien enviar y recibir incluso con máquinas poco potentes (Pentium-MMX 166 MHz). Según vemos en mensajes de ciertos usuarios en de.comp.os.unix.linux.isdn han utilizado 2 o más tarjetas pasivas a la vez. Pero todas estas posibilidades son demasiado para este pequeño artículo.

Por experiencia propia, sé que enviar faxes a través de RDSI (ISDN) no es tarea fácil. Si no sabes como comenzar puede ser descorazonador. Espero haber ayudado a alguno de ustedes a controlar el caos de capi.

A todos los que lo han probado: ¡Felices faxeos!.

 

Formulario de "talkback" para este artículo

Cada artículo tiene su propia página de "talkback". A través de esa página puedes enviar un comentario o consultar los comentarios de otros lectores
 Ir a la página de "talkback" 

<--, regresar al índice de este número

Contactar con el equipo de LinuFocus
© Sebastian Bauer, FDL
LinuxFocus.org
Información sobre la traducción:
de --> -- : Sebastian Bauer <sebastian.baua(at)t-online.de>
en --> es: Juan José Marí Morate <juanjosemari(en)telefonica.net>

2003-11-13, generated by lfparser version 2.41