Ce guide explique comment utiliser le
create()
sur la ressource Message
de l'API Google Chat pour effectuer l'une des opérations suivantes:
- Envoyez des messages contenant du texte, des cartes et des widgets interactifs.
- Envoyez des messages en mode privé à un utilisateur Chat spécifique.
- Démarrez un fil de discussion ou répondez à un message.
- Attribuez un nom à un message afin de pouvoir le spécifier dans d'autres requêtes de l'API Chat.
<ph type="x-smartling-placeholder">
La taille maximale des messages (texte ou cartes compris) est de 32 000 octets. Pour envoyer un message qui dépasse cette taille, votre application Chat doit envoyer plusieurs messages à la place.
En plus d'appeler l'API Chat pour créer des messages, les applications Chat peuvent créer et envoyer des messages pour répondre aux interactions des utilisateurs, par exemple en publiant un message de bienvenue après qu'un utilisateur a ajouté l'application Chat à un espace. Lorsque vous répondez aux interactions, les applications Chat peuvent utiliser d'autres types de fonctionnalités de messagerie, y compris des boîtes de dialogue interactives et des interfaces de prévisualisation de liens. Pour répondre à un utilisateur, le L'application Chat renvoie le message de manière synchrone, sans appelant l'API Chat. Pour savoir comment envoyer des messages pour répondre aux interactions, consultez Recevoir et répondre aux interactions avec votre application Google Chat.
Comment Chat affiche et attribue les messages créés avec l'API Chat
Vous pouvez appeler la méthode create()
à l'aide de
authentification des applications
et l'authentification des utilisateurs.
Chat attribue l'expéditeur du message différemment
selon le type d'authentification
que vous utilisez.
Lorsque vous vous authentifiez en tant qu'application Chat, l'application Chat envoie le message.
Lorsque vous vous authentifiez en tant qu'utilisateur, l'application Chat envoie l'événement au nom de l'utilisateur. Chat attribue également l'application Chat au message en affichant son nom.
Le type d'authentification détermine également les fonctionnalités et interfaces de messagerie que vous pouvez inclure dans le message. Avec l'authentification des applications, Les applications de chat peuvent envoyer des messages contenant du texte enrichi, des interfaces basées sur des fiches et des widgets interactifs. Étant donné que les utilisateurs de Chat peuvent uniquement envoyer du texte dans leurs messages, vous pouvez n'inclure du texte que lors de la création de messages à l'aide de l'authentification de l'utilisateur. Pour en savoir plus sur les fonctionnalités de messagerie disponibles pour l'API Chat, consultez la présentation des messages Google Chat.
Ce guide explique comment utiliser l'un des types d'authentification pour envoyer un message avec l'API Chat.
Prérequis
Node.js
- Une entreprise Un compte Google Workspace ayant accès à Google Chat :
- Configurez votre environnement :
- Créez un projet Google Cloud.
- Configurer l'écran de consentement OAuth
- Activez et configurez l'API Google Chat avec un nom, une icône et une description pour votre application Chat.
- Installez la Node.js bibliothèque cliente Cloud.
- Créez des identifiants d'accès en fonction de la méthode d'authentification que vous souhaitez utiliser dans votre requête API Google Chat :
- Pour vous authentifier en tant
qu'utilisateur de Chat,
créer un ID client OAuth
identifiants et enregistrez-les dans un fichier JSON nommé
client_secrets.json
dans votre répertoire local. - Pour vous authentifier en tant qu'application Chat,
créer un compte de service
identifiants et enregistrez-les dans un fichier JSON nommé
credentials.json
- Pour vous authentifier en tant
qu'utilisateur de Chat,
créer un ID client OAuth
identifiants et enregistrez-les dans un fichier JSON nommé
- <ph type="x-smartling-placeholder"></ph> Choisissez un champ d'application d'autorisation selon que vous souhaitez vous authentifier en tant qu'utilisateur Application Chat
- Un espace Google Chat dans lequel l'utilisateur authentifié ou l'application Chat appelant est membre. Pour s'authentifier en tant que l'application de chat, ajoutez l'icône Chat avec l'espace
Python
- Compte Google Workspace Business ou Enterprise ayant accès à Google Chat.
- Configurez votre environnement:
<ph type="x-smartling-placeholder">
- </ph>
- Créez un projet Google Cloud.
- Configurer l'écran de consentement OAuth
- Activez et configurez l'API Google Chat avec un nom, une icône et une description pour votre application Chat.
- Installez la Python bibliothèque cliente Cloud.
- Créez des identifiants d'accès en fonction de la méthode d'authentification que vous souhaitez utiliser dans votre requête API Google Chat :
- Pour vous authentifier en tant qu'utilisateur Chat, créez des identifiants d'ID client OAuth et enregistrez-les en tant que fichier JSON nommé
client_secrets.json
dans votre répertoire local. - Pour vous authentifier en tant qu'application Chat, créez des identifiants de compte de service et enregistrez-les en tant que fichier JSON nommé
credentials.json
.
- Pour vous authentifier en tant qu'utilisateur Chat, créez des identifiants d'ID client OAuth et enregistrez-les en tant que fichier JSON nommé
- <ph type="x-smartling-placeholder"></ph> Choisissez un champ d'application d'autorisation selon que vous souhaitez vous authentifier en tant qu'utilisateur Application Chat
- Espace Google Chat auquel l'utilisateur authentifié ou l'application Chat appelante est membre. Pour vous authentifier en tant qu'application Chat, ajoutez l'application Chat à l'espace.
Java
- Compte Google Workspace Business ou Enterprise ayant accès à Google Chat.
- Configurez votre environnement :
- Créez un projet Google Cloud.
- Configurer l'écran de consentement OAuth
- activer et configurer l'API Google Chat à l'aide d'un nom ; et la description de votre application Chat.
- Installez la Java bibliothèque cliente Cloud.
- Créez des identifiants d'accès en fonction de la méthode d'authentification que vous souhaitez utiliser dans votre requête API Google Chat :
- Pour vous authentifier en tant qu'utilisateur Chat, créez des identifiants d'ID client OAuth et enregistrez-les en tant que fichier JSON nommé
client_secrets.json
dans votre répertoire local. - Pour vous authentifier en tant qu'application Chat,
créer un compte de service
identifiants et enregistrez-les dans un fichier JSON nommé
credentials.json
- Pour vous authentifier en tant qu'utilisateur Chat, créez des identifiants d'ID client OAuth et enregistrez-les en tant que fichier JSON nommé
- Choisissez un champ d'application de l'autorisation en fonction de votre choix d'authentification en tant qu'utilisateur ou en tant qu'application Chat.
- Espace Google Chat auquel l'utilisateur authentifié ou l'application Chat appelante est membre. Pour vous authentifier en tant qu'application Chat, ajoutez l'application Chat à l'espace.
Apps Script
- Une entreprise Un compte Google Workspace ayant accès à Google Chat :
- Configurez votre environnement:
<ph type="x-smartling-placeholder">
- </ph>
- Créez un projet Google Cloud.
- Configurer l'écran de consentement OAuth
- activer et configurer l'API Google Chat à l'aide d'un nom ; et la description de votre application Chat.
- Créer un projet Apps Script autonome et activez le service de chat avancé.
- Dans ce guide, vous devez utiliser l'authentification des utilisateurs ou des applications. Pour vous authentifier en tant qu'application Chat, créez les identifiants du compte de service. Pour connaître la procédure à suivre, consultez S'authentifier et autoriser l'application Google Chat.
- Choisissez un champ d'application de l'autorisation en fonction de votre choix d'authentification en tant qu'utilisateur ou en tant qu'application Chat.
- Un espace Google Chat dans lequel l'utilisateur authentifié ou l'application Chat appelant est membre. Pour s'authentifier en tant que l'application de chat, ajoutez l'icône Chat avec l'espace
Envoyer un message depuis l'application Chat
Cette section explique comment envoyer des messages contenant du texte, des fiches et des widgets d'accessoires interactifs à l'aide de l'authentification de l'application.
Pour appeler la méthode CreateMessage()
utilisant l'authentification de l'application, vous devez spécifier les champs suivants dans la
requête:
chat.bot
champ d'application de l'autorisation.- La
Space
dans laquelle vous souhaitez publier le message. La L'application Chat doit être membre de l'espace. - Ressource
Message
à créer. Pour définir le contenu du message, vous pouvez inclure du texte enrichi (text
), une ou plusieurs interfaces de carte (cardsV2
), ou les deux.
Vous pouvez également inclure les éléments suivants :
- Le champ
accessoryWidgets
à inclure boutons interactifs au bas du message. - Le champ
privateMessageViewer
pour envoyer le message en mode privé à un utilisateur donné. - Le champ
messageId
, qui vous permet de nommer le message à utiliser dans d'autres requêtes API. - Les champs
thread.threadKey
etmessageReplyOption
pour créer un fil de discussion ou y répondre. Si l'espace n'utilise pas de threads, ce champ est ignoré.
Le code suivant montre comment une application Chat peut envoyer un message publié via l'application Chat contenant une fiche et un bouton cliquable au bas du message:
Node.js
Python
Java
Apps Script
Pour exécuter cet exemple, remplacez SPACE_NAME
par l'ID du champ name
de l'espace. Pour obtenir cet identifiant, appelez la méthode
ListSpaces()
ou à partir de l'URL de l'espace.
Ajouter des widgets interactifs au bas d'un message
Dans le premier exemple de code de ce guide, Le message de l'application Chat affiche un bouton cliquable en bas du message. C'est ce qu'on appelle un widget accessoire. Les widgets accessoires apparaissent après le texte ou les cartes d'un message. Vous pouvez utiliser ces widgets pour inviter les utilisateurs à interagir avec votre message de différentes manières, par exemple :
- Évaluer l'exactitude ou la satisfaction d'un message
- Signaler un problème avec l'application Messages ou Chat
- Ouvrir un lien vers du contenu associé, tel que de la documentation
- Ignorer ou mettre en attente des messages similaires dans l'application Chat pendant une période donnée.
Pour ajouter des widgets accessoires, incluez le champ accessoryWidgets[]
dans le corps de votre requête et spécifiez un ou plusieurs widgets que vous souhaitez inclure.
L'image suivante montre une application Chat qui ajoute un message texte avec des widgets accessoires afin que les utilisateurs puissent évaluer leur expérience avec l'application Chat.
Le corps de la requête qui crée un message texte avec deux boutons d'accessoires est présenté ci-dessous. Lorsqu'un utilisateur clique sur un bouton, la fonction correspondante (telle que doUpvote
) traite l'interaction :
{
text: "Rate your experience with this Chat app.",
accessoryWidgets: [{ buttonList: { buttons: [{
icon: { material_icon: {
name: "thumb_up"
}},
color: { red: 0, blue: 255, green: 0 },
onClick: { action: {
function: "doUpvote"
}}
}, {
icon: { material_icon: {
name: "thumb_down"
}},
color: { red: 0, blue: 255, green: 0 },
onClick: { action: {
function: "doDownvote"
}}
}]}}]
}
Envoyer un message privé
Les applications de chat peuvent envoyer des messages privés afin qu'ils ne soient visibles que par un utilisateur spécifique de l'espace. Lorsqu'un L'application Chat envoie un message privé, le message affiche un libellé indiquant à l'utilisateur que le message est lui seul visible.
Pour envoyer un message en mode privé à l'aide de l'API Chat, spécifiez le paramètre
privateMessageViewer
dans le corps de votre requête. Pour spécifier l'utilisateur, définissez la valeur sur la ressource User
qui représente l'utilisateur Chat. Vous pouvez également utiliser le champ name
de la ressource User
, comme illustré dans l'exemple suivant :
{
text: "Hello private world!",
privateMessageViewer: {
name: "users/USER_ID"
}
}
Pour utiliser cet exemple, remplacez USER_ID
avec un identifiant unique pour l'utilisateur, tel que 12345678987654321
ou
hao@cymbalgroup.com
Pour en savoir plus sur la spécification des utilisateurs, consultez
Identifiez et spécifiez les utilisateurs de Google Chat.
Pour envoyer un message en mode privé, vous devez omettre les éléments suivants dans votre demande:
Envoyer un SMS au nom d'un utilisateur
Cette section explique comment envoyer des messages au nom d'un utilisateur en utilisant authentification des utilisateurs. Avec l'authentification de l'utilisateur, le contenu du message ne peut contenir que du texte et doit omettre les fonctionnalités de messagerie qui ne sont disponibles que pour les applications Chat, y compris les interfaces de fiches et les widgets interactifs.
Pour appeler la méthode CreateMessage()
à l'aide de l'authentification des utilisateurs, vous devez spécifier les champs suivants dans la requête :
- Un champ d'application de l'autorisation
qui prend en charge l'authentification
de l'utilisateur pour cette méthode. L'exemple suivant utilise
le champ d'application
chat.messages.create
. - Ressource
Space
dans laquelle vous souhaitez publier le message. L'utilisateur authentifié doit être un membre de l'espace. - Ressource
Message
à créer. Pour définir le contenu du message, vous devez inclure le paramètretext
.
Vous pouvez également inclure les éléments suivants:
- Le champ
messageId
, qui vous permet Nommez le message à utiliser dans d'autres requêtes API. - Les champs
thread.threadKey
etmessageReplyOption
pour créer un fil de discussion ou y répondre. Si l'espace n'utilise pas de threads, ce champ est ignoré.
Le code suivant montre comment une application Chat peut envoyer un message texte dans un espace donné au nom d'un utilisateur authentifié:
Node.js
Python
Java
Apps Script
Pour exécuter cet exemple, remplacez SPACE_NAME
par l'ID du champ name
de l'espace. Vous pouvez obtenir l'ID en appelant la méthode ListSpaces()
ou à partir de l'URL de l'espace.
Démarrer un fil de discussion ou y répondre
Pour les espaces qui utilisent des fils de discussion : vous pouvez spécifier si un nouveau message démarre un fil de discussion ou répond à un fil de discussion existant.
Par défaut, les messages que vous créez à l'aide de l'API Chat démarrent un nouveau fil de discussion. Pour vous aider à identifier le fil de discussion et à y répondre plus tard, vous pouvez spécifier une clé de fil de discussion dans votre requête :
- Dans le corps de votre requête, spécifiez la
thread.threadKey
. - Spécifier le paramètre de requête
messageReplyOption
pour déterminer ce qui se passe si la clé existe déjà.
Pour créer un message qui répond à un fil de discussion existant :
- Dans le corps de votre requête, incluez le champ
thread
. Si elle est définie, vous pouvez spécifier lethreadKey
que vous avez créé. Sinon, vous devez utiliser lename
du thread. - Spécifiez le paramètre de requête
messageReplyOption
.
Le code suivant montre comment une application Chat peut envoyer un message texte qui lance ou répond à un fil de discussion donné identifié par la clé d'un espace donné au nom d'un utilisateur authentifié :
Node.js
Python
Java
Apps Script
Pour exécuter cet exemple, remplacez les éléments suivants:
THREAD_KEY
: clé de thread existante dans l'espace ou nom unique du thread pour créer un thread.SPACE_NAME
: ID du champname
de l'espace. Vous pouvez obtenir l'ID en appelant la méthodeListSpaces()
ou à partir de l'URL de l'espace.
Attribuer un nom à un message
Pour récupérer ou spécifier un message dans de futurs appels d'API, vous pouvez nommer un message
en définissant le champ messageId
dans votre requête.
Nommer votre message vous permet de le spécifier sans avoir à stocker l'ID attribué par le système à partir du nom de la ressource du message (représenté dans le champ name
).
Par exemple, pour récupérer un message à l'aide de la méthode get()
, vous devez utiliser
nom de ressource pour spécifier le message à récupérer. Le nom de la ressource est
au format spaces/{space}/messages/{message}
, où {message}
représente
l'ID attribué par le système ou le nom personnalisé que vous avez défini lors de la création
.
Pour nommer un message, spécifiez un ID personnalisé dans le champ messageId
lorsque vous le créez. Le champ messageId
définit la valeur du champ clientAssignedMessageId
de la ressource Message
.
Vous ne pouvez donner un nom à un message que lorsque vous le créez. Vous ne pouvez pas nommer ni modifier un ID personnalisé pour les messages existants. L'ID personnalisé doit respecter les critères suivants : configuration requise:
- Commence par
client-
. Par exemple,client-custom-name
est un ID personnalisé valide, maiscustom-name
ne l'est pas. - Contient jusqu'à 63 caractères et uniquement des lettres minuscules, des chiffres et des tirets.
- Il est unique dans un espace. Une application Chat ne peut pas utiliser le même ID personnalisé pour différents messages.
Le code suivant montre comment une application Chat peut envoyer un message texte avec un ID à un espace donné au nom d'un utilisateur authentifié :
Node.js
Python
Java
Apps Script
Pour exécuter cet exemple, remplacez les éléments suivants:
SPACE_NAME
: ID du tagname
. Pour obtenir cet identifiant, appelez la méthodeListSpaces()
ou à partir de l'URL de l'espace.MESSAGE-ID
: nom du message qui commence aveccustom-
. Doit être différent de tous les autres noms de messages créés par l'application Chat dans l'espace spécifié.
Résoudre les problèmes
Lorsqu'une application ou card renvoie une erreur, la L'interface Chat affiche le message "Une erreur s'est produite". ou "Impossible de traiter votre demande." Parfois, l'interface utilisateur de Chat n'affiche aucun message d'erreur, mais que l'application ou la carte produit un résultat inattendu. Par exemple, un message de fiche peut ne pas s'affichent.
Même s'il est possible qu'aucun message d'erreur ne s'affiche dans l'interface utilisateur de Chat, Des messages d'erreur descriptifs et des données de journaux sont disponibles pour vous aider à corriger les erreurs. Lorsque la journalisation des erreurs est activée pour les applications Chat. Pour savoir comment afficher, déboguer et corriger les erreurs, consultez Résoudre et corriger les erreurs Google Chat.
Articles associés
- Utilisez Card Builder pour concevoir et prévisualiser des messages de carte JSON pour les applications Chat.
- Mettre en forme des messages
- En savoir plus sur un message
- Lister les messages d'un espace
- Mettez à jour un message.
- Supprimer un message
- Identifiez les utilisateurs dans les messages Google Chat.
- Envoyer des messages à Google Chat avec des webhooks entrants