Há algum tempo atrás, disponibilizei em vários locais na internet que tratavam de linux uma maneira de utilizar o modem que tornou-se ocioso em decorrência da utilização de acesso à internet através da banda larga.
Com receio que este se perdesse, resolvi republicá-lo. Caso você resolva publicá-lo em seu blog, peço a gentileza de utilizar-se de link para este documento.
Este tutorial foi testado em um RedHat Linux 7.2
Hardware necessário
- Computador com fax-modem instalado.
- Red Hat Linux 7.2 (ou qualquer outra distribuição. Entretanto, faz-se necessário verificar os locais corretos para os arquivos de configuração);
- sendmail, postfix, qmail ou qualquer MTA executando na máquina;
- pacote mpack (http://rpmfind.net);
- mgetty+sendfax (http://rpmfind.net;
- Apache + PHP + Webmail (opcional).
Instalação e configuração do mgetty
Após a instalação e configuração do MTA (favor consultar a documentação do MTA a respeito de como instalá-lo), baixe a última versão do mpack (pacote que facilita o envio de e-mails com anexos). Para instalá-lo, execute o comando rpm -ivh mpack-{versão}.rpm.
Baixe e/ou atualize os pacotes mgetty-1.1.28-3, mgetty-viewfax-1.1.28-3, mgetty-voice-1.1.28-3 e mgetty-sendfax-1.1.28-3 (sendo o mgetty e mgetty-voice são os pacotes realmente necessários).
Para instalá-los, execute o comando rpm -ivh mgetty-*. Para atualizar uma versão já existente do mgetty, utilize o comando rpm -Uvh mgetty-*.
Agora, entre no diretório /etc/mgetty+sendfax. Utilizando o seu editor preferido, edite o arquivo voice.conf.
Procure pela linha message_list e informe o nome do arquivo que conterá as mensagens de voz a serem utilizadas quando o telefone for atendido. Este arquivo deverá estar no diretório message_dir (normalmente em /var/spool/voice/messages).
Na linha backup_message, deverá ser colocado o nome do arquivo (também presente no diretório message_dir) que será utilizado como mensagem padrão nos casos onde o mgetty não conseguir localizar o arquivo de mensagem em questão.
A próxima linha a ser alterada é o port_speed, o qual deverá conter a velocidade suportada pelo modem. Um pequeno detalhe: nesta linha o valor colocado DEVE ser o mesmo do que o encontrado na linha speed do arquivo mgetty.config.
Na linha rings, deve ser especificado o número de toques a esperar para atender o telefone.
Como eu não utilizo o telefone para receber fax, eu modifiquei a linha answer_mode para voice.
Na linha message_program, deve-se indicar nome do programa a ser utilizado para processar os arquivos recebidos pelo mgetty.
É necessário indicar ao mgetty, qual será o dispositivo de voz que ele deverá utilizar (ttyS0, ttyS1, ttyS2 ou ttyS3).
Talvez seja necessário revisar o arquivo inteiro e procurar por configurações envolvendo a mesma ttySx do modem ou até mesmo do mouse.
Com o seu editor de textos preferido, edite o arquivo /etc/inittab e inclua a seguinte linha:
S3:345:respawn:/sbin/vgetty ttyS3Salve as configurações e saia do arquivo.
Execute um kill -1 1 para o init reler o arquivo de configuração e ativar o vgetty. Com um
ps -ax | grep vgettyvocê deverá ver o processo lá·
Agora, o próximo passo é gravar a mensagem. Utilizando-se do seu programa preferido, grave a(s) mensagem(ns) de saudação da secretária em formato wav. Em seguida, utilize o programa wavtopvf .
O próximo passo é converter o arquivo no formato pvf para o formato compreendido pelo modem. Isto é feito através do utilitário pvftormd. Utilize o comando pvftormd -L para listar os formatos suportados pela sua marca de modem.
Após a conversão basta colocar arquivo da mensagem no diretório especificado em message_dir e a secretária já está pronta para operar.
Criação do script para enviar o arquivo recebido para o e-mail
Abaixo, segue o script que eu utilizo para enviar-me a mensagem via e-mail.
#!/bin/bashEste script você deverá referenciá-lo no mgetty.conf na linha message_program. Não esqueça de dar permissão de execução.
# Voicemail.sh
#
# Converte o arquivo gravado do modem em voc e envia por e-mail.
#
# Autor: Luis Fernando Kieça
ARQUIVO=`echo $1 | cut -d "." -f 1`
DATA=`date +%d/%m/%Y`
HORA=`date +%H:%M`
EMAILADDRESS="luis@localhost"
# Converte o arquivo para voc
rmdtopvf "${ARQUIVO}.rmd" |
pvfcut -T 34.0 |
pvfspeed -s 32000 |
pvftovoc > "${ARQUIVO}.voc"
# Cria o arquivo txt
echo "Voice mail recebido" >> ${ARQUIVO}.txt
echo " " >> ${ARQUIVO}.txt
echo " Voce recebeu um voice mail as ${HORA} do dia ${DATA}." >> ${ARQUIVO}.txt
echo " " >> ${ARQUIVO}.txt
echo " Para acessa-lo, abra o arquivo anexo a este e-mail." >> ${ARQUIVO}.txt
echo " " >> ${ARQUIVO}.txt
echo "VoiceMail Server." >> ${ARQUIVO}.txt
# Envia o e-mail
mpack -s "Voicemail!!!" -d "${ARQUIVO}.txt" "${ARQUIVO}.voc" "${EMAILADDRESS}"
# Remove os arquivos temporarios
for i in voc rmd txt; do
rm -f ${ARQUIVO}.${i}
done
Apache + PHP + Webmail
A título de sugestão, pode-se utilizar o apache + php + squirrel (ou outro webmail qualquer), para que a visualização das mensagens possa ser feita através de qualquer computador com acesso à internet. Uma vez que você já utiliza banda larga em sua máquina, basta agora configurar para que você possa acessar seus e-mails de qualquer lugar (não esqueça é claro da segurança :-) ).
Nenhum comentário:
Postar um comentário