Class: Pop3

@nginstack/engine/lib/email/Pop3~ Pop3


new Pop3(host, port, useSsl)

Classe que implementa um cliente do protocolo POP3 (Post Office Protocol Version 3) definido pelo RFC 1939.

Parameters:
Name Type Description
host string

Nome do host ou endereço IP do servidor POP3.

port number

Número da porta do servidor POP3.

useSsl boolean

Se true, a comunicação entre o Engine e o servidor POP3 será feita através de um canal seguro SSL/TLS.

Example
const pop3 = new Pop3('pop.gmail.com', 995, true);
pop3.login('enginePop3', 'xxxxxx');
const emailSource = pop3.retrieve(1);

const emailMessage = new EmailMessage();
emailMessage.decode(emailSource);

const messagesParts = emailMessage.messagesParts;
let parts = '';
messagesParts.forEach(function (message) {
  parts += message.content + '\n';
});

Members


authCommand :string

Comando que deve ser utilizado na autenticação do usuário. Valores possíveis: 'pass' e 'apop'.

Type:
  • string

host :string

Nome do host ou endereço IP do servidor de POP3.

Type:
  • string

port :number

Número da porta que o servidor de POP3 está atendendo requisições.

Type:
  • number

timeout :number

Tempo limite em milissegundos para aguardar resposta de requisições ao servidor de POP3.

Type:
  • number

useSsl :boolean

Indica que a conexão com o servidor POP3 utiliza um canal seguro.

Type:
  • boolean

Methods


delete(messageNumber)

Marca uma mensagem no servidor de POP3 como excluída. A efetivação da deleção é realizada no logout. O comando delete não necessariamente apaga a mensagem do servidor de POP3, em alguns servidores a mensagem é apenas marcada como lida.

Parameters:
Name Type Description
messageNumber number

Número da mensagem no servidor POP3.

Example
const pop3 = new Pop3('pop.gmail.com', 995, true);
pop3.login('enginePop3', 'xxxxxx');
pop3.delete(1);

list( [messageNumber])

Lista o número da mensagem e o seu respectivo tamanho em bytes.

Opcionalmente, pode ser informado um número de mensagem. Caso seja informado, o comando LIST retornará apenas as informações dessa mensagem específica.

Parameters:
Name Type Argument Description
messageNumber number <optional>

Número da mensagem no servidor POP3.

Returns:

Array de objetos contendo informações das mensagens.

Type
Array.<Pop3MessageInfo>
Example
const pop3 = new Pop3('pop.gmail.com', 995, true);
pop3.login('enginePop3', 'xxxxxx');
const list = pop3.list();
let result = '';
for (let i = 0; i < list.length; i++) {
  result += 'Número da mensagem: ' + list[i].messageNumber +
    ' tamanho da mensagem em bytes: ' + list[i].messageSize + ' bytes.\n';
}

login(username, password)

Realiza a autenticação do usuário no servidor de POP3.

Parameters:
Name Type Description
username string

Nome do usuário no servidor de POP3.

password string

Senha do usuário no servidor de POP3.

Example
const pop3 = new Pop3('pop.gmail.com', 995, true);
pop3.login('enginePop3', 'xxxxxx');

logout()

Encerra a sessão com o servidor de POP3 e efetiva a marcação de mensagens como lidas ou excluída.


noop()

Envia o comando NOOP para o servidor POP3, esse comando é utilizado para manter a conexão ativa sem realizar nenhuma operação adicional.


reset()

Envia o comando RSET para o servidor POP3. Esse comando restaura o estado da sessão, desmarcando qualquer mensagem marcada para exclusão.


retrieve(messageNumber)

Obtém o conteúdo de uma mensagem do servidor de POP3 e marca a mensagem como lida.

Parameters:
Name Type Description
messageNumber number

Número da mensagem no servidor POP3.

Returns:

Conteúdo do e-mail devolvido pelo servidor POP3, excluindo a linha que indica se a operação foi executada com sucesso.

Type
string
Example
const pop3 = new Pop3('pop.gmail.com', 995, true);
pop3.login('enginePop3','xxxxxx');
const message = pop3.retrieve(1);

status()

Obtém a quantidade de mensagens não lidas no servidor e o tamanho total das mensagens em bytes.

Returns:

Um objeto com as informações de mensagens no servidor. As mensagens marcadas como excluídas não são contabilizadas pelo status.

Type
ServerStatus
Example
const pop3 = new Pop3('pop.gmail.com', 995, true);
pop3.login('enginePop3', 'xxxxxx');
const status = pop3.status();
const result = 'Quantidade de Mensagens: ' + status.messagesCount +
  ' - Tamanho em bytes: ' + status.messagesSize + ' bytes.';