Jak zmodyfikować ten istniejący wpis skryptu i / lub kroków, aby działał automatycznie opróżniając Kosz Gmaila?
Znalazłem ten post, jak to zrobić, ale wygląda na to, że nie działa?
Oto komunikat o błędzie
Nov 25, 2020, 3:52:51 PM Error GoogleJsonResponseException: API call to gmail.users.threads.delete failed with error: Delegation denied for [email protected]
at [unknown function](Code:29:33)
at removeMyTest2(Code:23:28)
Iść do https://script.google.com
Następnie utwórz nowy projekt i wklej do niego poniższe:
function removeMyTest2() { var mymail = "[email protected]"; var mylabel = "trash"; var permanentlyRemoveMyLabel = true; var pageToken; do { var threadList = Gmail.Users.Threads.list('me', { q: 'in:' + mylabel, pageToken: pageToken }); if (threadList.threads && threadList.threads.length > 0) { threadList.threads.forEach(function(thread) { Logger.log('id: %s snippet: %s', thread.id, thread.snippet); if (permanentlyRemoveMyLabel) { Gmail.Users.Threads.remove(mymail, thread.id); Logger.log('id: %s snippet: %s REMOVED', thread.id, thread.snippet); } }); } pageToken = threadList.nextPageToken; } while (pageToken); }
Jeśli spróbujesz uruchomić skrypt tak, jak jest, wystąpi błąd.
Następnie kliknij Zasoby i przejdź do Zaawansowane usługi Google.
Przewiń w dół do Gmail API i włącz go.
Następnie kliknij łącze Google Cloud Platform w tym samym oknie, które pojawiło się, w którym włączono interfejs Gmail API.
Następnie kliknij Włącz usługi i interfejs API i wyszukaj Gmaila. Kliknij Gmail, a następnie włącz go.
Następnie wróć do ekranu skryptu i kliknij menu Edytuj i przejdź do Wyzwalacze bieżącego projektu.
Ustaw wyzwalacz, aby uruchamiać skrypt co minutę / godzinę lub w dowolnym przedziale czasowym, w którym skrypt ma działać i opróżniać kosz.
Pamiętaj, że możesz usunąć z IN: TRASH IN: SPAM lub z dowolnej innej etykiety. Nie usunie przypomnień, a usunięcie jest ostateczne. Nie możesz odzyskać żadnej z wiadomości e-mail.
Odpowiedzi
Ostrzeżenie
Kod z podanej odpowiedzi trwale usuwa wiadomości z Kosza Gmaila. Nie powinniśmy kopiować i uruchamiać kodu, którego nie rozumiemy.
Jest bardzo prawdopodobne, że wspomniany komunikat o błędzie wystąpił, ponieważ następująca linia kodu nie była edytowana:
var mymail = "[email protected]";
Wymień "[email protected]"
naSession.getActiveUser().getEmail()
Ratunek
- https://developers.google.com/apps-script/reference/base/session#getActiveUser()
Oryginalna treść odpowiedzi, o której mowa, była nieaktualna. Kilka chwil temu był redagowany przeze mnie.