Exclure un membre d'un espace

Ce guide explique comment utiliser la méthode delete sur la ressource membership. de l'API Google Chat pour exclure un membre d'un espace, ce que l'on appelle la suppression d'un . Impossible de supprimer un gestionnaire d'espace s'il est le seul gestionnaire de l'espace dans un espace. Désignez un autre utilisateur comme gestionnaire de l'espace avant de le supprimer les adhésions.

La Ressource Membership indique si un utilisateur humain ou une application Google Chat est invité, est inclus ou absent d'un espace.

Prérequis

Python

  • Python 3.6 ou version ultérieure
  • La fonction pip outil de gestion des packages
  • Les dernières bibliothèques clientes Google pour Python. 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
    
  • Un projet Google Cloud dans lequel l'API Google Chat est activée et configurée Pour connaître la procédure à suivre, consultez Créer une application Google Chat
  • Autorisation configurée pour l'application Chat. Suppression... un abonnement nécessite Authentification des utilisateurs avec le Champ d'application de l'autorisation chat.memberships ou chat.memberships.app d'un utilisateur qui est autorisé à supprimer l'abonnement spécifié.

Exclure un membre d'un espace

Pour supprimer un utilisateur, un groupe Google ou une application Chat d'une espace:

  • Pour supprimer un utilisateur ou un groupe Google, spécifiez l'autorisation chat.memberships le champ d'application. Pour supprimer une application Chat, spécifiez le chat.memberships.app habilitation d'autorisation (les applications ne peuvent supprimer que les leurs adhésion ; et non celles d'autres applications). Nous vous recommandons de choisir un champ d'application restrictif permettant toujours à votre application de fonctionner.
  • Appelez la méthode delete. le Ressource membership.
  • Transmettez l'name de l'abonnement à supprimer. Si l'abonnement appartient au groupe gestionnaire d'espace uniquement, désignez un autre utilisateur comme gestionnaire avant suppression de cet abonnement.

Pour supprimer un abonnement:

Python

  1. Dans votre répertoire de travail, créez un fichier nommé chat_membership_delete.py.
  2. Ajoutez le code suivant dans chat_membership_delete.py:

    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.app"]
    
    def main():
        '''
        Authenticates with Chat API via user credentials,
        then deletes the specified membership.
        '''
    
        # 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().members().delete(
    
            # The membership to delete.
            #
            # Replace SPACE with a space name.
            # Obtain the space name from the spaces resource of Chat API,
            # or from a space's URL.
            #
            # Replace MEMBER with a membership name.
            # Obtain the membership name from the memberships resource of
            # Chat API. To delete a Chat app's membership, replace MEMBER
            # with app; an alias for the app calling the API.
            name='spaces/SPACE/members/MEMBER'
    
        ).execute()
    
        # Print Chat API's response in your command line interface.
        # When deleting a membership, the response body is empty.
        print(result)
    
    if __name__ == '__main__':
        main()
    
  3. Dans le code, remplacez les éléments suivants:

    • SPACE: nom d'espace, que vous pouvez obtenir à partir de la méthode spaces.list. dans l'API Chat ou depuis l'URL d'un espace.

    • MEMBER: nom d'appartenance, que vous pouvez obtenir à l'aide de la méthode spaces.members.list. dans l'API Chat. Pour supprimer l'abonnement d'une application, remplacez MEMBER avec app.

  4. Dans votre répertoire de travail, créez et exécutez l'exemple:

    python3 chat_membership_delete.py
    

Si la requête aboutit, le corps de la réponse renvoie l'appartenance avec 'state': 'NOT_A_MEMBER', qui indique que le membre ne fait plus partie de l'espace.

{
    "name": "spaces/SPACE/members/MEMBER",
    "state": "NOT_A_MEMBER"
}