Ce guide explique comment utiliser le list
sur la ressource SpaceEvent
de l'API Google Chat pour répertorier les modifications apportées aux ressources d'un espace.
La ressource SpaceEvent
représente une modification apportée à l'espace cible, y compris aux ressources enfants de l'espace.
comme les messages,
les réactions et les abonnements. Pour en savoir plus sur la
la liste des types d'événements et des charges utiles d'événements pris en charge, consultez les eventType
et
Champs payload
de la ressource SpaceEvent
documentation de référence.
Vous pouvez répertorier les événements remontant jusqu'à 28 jours avant l'heure de la requête. Le serveur
renvoie les événements contenant la version la plus récente de la ressource concernée.
Par exemple, si vous répertoriez des événements concernant les nouveaux membres d'un espace, le serveur renvoie
Ressources Membership
contenant les informations les plus récentes sur l'adhésion. S'il s'agit d'un nouvel appareil
ont été supprimés pendant la période demandée, la charge utile de l'événement contient
ressource Membership
vide.
Pour appeler cette méthode, vous devez utiliser user authentification. À lister d'événements d'un espace, l'utilisateur authentifié doit en être membre.
Prérequis
Python
- Une entreprise Un compte Google Workspace ayant accès à Google Chat :
- Python 3.6 ou version ultérieure
- L'outil de gestion de packages pip
- Les dernières bibliothèques clientes Google Pour les installer
ou les mettre à jour,
exécutez la commande suivante dans votre interface de ligne de commande:
pip3 install --upgrade google-api-python-client google-auth-oauthlib
- 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.
-
Créez des identifiants client OAuth pour une application de bureau. Pour exécuter l'exemple
, enregistrez les identifiants dans un fichier JSON (
client_secrets.json
) dans votre dans votre répertoire local.
- Choisissez un niveau d'autorisation compatible avec l'authentification des utilisateurs.
Répertorier les événements de l'espace
Pour répertorier les événements d'un espace Chat, procédez comme suit:
- Appelez la méthode
list
. leSpaceEvent
ressource. - Spécifiez les types d'événements à répertorier à l'aide des boutons
filter
. Vous devez spécifier au moins un type d'événement, et vous pouvez également filtrer par la date de début. Pour obtenir la liste des types d'événements compatibles, consultezeventType
. - Avec utilisateur authentication, spécifiez un ou plusieurs niveaux d'autorisation pour prendre en charge chaque type d'événement de votre requête. Nous vous recommandons de choisir le champ d'application le plus restrictif permet à votre application de fonctionner. Pour choisir un champ d'application, consultez les Présentation de l'authentification et de l'autorisation
Dans l'exemple de code suivant, vous listez les événements concernant les nouvelles adhésions. messages dans un espace.
Python
- Dans votre répertoire de travail, créez un fichier nommé
chat_space_event_list.py
. Ajoutez le code suivant dans
chat_space_event_list.py
:"""Lists SpaceEvent resources from the Chat API.""" from google_auth_oauthlib.flow import InstalledAppFlow from googleapiclient.discovery import build # Define your app's authorization scopes. # When modifying these scopes, delete the file token.json, if it exists. SCOPES = ["https://www.googleapis.com/auth/chat.memberships.readonly", "https://www.googleapis.com/auth/chat.messages.readonly"] # Authenticate with Google Workspace # and get user authorization. flow = InstalledAppFlow.from_client_secrets_file( 'client_secrets.json', SCOPES) creds = flow.run_local_server() # Build a service endpoint for Chat API. chat = build( 'chat', 'v1', credentials=creds, ) # Use the service endpoint to call Chat API. result = chat.spaces().spaceEvents().list( # The space from which to list events. # # Replace SPACE with a space name. # Obtain the space name from the spaces resource of Chat API, # or from a space's URL. parent='spaces/SPACE', # A required filter. Filters and returns events about new memberships and messages filter='event_types:"google.workspace.chat.membership.v1.created" OR event_types:"google.workspace.chat.message.v1.created"' ).execute() # Prints details about the created space events. print(result)
Dans le code, remplacez les éléments suivants:
SPACE
: nom d'espace, que vous pouvez obtenir à partir de la méthodespaces.list
. dans l'API Chat ou depuis l'URL d'un espace.
Dans votre répertoire de travail, créez et exécutez l'exemple:
python3 chat_space_event_list.py
L'API Chat renvoie une liste
SpaceEvent
ressources
des événements sur les nouveaux messages et abonnements.
Personnaliser la pagination
Vous pouvez également transmettre les paramètres de requête suivants pour personnaliser la pagination:
pageSize
: nombre maximal de ressourcesSpaceEvent
à renvoyer. Le service peut renvoyer moins que cette valeur. Les valeurs négatives renvoient unINVALID_ARGUMENT
erreur.pageToken
: jeton de page reçu d'un appel d'événement d'espace de liste précédent. Fournissez ce jeton pour récupérer la page suivante. Lors de la pagination, La valeur du filtre doit correspondre à l'appel qui a fourni le jeton de page. Transmettre un valeur différente peut entraîner des résultats inattendus.