Saltar al contenido principal
Módulos

Email

Email

El módulo Email es responsable de realizar acciones de manipulación de correos electrónicos.

js
await Email.send["v1_0_0"]({
from: 'roberty@dominio.com',
to: 'user@dominio.com',
subject: 'Assunto do e-mail',
html: '<h1>Corpo do e-mail</h1>',
})

Métodos

createConnectionConfiguration

Método responsable de crear una configuración de conexión con un servidor de correo electrónico.

js
const config = await Email.createConnectionConfiguration["v1_0_0"]({
host: 'smtp.dominio.com',
port: 587,
user: 'roberty@dominio.com',
password: 'senha',
})

Parámetros obligatorios

  • host: String - dirección del servidor de correo electrónico.
  • port: Number - puerto del servidor de correo electrónico.
  • user: String - usuario del servidor de correo electrónico.
  • password: String - contraseña del servidor de correo electrónico.

Parámetros opcionales

  • tls: Boolean - indica si la conexión se realizará vía TLS.
  • tlsOptions: Object - opciones de TLS.
  • useCustomSMTP: Boolean - indica si el servidor será configurado como SMTP personalizado.

Retorno

La constante config recibirá un objeto con todas las configuraciones de conexión, que puede utilizarse como parámetro en los otros métodos de correo electrónico.

downloadAttachments

Método responsable de descargar los adjuntos de un correo electrónico.

js
await Email.downloadAttachments["v1_0_0"]({
pathDownload: 'C:/Users/roberty/Downloads',
mail: emails[0]
})

Parámetros obligatorios

  • pathDownload: String - ruta donde serán descargados los adjuntos.
  • mail: Object - objeto de correo electrónico obtenido a través del método search.

Parámetros opcionales

Este método no tiene parámetros opcionales.

Retorno

Este método no tiene retorno.

getSubject

Método responsable de obtener el asunto de un correo electrónico devuelto por el método search.

js
const subject = Email.getSubject["v1_0_0"]({
mail: emails[0]
})

Parámetros obligatorios

  • mail: Object - objeto de correo electrónico obtenido a través del método search.

Parámetros opcionales

Este método no tiene parámetros opcionales.

Retorno

La constante subject recibirá un String con el asunto del correo electrónico.

getTextContent

Método responsable de obtener el contenido en texto plano de un correo electrónico, eliminando las etiquetas HTML.

js
const text = Email.getTextContent["v1_0_0"]({
mail: emails[0]
})

Parámetros obligatorios

  • mail: Object - objeto de correo electrónico obtenido a través del método search.

Parámetros opcionales

Este método no tiene parámetros opcionales.

Retorno

La constante text recibirá un String con el contenido en texto puro del correo electrónico. Si el correo tiene texto plano, este se devuelve directamente; en caso contrario, el HTML se convierte a texto.

markSeen

Método responsable de marcar un correo electrónico como leído.

js
await Email.markSeen["v1_0_0"]({
mail: emails[0],
})

Parámetros obligatorios

  • mail: Object - objeto de correo electrónico obtenido a través del método search.

Parámetros opcionales

  • boxName: String - nombre de la bandeja donde el correo será marcado como leído. Valor predeterminado: INBOX.

Retorno

Este método no tiene retorno.

moveEmail

Método responsable de mover un correo electrónico de una bandeja a otra.

js
await Email.moveEmail["v1_0_0"]({
connection: config,
email: emails[0],
destinationBox: 'Processados',
sourceBox: 'INBOX',
})

Parámetros obligatorios

  • connection: Object - configuración de conexión obtenida a través del método createConnectionConfiguration.
  • email: Object - objeto de correo electrónico obtenido a través del método search. Debe contener uuid (number) y opcionalmente messageId (string).
  • destinationBox: String - nombre de la bandeja de destino hacia donde será movido el correo.

Parámetros opcionales

  • sourceBox: String - nombre de la bandeja de origen donde se encuentra el correo. Valor predeterminado: INBOX.

Retorno

Este método no tiene retorno.

replyEmail

Método responsable de responder a un correo electrónico.

js
await Email.replyEmail["v1_0_0"]({
email: emails[0],
from: 'roberty@dominio.com',
html: '<p>Resposta ao e-mail.</p>',
connection: config,
})

Parámetros obligatorios

  • email: Object - objeto de correo electrónico obtenido a través del método search.
  • from: String - dirección de correo electrónico del remitente de la respuesta.
  • html: String - cuerpo HTML de la respuesta.

Parámetros opcionales

  • connection: Object - configuración de conexión obtenida a través del método createConnectionConfiguration. Si no se indica, utiliza las credenciales SMTP predeterminadas de Roberty.
  • subject: String - asunto de la respuesta. Si no se indica, utiliza el asunto original del correo.
  • cc: String - dirección de correo electrónico para copia (CC).
  • bcc: String - dirección de correo electrónico para copia oculta (BCC).
  • attachments: String[] - rutas de los archivos que serán adjuntados.
  • replyToAll: Boolean - si es true, responde a todos los destinatarios originales. Valor predeterminado: false.
  • includeOriginal: Boolean - si es true, incluye el correo original citado en el cuerpo de la respuesta. Valor predeterminado: true.

Retorno

Este método no tiene retorno.

Método responsable de buscar correos electrónicos en una bandeja de entrada.

js
const emails = await Email.search["v1_0_0"]({
boxName: 'INBOX',
connection: config,
criteria: {
conditionFlag: 'ALL',
}
})

Parámetros obligatorios

  • boxName: String - nombre de la bandeja de entrada.
  • connection: Object - configuración de conexión obtenida a través del método createConnectionConfiguration.
  • criteria: Object - criterios de búsqueda:
    • conditionFlag: String - bandera de búsqueda. Valores: ALL, UNSEEN, SEEN, UNANSWERED, ANSWERED, DELETED, UNDELETED, DRAFT, UNDRAFT, RECENT, OLD, FLAGGED, UNFLAGGED.
    • conditions: Object[] - condiciones adicionales. Cada objeto tiene:
      • query: String - tipo de búsqueda: BCC, CC, FROM, TO, SUBJECT, TEXT, BODY, KEYWORD.
      • value: String - valor que será buscado.
      • typeCondition: String - operador lógico: AND | OR. Valor predeterminado: AND.

Parámetros opcionales

  • skipAttachments: Boolean - cuando es true, los adjuntos no se descargan durante la búsqueda. Valor predeterminado: false.

Retorno

La constante emails recibirá un array de objetos de correo electrónico que pueden usarse como parámetro en los métodos markSeen, downloadAttachments, moveEmail, replyEmail, getSubject y getTextContent.

send

Método responsable de enviar un correo electrónico.

js
await Email.send["v1_0_0"]({
from: 'roberty@dominio.com',
to: 'email@dominio.com',
subject: 'Assunto',
html: '<h1>Body email</h1>',
})

Parámetros obligatorios

  • from: String - dirección de correo electrónico del remitente.
  • to: String - dirección de correo electrónico del destinatario.
  • subject: String - asunto del correo electrónico.
  • html: String - cuerpo del correo electrónico en HTML.

Parámetros opcionales

  • cc: String - dirección de correo electrónico para copia (CC).
  • bcc: String - dirección de correo electrónico para copia oculta (BCC).
  • replyTo: String - dirección hacia la cual serán dirigidas las respuestas.
  • attachments: String[] - rutas de los archivos que serán adjuntados.
  • auth: Object - credenciales de autenticación (user: String, pass: String).
  • useCustomSMTP: Boolean - indica si se usará un servidor SMTP personalizado.
  • host: String - dirección del servidor SMTP.
  • port: Number - puerto del servidor SMTP.
  • secure: Boolean - indica si la conexión tendrá cifrado TLS.

Retorno

Este método no tiene retorno.