Lavorare con messaggi e filtri Gmail

Iniziare con IGmailClient

Aspose.Email per .NET offre un supporto completo per interagire con Gmail tramite il IGmailClient interfaccia. Puoi gestire messaggi e filtri in una casella Gmail — inclusi elencare, recuperare, inviare, aggiungere e eliminare email, nonché gestire filtri personalizzati per la classificazione automatica.

Per utilizzare le funzionalità Gmail, è necessario inizializzare un’istanza IGmailClient usando clientId, clientSecret, refreshToken e l’indirizzo email di destinazione. Tutti gli esempi seguenti presumono questa configurazione:

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

Elenca i messaggi in una casella Gmail

Recupera tutti i messaggi dalla casella in forma leggera GmailMessageInfo oggetti. Il seguente esempio di codice dimostra come recuperare un elenco di messaggi disponibili in una casella Gmail senza caricare il contenuto completo:

var messages = client.ListMessages();

Recupera ed elimina messaggi Gmail

Il seguente esempio di codice dimostra come leggere ed eliminare messaggi da Gmail usando i loro identificatori unici:

  1. Usa client.ListMessages() per recuperare un elenco di messaggi.
  2. Imposta un ciclo for per iterare i primi tre messaggi.
  3. All’interno del ciclo, recupera ogni messaggio usando client.FetchMessage(messages[i].Id).
  4. Stampa l’oggetto e il corpo del messaggio recuperato.
  5. Chiama client.DeleteMessage(messages[i].Id, true) per eliminare il messaggio e spostarlo nel cestino.
  6. Conferma l’eliminazione con il messaggio.
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.");
}

Invia un messaggio tramite Gmail

Componi e invia un’email, inclusi gli allegati, usando il metodo SendMessage(). Il seguente esempio di codice dimostra come inviare un’email tramite Gmail con un allegato:

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}");