Está en la página 1de 25

Generación de documentación en PDF enviada por Fax y reenvío por email Autor Julio Ríos

Índice de contenido
Descripción del problema.....................................................................................................................2
Descripción de la solución....................................................................................................................2
Instalación del servicio de fax..............................................................................................................3
Instalación de PDFCreator...................................................................................................................6
Instalación del servicio de envío de correo........................................................................................11
Configuración del servicio de Fax......................................................................................................13
Configuración de la impresora virtual PDFCREATOR.....................................................................16
Programa que envía correos...............................................................................................................21
Modificaciones del programa.............................................................................................................24

Pág. 1 de 25
Generación de documentación en PDF enviada por Fax y reenvío por email Autor Julio Ríos

Descripción del problema


Necesitamos recibir faxes y tenerlos digitalizados en formato PDF y además si es posible cuando se
reciba un fax tenerlo en correo electrónico.

Descripción de la solución
Tenemos una máquina obsoleta y limitada que cuenta con un Winmódem (esto es un módem que
sólo funciona en entorno Windows).
Así que esta máquina la vamos a dedicar a recibir fax mediante el software que trae Windows.
Además vamos a configurar el servicio de fax para que descargue en una carpeta los faxes recibidos
y además los imprima por nuestra impresora virtual que genera PDF.
Configuraremos nuestra impresora virtual para lo siguiente, que guarde todo documento que genere
en una carpeta y después de guardado ejecute un programa que esté en ese carpeta que haga lo
siguiente envíe por correo electrónico a la dirección de correo este archivo.

Así pues requeriremos un servidor de correo y una cuenta válida para enviar esta información.

No es objetivo de este tutorial enseñar la configuración de un servidor de correo y nos valdrá


cualquiera que esté disponible. Siendo los datos que necesitamos estos:
Nombre del servidor de correo
Cuenta que envía el correo con su contraseña
Dirección de correo del que reciba la información.

Pág. 2 de 25
Generación de documentación en PDF enviada por Fax y reenvío por email Autor Julio Ríos

Instalación del servicio de fax


Aquí mostraremos una forma de instalar el servicio de Fax usando Microsoft Xp.

Hacemos clic en Agregar e instalar programas y elegimos la opción Agregar o quitar componentes
de Windows, tal y como vemos en el gráfico adjunto

Pág. 3 de 25
Generación de documentación en PDF enviada por Fax y reenvío por email Autor Julio Ríos

Al elegir esta opción veremos esta nueva pantalla

Pág. 4 de 25
Generación de documentación en PDF enviada por Fax y reenvío por email Autor Julio Ríos

y deberemos buscar Servicios de fax tal y como vemos aquí, lo seleccionamos y lo instalamos

Seguramente nos pedirá el Cd de Windows Xp. Si todo ha ido bien nos saldrá la siguiente pantalla

Pág. 5 de 25
Generación de documentación en PDF enviada por Fax y reenvío por email Autor Julio Ríos

Instalación de PDFCreator
Debemos instalar la impresora virtual PDFCreator. (http://www.pdfforge.org/)
Descargamos de su web la última versión disponible y lo ejecutamos.
Con la instalación por defecto nos servirá
Vemos unas cuantas pantallas

Descarga del programa de http://sourceforge.net/projects/pdfcreator/files/latest

Pág. 6 de 25
Generación de documentación en PDF enviada por Fax y reenvío por email Autor Julio Ríos

Ejecutar el programa haciendo clic con el botón derecho sobre el programa

Empezamos la instalación eligiendo el idioma del mismo

Pág. 7 de 25
Generación de documentación en PDF enviada por Fax y reenvío por email Autor Julio Ríos

Elegimos la instalación estándar, como en el gráfico adjunto

Pág. 8 de 25
Generación de documentación en PDF enviada por Fax y reenvío por email Autor Julio Ríos

Después elijo no instalar barras en los navegadores. No nos hace falta

Elijo esta configuración de tareas especiales

Pág. 9 de 25
Generación de documentación en PDF enviada por Fax y reenvío por email Autor Julio Ríos

Una vez instalado elijo no mostrar la ayuda tal y como vemos aquí

Hacemos clic en Finalizar y ya estamos listo para poder configurar este programa.

Pág. 10 de 25
Generación de documentación en PDF enviada por Fax y reenvío por email Autor Julio Ríos

Instalación del servicio de envío de correo


Para poder enviar correo mediante un programa vamos a hacer uso de la herramienta sendemail.
Su página web es http://caspian.dotconf.net/menu/Software/SendEmail/
Este programa no requiere de instalación, simplemente nos lo descargamos, lo descomprimimos y
ya lo podremos usar

Si queremos hacer uso del servidor de gmail, obligatoriamente nos debemos descargar la versión de
Windows y con soporte TLS.
En nuestro caso es este enlace http://caspian.dotconf.net/menu/Software/SendEmail/sendEmail-
v156.zip

Pág. 11 de 25
Generación de documentación en PDF enviada por Fax y reenvío por email Autor Julio Ríos

Vemos que lo hemos descargado.


Solo falta decidir donde queremos descomprimir el programa.

Pág. 12 de 25
Generación de documentación en PDF enviada por Fax y reenvío por email Autor Julio Ríos

Configuración del servicio de Fax


Hacemos Clic en Inicio → Todos los programas → Accesorios → Comunicaciones → Fax →
Consola de Fax
Después de rellenar los datos que te van pidiendo llegamos a configurar la recepción de llamadas
con nuestro módem

Debemos crear una carpeta si queremos almacenar lo que nos genera este programa. Yo he creado
una carpeta en el escritorio que se llama Faxes recibidos.

Pág. 13 de 25
Generación de documentación en PDF enviada por Fax y reenvío por email Autor Julio Ríos

Además llegaremos a una pantalla donde podemos almacenar los faxes recibidos e imprimirlos de
manera automática en la impresora virtual creada a tal efecto.

Con esto ya hemos acabado de configurar este programa.


Siempre podremos modificar estos parámetros a posteriori si cambia algo o nos hemos equivocado
al poner algún parámetro.
A partir de este momento Microsoft Windows ha creado un servicio Fax y siempre que arranque
Windows en principio el servicio de Fax estará habilitado y a la espera de recibir un fax.

Pág. 14 de 25
Generación de documentación en PDF enviada por Fax y reenvío por email Autor Julio Ríos

Lo podemos ver en este pantalla.

Pág. 15 de 25
Generación de documentación en PDF enviada por Fax y reenvío por email Autor Julio Ríos

Configuración de la impresora virtual PDFCREATOR


Creamos una carpeta en el escritorio, por ejemplo, o donde queramos. La hemos llamado Faxes en
PDF, en esta carpeta se almacenará la documentación que genere nuestra impresora virtual

Pág. 16 de 25
Generación de documentación en PDF enviada por Fax y reenvío por email Autor Julio Ríos

Descomprimimos el archivo sendemail-v156.zip y lo extraemos en esta carpeta tal y como vemos


en el gráfico

Los ficheros necesario para que funcione nuestro script son estos dos sndEmail.exe y sendEmail.pl

Pág. 17 de 25
Generación de documentación en PDF enviada por Fax y reenvío por email Autor Julio Ríos

Generamos nuestro script que se llama EnviarPDF.vbs con el código que más bajo a través del bloc
de notas por ejemplo.

Hacemos Clic en Inicio → Todos los programas → PDFCREATOR → PDFCREATOR

Pág. 18 de 25
Generación de documentación en PDF enviada por Fax y reenvío por email Autor Julio Ríos

Hacemos clic en Impresora → Opciones


Vamos a la opción de AutoSalvado 8como vemos en el gráfico) y activamos esta opción y elegimos
como carpeta de guardado la que acabamos de crear a tal efecto Faxes en PDF.

Pág. 19 de 25
Generación de documentación en PDF enviada por Fax y reenvío por email Autor Julio Ríos

Le damos a guardar y vamos a Acciones


Elegimos la pestaña de Acción después de guardar, buscamos el fichero vbs que hemos creado tal
cual lo vemos en el gráfico adjunto

Con esto por cada PDF que generamos se guardará de manera automática en esta carpeta y además
se procesará el script EnviarPDF.vbs, que si está bien programado nos enviará por correo este
archivo adjunto a la persona que queramos

Pág. 20 de 25
Generación de documentación en PDF enviada por Fax y reenvío por email Autor Julio Ríos

Programa que envía correos


Es un programa en visual basic script que lo que hace es recibe un documento pdf y lo envía por
mail al destinatario que se le ponga en la variable operador.

Este programa al usar sendemail versión TLS puede usar gmail como servidor de correo electrónico
si se dispone de una cuenta de correo. Ojo yo no lo recomiendo porque un uso intensivo de esto
hace que se pueda llenar la cuenta de correo de gmail con la que enviamos correo. En gmail queda
una copia del envío de correo.

El código del programa es el siguiente:


lo que se debe modificar en cada caso son los parámetros básicos de la cuenta de correo (en rojo)
' Script para procesar y enviar por correo electrónico un documento PDF que le paso
' por parámetro
' License: GPL
' Version: 1.0.0.0
' Date: Abril, 2011
' Author: Julio Rios julio punto rios punto 2006 arroba gmail punto com
Option Explicit

' Constantes para el envio del pdf


Const AppTitle = "Envio por correo de un archivo adjunto"

Const ServidorCorreo = "servidordecorreo" ' Servidor de correo que envía la información


Const Remitente = "usuariodecorreo@servidordecorreo" ' Usuario que envía los correos
Const UsuarioRemitente = "usuariodecorreo" ' Usuario que envía los correos
Const PaswwordRemitente = "contraseña" ' Password del usuario que envía el correo
Const ResponderA = "usuariodecorreo@servidordecorreo" ' Campo para que el que quiera
responder responda al usuario
Const Operador = "julio.rios@amic.es" ' Destinatario al que envía

Dim objArgs, WshShell


Dim NombreCorto, Destinatario, Asunto, CuerpoMensaje, FicheroAdjunto

' Funcion que borra un fichero dado


Sub BorrarFichero (Fichero)

Pág. 21 de 25
Generación de documentación en PDF enviada por Fax y reenvío por email Autor Julio Ríos

Dim objFSO
Set objFSO = CreateObject("Scripting.FileSystemObject")
objFSO.DeleteFile(Fichero)
Set objFSO = Nothing
End Sub
Function NombreFichero (Fichero)
' Devuelve el nombre corto del fichero que le pasamos
Dim objFSO, objFile
Set objFSO = CreateObject("Scripting.FileSystemObject")
Set objFile = objFSO.GetFile(Fichero)
NombreFichero = objFile.ShortName
'script.Echo "Date created: " & objFile.DateCreated
'script.Echo "Date last accessed: " & objFile.DateLastAccessed
'Wscript.Echo "Date last modified: " & objFile.DateLastModified
'Wscript.Echo "Drive: " & objFile.Drive
'Wscript.Echo "Name: " & objFile.Name
'Wscript.Echo "Parent folder: " & objFile.ParentFolder
'Wscript.Echo "Path: " & objFile.Path
'Wscript.Echo "Short name: " & objFile.ShortName
'Wscript.Echo "Short path: " & objFile.ShortPath
'Wscript.Echo "Size: " & objFile.Size
'Wscript.Echo "Type: " & objFile.Type
End Function

Sub EnviarCorreoGmail(Destinatario, Asunto, CuerpoMensaje, FicheroAdjunto)


' Envío de un correo electrónico
'Cadema para gmail (http://www.debianadmin.com/how-to-sendemail-from-the-command-
line-using-a-gmail-account-and-others.html)
'sendEmail -f my.account@gmail.com -t myself@domain.tld \
'-u this is the test tile -m “t his is a test message “\
'-s smtp.gmail.com \
'-o tls=yes \
'-xu usernameonly -xp mypasswd
Dim objShell, Aux

Pág. 22 de 25
Generación de documentación en PDF enviada por Fax y reenvío por email Autor Julio Ríos

Aux = "%comspec% /c sendemail -f " & Remitente & " -xu " & UsuarioRemitente & " -xp "
& PaswwordRemitente & " -s " & ServidorCorreo & " -o tls=yes "
'& " -cc " & Operador
Aux = Aux & " -t " & Destinatario & " -u """ & Asunto & """ -m """ & CuerpoMensaje &
""" -a " & """" & FicheroAdjunto & """" & " >> logcorreo.txt"
WScript.Echo "envio correo: " & Aux
On Error Resume Next
Set objShell = CreateObject("Wscript.Shell")
objShell.Run Aux, , true
End Sub

' Función que envía un correo electrónico


Sub EnviarCorreo (Destinatario, Asunto, CuerpoMensaje, FicheroAdjunto)
' envía un correo electrónico
Dim objShell, Aux
Aux = "%comspec% /c sendemail -f " & Remitente & " -xu " & UsuarioRemitente & " -xp "
& PaswwordRemitente & " -s " & ServidorCorreo & " -o reply-to=" & ResponderA
'& " -cc " & Operador
Aux = Aux & " -t " & Destinatario & " -u """ & Asunto & """ -m """ & CuerpoMensaje &
""" -a " & """" & FicheroAdjunto & """" & " >> logcorreo.txt"
'WScript.Echo "envio correo: " & Aux
On Error Resume Next
Set objShell = CreateObject("Wscript.Shell")
objShell.Run Aux, , true
End Sub

Set objArgs = WScript.Arguments

If objArgs.Count = 0 Then
MsgBox "Este programa necesita un parametro. El fichero PDF", vbExclamation, AppTitle
WScript.Quit
End If

Set WshShell = WScript.CreateObject("WScript.Shell")

Pág. 23 de 25
Generación de documentación en PDF enviada por Fax y reenvío por email Autor Julio Ríos

NombreCorto = NombreFichero(objArgs(0))
Destinatario = Operador
Asunto = "Envío de fax en formato PDF"
CuerpoMensaje = "Buenos días.\nAdjuntamos en formato PDF el fichero que acabamos de recibir
por FAX.\nPara cualquier aclaración, por favor contacten con " & Operador & " o al teléfono XX
XXX XX XX.\n\nUn saludo"
FicheroAdjunto = NombreCorto

'Call EnviarCorreo (Destinatario, Asunto, CuerpoMensaje, FicheroAdjunto) 'Se envía con nombre
corto 8+ 3 es posible que esto interese en algún momento
Call EnviarCorreo (Destinatario, Asunto, CuerpoMensaje, objArgs(0))

' borrar todos los ficheros temporales


'WshShell.Popup "Proceso de generacion y envio acabada." & vbcrlf & vbcrlf & "Filename:" &
vbtab & vbtab & objArgs(0) & vbcrlf, SecondsToWait, AppTitle, 0
Call BorrarFichero(objArgs(0))
Call BorrarFichero("logcorreo.txt") ' Borro el log de lo que genera sendemail

Modificaciones del programa


El programa puede enviar por gmail (no se recomienda) se puede saturar la cuenta de envío de
gmail
Se necesitan saber los siguientes datos y modificar en el código del programa
Servidor de correo (debe tener acceso el pc que ejecuta el programa)
Cuanta en el servidor para hacer el envío
Destinatario del correo electrónico
Contenido del asunto a enviar
Contenido del mensaje a enviar

Las últimas líneas sirven para borrar los pdf que acabamos de generar y no tener información
duplicada
No he estimado oportuno generar un log de la aplicación
Cada vez que se genera un envío sale durante el envío del mismo una pantalla en negro 8así el
usuario sabe que el sistema ha hecho algo

Pág. 24 de 25
Generación de documentación en PDF enviada por Fax y reenvío por email Autor Julio Ríos

He creado en el código una función para probar con gmail (donde básicamente se añade el
parámetro -o tls=yes y se quita el campo responder a Hacer una llamada a esa función en vez de que
envía correo y ya estará funcionando gmail como servidor de correo.

Pág. 25 de 25

También podría gustarte