Configurez un mail automatique en moins de 5 minutes avec votre compte gmail
Vous savez que vous pouvez générer des mails automatiques avec votre compte gmail ? Je vous montre comment en moins de 5 minutes.
Demo
Au clic du bouton d’envoi de mail, une citation aléatoire vous est envoyée dans votre boîte mail.
Créez vous aussi votre mail automatique
On va créer une mini webApp où lorsqu’on reçoit le nom et l’adresse mail de la personne, on lui écrit un mail personnalisé immédiatement. Je vais vous montrer l’exemple de notre démo.
Sur Google Script
Allez sur Google Apps Script et créez un nouveau projet nommé mail_auto :
Un nouvel onglet va ensuite s’ouvrir. Copiez dans le fichier à gauche Code.gs le code suivant:
function doGet(e) {
return doPost(e)
}
function doPost(e) {
nom = e.parameters.nom
adresse_mail = e.parameters.adresse_mail
if(nom && adresse_mail){
envoyer_mail(nom,adresse_mail)
msg = 'Mail envoyé à ' +nom+ ' au '+adresse_mail+'.'
}else{
msg = 'ERREUR: Un ou plusieurs paramètres manquants.'
}
return message(msg)
}
function envoyer_mail(nom,adresse_mail){
citation = JSON.parse(citation_aleatoire())
contenu = LanguageApp.translate(citation['content'],'en','fr')
auteur = citation['author']
MailApp.sendEmail({
to: adresse_mail.toString(),
subject: 'Citation pour '+ nom,
htmlBody: contenu_mail(nom,contenu,auteur),
name: 'Mail Automatique'
});
}
function contenu_mail(nom,citation,auteur){
return `
Bonjour <strong>`+nom+`</strong> !<br/><br/>
<div>
<blockquote>`+citation+`<br/>
- De <strong>`+auteur+`</strong>
</blockquote>
</div><br/><br/>
C'est beau n'est ce pas ?
Allez, à une prochaine !<br/><br/>
<i><strong>Mail automatique issu de <a href="https://jadynekena.com/projets-automatisations/configurez-un-mail-automatique-en-moins-de-cinq-minutes-avec-votre-compte-gmail">cet article</a></strong></i>.
`
}
function citation_aleatoire(){
return UrlFetchApp.fetch('https://api.quotable.io/random').getContentText()
}
function message(msg) {
return ContentService.createTextOutput(msg).setMimeType(ContentService.MimeType.TEXT);
}
Mettez ensuite votre curseur dans la fonction doGet
et cliquez sur Exécuter. Des autorisations vont être demandées.
Sur le premier pop up, cliquez sur Paramètres avancés en bas à gauche, puis sur Accéder à mail_auto tout en bas :
Autorisez aussi tous les accès demandés:
Une fois toutes les autorisations données, cliquez sur Déployer -> Nouveau déploiement :
Mettez les paramètres de déploiement suivants :
- Type : Application Web
- Exécuter en tant que : Moi
- Qui a accès : Tout le monde
Copiez l’URL de l’Application Web tout en bas pour la suite, puis cliquez sur OK :
Et c’est tout bon côté Google Script !
Page html de votre webApp
Copiez le code suivant dans un fichier local mail.html pour personnaliser le mail, en copiant la valeur de SCRIPT_URL par le vôtre:
<div>
<input type="text" placeholder="Nom" id="nom" name="nom">
<input type="mail" placeholder="Adresse mail" id="adresse_mail" name="adresse_mail">
<button type="button" onclick="check(this)">Envoyez-moi un mail</button>
</div>
<script type="text/javascript" src="https://code.jquery.com/jquery-3.6.0.min.js"></script>
<script type="text/javascript">
// A REMPLACER PAR LE VÔTRE
const SCRIPT_URL = 'https://script.google.com/macros/s/AKfycbyVNC6kHx7t_Layy-EfoUgCHhvO9v2u91RpFU18yOwH5EuIQ6lR1MZYbbV1g1LQ5_J6RQ/exec'
function check(ceci){
nom = $('#nom')[0].value.trim()
adresse_mail = $('#adresse_mail')[0].value.trim()
if(nom === '' || adresse_mail === ''){
alert('❌Merci de tout remplir.')
}else{
url = SCRIPT_URL + '?nom=' + nom + '&adresse_mail=' + adresse_mail
$.post(url, function( data ) {
alert('📨 '+data);
ceci.disabled=true;
});
}
}
</script>
Ouvrez-le dans un navigateur, et TADAAAAAAA !
Exemples d’utilité
Réadaptez le code pour en faire ce que vous voulez. Je vais vous citer 3 exemples d’applications simples.
Envoyer un mail personnalisé après une action
Comme dans notre mini webApp, l’action de cliquer sur un bouton a engendré l’envoi du mail. Cette action peut être aussi du côté serveur, par exemple lorsque :
- Une erreur est détectée pendant l’exécution d’un script ;
- Il y a une nouvelle insertion de ligne dans une base de données ;
- Une donnée a été modifiée dans une table ;
- etc.
Itérer sur une liste dans Google Sheets
Quand vous collectez des noms et adresses mails de façon légale et consentie (pour un événement par exemple), vous pouvez alors envoyer des informations complémentaires 1 à 1 à vos invités.
C’est un peu comme une forme de newsletters, mais sans passer par des outils tierces (à part votre compte Google), et avec 1 seul destinataire par mail rédigé.
Configurer un mail hebdomadaire avec un contenu dynamique
Dans notre demo, le contenu de notre mail est dynamique : il change en fonction du nom et de la citation qu’on envoie. Et si on envoyait une citation par jour à 6h du matin ?
- Code à rajouter à la fin de votre projet Google Script
function envoyer_nouvelle_citation() {
envoyer_mail('VotreNomIci','votreadressemail@example.com')
}
- Choix de la fréquence d’envoi
A gauche de votre projet, allez dans Déclencheur -> Ajouter un déclencheur. Appliquez ensuite les paramètres ci-dessous, et enregistrez.
Et voilà ! vous recevrez votre citation tous les matins entre 5h et 6h du matin. Il vous suffira de supprimer votre déclencheur pour désactiver ces mails.
Limites
A ce jour (Juillet 2022), un compte google gratuit peut envoyer :
- 100 mails par jour
- Un mail de taille 200ko maximum
- 50 pièces jointes par mail envoyé
- des pièces jointes de taille totale 25Mo maximum
Sur une durée d’exécution maximale de 6 minutes.
Pour un simple utilisateur, c’est largement suffisant pour faire ce qu’on veut !
Vous pouvez consulter le quotas officiel sur le site officiel de Google Script.