Envio e Recebimento de Fax no Asterisk

Galera vou colocar um passo a passo para a configuracão de FAX no asterisk, integrando com servico de e-mail.

Resumidamente são necessárias as seguintes etapas para Receber e enviar FAX: Foi utilizado o Ubuntu Server 10.04 LTS - Linux version 2.6.32-32-generic-pae para a compilacão e configuracao do Asterisk.

  1. Instalacão das bibliotecas (libspandsp-dev e libspandsp2) no Sistema operacional;
  2. Compilacão do Asterisk com suporte ao módulo app_fax;
  3. Criacão do Usuário SIP com o codec adequado para a linha telefónica (G711 ulaw);
  4. Criacão do DialPlan para o recebimento de FAX, e envio via e-mail;
  5. Criacão do DialPlan para envio do FAX;
  6. Criacão Interface de Acesso para envio de FAX via WEB

Início da Configuracão

  • root@PABX-IP:~# aptitude install libspandsp-dev e libspandsp2
  • Compile o asterisk com suporte ao módulo app_fax.so

Step



Crie o ramal SIP com as seguinte especificacoes:

root@PABX-IP:~# vim /etc/asterisk/sip.conf

[1005]

type = friend

secret = sua_senha_dificil

qualify = yes

nat = yes

host = dynamic

context = seu_contexto_externo

callerid=<Fax> ; Fax

dtmfmode=rfc2833

t38pt_udptl = yes

t38pt_rtp=no

t38pt_tcp=no

disallow=all

allow=ulaw

*Criacão do Dial Plan para recebimento de FAX

root@PABX-IP:~# vim /etc/asterisk/extensions.conf

[ramal_1005]

exten ⇒ s,1,Set(FAXFILE=/var/spool/asterisk/fax/${STRFTIME(${EPOCH},,%Y%m%d)}_${CALLERID(num)})

exten ⇒ s,n,ReceiveFAX(${FAXFILE}.tif) ;; 1.6 use ReceiveFAX

exten ⇒ s,n,System(/usr/bin/tiff2pdf -p letter -f ${FAXFILE}.tif -o ${FAXFILE}.pdf)

#Conversão de Tiff para PDF

exten ⇒ s,n,System(/usr/bin/mailx -s 'FAX Asterisk' seuemail@suaempresa.com.br < /etc/asterisk/msg_fax)

# Envio de e-mail ao chegar um novo FAX no servidor

Configuracao para o Envio de FAX

Para o envio de FAX ser de uma forma ágil e de fácil acesso construi a seguinte estrutura lógica para enviar o FAX a partir de uma interface WEB. A interface executa os seguintes passos:

  • Passos executados pela Interface
  1. Faz umpload do arquivo validando a extensão
  2. Converte o arquivo carregado para o servidor para o formato TIF
  3. Exibe um campo na página WEB que valida o número de destino de FAX
  • Passos executados pelo Servidor
  1. Armazena o arquivo convertido para o formato .TIF
  2. Pega como parámetro "$1" e "$2" as variáveis (Arquivo e Número destinatário)
  3. Executa um Script shell que irá gerar um arquivo .call no diretório: /var/spool/asterisk/outgoing exemplo: 31129876_20110714.call.

Script de envio de fax pelo terminal

#!/bin/sh

FAX_SPOOL="/var/spool/asterisk/outgoing"

FAX_FILE="$2"

CHANNEL="DGV/g1"

FAX_NUMBER="$1"

CALL_DATE=`/bin/date +%d%m%y`

CAT="/bin/cat"

fn_create_file(){

$CAT «EOF> $FAX_SPOOL/$FAX_NUMBER-$CALL_DATE.call

Channel: $CHANNEL/$FAX_NUMBER

MaxRetries:5

RetryTime:30

WaitTime:10

Archive:yes

Context:send-fax

Extension:ramal_1005

Priority:1

Set:TIF=$FAX_FILE

Set:NUMBER=$FAX_NUMBER

Callerid:XXXX-XXXX

EOF }

fn_create_file;

exit 0 #FIM

Para executar o script:

root@PABX-IP:~# /root/send_fax.sh 34510098 /var/spool/asterisk/files/file_fax.tif

  • Para que o script funcione, é necessário criar o contexto no extensions.conf com os seguintes parámetros:

[send-fax]

exten ⇒ s,1,NoOp(Sending fax to ${NUMBER})

exten ⇒ s,n,WaitExten(1)

exten ⇒ s,n,SendFAX(${TIF})

exten ⇒ s,n,Hangup()

FIM

PS: Galera não consegui postar os arquivos de configuracões aqui neste WIKI. Caso alguem necessite me mande e-mail que envio e explico sem problemas! Boa sorte =)

 
asterisk_e_fax.txt (6210 views) · Modificado em: 14/07/2011 12:13 por viniciusdanone
 
Recent changes RSS feed Creative Commons License Donate Valid XHTML 1.0 Valid CSS Driven by DokuWiki
Powered by Joom Prosolution

Apoio


 

Blog


Warning: fsockopen() [function.fsockopen]: php_network_getaddresses: getaddrinfo failed: Name or service not known in /var/www/portal/modules/mod_slick_rss/simplepie.inc on line 2238

Warning: fsockopen() [function.fsockopen]: unable to connect to www.voipmania.com.br:80 (Unknown error) in /var/www/portal/modules/mod_slick_rss/simplepie.inc on line 2238

fsockopen error:

Login






Perdeu a senha?
Cadastre-se agora!
Advertisement

Enquete

Meu dia a dia com o Asterisk é: