Gmail poistuu automaattisesti 30 päivän kuluessa, ja kaikki käyttäjän roskakorissa olevat sähköpostit poistetaan. Onko mahdollista muuttaa tätä oletuskäyttäytymistä 7 päiväksi?

Vastaa

Ei, Gmailin roskakorin oletuskäyttäytymistä ei voida muuttaa. Tähän sisältyy keston lyhentäminen tai pitempi .


Voit luoda oman roskakorin, joka tekee jotain vastaavaa, mutta se on tavallaan tuskaa eikä tee oikeastaan mitä haluat. Sinun on lisättävä oma tarra muuta kuin napsauttamalla poistopainiketta joka kerta (”Etiketit” -painikkeen ja sitten mukautetun roskakorin etiketin kautta).

Sitten sinun on luotava suodatin (yksi kerta; kohdassa ”Asetukset” -> ”Suodattimet ja estetyt osoitteet” -> ”Luo uusi suodatin”), jossa ”on sanat” label:custom-trash older_than:7d toiminnolla Delete it (”Luo suodatin tällä haulla” -> ”Okei” -> ”Poista se”).

Mutta tämä lähettää sen vain Gmailin roskakoriin.


Roskakorin poiston automatisointiin tässä vaiheessa tarvitaan käyttäjätunnus avaamaan roskakansio (käyttäen document.querySelector("[href="https://mail.google.com/mail/u/0/#trash"]").click()), napsauttamalla Tyhjennä roskakori nyt -painiketta (käyttämällä document.querySelector(".ya span").click()) ja napsauttamalla sitten OK-painiketta (käyttämällä document.querySelector(".Kj-JD-Jl button").click()). Mutta silti sinun on suoritettava se sivun ollessa auki, mikä tekee suodattimesta hyödytön …


TL; DR : Ei, se ei ole mahdollista.

Vastaa

Kyllä, se on mahdollista, mutta se edellyttää, että luot mukautetun Google Apps -skriptin. Voit tehdä tämän pähkinänkuoressa:

  • Jos olet kirjautunut sisään Gmailiin, voit siirtyä osoitteeseen https://script.google.com/ ja luo uusi komentosarjaprojekti.
  • Avaa kyseinen projekti ja luo uusi komentotiedosto. Lisää komentosarjasi siihen (katso esimerkki alla)
  • Sinun on mentävä Resurssit-valikkoon, valittava sitten ”Advanced Google Services” -alivalikko ja otettava sitten käyttöön ”Gmail API” -vaihtoehto.
  • Edistyneet Google-palvelut -ruudussa kerrotaan, että ”Nämä palvelut on otettava käyttöön myös Google Cloud Platform -sovellusliittymän hallintapaneelissa.” Joten sinun on seurattava tätä linkkiä ja sallittava myös kyseinen sovellusliittymä.
  • Lopuksi sinun on luotava ainakin yksi trigeri, joka kutsuu komentosarjaasi millä tahansa valitsemallasi välein (tunneittain, päivittäin jne.) tai jonkin muun valitsemasi tapahtuman perusteella.

Tässä on Google Apps -skripti, jolla voit poistaa ei-toivotut sähköpostit useista tarroista (kansioista), jotka olen luonut muiden online-lähteiden perusteella. Tämä koodi annetaan ilman minkäänlaista takuuta – käytä omalla vastuullasi. Gmail.Users.Threads.remove () -funktion väärinkäyttö voi johtaa tärkeiden sähköpostien menetykseen.

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

Vastaus

Tässä on Google Apps -ohjelma, jonka olen luonut ja jota käytän päivittäin. Voit mukauttaa Gmail-roskakorisi säilyttääksesi sähköpostit niin kauan kuin haluat.

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

Vastaa

Sähköpostiosoitettasi ei julkaista. Pakolliset kentät on merkitty *