Tabela de Conteúdos
Envio e Recebimento de Fax no AsteriskGalera 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.
InÃcio da Configuracão
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 FAXPara 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:
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
[send-fax] exten ⇒ s,1,NoOp(Sending fax to ${NUMBER}) exten ⇒ s,n,WaitExten(1) exten ⇒ s,n,SendFAX(${TIF}) exten ⇒ s,n,Hangup() FIMPS: 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 |