Premiers pas avec google-apps-script
Types de scripts
Les scripts d’application Google sont de trois types.
- Autonome
- Lié à Google Apps
- Applications Web
Script autonome
Les scripts autonomes ne sont liés à aucune application Google, c’est-à-dire Docs, Sheets ou Forms, etc. Un script autonome peut être créé en visitant script.google.com ou en connectant le script d’application Google à Google Drive. Le script autonome peut être utilisé pour programmer des applications Google indépendamment, peut être utilisé comme une application Web ou peut être configuré pour s’exécuter automatiquement à partir d’un déclencheur installable. Voir la [documentation][1] pour le script autonome.
Lié à Google Apps
Script lié à Google Apps également appelé script lié au conteneur ; contrairement aux scripts autonomes, ils sont liés aux applications Google, c’est-à-dire Google Docs ou Google Sheets, etc. Le script lié au conteneur peut être créé en sélectionnant tools> Script editor
dans Google App. Certaines [fonctionnalités] [2] telles que les boîtes de dialogue, les invites, les menus et la barre latérale ne sont fournies que par des scripts liés au conteneur. De plus, un script lié au conteneur est utilisé pour créer [Google Add-ons][3]. Voir la [documentation][4] pour les scripts liés au conteneur.
Applications Web
Google App Script peut être utilisé comme application Web car ils sont accessibles par navigateur. L’application Web peut fournir une interface utilisateur sur le navigateur et peut utiliser des applications Google, c’est-à-dire des docs, des feuilles, etc. Les scripts autonomes et les scripts liés à Google Apps peuvent être transformés en applications Web. Pour qu’un script fonctionne comme une application Web, le script doit répondre à deux exigences :
- inclure une fonction
doGet()
oudoPost()
. - La fonction renvoie un objet HTML service HtmlOutput ou un objet Content service TextOutput.
En bref, les fonctions doGet()
et doPost()
fonctionnent respectivement comme les gestionnaires de requêtes http get et post.
Pour plus de détails sur les applications Web, consultez la [documentation][5] officielle.
[1] : https://developers.google.com/apps-script/guides/standalone [2] : https://developers.google.com/apps-script/guides/dialogs [3] : https://developers.google.com/apps-script/add-ons/ [4] : https://developers.google.com/apps-script/guides/bound [5] : https://developers.google.com/apps-script/guides/web
Installation ou configuration
Google Apps Script ne nécessite aucune configuration ni installation. La seule exigence est un compte Google. Un compte Gmail fonctionne aussi bien qu’un compte Google Apps for Work/Education/Government. Vous pouvez créer un nouveau compte Google en accédant à [accounts.google.com][1]
Commencez votre premier script en accédant à [script.google.com][2]. Vous pouvez également accéder à Google Apps Script sous tools -> Script editor...
de nombreuses applications Google, c’est-à-dire Docs, Sheets, Forms, etc. Google Apps Script peut également être ajouté directement à votre Google Drive avec la fonction “Connecter plus d’applications…”.
La documentation officielle est disponible sur [developers.google.com/apps-script/][3].
Pour que les app-scripts s’exécutent, ils doivent contenir un fichier code.gs. Le fichier code.gs doit contenir une fonction nommée doGet (scripts autonomes) ou une fonction onOpen (scripts addon). Les démarrages rapides de la documentation contiennent des exemples.
Si une API est activée dans le script d’application, elle doit également l’être dans la console des développeurs. Cependant, la console des développeurs contient des API qui peuvent être activées mais qui n’apparaissent pas dans l’interface de script d’application. Par exemple, le SDK Marketplace doit être activé dans la console des développeurs avant que l’application puisse être publiée sur Google Play Store ou sur un déploiement à l’échelle du domaine G Suite.
Pour les applications Google pour l’éducation/le travail/le gouvernement, il existe des paramètres dans la console d’administration du domaine qui peuvent être ajustés pour autoriser ou interdire l’exécution des scripts d’application.
[1] : https://accounts.google.com [2] : https://script.google.com [3] : https://developers.google.com/apps-script/
Exécution/Débogage de votre script
Essayez d’exécuter votre code depuis la barre d’outils comme indiqué ci-dessous :
[![entrez la description de l’image ici][1]][1]
Dans votre code, si vous avez plus d’une fonction, avant de l’exécuter, vous devez mentionner la fonction avec laquelle vous souhaitez l’exécuter. Par exemple :
[![entrez la description de l’image ici][2]][2]
[1] : http://i.stack.imgur.com/FENhy.png [2] : http://i.stack.imgur.com/9kOsX.png
Vous pouvez également appuyer sur ctrl + r depuis votre clavier pour exécuter le code. Il enregistrera d’abord le code, s’il n’est pas enregistré, puis l’exécutera. Mais, pour que cela fonctionne, vous devez avoir sélectionné la fonction, comme le montre l’image ci-dessus.
De plus, si votre script est appelé par certaines activités externes, vous pourrez toujours voir les journaux en cliquant sur view->logs si vous enregistrez quoi que ce soit après l’exécution du code.
Bonjour le monde
Nous allons dire Bonjour comme une boîte de message.
function helloWorld()
{
Browser.msgBox("Hello World");
}
Pour exécuter le script, cliquez sur ▶ ou sélectionnez l’élément de menu Exécuter -> helloWorld
Un regard plus approfondi sur Google Apps Script
Google Apps Script est une plate-forme en tant que service basée sur JavaScript, principalement utilisée pour automatiser et étendre Google Apps. Apps Script s’exécute exclusivement sur l’infrastructure de Google, sans provisionnement ni configuration de serveur. Un IDE en ligne sert d’interface à l’ensemble de la plate-forme connectant tous les services disponibles pour Apps Script. L’authentification de l’utilisateur est intégrée à la plate-forme via OAuth2 et ne nécessite aucun code ni configuration par l’auteur du script.
Apps Script s’exécute côté serveur, mais peut avoir des interfaces utilisateur construites avec Html, CSS, JavaScript ou toute autre technologie prise en charge par le navigateur. Contrairement à Nodejs, qui est piloté par des événements, App Scripts s’exécute dans un modèle fileté. Tous les appels à un script génèrent une instance unique de ce script qui s’exécute indépendamment de toutes les autres instances. Lorsqu’une instance d’un script termine son exécution, elle est détruite.
Les fonctions d’Apps Script sont bloquantes. Les modèles de rappel et de programmation asynchrone ne sont donc pas nécessaires. Le verrouillage est utilisé pour empêcher que des sections de code critiques, telles que les E/S de fichiers, soient exécutées simultanément par différentes instances.
En pratique, l’écriture de scripts Apps est simple. Vous trouverez ci-dessous un script simple qui crée une nouvelle feuille de calcul à partir d’un modèle de feuille de calcul.
// Create a new spreadsheet from a template
function createSpreadsheet(){
var templateFileId = '1Azcz9GwCeHjGl9TXf4aUh6g20Eqmgd1UMSdNVjzIZPk';
var sheetName = 'Account Log for:' + new Date();
SpreadsheetApp.openById(templateFileId).copy(sheetName);
}