Comment convertir et sauvegarder facilement vos emails Gmail en PDF avec Google Apps Script

Dans notre ère numérique, protéger et sauvegarder les informations électroniques devient primordial.

Gmail, le service de messagerie de choix pour des millions d’utilisateurs, contient des informations vitales qu’il serait fâcheux de perdre.

Découvrez une méthode efficace et automatisée pour sauvegarder vos emails Gmail en PDF et les stocker en toute sécurité sur Google Drive grâce à Google Apps Script.

Pourquoi sauvegarder vos emails en PDF ?

Le PDF garantit la compatibilité universelle, sécurise vos données avec une mise en page intacte et facilite l’archivage légal ou personnel. Sauvegarder vos emails en PDF et les stocker sur Google Drive vous offre une meilleure organisation et un accès simplifié à vos informations critiques.

Configuration du script en quelques étapes

Suivez ce guide étape par étape pour activer la sauvegarde automatique de vos e-mails en PDF :

  1. Accéder à Google Apps Script : Connectez-vous avec votre compte Google et ouvrez Google Apps Script.
  2. Création du Projet : Insérez le code fourni dans l’éditeur de script.
  3. Exécution et Autorisation : Nommez votre projet, exécutez le script et autorisez l’accès à votre Gmail et Google Drive.

Mettre en place le script

Pour mettre ce script en action, suivez ces étapes simples :

  1. Ouvrez Google Apps Script : Connectez-vous à votre compte Google et naviguez vers Google Apps Script.
  2. Créez un nouveau projet : Copiez et collez le code ci dessous dans l’éditeur.
  3. Exécutez le script : Après avoir nommé votre projet, lancez la fonction pour commencer la sauvegarde de vos emails en PDF.
  4. Autorisez le script : Vous devrez autoriser l’accès de l’application à votre compte Gmail et Google Drive lors de la première exécution.

Code du script

/**
 * Sauvegarde les e-mails de Gmail au format PDF dans Google Drive.
 * Les e-mails sont recherchés en utilisant le libellé "PDF" dans Gmail.
 * Les fichiers PDF sont créés et archivés dans un dossier spécifié dans Google Drive.
 */

function sauvegarderGmailEnPDF() {
  const libelleGmail = "PDF";
  const dossierDrive = "Gmail > PDF";
  const compte = Session.getActiveUser().getEmail();

  let conversations = GmailApp.search("in:" + libelleGmail, 0, 5);

  if (conversations.length > 0) {
    const dossiers = DriveApp.getFoldersByName(dossierDrive);
    let dossier = dossiers.hasNext() ? dossiers.next() : DriveApp.createFolder(dossierDrive);

    let label = GmailApp.getUserLabelByName(libelleGmail);
    if (!label) {
      label = GmailApp.createLabel(libelleGmail);
    }

    conversations.forEach((conversation) => {
      conversation.removeLabel(label);
      const msgs = conversation.getMessages();
      let html = "";
      let piecesJointes = [];

      msgs.forEach((msg) => {
        let laDate;
        try {
          laDate = LanguageApp.translate(msg.getDate(), 'en', 'fr');
        } catch (e) {
          laDate = "non définie";
        }

        html += `Source : GMail - Messagerie du compte ${compte}<br /><br />`;
        html += `De: ${msg.getFrom()}<br />`;
        html += `A: ${msg.getTo()}<br />`;
        html += `Date: ${laDate}<br />`;
        html += `Sujet: ${msg.getSubject()}<br /><br />`;
        html += `<hr />`;
        html += msg.getBody().replace(/<img[^>]*>/g,"");
        html += `<hr />`;

        piecesJointes.push(...msg.getAttachments());
      });

      if (piecesJointes.length > 0) {
        let piedDePagePiecesJointes = "<strong>Pièces jointes:</strong><ul>";
        piecesJointes.forEach((pieceJointe) => {
          const fichier = dossier.createFile(pieceJointe);
          piedDePagePiecesJointes += `<li><a href='${fichier.getUrl()}'>${fichier.getName()}</a></li>`;
        });
        html += piedDePagePiecesJointes + "</ul>";
      }

      html += `<hr /><p style="font-size:small;">Généré par un script de l'Atelier Informatique <a href='https://atelier-informatique.com'>https://atelier-informatique.com</a></p>`;

      const fichierTemporaire = DriveApp.createFile("temp.html", html, "text/html");
      const fichierPDF = dossier.createFile(fichierTemporaire.getAs("application/pdf"));
      fichierPDF.setName(sujet + ".pdf");

      // Nettoyage : supprimer le fichier HTML temporaire
      fichierTemporaire.setTrashed(true);
    });
  }
}

Automatisation avec un déclencheur

Créer un déclencheur pour le script

Une fois que vous avez configuré le script de sauvegarde de vos emails Gmail en PDF, l’étape suivante consiste à automatiser le processus. Google Apps Script permet de créer des déclencheurs qui exécutent le script automatiquement à des moments spécifiques. Voici comment procéder :

  1. Ouvrez le projet Google Apps Script : Accédez à votre projet de sauvegarde Gmail en PDF dans Google Apps Script.
  2. Accéder aux Déclencheurs : Dans le menu, cliquez sur Edit puis sélectionnez Triggers (ou Déclencheurs en français). Vous serez dirigé vers une page qui liste tous les déclencheurs associés à votre projet.
  3. Ajouter un Nouveau Déclencheur : Cliquez sur le bouton + Add Trigger (ou + Ajouter un déclencheur).
  4. Configurer le Déclencheur :
    • Choisissez la fonction à exécuter : Sélectionnez la fonction sauvegarderGmailEnPDF (ou le nom que vous avez donné à votre fonction de sauvegarde).
    • Choisissez le type de déclencheur : Sélectionnez Time-driven (Déclenché par le temps) pour programmer le script.
    • Sélectionnez la fréquence : Vous pouvez choisir d’exécuter le script à des intervalles réguliers, par exemple, quotidien, hebdomadaire, ou même à une fréquence spécifique dans la journée.
  5. Sauvegarder le déclencheur : Après avoir configuré votre déclencheur, cliquez sur Save (Enregistrer) pour l’activer.

Avec ce déclencheur en place, votre script s’exécutera automatiquement selon l’intervalle que vous avez défini, assurant une sauvegarde régulière de vos e-mails Gmail en PDF sans effort supplémentaire de votre part. Cette automatisation vous garantit que vos informations importantes sont sauvegardées de manière fiable et accessible à tout moment dans Google Drive.

Note importante

Gardez à l’esprit que Google Apps Script a des quotas d’utilisation quotidiens. Assurez-vous de vérifier ces limites pour éviter d’interrompre l’exécution automatique de votre script.

Appel à l’action

La sauvegarde de vos emails Gmail en PDF est une stratégie efficace pour sécuriser vos données importantes. Ce script simplifie le processus, rendant la sauvegarde à la fois accessible et pratique. Que vous ayez besoin d’archiver des communications professionnelles ou de mieux organiser vos e-mails, cet outil est une ressource inestimable.

Ne tardez pas à protéger vos informations essentielles. Adoptez dès aujourd’hui cette méthode simple et pratique pour la sauvegarde de vos e-mails.

Laisser un commentaire