SMTP / IMAP / POP3 Email Activities
Versión: 1.0.5 · ID: zoan-packages-smtp · Autor: Zoan Software
Este paquete trabaja con correo electrónico conectándose directamente a un servidor, sin depender de un cliente instalado. Funciona con cualquier servidor estándar que acepte usuario y contraseña: Gmail, el servidor corporativo de tu empresa o el de tu proveedor de hosting.
Tres protocolos, tres usos
Sección titulada «Tres protocolos, tres usos»| Protocolo | Para qué | Actividades |
|---|---|---|
| SMTP | Enviar correo | SMTP Send |
| IMAP | Leer y gestionar correo (carpetas, leído/no leído, mover, eliminar) — recomendado | IMAP Read, IMAP Save Attachment, IMAP Mark Read, IMAP Move, IMAP Delete |
| POP3 | Leer de forma básica (sin carpetas ni estado) — solo si no hay IMAP | POP3 Read, POP3 Delete |
Conexión al servidor
Sección titulada «Conexión al servidor»Estas actividades no mantienen una sesión: cada una se conecta, se autentica, hace su trabajo y se desconecta. Por eso cada una recibe los datos de conexión del servidor. Son los mismos en todas:
| Parámetro | Tipo | Descripción |
|---|---|---|
host | string | Servidor (ej. smtp.gmail.com, imap.gmail.com, pop.gmail.com). |
port | int | Puerto. Por defecto: SMTP 587, IMAP 993, POP3 995. |
username | string | Usuario (normalmente la dirección de correo completa). |
password | credential | Contraseña o contraseña de aplicación. En POP3 es string. Ver credenciales. |
security | string | Cifrado de la conexión: auto, none, ssl o starttls. Por defecto: SMTP auto, IMAP y POP3 ssl. |
Cifrado (security) y puertos
Sección titulada «Cifrado (security) y puertos»| Valor | Qué hace | Puertos habituales |
|---|---|---|
ssl | TLS desde el primer byte (conexión cifrada de entrada). | SMTP 465, IMAP 993, POP3 995 |
starttls | Conecta en claro y pasa a TLS con STARTTLS; falla si el servidor no lo ofrece. | SMTP 587, IMAP 143, POP3 110 |
auto | Elige según el puerto: TLS directo en los puertos de SSL conocidos y STARTTLS en los demás si el servidor lo ofrece; si no lo ofrece, sigue sin cifrar. | — |
none | Sin cifrado. Solo para servidores internos de prueba. | SMTP 25, IMAP 143, POP3 110 |
El valor no distingue mayúsculas; un valor no reconocido se trata como el predeterminado del protocolo. El puerto no cambia solo al cambiar security: si usas ssl con SMTP, indica también port = 465.
Todas las actividades inician sesión con username y password; los servidores SMTP que solo aceptan envíos sin autenticación no son compatibles.
Servidores comunes
Sección titulada «Servidores comunes»| Proveedor | SMTP (enviar) | IMAP (leer) | POP3 |
|---|---|---|---|
| Gmail | smtp.gmail.com : 587 | imap.gmail.com : 993 | pop.gmail.com : 995 |
| Servidor corporativo | Los datos (servidor, puerto y cifrado) te los da el área de TI |
Seguridad: guarda la contraseña en una credencial
Sección titulada «Seguridad: guarda la contraseña en una credencial»Nunca escribas la contraseña en texto plano: guárdala en una credencial de Zoan Cloud. Con una credencial de varios campos (por ejemplo user y password), la forma que funciona en todas las actividades del paquete es:
username = credential("correo-bot")["user"]password = credential("correo-bot")["password"]En SMTP e IMAP el campo password es de tipo credencial, así que también acepta credential("correo-bot") directamente (toma el campo password). En POP3 el campo es de texto: usa siempre el indexador: credential("correo-bot")["password"] (o ["value"] si la credencial tiene un solo valor). El valor no queda expuesto en el playbook y sale enmascarado en los logs.
El flujo de lectura: mailId
Sección titulada «El flujo de lectura: mailId»Igual que en Outlook, IMAP Read (y POP3 Read) devuelven una lista de correos (ZoanMail). Cada correo tiene un identificador, su .Id, que pasas como mailId a las demás actividades para indicar sobre qué correo actuar (guardar adjuntos, marcar, mover, eliminar):
- En IMAP es el UID del mensaje en su carpeta: estable entre conexiones mientras el correo siga en esa carpeta.
- En POP3 es el índice del mensaje en el buzón (desde
0): cambia cuando se eliminan mensajes.
IMAP Read host = "imap.gmail.com" username = credential("correo-bot")["user"] password = credential("correo-bot")["password"] unreadOnly = true → output: correos
For Each items = correos itemVariable = correo └─ activities: IMAP Save Attachment ... mailId = correo.Id outputPath = "C:/adjuntos" IMAP Mark Read ... mailId = correo.IdQué trae cada correo (ZoanMail)
Sección titulada «Qué trae cada correo (ZoanMail)»| Propiedad | Tipo | Valor en IMAP / POP3 |
|---|---|---|
.Id | string | UID (IMAP) o índice (POP3), como texto. |
.Subject | string | Asunto ("" si no tiene). |
.From | string | Dirección del primer remitente, sin el nombre visible. |
.To / .Cc | string[] | Direcciones de los destinatarios. |
.Bcc | string[] | Siempre vacío. |
.Body | string | Parte de texto plano; si el correo solo trae HTML, el HTML. |
.IsHtml | bool | true solo cuando el correo no tiene parte de texto y .Body es HTML. |
.SentAt | DateTime | Fecha del encabezado Date del mensaje (fecha de envío). |
.IsRead | bool | Estado leído en IMAP; siempre false en POP3. |
.Attachments | ZoanAttachment[] | Con includeAttachments = true: nombre, tipo MIME y contenido de cada adjunto. Si no, vacío. |
El tipo completo está en Tipos de datos › ZoanMail.
Actividades
Sección titulada «Actividades»Enviar (SMTP)
Sección titulada «Enviar (SMTP)»| Actividad | Tipo | Salida | Qué hace |
|---|---|---|---|
| SMTP Send | smtp-send | — | Envía un correo |
Leer y gestionar (IMAP)
Sección titulada «Leer y gestionar (IMAP)»| Actividad | Tipo | Salida | Qué hace |
|---|---|---|---|
| IMAP Read | imap-read | List<ZoanMail> | Lee correos con filtros |
| IMAP Save Attachment | imap-save-attachment | — | Guarda adjuntos de un correo |
| IMAP Mark Read | imap-mark-read | — | Marca un correo como leído |
| IMAP Move | imap-move | — | Mueve un correo a otra carpeta |
| IMAP Delete | imap-delete | — | Elimina un correo |
Leer básico (POP3)
Sección titulada «Leer básico (POP3)»| Actividad | Tipo | Salida | Qué hace |
|---|---|---|---|
| POP3 Read | pop3-read | List<ZoanMail> | Lee correos (sin carpetas ni filtros) |
| POP3 Delete | pop3-delete | — | Elimina un correo |
Siguientes pasos
Sección titulada «Siguientes pasos»- SMTP Send — enviar correos.
- IMAP Read — leer la bandeja con filtros.
- Uso de credenciales — guardar la contraseña de forma segura.