Compartilhar via


Analisar o histórico de download de mensagens de uma conta POP3

Este tópico descreve como a estrutura POP3 BLOB que representa o histórico de download da mensagem de uma conta POP3 e identifica mensagens baixadas ou excluídas nessa conta.

Por que analisar o histórico de download da mensagem?

O provedor de protocolo POP (Post Office) para o Outlook permite aos usuários recuperarem e baixarem novas mensagens de email em seu dispositivo local e posteriormente sair ou excluir essas mensagens de email no servidor de email. Quando o cliente de email verifica se há novas mensagens baixar, deve ser capazes de identificar e baixar as novas mensagens para essa caixa de entrada. O cliente de email faz isso primeiramente usando o comando UIDL (lista de ID exclusivo) para obter um mapa de cada mensagem que já foi enviada para essa caixa de entrada para um identificador exclusivo (UID). O cliente também obtém o histórico de download de mensagem para mensagens baixadas ou excluídas na caixa de entrada desse cliente. Usando o mapa de mensagem UID e o histórico de download, o cliente pode identificar mensagens ausentes do histórico como novas e fazer o download em seguida.

Para obter histórico de download de mensagem para a caixa de entrada:

Estrutura de BLOB POP

Estrutura POP BLOBs, conforme descrito na tabela 1, comece com dois campos versão e contagemseguido pelo número decontagemdas marcas de recurso, cada uma delas é terminada por caractere nulo.

Tabela 1. Estrutura do BLOB que representa o histórico de download de mensagens de uma conta POP3

Campo de BLOB Tamanho Descrição
Versão
2 bytes
Deve ser 3 (PBLOB_VERSION_NUM).
Contagem
2 bytes
O número das marcas de recurso neste BLOB.
Marca de recursos
Variável
Terminada em 0 ou por caractere nulo ou UTF-8 cadeias de caracteres que codificam as marcas de recursos. O número de cadeias de caracteres terminada por caractere nulo deve corresponder com a contagem.

Cada marca de recurso especifica a operação que é aplicada a uma mensagem, alguns metadados de data e hora sobre a operação e também codifica o UID da mensagem. O formato de uma cadeia de marca de recursos funciona da seguinte forma e isso será explicado em detalhes na tabela 2.

Ocyyyymmddhhmmssuuu...

Tabela 2. Estrutura de uma marca de recurso

Campo em uma marca de recursos Tamanho Descrição
O
1 caractere
Executar a operação na mensagem de email. O valor deve ser "+", "-", ou "&", o que indica uma operação de obtenção, exclusão ou exclusão bem-sucedida, respectivamente.
c
1 caractere
Parte do conteúdo da mensagem envolvido na operação. O valor deve ser "", "h" ou "b", que indica o conteúdo de nenhuma, cabeçalho ou corpo, respectivamente.
yyyy
4 caracteres
Os quatro dígitos do ano da operação.
MM
2 caracteres
Os dois dígitos do mês da operação.
dd
2 caracteres
Os dois dígitos do dia da operação.
hh
2 caracteres
Os dois dígitos da hora da operação.
mm
2 caracteres
Os dois dígitos do minuto da operação.
ss
2 caracteres
Os dois dígitos do segundo da operação.
uuu…
Tamanho variável
UID codificado de uma mensagem.

Exemplo

Tabela 1. Mostra um exemplo de BLOB que representa o histórico de download de mensagem de uma conta POP.

Figura 1. Estrutura blob de exemplo para o histórico de download de mensagens de uma conta POP3

BLOB for messages download history of POP3 account

Com base na estrutura descrita na tabela 1 e na tabela 2, este BLOB representa o histórico de download de 23 mensagens de email.

Para analisar o UID bruto em cada marca de recurso, esteja ciente de que o UID segue este codificação: caracteres em UID são essencialmente caracteres alfanuméricos e cada caractere não alfanumérico é precedido pelos caracteres ASCII "$" (0x24). Então, os caracteres ASCII $2d representam os caracteres não-alfanuméricos ",". A figura 2 mostra um exemplo da primeira conversão UID bruta na marca de recursos 1 para a representação ASCII e depois a conversão de caracteres não alfanuméricos precedidos por "$" para produzir UID real:

0BC535DB-EA63-11E1-A75C-00215AD7BB74

Figura 2. Convertendo a UID bruta em uma marca de recurso na UID da mensagem real

Converting raw UID in BLOB to actual message UID

Para interpretar a marca de recurso 1 neste BLOB: a mensagem com o UID 0BC535DB-EA63-11E1-A75C-00215AD7BB74 foi recuperada com êxito em 6 de setembro de 2012, às 13:11:38.

Da mesma forma, você pode analisar as demais 22 marcas de recurso para aquele BLOB.

Confira também