Gmail automat în 30 de zile, șterge toate e-mailurile aruncate în coșul de gunoi de către utilizator. Există vreo modalitate de a schimba acest comportament implicit la 7 zile?

Răspuns

Nu, nu există nicio modalitate de a schimba comportamentul prestabilit în coșul de gunoi Gmail. Aceasta include reducerea sau lungirea duratei .


Puteți crea propriul coș de gunoi care face ceva similar, dar „este un fel de durere și nu face cu adevărat ceea ce doriți. Ar trebui să adăugați o etichetă personalizată altele decât să faceți clic pe butonul de ștergere de fiecare dată (prin intermediul butonului „Etichete”, apoi pe eticheta de gunoi personalizată)

Apoi, ar trebui să creați un filtru (o dată; sub „Setări” -> „Filtre și adrese blocate” -> „Creați un nou filtru”) care „Are cuvintele„ label:custom-trash older_than:7d cu acțiunea Delete it („Creați filtru cu această căutare” -> „Bine” -> „Ștergeți-l”).

Dar acest lucru îl trimite numai în coșul de gunoi Gmail.


Pentru a șterge automat coșul de gunoi în acest moment, ar fi nevoie de un usercript pentru a deschide dosarul coșului de gunoi (folosind document.querySelector("[href="https://mail.google.com/mail/u/0/#trash"]").click()), făcând clic pe butonul „Goliți coșul de gunoi acum” (folosind document.querySelector(".ya span").click()), apoi făcând clic pe butonul „Bine” (utilizând document.querySelector(".Kj-JD-Jl button").click()). Dar chiar și tot ar trebui să îl rulați cu pagina deschisă, ceea ce face ca filtrul să fie inutil …


TL; DR : Nu, nu este posibil.

Răspuns

Da, este posibil, dar necesită crearea unui script Google Apps personalizat. Iată cum puteți face acest lucru, pe scurt:

  • Dacă sunteți conectat la Gmail, puteți accesa https://script.google.com/ și creați un nou proiect de script.
  • Deschideți acel proiect și creați un fișier de script nou. Introduceți scriptul în acesta (vedeți mai jos un exemplu)
  • Va trebui să accesați meniul Resurse, apoi să selectați submeniul „Servicii Google avansate”, apoi să activați opțiunea „Gmail API”.
  • Panoul Servicii Google avansate vă va spune că „Aceste servicii trebuie să fie activate și în tabloul de bord API Google Cloud Platform”. Deci, va trebui să urmați acel link și să activați și acel API.
  • În cele din urmă, va trebui să creați cel puțin un declanșator care să vă apeleze scriptul la orice interval pe care îl alegeți (orar, zilnic etc.) , sau pe baza unui alt eveniment pe care îl alegeți.

Iată un script Google Apps pentru a șterge e-mailurile nedorite din diferite etichete (foldere), pe care le-am creat pe baza altor surse online. Acest cod este furnizat fără nicio garanție – utilizați pe propriul risc. Utilizarea necorespunzătoare a funcției Gmail.Users.Threads.remove () ar putea duce la pierderea permanentă a e-mailurilor importante .

/* Delete all emails from the given email address in the given label. */ function deleteEmailsFrom(fromEmailAddress, inLabel) { var queryEmailsToDelete = "from:" + fromEmailAddress + " in:" + inLabel; var permanentlyDeleteThreads = true; var pageToken; do { var threadList = Gmail.Users.Threads.list("me", { q: queryEmailsToDelete, pageToken: pageToken }); if (threadList.threads && threadList.threads.length > 0) { threadList.threads.forEach(function(thread) { Logger.log("About to delete this email thread: id: %s, snippet: %s", thread.id, thread.snippet); if (permanentlyDeleteThreads) { Gmail.Users.Threads.remove("me", thread.id); Logger.log("Deleted this email thread: id: %s, snippet: %s", thread.id, thread.snippet); } }); } pageToken = threadList.nextPageToken; } while (pageToken); } /* Delete all emails from the given email address in both Spam and Trash folders. */ function deleteSpamOrTrashEmailsFromAddress(fromEmailAddress) { deleteEmailsFrom(fromEmailAddress, "trash"); deleteEmailsFrom(fromEmailAddress, "spam"); } function deleteUnwantedSpamOrTrashEmails() { deleteSpamOrTrashEmailsFromAddress("[email protected]"); deleteSpamOrTrashEmailsFromAddress("[email protected]"); deleteSpamOrTrashEmailsFromAddress("[email protected]"); } 

Răspuns

Iată un script Google Apps pe care l-am creat și îl rulez zilnic. Puteți personaliza coșul de gunoi Gmail pentru a păstra e-mailurile atâta timp cât doriți.

//INSTRUCTIONS // 1. Create two lables in Gmail: SYSTEM/reset & SYSTEM/moved // 2. Set how long you want to retain mail in trash on lines 31-34 (5m = 5 months) // 3. Setup a trigger to run this script at least as many times a day as emails you expect to accumulate in your trash over the time you selected (1 trigger a day = preserve up to 1000 emails in trash; 2 triggers a day = preserve up to 2000 emails in trash) //HOW IT WORKS // Deleted Emails are moved out of your trash and immediately back in, thus restarting the 30 day deletion time // Labels are used to keep track of which emails have been moved //WHY DAILY TRIGGERS ARE NEEEDED // Google limits script to edit up to 100 emails at a time function extendTrashTime() { function move(moved_label, empty_threads) { GmailApp.moveThreadsToArchive(empty_threads); GmailApp.moveThreadsToTrash(empty_threads); moved_label.addToThreads(empty_threads); } function reset(reset_label, moved_label, moved_threads) { reset_label.addToThreads(moved_threads); moved_label.removeFromThreads(moved_threads); } function empty(reset_label, reset_threads) { reset_label.removeFromThreads(reset_threads); } let moved_label = GmailApp.getUserLabelByName("SYSTEM/moved"); let reset_label = GmailApp.getUserLabelByName("SYSTEM/reset"); // CHANGE TIME TO RETAIN MAIL IN THE THREE LINES BELOW let moved_threads = GmailApp.search("in:trash newer_than:5m -label:SYSTEM/ignore label:SYSTEM/moved", 0, 100); let reset_threads = GmailApp.search("in:trash newer_than:5m -label:SYSTEM/ignore label:SYSTEM/reset", 0, 100); let empty_threads = GmailApp.search("in:trash newer_than:5m -label:SYSTEM/ignore -label:SYSTEM/moved -label:SYSTEM/reset", 0, 100); let moved_total = moved_threads.length; let reset_total = reset_threads.length; let empty_total = empty_threads.length; Logger.log("moved_total", moved_total); Logger.log("reset_total", reset_total); Logger.log("empty_total", empty_total); if (moved_total >= 0 && reset_total === 0 && empty_total > 0) { Logger.log("Phase 1: move emails & label with moved"); move(moved_label, empty_threads); } else if (moved_total > 0 && reset_total >= 0) { Logger.log("Phase 2: remove moved label and replace with reset label"); reset(reset_label, moved_label, moved_threads); } else if (moved_total === 0 && reset_total > 0) { Logger.log("Phase 3: remove reset label"); empty(reset_label, reset_threads); } else { Logger.log("No results for empty_threads query"); } } 

Lasă un răspuns

Adresa ta de email nu va fi publicată. Câmpurile obligatorii sunt marcate cu *