Skip to main content

Email

O módulo Email é responsável por realizar ações que são capazes de manipular e-mails. Seus métodos podem ser acessados conforme o exemplo abaixo:

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 responsável por criar uma configuração de conexão com um servidor de e-mail.

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

Parâmetros obrigatórios

  • host: String - espera uma string com o endereço do servidor de e-mail.
  • port: Number - espera um número com a porta do servidor de e-mail.
  • user: String - espera uma string com o usuário do servidor de e-mail.
  • password: String - espera uma string com a senha do servidor de e-mail.

Parâmetros opcionais

  • tls: Boolean - espera um valor booleano que indica se a conexão será feita através de TLS.
  • tlsOptions: Object - espera um objeto com as opções de TLS.
  • useCustomSMTP: Boolean - espera um valor booleano que indica se o servidor de e-mail será configurado como um servidor SMTP customizado.

Retorno

A constante ou variável criada, como a config do exemplo mostrado anteriormente, receberá um objeto com todas as configurações de conexão e podem ser acessadas da seguinte forma:

config.host
config.port
...

Essa configuração poderá ser utilizada como configuração padrão para os outros métodos de email.

downloadAttachments

Método responsável por baixar os anexos de um e-mail.

await Email.downloadAttachments["v1_0_0"]({
pathDownload: 'C:/Users/roberty/Downloads',
email: 'roberty@dominio.com'
})

Parâmetros obrigatórios

  • pathDownload: String - espera uma string com o caminho onde os anexos serão baixados.
  • email: Object - espera um objeto com a configuração de conexão que pode ser obtida através do método createConnectionConfiguration.

Parâmetros opcionais

Este método não possui parâmetros opcionais.

Retorno

Este método não retorna nenhum valor.

markSeen

Método responsável por marcar um e-mail como lido.

await Email.markSeen["v1_0_0"]({
email: email,
})

Parâmetros obrigatórios

  • email: Object - espera um objeto com a estrutura de email que pode ser obtido através do método search.

Parâmetros opcionais

Este método não possui parâmetros opcionais.

Retorno

Este método não retorna nenhum valor.

Método responsável por buscar e-mails em uma caixa de entrada.

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

Parâmetros obrigatórios

  • boxName: String - espera uma string com o nome da caixa de entrada.
  • connection: Object - espera um objeto com a configuração de conexão que pode ser obtida através do método createConnectionConfiguration.
  • criteria: Object - espera um objeto com os critérios de busca. Os critérios podem ser os seguintes:
    • conditionFlag: String - espera uma string com o flag que será utilizado para buscar os e-mails. Os flags são: ALL, UNSEEN, SEEN, UNANSWERED, ANSWERED, DELETED, UNDELETED, DRAFT, UNDRAFT, RECENT, OLD, UNOLD, FLAGGED, UNFLAGGED, UNDELETED.
    • condition: Object[] - espera um array de objetos, onde cada objeto possui as seguintes propriedades:
      • query: String - espera uma string com o tipo para os emails na caixa de entrada. Os tipo são: "BCC", "CC", "FROM", "TO", "SUBJECT", "TEXT", "BODY","KEYWORD".
      • value: String - espera uma string com o valor que será pesquisado.
      • typeCondition: String - espera uma string com o operador que será realizado na pesquisa. Os operadores são: "AND", "OR".

Parâmetros opcionais

Este método não possui parâmetros opcionais.

Retorno

A constante ou variável criada, como a emails do exemplo mostrado anteriormente, receberá um array do tipo eMailParsed com todos os e-mails encontrados. Esses e-mails poderão ser usados de parâmetros para as ações markSeen e downloadAttachments.

send

Método responsável por enviar um e-mail.

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

Parâmetros obrigatórios

  • from: String - espera uma string com o endereço de e-mail do remetente.
  • to: String - espera uma string com o endereço de e-mail do destinatário.
  • subject: String - espera uma string com o assunto do e-mail.
  • html: String - espera uma string com o corpo do e-mail.

Parâmetros opcionais

  • attachments: String[] - espera um array de strings com os caminhos dos anexos.
  • auth: Object - espera um objeto com as credenciais de autenticação. Essas credenciais são:
    • user: String - espera uma string com o usuário.
    • pass: String - espera uma string com a senha.
  • useCustomSMTP: Boolean - espera um valor booleano que indica se o servidor de e-mail será configurado como um servidor SMTP customizado.
  • host: String - espera uma string com o endereço do servidor SMTP.
  • port: Number - espera um número com a porta do servidor SMTP.
  • secure: Boolean - espera um valor booleano que indica se a conexão terá criptografia TLS.

Retorno

Este método não possui retorno.