Le service Chat avancé vous permet d'utiliser l'API Google Chat dans Apps Script. Cette API permet aux scripts de rechercher, de créer et de modifier des espaces Chat, d'ajouter des membres à des espaces ou d'en supprimer, et de lire ou de publier des messages contenant du texte, des fiches, des pièces jointes et des réactions.
Prérequis
- Une application Google Chat Apps Script configurée sur la page de configuration de l'API Chat dans la console Google Cloud. Le projet Apps Script de l'application doit utiliser un projet Google Cloud standard au lieu de celui créé automatiquement par défaut pour les projets Apps Script. Pour créer une application Google Chat compatible, consultez Créer une application Google Chat à l'aide d'Apps Script.
- Authentification configurée pour l'application Chat. L'exécution d'une action pour le compte d'un utilisateur nécessite une authentification de l'utilisateur. L'exécution d'une action en tant qu'application Chat nécessite une authentification de l'application avec un compte de service. Pour vérifier la forme d'authentification acceptée par une méthode de l'API Chat, consultez la section Types d'authentification requis pour les appels d'API Google Chat.
Référence
Pour en savoir plus sur ce service, consultez la documentation de référence de l'API Chat. Comme tous les services avancés d'Apps Script, le service Chat utilise les mêmes objets, méthodes et paramètres que l'API publique.
Exemple de code
Ces exemples vous montrent comment effectuer des actions courantes de l'API Google Chat à l'aide du service avancé.
Publier un message avec des identifiants utilisateur
L'exemple suivant montre comment publier un message dans un espace Chat au nom de l'utilisateur.
Ajoutez le champ d'autorisation
chat.messages.create
au fichierappsscript.json
du projet Apps Script:"oauthScopes": [ "https://www.googleapis.com/auth/chat.messages.create" ]
Ajoutez une fonction comme celle-ci au code du projet Apps Script:
Publier un message avec des identifiants d'application
L'exemple suivant montre comment publier un message dans un espace Chat au nom de l'application. L'utilisation du service Chat avancé avec un compte de service ne nécessite pas de spécifier de champs d'autorisation dans appsscript.json
. Pour en savoir plus sur l'authentification avec des comptes de service, consultez la section S'authentifier en tant qu'application Google Chat.
Obtenir un espace
L'exemple suivant montre comment obtenir des informations sur un espace Chat.
Ajoutez le champ d'autorisation
chat.spaces.readonly
au fichierappsscript.json
du projet Apps Script:"oauthScopes": [ "https://www.googleapis.com/auth/chat.spaces.readonly" ]
Ajoutez une fonction comme celle-ci au code du projet Apps Script:
Créer un espace
L'exemple suivant montre comment créer un espace Chat.
Ajoutez le champ d'autorisation
chat.spaces.create
au fichierappsscript.json
du projet Apps Script:"oauthScopes": [ "https://www.googleapis.com/auth/chat.spaces.create" ]
Ajoutez une fonction comme celle-ci au code du projet Apps Script:
Répertorier les abonnements
L'exemple suivant montre comment lister tous les membres d'un espace Chat.
Ajoutez le champ d'autorisation
chat.memberships.readonly
au fichierappsscript.json
du projet Apps Script:"oauthScopes": [ "https://www.googleapis.com/auth/chat.memberships.readonly" ]
Ajoutez une fonction comme celle-ci au code du projet Apps Script:
Résoudre les problèmes
Si vous rencontrez Error 400: invalid_scope
avec le message d'erreur Some requested scopes cannot be shown
, cela signifie que vous n'avez pas spécifié de champs d'application OAuth dans le fichier appsscript.json
du projet Apps Script. Dans la plupart des cas, Apps Script détermine automatiquement les portées dont un script a besoin, mais lorsque vous utilisez le service avancé Chat, vous devez ajouter manuellement les portées d'autorisation utilisées par votre script au fichier manifeste de votre projet Apps Script. Consultez la section Définir des champs d'application explicites.
Pour résoudre l'erreur, ajoutez les champs d'autorisation appropriés au fichier appsscript.json
du projet Apps Script dans le tableau oauthScopes
. Par exemple, pour appeler la méthode spaces.messages.create
, ajoutez ce qui suit:
"oauthScopes": [
"https://www.googleapis.com/auth/chat.messages.create"
]
Limites et considérations
Le service Chat avancé n'est pas compatible avec les éléments suivants:
- La méthode d'API Chat
media.download
- Méthodes de l'API Chat disponibles en Preview développeur
Pour télécharger une pièce jointe de message ou appeler une méthode Preview développeur, utilisez plutôt UrlFetchApp
.