Questa guida spiega come utilizzare il metodo list
nella risorsa membership
dell'API Google Chat per elencare i membri in uno spazio come elenco impaginato e filtrabile
di iscrizioni in uno spazio. L'elenco delle iscrizioni con
autenticazione app
elenca le iscrizioni negli spazi a cui l'app Chat ha
accesso, ma esclude quelle all'app di Chat, inclusi
la sua. L'elenco delle appartenenze con
Autenticazione utente
elenca le iscrizioni negli spazi a cui l'utente autenticato ha accesso.
La risorsa Membership
indica se un utente umano o un'app Google Chat è invitato, fa parte o è assente da uno spazio.
Prerequisiti
Python
- Python 3.6 o versioni successive
- Lo strumento di gestione dei pacchetti pip
Le librerie client di Google più recenti per Python. Per installarli o aggiornarli, esegui questo comando nell'interfaccia a riga di comando:
pip3 install --upgrade google-api-python-client google-auth-oauthlib google-auth
- Un progetto Google Cloud con l'API Google Chat abilitata e configurata. Per i passaggi da seguire, vedi Creare un'app Google Chat.
Autorizzazione configurata per l'app Chat. Gli abbonamenti dell'elenco supportano entrambi i seguenti metodi di autenticazione:
- Autenticazione degli utenti con l'ambito dell'autorizzazione
chat.memberships.readonly
ochat.memberships
. - Autenticazione delle app con l'ambito di autorizzazione
chat.bot
.
- Autenticazione degli utenti con l'ambito dell'autorizzazione
Elenca i membri in uno spazio con autenticazione utente
Per elencare gli utenti, i gruppi Google e l'app di Chat in uno spazio a cui l'utente autenticato ha accesso, trasmetti quanto segue nella richiesta:
- Con
l'autenticazione dell'utente,
specifica l'ambito dell'autorizzazione
chat.memberships.readonly
ochat.memberships
. - Chiama il metodo
list
sulla risorsamembership
. - Per elencare i gruppi Google, imposta il parametro di query
showGroups
sutrue
.
L'esempio seguente elenca i membri di gruppi Google, persone e app visibili all'utente autenticato.
Python
- Nella directory di lavoro, crea un file denominato
chat_member_list_user.py
. Includi il seguente codice in
chat_member_list_user.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.readonly"] def main(): ''' Authenticates with Chat API via user credentials, then lists Google Group, human, and app members in a specified space. ''' # 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().list( # The space for which to list memberships. parent = 'spaces/SPACE', # Set this parameter to list Google Groups. showGroups = 'true' ).execute() # Prints the list of memberships. print(result) if __name__ == '__main__': main()
Nel codice, sostituisci
SPACE
con il nome di uno spazio, che puoi ottenere dal metodospaces.list
nell'API Chat o dall'URL di uno spazio.Nella directory di lavoro, crea ed esegui l'esempio:
python3 chat_member_list_user.py
L'API Google Chat restituisce un elenco di membri di gruppi Google, persone e app dallo spazio specificato.
Elenca membri in uno spazio con autenticazione delle app
Per elencare gli utenti e l'app di Chat in uno spazio a cui l'app autenticata ha accesso, trasmetti quanto segue nella richiesta:
- Con
l'autenticazione delle app,
specifica l'ambito dell'autorizzazione
chat.bot
. - Chiama il metodo
list
sulla risorsamember
. - Per elencare i gruppi Google, imposta il parametro di query
showGroups
sutrue
.
Nell'esempio seguente sono elencati i membri umani dello spazio (non i gestori dello spazio) visibili all'app Chat:
Python
- Nella directory di lavoro, crea un file denominato
chat_member_list_app.py
. Includi il seguente codice in
chat_member_list_app.py
:from google.oauth2 import service_account from apiclient.discovery import build # Specify required scopes. SCOPES = ['https://www.googleapis.com/auth/chat.bot'] # Specify service account details. CREDENTIALS = ( service_account.Credentials.from_service_account_file('credentials.json') .with_scopes(SCOPES) ) # Build the URI and authenticate with the service account. chat = build('chat', 'v1', credentials=CREDENTIALS) # Use the service endpoint to call Chat API. result = chat.spaces().members().list( # The space for which to list memberships. parent = 'spaces/SPACE', # An optional filter that returns only human space members. filter = 'member.type = "HUMAN" AND role = "ROLE_MEMBER"' ).execute() print(result)
Nel codice, sostituisci
SPACE
con il nome di uno spazio, che puoi ottenere dal metodospaces.list
nell'API Chat o dall'URL di uno spazio.Nella directory di lavoro, crea ed esegui l'esempio:
python3 chat_member_list_app.py
L'API Google Chat restituisce un elenco dei membri umani dello spazio (esclusi i gestori dello spazio) dello spazio specificato.
Personalizzare l'impaginazione o filtrare l'elenco
Per elencare le appartenenze, passa i seguenti parametri di query per personalizzare l'impaginazione o filtrare le appartenenze elencate:
pageSize
: il numero massimo di abbonamenti da restituire. Il servizio potrebbe restituire un valore inferiore a questo valore. Se non specificati, vengono restituiti al massimo 100 spazi. Il valore massimo è 1000; i valori superiori a 1000 vengono modificati automaticamente in 1000.pageToken
: un token di pagina, ricevuto da una precedente chiamata agli spazi elenco. Fornisci questo token per recuperare la pagina successiva. Durante l'impaginazione, il valore del filtro deve corrispondere alla chiamata che ha fornito il token della pagina. Il passaggio di un valore diverso potrebbe portare a risultati imprevisti.filter
: un filtro query. Richiede l'autenticazione dell'utente. Per i dettagli delle query supportate, consulta il metodospaces.members.list
.
Argomenti correlati
- Ottenere dettagli sull'abbonamento di un utente o di un'app di Chat.
- Invitare o aggiungere un utente o un'app di Chat a uno spazio.
- Aggiornare l'appartenenza di un utente a uno spazio di Google Chat.
- Rimuovere un utente o un'app di Chat da uno spazio.