Asterisk - Recebimento de Fax com encaminhamento por e-mail

Este documento descreve uma série de procedimentos detalhados, utilizados para efetuar a configuração do recebimento de Fax com encaminhamento por e-mail em um servidor Asterisk.

[ Hits: 6.095 ]

Por: Bruno Ricci, CISSP, PMP, CCNP, CBCP em 12/02/2015 | Blog: https://techexpert.tips/


Instalação e configuração



Introdução

Este documento descreve uma série de procedimentos detalhados, utilizados para efetuar a configuração do recebimento de Fax com encaminhamento por e-mail em um servidor Asterisk.

Vale ressaltar que este artigo faz parte de uma série sobre o Asterisk e, por isso, todo o material foi dividido em etapas. Logo, é extremamente recomendável que o leitor verifique se possui em mãos a versão atual do mesmo.

Premissas

Este documento considera que o leitor possui uma instalação nova e funcional do sistema operacional Debian ou Ubuntu.

Este documento considera que o leitor possui uma instalação nova e funcional do Asterisk, baseada no artigo PABX IP Asterisk - Instalação no Debian/Ubuntu.

Este documento considera que o leitor possui conhecimento sobre as configurações básicas de ramais SIP apresentadas no artigo Asterisk configurações de ramais SIP.

Este documento considera que o leitor seguiu os passos do vídeo abaixo e acertou a hora corretamente através de NTP em seu servidor Linux:
Faça o backup de seus arquivos de configuração antes de dar início às alterações descritas neste artigo.

Instalação

Etapa 01: Instalação e Configuração do SendEmail

Execute o comando abaixo para efetuar a instalação do programa SendEmail, responsável por enviar o Fax recebido por e-mail:

# apt-get install sendemail libio-socket-ssl-perl libnet-ssleay-perl

Tente enviar uma mensagem de e-mail de teste através do GMail, utilizando o comando abaixo:

# /usr/bin/sendemail -s smtp.gmail.com -f vegeta@gmail.com -t kakaroto@gmail.com -u 'Maldito Kakaroto' -m 'Destruirei o planeta terra e todos aqueles q vc ama' -xu vegetaUser -xp VegetaPassword -o tls=yes -v

* Lembre de alterar o comando acima para refletir sua conta no Gmail.

Caso seu teste tenha tido sucesso, pule para a próxima etapa.

Caso seu teste apresente a seguinte menagem de erro:

"invalid SSL_version specified at /usr/share/perl5/IO/Socket/SSL.pm line 332"

Edite o arquivo "sendemail" localizado no diretório /usr/bin através do comando abaixo.

# vi /usr/bin/sendemail

Localize a linha abaixo:

if (! IO::Socket::SSL->start_SSL($SERVER, SSL_version => 'SSLv3 TLSv1')) {

Altere a mesma e remova o TLSv1.

Segue abaixo a linha após a alteração:

if (! IO::Socket::SSL->start_SSL($SERVER, SSL_version => 'SSLv3')) {

Teste novamente enviar uma mensagem de teste através do GMail, utilizando o comando abaixo:

# /usr/bin/sendemail -s smtp.gmail.com -f vegeta@gmail.com -t kakaroto@gmail.com -u 'Maldito Kakaroto' -m 'Destruirei o planeta terra e todos aqueles q vc ama' -xu vegetaUser -xp VegetaPassword -o tls=yes -v

* Lembre de alterar o comando acima para refletir sua conta no gmail.

Caso seu teste tenha tido sucesso, pule para a próxima etapa.

Etapa 02: Configuração do Asterisk

Apague o conteúdo atual do arquivo "sip.conf" através do comando abaixo:

# echo > /etc/asterisk/sip.conf

Edite o arquivo de configuração "sip.conf", que se encontra no diretório /etc/asterisk:

# vi /etc/asterisk/sip.conf

Segue abaixo um arquivo "sip.conf" totalmente funcional:

[general]
allowguest=no
srvlookup=no
udpbindaddr=0.0.0.0
tcpenable=no
canreinvite = no
dtmfmode=auto
t38pt_udptl = yes   ;PARTE IMPORTANTE

[ramal-voip](!)
type=friend
context=INTERNO
host=dynamic
disallow=all
allow=ulaw
allow=alaw
allow=g729

[100](ramal-voip)
secret=senha100
callerid="Vegeta" <100>

[200](ramal-voip)
secret=senha200
callerid="Kakaroto" <200>

Note que foram criados 2 ramais para testes que são, respectivamente, os ramais 100 e 200.

Apague o conteúdo atual do arquivo "extensions.conf", através do comando abaixo:

# echo > /etc/asterisk/extensions.conf

Edite o arquivo de configuração "extensions.conf" que se encontra no diretório /etc/asterisk:

# vi /etc/asterisk/extensions.conf

Segue abaixo um arquivo "extensions.conf" totalmente funcional:

[general]

[INTERNO]
;
; RAMAL 100 (FOR TEST ONLY)
;
exten => 100,1,Dial(SIP/100)
;
; RAMAL 200 (FOR TEST ONLY)
;
exten => 200,1,Dial(SIP/200)

;
; RECEBIMENTO DE FAX
;
exten => 999,1,Verbose(3,Incoming fax)
same => n,Set(FAXDEST=/tmp)
same => n,Set(tempfax=${STRFTIME(,,%C%y%m%d%H%M)})
same => n,ReceiveFax(${FAXDEST}/${tempfax}.tif,d)
same => n,Verbose(3,- Fax receipt completed with status: ${FAXSTATUS})
same => n,System(/usr/bin/sendemail  -s smtp.gmail.com  -f vegeta@gmail.com -t kakaroto@gmail.com -u 'Novo FAX'  -m 'Fax de ${EXTEN}' -xu vegetaUser -xp vegetaPassword -o tls=yes -v -a ${FAXDEST}/${tempfax}.tif)

Note que, além dos 2 ramais SIP configurados, também foi adicionado um terceiro ramal 999, que será responsável por receber o Fax, armazenar o mesmo como arquivo tiff dentro do diretório /tmp e enviar o mesmo como anexo para o endereço de e-mail "kakaroto@gmail.com".

Reinicie o serviço Asterisk através do comando abaixo:

# /etc/init.d/asterisk restart

O sistema de PABX VoIP Asterisk foi configurado com sucesso.

Etapa 03: Teste de Recebimento de Fax

Após configurar corretamente seu Asterisk para recebimento de Fax, tente enviar um Fax de um aparelho convencional para seu Asterisk.

Pode ser interessante executar o Asterisk em modo debug para verificar o andamento do recebimento do Fax e seu envio por email.

# asterisk -vvvvvr

Você deve ver algo como o log abaixo durante o recebimento de um Fax:

== Using SIP RTP CoS mark 5
    -- Executing [999@LocalSets:1] Verbose("SIP/trunkteste-000000a2", "3,Incoming fax") in new stack
    -- Incoming fax
    -- Executing [999@LocalSets:2] Set("SIP/trunkteste-000000a2", "FAXDEST=/tmp") in new stack
    -- Executing [999@LocalSets:3] Set("SIP/trunkteste-000000a2", "tempfax=201502021432") in new stack
    -- Executing [999@LocalSets:4] ReceiveFAX("SIP/trunkteste-000000a2", "/tmp/201502021432.tif,d") in new stack
    -- Channel 'SIP/trunkteste-000000a2' receiving FAX '/tmp/201502021432.tif'
  == Using UDPTL CoS mark 5
    -- Executing [999@LocalSets:5] Verbose("SIP/trunkteste-000000a2", "3,- Fax receipt completed with status: SUCCESS") in new stack
    -- - Fax receipt completed with status: SUCCESS
    -- Executing [999@LocalSets:6] Verbose("SIP/trunkteste-000000a2", "3,- Fax receipt completed with status: SUCCESS") in new stack
    -- - Fax receipt completed with status: SUCCESS
    -- Executing [999@LocalSets:7] System("SIP/trunkteste-000000a2", "/usr/bin/sendemail  -s smtp.gmail.com  -f vegeta@gmail.com -t kakaroto@gmail.com -u 'Novo FAX'  -m 'Fax de 999' -xu vegetaUser -xp vegetaPassword  -o tls=yes -v -a /tmp/201502021432.tif") in new stack


Apesar de não ser obrigatório, é uma boa prática reiniciar o sistema e verificar se todos os serviços serão realmente iniciados automaticamente.

Conclusão

Este artigo se empenhou em apresentar o processo de configuração de recebimento de Fax e encaminhamento do mesmo por e-mail em um servidor Asterisk de maneira simples e eficiente.

Durante os próximos artigos, serão apresentados outros modelos de configuração do serviço.

Veja o vídeo da instalação apresentada em:
Caso tenha gostado do vídeo, sinta-se convidado a se inscrever no canal FuckingIT.

Curta a nossa página no Facebook.

Até o próximo artigo, onde continuaremos a nos aprofundar na solução Asterisk.

   

Páginas do artigo
   1. Instalação e configuração
Outros artigos deste autor

Asterisk - Configuração de conferência com PIN

Squid 3 - Instalação no Debian/Ubuntu

Asterisk - Configuração de Voice Mail

Asterisk - Configuração de Ramais SIP

Aprenda a capturar a página inicial de seus usuários

Leitura recomendada

Instalando o Zabbix 2.4.3 em ambientes CentOS/RHEL 7

Autenticação Wireless WPA-WPA2 Pre-Shared-key

GNU/Linux no mundo corporativo

Asterisk - Configuração de conferência com PIN

A ferramenta Nagios aplicada a IPv6

  
Comentários
[1] Comentário enviado por bmarquesm em 14/02/2015 - 21:20h

Conteúdo + explicação simples e eficiente, muito bom.

[2] Comentário enviado por rodolfocc em 07/03/2016 - 22:23h

Boa noite amigo! primeiramente muito bom seu documento. Fiquei com algumas dúvidas e acredito que pode me ajudar. Recebo muitos faxes por dia, então minha ideia é montar um server físico. Neste caso, vou precisar de uma placa FXO ou placa de Fax Modem instalada no asterisk para receber a linha convencional e emitir o sinal de fax?

No seu exemplo, somente o ramal 999 que recebe e trata os faxes, por exemplo, consigo receber cerca de 10 ligações simultaneamente ou um por vez?

Não percebi a funcionalidade dos ramais 100 e 200, eles são os canais que atende e encaminha para o 999?

Obrigado.


Contribuir com comentário




Patrocínio

Site hospedado pelo provedor RedeHost.
Linux banner
Linux banner
Linux banner

Artigos

Dicas

Tópicos

Top 10 do mês

Scripts