Cette page explique comment connecter une application Google Chat à un service ou un outil externe à Google Chat. Lorsque les applications Chat sont puissants seuls, ils fonctionnent souvent de concert avec d'autres systèmes et nécessitent pour connecter des comptes, autoriser l'accès aux données, afficher des données supplémentaires ou configurer des préférences utilisateur.
Prérequis
Une application Google Chat avec des fonctionnalités interactives. Pour créer un interactive, suivez l'un des guides de démarrage rapide suivants sur l'architecture de l'application que vous souhaitez utiliser: <ph type="x-smartling-placeholder">- </ph>
- Service HTTP avec Google Cloud Functions
- Google Apps Script
- Google Cloud Dialogflow CX
- Google Cloud Pub/Sub
Demander à un utilisateur de configurer une application Chat
Si l'exécution d'une requête nécessite une configuration supplémentaire qui ne peut pas être effectuées directement dans l'application Chat, renvoyez une l'URL de configuration dans le cadre d'une réponse normale ou la présenter en privé, sous la forme suivante:
{ "actionResponse": { "type": "REQUEST_CONFIG", "url": "CONFIGURATION_URL" } }
Cela indique à Google Chat de présenter à l'utilisateur une invite privée, où
CONFIGURATION_URL
est un lien
que l'utilisateur peut consulter pour une authentification, une autorisation
configuration. Une réponse REQUEST_CONFIG
s'exclue mutuellement avec une réponse
message de réponse. Le texte, les fiches et les autres attributs sont ignorés.
Terminer la demande de configuration
Toutes les
Événement d'interaction MESSAGE
reçues par votre application Chat inclut également le champ
configCompleteRedirectUrl
Vous devez encoder cette URL dans votre
URL de configuration à utiliser une fois le processus terminé. Redirection vers cette page
L'URL indique à Google Chat que la requête de configuration a été traitée.
Au démarrage de votre application Chat, la procédure dépend de la
un message spécifique reçu. En réponse à un message tel que @app help
, une
L'application Chat doit répondre par un message sans
nécessitant une configuration supplémentaire.
Lorsqu'un utilisateur est redirigé vers configCompleteRedirectUrl
fourni dans le message d'origine, Google Chat effectue les étapes suivantes:
- Effacez l'invite qui s'est affichée pour l'utilisateur initial.
- Convertir le message original en message public afin qu'il soit visible par les autres membres de l'espace.
- Envoyer le message d'origine à la même application Chat une deuxième fois.
La visite d'un configCompleteRedirectUrl
n'affecte qu'un seul message utilisateur.
Si un utilisateur a essayé d'envoyer un message à une application Chat à plusieurs
et, par conséquent, reçu plusieurs invites, en cliquant sur une
et que l'exécution du processus d'authentification et de configuration n'affecte
le message en question. Les autres messages ne sont pas modifiés.
Lorsqu'un événement d'interaction MESSAGE
est renvoyé de cette manière, il doit être identique.
à l'événement d'origine. Toutefois, dans certains cas, MESSAGE
les événements d'interaction peuvent différer. Par exemple, lorsqu'un message mentionne à la fois
les applications Chat A et B,
l'utilisateur peut modifier le message si l'application Chat A
répond par un message standard avant
de s'authentifier avec
Application de chat B. Dans ce cas,
L'application de chat B reçoit le texte modifié du message après la
l'utilisateur effectue l'authentification et la configuration.
Authentifier l'utilisateur Chat en dehors de Chat
Dans certains cas, comme la demande d'autorisation OAuth pour une API, votre application a besoin pour rediriger les utilisateurs vers une URL en dehors de Chat l'identité. Dans ce cas, le meilleur moyen d'identifier l'utilisateur est de protéger le l'application de destination via Google Sign-In.
Utilisez les
jeton d'identité
émis lors de la connexion pour obtenir l'ID utilisateur. La revendication sub
contient les informations
unique et peut être mis en corrélation avec l'ID utilisateur de Google Chat.
Bien que les deux ID ne soient pas exactement identiques, ils peuvent être forcés. À
convertir par coercition la valeur de la revendication sub
dans un élément users/{user}
Google Chat, ajouter
la valeur par users/
. Par exemple, la valeur de revendication de 123
est équivalente.
au nom d'utilisateur users/123
dans les messages envoyés à votre
Application Chat
Articles associés
- Recevoir des interactions utilisateur et y répondre
- Exemple d'application MyProfile utilise le jeton d'identité de la réponse Google Sign-In pour identifier utilisateur.