ASPEmail

Componente de servidor que permite el envío de mensajes a través de ASP y el uso de un servidor de correo (SMTP) externo.

Este componente permite, entre otras características, el envío de múltiples archivos adjuntos, y múltiples destinatarios, copias (CC), copias ocultas (BCC) y réplicas o respuestas (Reply To).

En nuestros equipos para los planes de alojamiento web bajo plataforma Windows Plan Empresarial, Plan Master, Plan Master Plus y Plan ISP, se encuentra instalado el componente de servidor AspEmail en su licencia Enterprise, versión 4.5.

Envío de mensajes a múltiples destinatarios (método SendToQueue)

Una de las características más interesantes del producto es el uso de un método que permite poner en cola los mensajes de correo en el servidor, y que es especialmente útil para casos de envíos a múltiples cuentas.

  • Esta posibilidad existe gracias a la instalación en los servidores de un servicio adicional denominado EmailAgent que se encarga de gestionar esta cola de mensajes.

La mejora que ofrece este método es que no trata de realizar el envío directamente a través del servicio de SMTP, sino que lo deja en cola para que el EmailAgent lo gestione a través de un proceso en background. De este modo su script ASP no tendrá que esperar a que acabe el envío y obtendrá un mejor tiempo de respuesta al cliente.

Cómo usar AspEmail

El uso de AspEmail bajo ASP requiere, en principio, de la creación de una instancia del objeto en su script ASP, como en el ejemplo que sigue:

<%

...
Set Mail = Server.CreateObject("Persits.MailSender")
...

%>

Para enviar los mensajes, el componente hace uso de un servidor de correo SMTP, y opcionalmente de un puerto:

Mail.Host = "smtp.midominio.com"
Mail.Port = 25 ' Valor opcional. 25 es el puerto por defecto.

Si hace uso de un servidor SMTP que sólo permite el envío autenticado, deberá especificar un nombre de usuario (login) y contraseña de un buzón del dominio, de la forma:

Mail.Username = "user0001"
Mail.Password = "contraseña"

Puede especificar, si lo desea, más de un servidor de correo, separándolos con puntos y coma (;), de modo que si el primero está caído, se hará uso del siguiente, y así hasta el último:

Mail.Host = "smtp.midominio.com; smtp.miotrodominio.com;
smtp.mitercerdominio.com"

Puede especificar también la dirección del emisor, así como un nombre opcional:

Mail.From = "ventas@midominio.com"
Mail.FromName = "Departamento de Ventas" ' Opcional

Para insertar los destinatarios de los mensajes, así como quiénes recibirán copia (apartados CC, BCC y Responder A), existen los métodos asociados AddAddress, AddCC, AddBcc y AddReplyTo. Disponen de dos parámetros, el segundo de los cuales es opcional:

Mail.AddAddress "destino@dominio.com", "Destinos"
Mail.AddCC "viajes@agencia.com" ' El nombre es opcional

Use las propiedades Subject y Body para indicar el asunto y cuerpo del mensaje. Puede crear el mensaje en formato de texto o HTML. En el segundo caso, deberá especificar la propiedad IsHTML al valor True:

Mail.Subject = "Mensaje de Ventas"
Mail.Body = "<HTML>><BODY BGCOLOR=#0000FF>Estimado Sr:....</BODY></HTML>"
Mail.IsHTML = True

Para adjuntar un archivo puede usar el método AddAttachment. Puede llamarlo por cada archivo que desee adjuntar. Recuerde que debe especificar la ruta completa a disco del archivo:

Mail.AddAttachment "d:\xvrt\dominio.com\archivo.doc"

Finalmente, para enviar el mensaje debe llamar al método Send (o al método SendToQueue para envíos a múltiples destinatarios). En caso de error, el método lanza una excepción, que puede capturar a través de la sentencia On Error Resume Next:

On Error Resume Next
Mail.Send ' ó Mail.SendToQueue
If Err <> 0 Then
Response.Write "An error occurred: " & Err.Description
End If

Algunas características especiales

  • Envío de mensajes con imágenes embebidas y sonido.
  • Permite autentificación en el envío.
  • Encolado de mensajes (SendToQueue).
  • Alfabetos especiales (no ASCII).
  • Caracteres especiales en la cabecera del mensaje (no ASCII).
  • Soporte para utilización de NNTP (envío de artículos a grupos de noticias).

Puede encontrar más información al respecto de las características del producto, así como ejemplos, en la web del AspEmail.