Interfejs Gmail API używa Thread
zasobów, aby grupować odpowiedzi na e-maile z oryginalną wiadomością w jednym wątku. Dzięki temu możesz pobrać wszystkie wiadomości w rozmowie w odpowiedniej kolejności, co ułatwia uzyskanie kontekstu wiadomości lub doprecyzowanie wyników wyszukiwania.
Podobnie jak wiadomości, wątki mogą mieć przypisane etykiety. W przeciwieństwie do wiadomości wątków nie można tworzyć, a jedynie usuwać. Wiadomości można jednak wstawiać do wątku.
Spis treści
Pobieranie wątków
Wątki to prosty sposób na pobieranie wiadomości w rozmowie w odpowiedniej kolejności.
Wymieniając listę wątków, możesz grupować wiadomości według rozmowy i dostarczać dodatkowy kontekst. Listę wątków możesz pobrać za pomocą metody threads.list
lub pobrać konkretny wątek za pomocą metody threads.get
. Możesz też filtrować wątki, używając tych samych parametrów zapytania co w przypadku Message
. Jeśli jakakolwiek wiadomość w wątku pasuje do zapytania, wątek ten jest zwracany w wyniku.
Poniższy przykładowy kod pokazuje, jak używać obu metod w przykładzie, który wyświetla najaktywniejsze wątki w Twojej skrzynce odbiorczej. Metoda threads.list
pobiera wszystkie identyfikatory wątków, a następnie metoda threads.get
pobiera wszystkie wiadomości w każdym wątku.
W przypadku wątków z co najmniej 3 odpowiedziami wyodrębniamy wiersz Subject
i wyświetlamy niepuste wiersze oraz liczbę wiadomości w wątku. Ten przykładowy kod znajdziesz też w odpowiednim filmie DevByte.
Python
Dodawanie kopii roboczych i wiadomości do wątków
Jeśli wysyłasz lub przenosisz wiadomości, które są odpowiedzią na innego e-maila lub stanowią część rozmowy, aplikacja powinna dodać tę wiadomość do powiązanego wątku. Ułatwia to użytkownikom Gmaila, którzy biorą udział w rozmowie, zachowanie kontekstu wiadomości.
Wersję roboczą można dodać do wątku w ramach tworzenia, aktualizowania lub wysyłania wersji roboczej wiadomości. Możesz też dodać wiadomość do wątku w ramach wstawiania lub wysyłania wiadomości.
Aby wiadomość lub wersja robocza mogła należeć do wątku, musi spełniać te kryteria:
- Żądany
threadId
musi być określony w parametrzeMessage
lubDraft.Message
, który podajesz w żądaniu. - Nagłówki
References
iIn-Reply-To
muszą być ustawione zgodnie ze standardem RFC 2822. - Nagłówki
Subject
muszą być zgodne.
Zapoznaj się z przykładami tworzenia wersji roboczej i wysyłania wiadomości. W obu przypadkach wystarczy dodać klucz threadId
powiązany z identyfikatorem wątku do metadanych wiadomości, czyli obiektu message
.