Servicio IniEnviaMail

INTRODUCCIÓN

El servicio IniEnviaMail permite enviar un correo electrónico basado en un contenido previamente
generado y almacenado en el repositorio de la plataforma (por ejemplo, un archivo.eml).
A diferencia de otros servicios más simples como EseEnviaMail, esta implementación no solo
realiza el envío del mensaje a los destinatarios especificados (Para, CC y CCO), sino que además
devuelve un resultado detallado del proceso de envío, indicando cuántos destinatarios fueron
exitosamente alcanzados, cuántos fallaron, y brindando información precisa sobre cada error
detectado (por ejemplo, direcciones inválidas o fallos de autenticación SMTP).

Este servicio se adapta especialmente a escenarios donde es necesario:

· Controlar y auditar el resultado del envío de correos.

· Reutilizar correos ya armados (formato.eml).

Clase: IniEnviaMaiBean

JNDI: nodum/servicios/genericos/mail/IniEnviaMail

Tipo: Inicialización.

Módulo: Básicos

PARÁMETROS DE ENTRADA

 

Posición Parámetro Literal Obligatorio Modificable  Descripción
0 IdContenido Identificador de
contenido de
archivo eml
S S Identificador del contenido (Content) que contiene el archivo .eml.
1 De Dirección origen. N S Dirección del remitente. Si se omite, se usa la configurada en Props.
2 Resp Direcciones de respuesta (reply-to), separadas por coma. N S Destinatarios a los que se responderá si se hace "Responder"
3 Para Dirección de los destinatarios principales, separados por coma. N S Lista de destinatarios principales (campo TO).
4 CC Destinatarios secundarios, separados por coma. N S Copia (campo CC)
5 CCO Destinatarios ocultos, separados por coma. N S Copia oculta (campo BCC).
6 PropsSQL Consulta SQL de propiedades N S SQL que retorna propiedades para la sesión SMTP.
7 Props Propiedades adicionales N S Propiedades en formato texto, tipo clave = valor;.

FORMATO DE SALIDA

El servicio retorna un único registro con los siguientes campos, se retorna un vector de 6.

Posición Parámetro Literal Descripción
0 total_ok Envíos exitosos Cantidad total de destinatarios a los que se envió correctamente.
1 total_error Envíos fallidos Cantidad total de fallos en el envío.
2 para_error Fallos en TO Lista de direcciones TO que fallaron.
3 cc_error Fallos en CC Listo de direcciones CC que fallaron.
4 cco_error Fallos en CCO Lista de direcciones CCO que fallaron.
5 detalle_error Detalle del error Detalle del fallo (SMT, timeout, autenticación, etc.).

 

CONSIDERACIONES TÉCNICAS

El servicio interpreta direcciones ignore :; como vacías y las omite.

Si se retorna una excepción de tipo ServicioControladoException, el error se considera funcional
(por ejemplo: sin destinatarios).

Usa internamente la clase MailSender que encapsula lógica de conexión, autenticación y envío.

El archivo temporal se guarda en System.getProperty("nodum.path.tmp")

 

OBSERVACIONES

El servicio necesita al menos un destinatario válido (TO, CC o CCO).

Los campos de direcciones pueden aceptar múltiples emails separados por coma.

El archivo .eml es leído desde el repositorio Content.

EJEMPLO COMPLETO DE USO

 

@G.F1.tv_prueEnvio:nom_aux18 es un control adjunto en el cual ingresamos un archivo de tipo
eml para las pruebas.

Retorno

{ 1,0, null, null, null, null }

En el ejemplo solo estamos guardando el primer valor que es la cantidad de destinatarios a los
que se les envió el correo.

De fondo el mail se envia al/los destinatario/s.


Descargar o Imprimir


¿TE SIRVIÓ ESTE ARTÍCULO?