Pesquisar neste blog

quarta-feira, 29 de outubro de 2008

Instalando Hylafax e Integrando ao Asterisk (Servidor de Fax)

Instalando Hylafax

O Hylafax é um projeto Open-Source que tem por objeto criar um servidor de fax, o hylafax
não tem nenhuma ligação com o Asterisk, ele foi desenvolvido para utilizar modens de Fax para
receber os mesmo. Mas através do software iaxmodem, essa integração se torna possível. Para
maiores informações sobre o Hylafax acesse http://www.hylafax.org/content/Main_Page

Passo 1: Instalando os pacotes necessários.
# yum install libstdc++-devel glibc glibc-common glibc-devel glibc-headers glibc-kernheaders gcc gcc-c++ libtiff-devel

Passo 2: Baixando e descompactando o IAXModem.

IAXmodem é um modem do software escrito em C que usa um canal de IAX (fornecida geralmente por um sistema do PBX do asterisco) em vez de uma linha e dos usos do traditionalphone uma biblioteca de DSP em vez dos chipsets da ferragem de DSP.。

# wget http://ufpr.dl.sourceforge.net/sourceforge/iaxmodem/iaxmodem-1.1.1.tar.gz
# tar -xvzf iaxmodem-1.1.1.tar.gz

Passo 3: Instalando e configurando o IAXModem.

# cd iaxmodem-1.1.0
# ./build static
# ./configure
# make
# cp iaxmodem.init.fedora /etc/rc.d/init.d/iaxmodem
# chmod 0755 /etc/rc.d/init.d/iaxmodem
# chkconfig --add iaxmodem
# chkconfig iaxmodem on
# cp iaxmodem /usr/sbin/iaxmodem
# mkdir /etc/iaxmodem
# vim /etc/iaxmodem/ttyIAX0

Dentro do arquivo que criamos (/etc/iaxmodem/ttyIAX0) vamos colocar as configurações para o Fax assim:

device /dev/ttyIAX0
owner uucp:uucp
mode 660
port 4570
refresh 60
server 127.0.0.1
peername nomedoUsuarioIAX
secret senhaDoUsuarioIAX
cidname nomeDoUsuarioIAX
cidnumber numerodeIdentificação
codec ulaw

Crie o Ramal IAX2 com as mesmas configurações que foi utilizada no arquivo ttyIAX0. Se você quiser criar mais de um ramal para fax, crie outros alterando os dando por exemplos: ttyIAX1, ttyIAX2, sem se esquecer de mudar o device /dev/ttyIAX1 etc...

Passo 4: Baixando e instalando o Ghostscript.

# yum install ghostscript ghostscript-fonts sharutils -y

Passo 5: Baixando e instalando o Hylafax.
# cd ..
# http://prdownloads.sourceforge.net/hylafax/
# rpm -ivh hylafax-5.2.7-1fc5.i386.rpm
#

Passo 6: Iniciando o Fax.

Acesse o arquivo /etc/rc.d/rc.local
# vim /etc/rc.d/rc.local

E acrescente no final do arquivo as seguintes linhas:
/usr/sbin/iaxmodem ttyIAX0 &
/usr/sbin/faxgetty ttyIAX0 &
# /etc/init.d/iaxmodem start
# /etc/init.d/hylafax start
# /etc/rc.d/rc.local

Passo 7: Configurar o sistema para receber fax:

# faxsetup
O Faxsetup fará varias perguntas, eu vou mencionar apenas as básicas para o funcinamento.
Coutry code [1]?55
Area code [000]?051
Serial port that modem is connected to []?ttyIAX0
Phone number of fax modem []?+55.51.3333.0001
Local identification string (for TSI/CIG) {"NothingSetup"]?NomedoFax
NOTA: O Fax's chegarão no seguinte diretório: /var/spool/hylafax/recvq

Para Enviar por E-mail, crie um arquivo na pasta /var/spool/hylafax/etc com o Nome FaxDispatch

Nesse arquivo coloque o seguinte:

FILETYPE=tif;
SENDTO=seuemail@dominio.com.br;

Se quiser ter varios fax`s e e-mail diferentes:

case "$DEVICE" in
ttyFax001) SENDTO=email001@domino.com;; # todos os faxes recebidos em ttyFax001
ttyFax002) SENDTO=email002@dominio.com;; # todos os faxes recebidos em ttyFax002
esac



Para certificar que o serviço está rodando execute o comando abaixo:
# faxstat -a -s

onde a seguinte mensagem deverá aparecer:

HylaFAX scheduler on : Running
Modem ttyS2 (): Running and idle


Adicione um usuário com o nome faxuser e sem senha para fazer alguns testes:
# faxadduser -u 100 faxuser -p 123456

O login dos usuários serão amrazenado no arquivo abaixo:
/var/spool/hylafax/etc/hosts.hfaxd



-------------------------------------------------------------------------------------

Vou postar também algumas dúvidas que tive antes de implementar

> Vamos ver se eu entendi. > Para receber, a pessoa liga para meu asterisk e no menu ela escolhe o ramal do fax e recebe o sinal e o arquivo cai na pasta /var/spool/hylafax/recvq
Correto


> Como faço para buscar o arquivo do fax no spooler? >
Você pode pegar o arquivo via SSH, Samba ou enviar por e-mail.


> Como faço para enviar um fax da minha aplicação, por exemplo, do word, adobe. Tenho que instalar algum software na minha estação? > Se eu tiver que mandar para uma pessoa que tem um aparelho de fax como fica? e eu não tenho o aparelho de fax e quero mandar do meu word por exemplo para uma pessoa tem o aparelho? como fica? >
Existem muitos programas para fazer isso. Creio que o mais fácil seria esse: http://winprinthylafax.sourceforge.net/
A pessoa que receberá o fax não faz idéia de como você está enviando.

------------------------------------------------------------------------------------
Olá,

Esse arquivo recebido que está no spooler do Hylafax pode ser
buscado por programas específicos que se conectam ao Hylafax e inclusive
enviam e mostram a situação do servidor, tal como o Gfax Facsimile. Pode
ainda configurar o Hylafax para enviar este arquivo por e-mail.

Para enviar, use um programa que faça isso, geralmente aceitam
arquivos texto, pdf e ps, ou uma impressora virtual que te forneça tal
recurso interagindo com o servidor Hylafax. Uma outra forma de enviar é
mandar por e-mail, onde o corpo será uma folha de rosto e um arquivo em
anexo será o restante, geralmente texto, pdf ou ps, ficando no assunto
o número do telefone, e então tratar esse e-mail de forma a enviá-lo
para o servidor Hylafax, um pouco trabalhoso, mas é uma boa alternativa.

Existem ainda softphones que enviam e/ou recebem fax, mas nunca
vi isso funcionar na prática. Com esses, não precisa de IAXmodem e nem
de Hylafax.

---------------------------------------------------------------------------------
Use o wintprinthylafax, ele instala uma porta virtual, crie uma impressora com suporte a PS (Appler Laser por exemplo), configure a porta com user/senha e host do seu servidor hylafax...
assim, q uando mandar imprimir ele vai te pedir o telefone, forneça o telefone e o asterisk ira fazer o resto, caso ja esteja configurado

Qualnto ao spooler dos arquivos recebidos, todos eles ficam no diretorio citada pelo nosso colega, no meu caso configurei o hylafax para converte-lo em PDF e enviar por email...
-----------------------------------------------------------------------------------------

7 comentários:

Eduardo YC disse...

Marcos, você conhece alguma alternativa open-source ao Hylafax?
Att, Eduardo.

Marcos Abadi disse...

Olá Eduardo,
com certeza existem muitas outras alternativas, mas o que tenho experiência em uso é com HylaFax, que por sinal é um ótimo servidor de Fax.

Eduardo YC disse...

Marcos, não achei outra ferramenta que tivesse as mesmas funcionalidade do Hylafax. Você poderia citar alguma para incluir na minha pesquisa?
Att, Eduardo

Marcos Abadi disse...

Tem uma que conheci pelos foruns,
é chamado de AsterFax, segue o link: http://asterfax.sourceforge.net/

Eduardo YC disse...

O AsterFax permite somente enviar fax por e-mail e ele trabalha integrado ao Asterisk. Conhece outra alternativa que funcione como um servidor de fax independente?

Marcos Abadi disse...

Como disse Eduardo, existem muitas outras soluções, mas a maioria é paga, ou seja, não são open-source.
Mas porque você quer outra alternativa ao HylaFax? o que você não gostou nele?

Eduardo YC disse...

Certo, estou atrás de outras soluções open-source, tenho que levantar algumas alternativas para uma pesquisa de seleção.
Obrigado pela ajuda.