L'API Gmail utilizza Thread
risorse per raggruppare le risposte alle email con il messaggio originale in un'unica conversazione o thread. Questo ti permette di recuperare tutti i messaggi in una conversazione, in ordine,
in modo da trovare più facilmente il contesto per un messaggio o perfezionare i risultati di ricerca.
Come per i messaggi, anche ai thread potrebbero essere applicate etichette. Tuttavia, a differenza dei messaggi, non è possibile creare thread, ma soltanto eliminarli. I messaggi, tuttavia, possono essere inseriti in un thread.
Sommario
Recupero dei thread
I thread offrono un modo semplice per recuperare in ordine i messaggi di una conversazione.
Elencando un insieme di thread, puoi scegliere di raggruppare i messaggi per conversazione
e fornire ulteriore contesto. Puoi recuperare un elenco di thread utilizzando il metodo threads.list
o recuperare un thread specifico con threads.get
. Puoi anche filtrare i thread utilizzando gli stessi parametri di query della risorsa Message
. Se un messaggio di un thread corrisponde alla query, quel thread viene restituito nel risultato.
L'esempio di codice riportato di seguito mostra come utilizzare entrambi i metodi in un esempio che mostra i thread più vivaci nella Posta in arrivo. Il metodo threads.list
recupera tutti gli ID thread, quindi threads.get
recupera tutti i messaggi in ogni thread.
Per quelli con 3 o più risposte, estraiamo la riga Subject
e visualizziamo quelle
non vuote più il numero di messaggi nel thread. Troverai questo esempio di codice anche nel video DevByte corrispondente.
Python
Aggiunta di bozze e messaggi ai thread
Se stai inviando o migrando messaggi che sono una risposta a un'altra email o parte di una conversazione, l'applicazione deve aggiungere il messaggio al thread correlato. In questo modo, gli utenti di Gmail che partecipano alla conversazione possono mantenere il contesto più facilmente.
È possibile aggiungere una bozza a un thread durante la creazione, l'aggiornamento o l'invio di una bozza di messaggio. Puoi anche aggiungere un messaggio a un thread come parte dell'inserimento o dell'invio di un messaggio.
Per essere parte di un thread, un messaggio o una bozza devono soddisfare i seguenti criteri:
- Il valore
threadId
richiesto deve essere specificato nelMessage
oDraft.Message
che fornisci nella richiesta. - Le intestazioni
References
eIn-Reply-To
devono essere impostate in conformità allo standard RFC 2822. - Le intestazioni
Subject
devono corrispondere.
Dai un'occhiata agli esempi di creazione di una bozza o invio di un messaggio. In entrambi i casi, devi semplicemente aggiungere una chiave threadId
accoppiata a un ID thread ai metadati di un messaggio, l'oggetto message
.