¡Ya estamos en Twitter!

Perl en Español

  1. Home
  2. Tutoriales
  3. Foro
  4. Artículos
  5. Donativos
  6. Publicidad

Envíar email con Windows

por Uriel Lizama

Introducción

Pues una de las preguntas más concurridas es ¿cómo puedo envíar mensajes con Windows? es por ello que decidí hacer un tutorial acerca de eso.

Para poder envíar mensajes con windows tenemos que hacerlo por medio de SMTP "Simple Mail Transfer Protocol", para hacer eso necesitamos que perl se comunique con el servidor.

En este tutorial voy a poner dos ejemplos sencillos usandos dos módulos distintos para que escojan el que más les interese o guste.

Usando Mail::Sendmail

Este módulo es de los más usados para envíar mensajes por medio de Windows, si no tienes este módulo instalado lo puedes encontrar en http://search.cpan.org/~mivkovic/Mail-Sendmail-0.79/Sendmail.pm.

Muy bien ahora aquí esta el ejemplo de como quedaría el script para envíar el email:

#!C:\perl\bin\perl.exe -w

use strict;
use Mail::Sendmail;

# Creamos el hash con nuestro mensajes
my %mail = (
To => 'Para ',
From => 'De ',
Subject => 'Asunto del mensaje',
Message => 'Mi mensajes',
Smtp => 'mail.servidor.com'
);

# Envíar el mensaje
unless (sendmail(%mail)) {
# Error!
print "ERROR\n";
exit(1);
}

# Envío correcto.
print "OK\n";
exit(1);

Como ves es muy sencillo, nada más un detalle, en la variable de "smtp" si no pones la variable el default va a ser "localhost".

Usando MIME::Lite

Otro módulo famoso para estos casos y el cual me gusta más, si no lo tienes instalado lo puedes encontrar en http://search.cpan.org/~yves/MIME-Lite-3.01/lib/MIME/Lite.pm.

El código para envíar mensajes con este módulo es:

#!C:\perl\bin\perl.exe -w

use strict;
use MIME::Lite;

$msg = MIME::Lite->new(
From =>'de@mydominio.com',
To =>'para@dominio.com',
Subject =>'Asunto del mensajes',
Data =>"Mi mensaje"
) ;


#Pedir que se use SMTP
MIME::Lite->send('smtp', "smtp.sitio.com", Timeout => 60 ) ;


# Enviamos el mensaje
$msg->send;

Y eso es todo, realmente sencillo.

Notas Finales

Pues aquí estan los dos módulos más usados para envíar mensajes en Windows y el ejemplo para envíarlos, como ven no me metí en mayores detalles porque no creó que tenga caso, pero espero que les sirva.

Esta pregunta la hice ya hace varios años y quisiera agradecer a todos los "monks" de http://perlmonks.com por la ayuda que me dieron en ese tiempo.

¿Quiéres más tutoriales como este? Escribir tutoriales toma una gran cantidad de tiempo y esfuerzo. Si este tutorial te ayudó a aprender o a solucionar algo, por favor considera dejar alguna donación en apoyo a Perl en Español.

Cliquea en el botón de abajo para dejar tu donación por medio de PayPal.

Comparte:
Categorías de Tutoriales:
En Nuestros Foros:
Socializa:
Síguenos por Twitter

Suscríbete GRATUITAMENTE al Boletín de Perl en Español

Perl en Español es mantenido con Movable Type
Todo el contenido de Perl en Español está bajo una licencia CC:
Creative Commons License