Cette page explique comment créer et envoyer des messages privés en tant que Application Google Chat.
Un message privé est un message de l'application Chat qui n'est visible par un utilisateur Chat donné. Vous pouvez utiliser des messages privés dans espaces regroupant plusieurs personnes afin qu'elles puissent interagir en privé Applications de chat Par exemple, votre L'application Chat peut envoyer des messages en mode privé pour effectuer l'une des tâches suivantes:
- Répondez à une commande à barre oblique. Par exemple, si
Un utilisateur appelle la barre oblique
/about
de votre application Chat. dans un espace, votre application Chat peut répondre avec une message privé expliquant ce que votre application Chat et comment l'utiliser. - Envoyer une notification ou envoyer des informations qui ne concernent qu'un seul utilisateur Pour par exemple, notifier un utilisateur qu'une tâche lui a été attribuée ou lui rappeler pour accomplir la tâche.
- Envoyez un message d'erreur. Par exemple, si un utilisateur omet le texte d'argument requis pour une commande à barre oblique, l'application Chat peut envoyer une un message privé pour expliquer l'erreur et aider l'utilisateur à formater la commande.
- Envoyer un message de bienvenue privé à un utilisateur lorsqu'il est ajouté à un espace explique les consignes ou explique comment utiliser l'application Chat.
Lorsqu'une application Chat envoie un message privé, le message affiche un libellé informant l'utilisateur que le message est lui seul visible:
Prérequis
Node.js
- Une application Google Chat avec des fonctionnalités interactives. Pour créer un une application Chat interactive utilisant un service HTTP, suivez ce guide de démarrage rapide.
Pour répondre en privé à une commande à barre oblique, une commande à barre oblique configurée pour l'application Chat. Pour en créer une, consultez Répondez aux commandes à barre oblique.
Pour envoyer un message privé à l'aide du
messages.create()
vous devez utiliser l'authentification des applications.
Python
- Une application Google Chat avec des fonctionnalités interactives. Pour créer un une application Chat interactive utilisant un service HTTP, suivez ce guide de démarrage rapide.
Pour répondre en privé à une commande à barre oblique, une commande à barre oblique configurée pour l'application Chat. Pour en créer une, consultez Répondez aux commandes à barre oblique.
Pour envoyer un message privé à l'aide du
messages.create()
vous devez utiliser l'authentification des applications.
Apps Script ;
- Une application Google Chat avec des fonctionnalités interactives. Pour créer un application Chat interactive dans Apps Script, suivez ce guide de démarrage rapide.
Pour répondre en privé à une commande à barre oblique, une commande à barre oblique configurée pour l'application Chat. Pour en créer une, consultez Répondez aux commandes à barre oblique.
Pour envoyer un message privé à l'aide du
messages.create()
vous devez utiliser l'authentification des applications.
Envoyer un message privé
Pour envoyer un message en mode privé en tant qu'application Chat, vous devez spécifier
la
privateMessageViewer
dans le message lorsque vous le créez. Vous créez des messages
privés tout comme
vous créez un message: soit en répondant à une interaction avec un utilisateur,
appeler de manière asynchrone l'API Google Chat
create()
sur la
Message
. Pour savoir comment envoyer des messages ou des cartes, consultez l'article
Envoyer un message
L'exemple suivant montre le code JSON d'un message texte privé indiquant
Hello private world!
:
{
"text": "Hello private world!",
"privateMessageViewer": "USER"
}
Dans cet exemple, USER
représente l'utilisateur Chat
qui peut voir le message,
Ressource User
. Si vous répondez à un
interaction avec l'utilisateur, vous pouvez spécifier l'objet User
de l'événement d'interaction.
Vous trouverez un exemple dans la section suivante
Répondez en privé à une commande à barre oblique.
Sinon, pour spécifier le destinataire du message privé, vous pouvez utiliser la méthode
Champ name
de User
ressource:
{
"text": "Hello private world!",
"privateMessageViewer": {
"name": "users/USER_ID"
}
}
Dans cet exemple, vous utilisez le champ name
pour spécifier le User
du lecteur.
nom de la ressource dans Google Chat. Remplacer 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.
Répondre en privé à une commande à barre oblique
Le code suivant montre un exemple d'application Chat qui répond à une commande à barre oblique par un message privé.
L'application Chat traite une
Événement d'interaction MESSAGE
et répond à la commande à barre oblique /help
par un message texte privé qui
explique comment l'utiliser:
Node.js
/**
* Responds to a MESSAGE event in Google Chat.
*
* @param {!Object} req Request sent from Google Chat app
* @param {!Object} res Response to send back
*
* @return {!Object} respond to slash command
*/
exports.onMessage = function onMessage(req, res) {
if (req.method === 'GET' || !req.body.message) {
return res.send('Hello! This function is meant to be used in Google Chat app.');
}
const event = req.body;
// Checks for the presence of event.message.slashCommand.
// If the slash command is "/help", responds with a private text message.
if (event.message.slashCommand) {
switch (event.message.slashCommand.commandId) {
case '1': // /help
return res.json({
privateMessageViewer: event.user,
text: 'This Chat app was created by Cymbal Labs. To get help with this app, <https://cymbalgroup.com/docs|see our documentation> or <https://cymbalgroup.com/support|contact our support team>.'
});
}
}
// If the Chat app doesn't detect a slash command, it responds
// with a private text message
return res.json({
privateMessageViewer: event.user,
text: 'Try a slash command.'
});
};
Apps Script ;
/**
* Responds to a MESSAGE event in Google Chat.
*
* @param {Object} event the event object from Google Chat
*/
function onMessage(event) {
if (event.message.slashCommand) {
switch (event.message.slashCommand.commandId) {
case 1: // Responds to /help
return {
"privateMessageViewer": event.user,
"text": "This Chat app was created by Cymbal Labs. To get help with this app, <https://cymbalgroup.com/docs|see our documentation> or <https://cymbalgroup.com/support|contact our support team>."
};
}
}
else {
return { "text": "Try a slash command.", "privateMessageViewer": event.user };
}
}
Python
from typing import Any, Mapping
import flask
import functions_framework
@functions_framework.http
def main(req: flask.Request) -> Mapping[str, Any]:
"""Responds to a MESSAGE event in Google Chat.
Args:
req (flask.Request): the event object from Chat API.
Returns:
Mapping[str, Any]: open a Dialog in response to a card's button click.
"""
if req.method == 'GET':
return 'Hello! This function must be called from Google Chat.'
request = req.get_json(silent=True)
# Checks for the presence of event.message.slashCommand.
# If the slash command is "/help", responds with a private text message.
if request.get('message', {}).get('slashCommand'):
command_id = request.get('message', {}).get('slashCommand').get('commandId')
if command_id == '1': # /help
return {
'privateMessageViewer': request.get('user'),
'text': (
'This Chat app was created by Cymbal Labs. To get help with this'
' app, <https://cymbalgroup.com/docs|see our documentation> or'
' <https://cymbalgroup.com/support|contact our support team>.'
),
}
return {
'privateMessageViewer': request.get('user'),
'text': 'Try a slash command.',
}
Limites
Pour envoyer un message privé, le message ne doit pas contenir ni utiliser les suivantes:
- Pièces jointes.
- Actions accessoire
- Messages partiellement privés Par exemple, une application Chat Impossible d'envoyer un message contenant du texte et une carte dont le texte n'est visible que un seul utilisateur, mais la fiche est visible par tous les membres de l'espace.
- Authentification des utilisateurs. Seules les applications Chat peuvent envoyer des messages privés. L'application de chat ne parvient pas à s'authentifier en tant qu'utilisateur pour envoyer un message privé.
Mettre à jour ou supprimer des messages privés
Pour modifier ou supprimer les messages Google Chat, vous devez appeler la
API Chat. Vous ne pouvez ni modifier le destinataire du message privé,
le message public. Par conséquent, lorsque vous mettez à jour des messages privés, vous devez omettre
le champ privateMessageViewer
dans l'appel d'API (ce champ n'est qu'une sortie).
Pour modifier un message privé, consultez Modifier un message Pour supprimer un message privé, consultez Supprimer un message
Articles associés
- Envoyer un message
- Identifier et spécifier les utilisateurs de Google Chat
- Répondre aux commandes à barre oblique
- Modifier un message
- Supprimer un message