En este taller practicará el envío de mensajes de correo desde una página ASP. Para ello utilizará el objeto CDONTS que se incluye con el Sistema operativo NT versión 4.0.
Descripción del objeto CDONTS
CDONTS (Collaboration Data Objects for NT) es un componente que permite enviar mensajes de correo electrónico desde las páginas ASP.
Como su nombre indica está disponible en servidores NT y en particular a partir de la versión 4.0. ya que para versiones anteriores se utilizaba el componente SendMail
Entre algunas de sus características más importantes está la posibilidad de enviar mensajes en formato de texto o bien HTML.
Para utilizar CDO se requiere que esté instalado y operativo un servicio SMTP (Simple Mail Transfer Protocol) ya sea en la propio servidor o en otro servidor de la red local. SMTP es instalado por defecto con IIS 4.0 y puede aceder a sus propiedades desde la cónsola de administración de IIS.
Instrucciones necesarias en la creación y envio de mensajes
Creación del objeto
Set mailobj = Server.CreateObject("CDONTS.NewMail")
Formato del mensaje (texto o HTML)
mailobj.mailFormat = 0 mailobj.bodyFormat = 0
Propiedades del correo
mailobj.from = "[email protected]" mailobj.to = "[email protected]" mailobj.subject = "saludos" mailobj.body = "Hola, este es un mensaje enviado desde una página ASP"
Acción de enviar el mensaje (deben haberse inicializado las anteriores variables)
mailobj.send
Acción de enviar el mensaje
myCDO.Send "[email protected]", "[email protected]","Saludos",_ "Hola, este es un mensaje enviado desde una página ASP"
Otras propiedades
Entre otras propiedades interesantes que pueden tener los mensajes enviados con CDONTS destaca el parámetro importancia, ficheros adjuntos, o codificación MIME del mensaje.
En el caso de adjuntar ficheros (atachment), éstos deben estar localizados en unidades accesibles por el servidor y no por el cliente o navegador).
Ejemplo
Página de construcción del mensaje
<HTML> <BODY> <H1>Creación del mensaje</H1> <FORM ACTION="enviar.asp" METHOD="POST"> <TABLE> <TR> <TD ALIGN="RIGHT">Para:</TD> <TD><INPUT TYPE="TEXT" SIZE="30" NAME="destinatario"></TD> </TR> <TR> <TD ALIGN="RIGHT">De:</TD> <TD><INPUT TYPE="TEXT" SIZE="30" NAME="remitente"></TD> </TR> <TR> <TD ALIGN="RIGHT" NOWRAP>Asunto:</TD> <TD ALIGN="LEFT"> <INPUT TYPE="TEXT" SIZE="67" NAME="asunto"> </TD> </TR> </TABLE> <TABLE> <TR> <TD VALIGN="TOP" ALIGN="RIGHT" NOWRAP>Texto del mensaje:</TD> <TD ALIGN="LEFT" NOWRAP> <TEXTAREA WRAP="OFF" ROWS="7" COLS="50" NAME="cuerpo"></TEXTAREA> </TD> </TR> </TABLE> <INPUT TYPE="RESET" NAME="Cancelar" VALUE="Borrar"> <INPUT TYPE="SUBMIT" NAME="Enviar" VALUE="Enviar"> </FORM> </BODY> </HTML>
<% Set mailobj = Server.CreateObject("CDONTS.NewMail") mailobj.mailFormat = 0 mailobj.bodyFormat = 0 mailobj.from = request.form("remitente") mailobj.to = request.form("destinatario") mailobj.subject = request.form("asunto") mailobj.body = request.form("cuerpo") mailobj.send %>
Otras utilidades del objeto CDONTS
Si bien el uso más extendido del objeto CDONTS es el envio de correo, también puede utilizarse para visualizar en páginas ASP los mensajes recibidos por el servidor de correo SMTP de nuestro servidor NT.
El siguiente código ilustra como leer los mensajes de la carpeta "Bandeja de entrada" de la cuenta del usuario "Administrador"
<% 'Identificación Set Correo = server.createobject("CDONTS.Session") Correo.logonSMTP "administrador" , _ [email protected]" 'Acceder a la bandeja de entrada Set Bandeja = Correo.inbox 'Crear un objeto que almacene los mensajes de la bandeja anterior Set Mensajes = Bandeja.messages 'Recuperación de los mensajes For k = 0 to Mensajes.count Set elMensaje = Mensajes.item(k) 'Obtener el nombre del remitente Response.write "Desde: " & elMensaje.sender & "<br> 'Obtener el asunto del mensaje Response.write "Asunto: " & elMensaje.subject & "<br>" 'Obtener el texto del mensaje Response.write elMensaje.text & "<br>" Next 'logoff Correo.logoff Set Correo = nothing %>