Trabajando con mensajes y filtros de Gmail

Comenzando con IGmailClient

Aspose.Email para .NET ofrece amplio soporte para interactuar con Gmail a través de IGmailClient interfaz. Puede gestionar mensajes y filtros en un buzón Gmail — incluyendo listar, obtener, enviar, adjuntar y eliminar correos, así como administrar filtros personalizados para clasificación automática.

Para usar las funciones de Gmail, necesita inicializar una instancia de IGmailClient usando su clientId, clientSecret, refreshToken y la dirección de correo objetivo. Todos los ejemplos siguientes asumen esta configuración:

using (IGmailClient client = GmailClient.GetInstance(clientId, clientSecret, refreshToken, email))
{
    // Work with messages or filters
}

Listar mensajes en un buzón Gmail

Recuperar todos los mensajes del buzón de forma ligera GmailMessageInfo objetos. El siguiente ejemplo de código demuestra cómo obtener una lista de mensajes disponibles en un buzón Gmail sin cargar todo el contenido:

var messages = client.ListMessages();

Obtener y eliminar mensajes de Gmail

El siguiente ejemplo de código demuestra cómo leer y eliminar mensajes de Gmail usando sus identificadores únicos:

  1. Usar client.ListMessages() para obtener una lista de mensajes.
  2. Configure un bucle for para iterar los primeros tres mensajes.
  3. Dentro del bucle, recupere cada mensaje usando client.FetchMessage(messages[i].Id).
  4. Imprima el asunto y el cuerpo del mensaje obtenido.
  5. Llame a client.DeleteMessage(messages[i].Id, true) para eliminar el mensaje y moverlo a la papelera.
  6. Confirmar eliminación con el mensaje.
var messages = client.ListMessages();

for (int i = 0; i < 3; i++)
{
    var msg = client.FetchMessage(messages[i].Id);
    Console.WriteLine($"Message {i + 1}: Subject - {msg.Subject}, Body - {msg.Body}");

    client.DeleteMessage(messages[i].Id, true);
    Console.WriteLine($"Message {i + 1} moved to trash.");
}

Enviar un mensaje a través de Gmail

Redacte y envíe un correo electrónico, incluidos los adjuntos, usando el método SendMessage(). El siguiente ejemplo de código demuestra cómo enviar un correo a través de Gmail con un adjunto:

MailMessage message = new MailMessage("sender@example.com", "recipient@example.com", "Weekly Report", "Attached is the weekly report.");

string attachmentPath = Path.Combine(TestUtil.GetTestDataPath(), "report.pdf");
message.Attachments.Add(new Attachment(attachmentPath));

string messageId = client.SendMessage(message);
Console.WriteLine($"Message with attachment sent! ID: {messageId}");