Gmail automatiquement dans 30 jours, supprime tous les e-mails mis dans la corbeille par lutilisateur. Existe-t-il un moyen de modifier ce comportement par défaut à 7 jours?

Réponse

Non, il ny a aucun moyen de modifier le comportement par défaut de la corbeille de Gmail. Cela inclut de raccourcir ou dallonger la durée .


Vous pouvez créer votre propre poubelle qui fait quelque chose de similaire, mais cest un peu pénible et ne fait pas vraiment ce que vous voulez. Vous devez ajouter une étiquette personnalisée autre que de cliquer à chaque fois sur le bouton de suppression (via le bouton « Libellés » puis votre étiquette de corbeille personnalisée).

Ensuite, vous « auriez à créer un filtre (une fois; sous » Paramètres « -> » Filtres et adresses bloquées « -> » Créer un nouveau filtre « ) qui » contient les mots « label:custom-trash older_than:7d avec laction Delete it (« Créer un filtre avec cette recherche » -> « OK » -> « Supprimer »).

Mais cela ne lenvoie que dans la corbeille de Gmail.


Pour automatiser la suppression de la corbeille à ce stade, il faudrait quun script utilisateur ouvre le dossier de la corbeille (en utilisant document.querySelector("[href="https://mail.google.com/mail/u/0/#trash"]").click()), en cliquant sur le bouton « Vider la corbeille maintenant » (en utilisant document.querySelector(".ya span").click()), puis en cliquant sur le bouton « OK » (en utilisant document.querySelector(".Kj-JD-Jl button").click()). Mais même quand même, vous devez lexécuter avec la page ouverte, ce qui rend le filtre inutile …


TL; DR : Non, ce nest pas possible.

Réponse

Oui, cest possible, mais cela vous oblige à créer un script Google Apps personnalisé. Voici comment procéder, en quelques mots:

  • Si vous êtes connecté à Gmail, vous pouvez accéder à https://script.google.com/ et créez un nouveau projet de script.
  • Ouvrez ce projet et créez un nouveau fichier de script. Mettez votre script dedans (voir ci-dessous pour un exemple)
  • Vous devrez aller dans le menu Ressources, puis sélectionner le sous-menu « Services Google avancés », puis activer loption « API Gmail ».
  • Le volet Services Google avancés vous indique que « Ces services doivent également être activés dans le tableau de bord de lAPI Google Cloud Platform. » Vous devrez donc suivre ce lien et activer cette API également.
  • Enfin, vous devrez créer au moins un déclencheur qui appellera votre script à nimporte quel intervalle de votre choix (horaire, quotidien, etc.) , ou basé sur un autre événement de votre choix.

Voici un script Google Apps pour supprimer les e-mails indésirables de divers libellés (dossiers), que jai créés à partir dautres sources en ligne. Ce code est fourni sans aucune garantie – à utiliser à vos risques et périls. Une mauvaise utilisation de la fonction Gmail.Users.Threads.remove () pourrait entraîner la perte permanente de-mails importants .

/* 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éponse

Voici un script Google Apps que jai créé et que jai exécuté quotidiennement. Vous pouvez personnaliser votre corbeille Gmail pour conserver les e-mails aussi longtemps que vous le souhaitez.

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

Laisser un commentaire

Votre adresse e-mail ne sera pas publiée. Les champs obligatoires sont indiqués avec *