Cet article a été rédigé par : Adrien Rivière – Arrivé au sein de Devoteam G Cloud il y a 3 ans, Adrien RIVIERE a débuté au service support administrateur Google Workspace. Il a ensuite évolué en tant que Customer Success Manager. En parallèle de son activité de CSM, il s’occupe des projets de développement Apps Script pour les clients de l’entreprise.
1. Contexte
Dans le cadre d’une campagne de webinars, un client nous a contacté pour automatiser la récupération des rapports de présence (attendance tracking) Google Meet et envoyer automatiquement des rappels par email pour remplir le formulaire de satisfaction, si cela n’avait pas encore été fait. Chaque personne qui avait assisté à plus de 50% du meeting devait être notifiée.
Ce processus était entièrement manuel, la campagne de webinars durait 5 semaines, chaque matin une personne devait chercher les nouveaux rapport de présence, vérifier la durée du meeting, trouver les personnes, envoyer l’email etc…
Le succès grandissant de cette série de webinars nécessitait d’automatiser cette tâche.
2. Récupération des suivis de participation
Les suivis de participation Google Meet ne sont pas récupérables directement depuis un événement Google Agenda, contrairement aux enregistrements vidéos de réunion par exemple.
Il faudra donc aller les chercher directement via l’API Google Drive. Pour cela il faut récupérer les fichiers contenant le terme ‘Attendance Report’ dans le Google Drive de l’utilisateur organisant les événements.
NB : Développement fait sans l’API Google Meet qui n’est qu’en developer preview pour le moment.
3. Extraction des participants
Nous souhaitons récupérer les personnes ayant participé à au moins la moitié de la réunion pour leur envoyer un email de rappel.
La première étape consiste à obtenir la durée de l’événement dans Google Agenda. Pour cela rien de plus simple, il suffit de soustraire la date de fin de l’événement à celle de début pour avoir la durée totale :
Nous allons comparer cette durée avec celle des participants. L’information dans le rapport de participation se présente sous cette forme :
Afin de comparer les deux durées, il est nécessaire de récupérer cette donnée et de la convertir en millisecondes. La durée dans l’attendance tracking est au format texte, c’est pourquoi la conversion est indispensable pour comparer les valeurs.
Une fois que les utilisateurs ont été identifiés, nous allons modifier le rapport de participation pour qu’il ne soit pas traité de nouveau lors de la prochaine exécution du script.
Nous avons fait le choix de modifier deux éléments :
- Ajouter une propriété personnalisée (Custom File Property) au fichier traité. Celle-ci est invisible aux yeux de l’utilisateur. Plus de détails ici.
- Pour que l’utilisateur puisse identifier les fichiers traités, modifiez le champ “Description” du fichier.
« La ‘Custom File property’ permet de stocker les données du fichier sans devoir utiliser une base de données externe. Il est simplement possible de stocker les données dans une feuille Google Sheets pour éviter de traiter deux fois un fichier. Cependant, en stockant les données dans Google Drive, il n’est pas nécessaire d’utiliser un autre espace de stockage. De plus, si le paramètre fields de la requête Drive.Files.list est égal à ‘*’, les ‘File properties’ sont également récupérées.
4. Conclusion
Ce script a permis d’automatiser plusieurs actions manuelles. De plus, grâce à cette automatisation, nous avons amélioré le temps de traitement qui se limite à 1 heure après la fin du webinar.
Nous avons également réduit les erreurs de copier coller et permis d’envoyer l’email de rappel automatiquement. La création d’un tableau de bord Looker Studio est simple, grâce aux données stockées dans Google Sheet. Cela permet d’avoir une vision globale des campagnes webinars, d’observer l’attrait des utilisateurs pour certains sujets mais également d’améliorer la prochaine campagne.
Rédaction : Adrien Rivière