Rimuovere un membro da uno spazio

Questa guida spiega come utilizzare il metodo delete nella risorsa membership dell'API Google Chat per rimuovere il membro da uno spazio noto anche come eliminazione di un . Non è possibile rimuovere i gestori dello spazio se sono l'unico gestore dello spazio in uno spazio. Assegna un altro utente come gestore dello spazio prima di rimuovere questi di abbonamento.

La Membership risorsa indica se un utente umano o un'app Google Chat è invitato, parte di o assente in uno spazio.

Prerequisiti

Python

  • Python 3.6 o versioni successive
  • Il pip strumento di gestione dei pacchetti
  • Le librerie client di Google più recenti per Python. Per installarle o aggiornarle, esegui questo comando nell'interfaccia a riga di comando:

    pip3 install --upgrade google-api-python-client google-auth-oauthlib
    
  • Un progetto Google Cloud con l'API Google Chat abilitata e configurata. Per i passaggi, vedi Crea un'app Google Chat.
  • Autorizzazione configurata per l'app Chat. Eliminazione in corso... un abbonamento richiede Autenticazione degli utenti con Ambito dell'autorizzazione chat.memberships o chat.memberships.app da un utente che dispone dell'autorizzazione per eliminare l'appartenenza specificata.

Rimuovere un membro da uno spazio

Per rimuovere un utente, un gruppo Google o un'app di Chat da un spazio:

  • Per rimuovere un utente o un gruppo Google, specifica l'autorizzazione chat.memberships l'ambito di attività. Per rimuovere un'app di Chat, specifica chat.memberships.app ambito di autorizzazione (le app possono eliminare solo il proprio adesione; non quella di altre app). Come best practice, scegli a un ambito restrittivo che consenta comunque il funzionamento dell'app.
  • Chiama il metodo delete il membership risorsa.
  • Supera il name dell'abbonamento da eliminare. Se l'abbonamento appartiene solo gestore dello spazio in uno spazio, assegna il ruolo di gestore a un altro utente prima eliminando questo abbonamento.

Per eliminare un abbonamento:

Python

  1. Nella directory di lavoro, crea un file denominato chat_membership_delete.py.
  2. Includi il seguente codice in 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. Nel codice, sostituisci quanto segue:

    • SPACE: il nome di uno spazio, che puoi ottenere il metodo spaces.list nell'API Chat o dall'URL di uno spazio.

    • MEMBER: il nome di un membro, che puoi ottenere dal metodo spaces.members.list nell'API Chat. Per eliminare l'abbonamento a un'app, sostituisci MEMBER con app.

  4. Nella directory di lavoro, crea ed esegui l'esempio:

    python3 chat_membership_delete.py
    

In caso di esito positivo, il corpo della risposta restituisce l'appartenenza con 'state': 'NOT_A_MEMBER', a indicare che il membro non è più nello spazio.

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