Questa guida spiega come utilizzare
update()
sulla risorsa Membership
dell'API Google Chat per modificare gli attributi
relative a un abbonamento, ad esempio la modifica di un membro dello spazio in gestore dello spazio o la modifica
un gestore dello spazio
a un membro dello spazio.
Se sei un amministratore di Google Workspace, puoi chiamare il metodo update()
per aggiornare l'appartenenza a uno spazio nella tua organizzazione Google Workspace.
La
Membership
risorsa
indica se un utente umano o un'app Google Chat è invitato,
parte di o assente in uno spazio.
Prerequisiti
Node.js
- Un'azienda o un'impresa Google Workspace con accesso a Google Chat.
- Configura l'ambiente:
- Creare un progetto Google Cloud.
- Configura la schermata per il consenso OAuth.
- Attiva e configura l'API Google Chat con un nome, un'icona e una descrizione per la tua app di chat.
- Installa la libreria client Cloud per Node.js.
- Crea credenziali di accesso in base a come vuoi autenticarti nell'API Google Chat
richiesta:
- Per autenticarti come utente di Chat,
crea le credenziali dell'ID client OAuth e salvale come file JSON nominato
client_secrets.json
nella tua directory locale. - Per autenticarti come app Chat,
crea account di servizio
credenziali e salvale come file JSON denominato
credentials.json
.
- Per autenticarti come utente di Chat,
crea le credenziali dell'ID client OAuth e salvale come file JSON nominato
- Scegli un ambito di autorizzazione in base a se vuoi autenticarti come utente o come app Chat.
Aggiornare un abbonamento
Per aggiornare l'appartenenza a uno spazio, inserisci quanto segue nella richiesta:
- Specifica un ambito di autorizzazione:
- Con l'autenticazione utente,
specifica l'ambito di autorizzazione
chat.memberships
. - Con
l'autenticazione delle app
(disponibile in Anteprima per sviluppatori),
specifica l'ambito di autorizzazione
chat.app.memberships
. Quando aggiorni un abbonamento con l'autenticazione dell'app, puoi aggiornare gli abbonamenti solo negli spazi creati dalle app di Chat. L'autenticazione delle app richiede un'approvazione dell'amministratore una tantum.
- Con l'autenticazione utente,
specifica l'ambito di autorizzazione
- Chiama il metodo
UpdateMembership()
. - Passa
membership
come istanza diMembership
con quanto segue:- Il campo
name
impostato sull'abbonamento da aggiornare, che include un ID spazio e un ID membro. - I campi dell'abbonamento da aggiornare impostati sui nuovi valori.
- Il campo
- Passa
updateMask
per specificare gli aspetti dell'abbonamento da aggiornare, tra cui:role
: il ruolo dell'utente all'interno di uno spazio di Chat, che determina le sue azioni consentite nello spazio. I valori possibili sono:ROLE_MEMBER
: un membro dello spazio. L'utente dispone di autorizzazioni di base, come l'invio di messaggi allo spazio. Nelle conversazioni 1:1 e di gruppo senza nome, tutti hanno questo ruolo.ROLE_MANAGER
: un gestore dello spazio. L'utente dispone di tutte le autorizzazioni di base più autorizzazioni amministrative che gli consentono di gestire lo spazio, come l'aggiunta o rimuovendo membri. Supportato solo negli spazi in cuispaceType
èSPACE
(spazi con nome).
Impostare un normale membro dello spazio come gestore dello spazio come utente
Il seguente esempio chiama l'API Chat utilizzando
l'autenticazione utente
per fare in modo che un membro dello spazio normale diventi un gestore dello spazio specificando role
come
ROLE_MANAGER
:
Node.js
Per eseguire l'esempio, sostituisci quanto segue:
SPACE_NAME
: l'ID delname
dello spazio. Puoi ottenerlo chiamando il metodoListSpaces()
o dall'URL dello spazio.MEMBER_NAME
: l'ID del documento di identitàname
Puoi ottenere l'ID chiamando il metodoListMemberships()
o dal corpo della risposta restituito dopo aver creato un abbonamento in modo asincrono con l'API Chat.ROLE_NAME
: il ruolo aggiornato,ROLE_MANAGER
.
L'API Google Chat aggiorna l'appartenenza specificata a un gestore dello spazio e restituisce un'istanza di Membership
.
Impostare un gestore dello spazio come membro normale come utente
L'esempio seguente chiama l'API Chat utilizzando
autenticazione degli utenti
per rendere un gestore dello spazio un normale membro dello spazio specificando role
come
ROLE_MEMBER
:
Node.js
Per eseguire l'esempio, sostituisci quanto segue:
SPACE_NAME
: l'ID della proprietàname
Puoi ottenerlo chiamando il metodoListSpaces()
o dall'URL dello spazio.MEMBER_NAME
: l'ID del documento di identitàname
Puoi ottenere l'ID chiamando il metodoListMemberships()
o dal corpo della risposta restituito dopo aver creato un abbonamento in modo asincrono con l'API Chat.ROLE_NAME
: il ruolo aggiornato,ROLE_MEMBER
.
L'API Google Chat aggiorna l'appartenenza specificata a un gestore dello spazio e restituisce
un'istanza di
Membership
Impostare un membro normale dello spazio come gestore dello spazio come app Chat
L'autenticazione app richiede una sola volta approvazione degli amministratori.
crea una chiave API
Per chiamare un metodo dell'API Anteprima per gli sviluppatori, devi utilizzare una versione di anteprima per gli sviluppatori non pubblica del documento di rilevamento API. Per autenticare la richiesta, devi passare una chiave API.
Per creare la chiave API, apri il progetto Google Cloud della tua app ed esegui i seguenti passaggi:
- Nella console Google Cloud, vai a Menu > API e servizi > Credenziali.
- Fai clic su Crea credenziali > Chiave API.
- Viene visualizzata la nuova chiave API.
- Fai clic su Copia per copiare la chiave API da utilizzare nel codice dell'app. La chiave API può anche essere che si trovano nella sezione "Chiavi API" delle credenziali del progetto.
- Fai clic su Limita chiave per aggiornare le impostazioni avanzate e limitare l'utilizzo della chiave API. Per maggiori dettagli, vedi Applicare limitazioni alle chiavi API.
Scrivi uno script che chiami l'API Chat
Il seguente esempio chiama l'API Chat utilizzando
l'autenticazione dell'app
per rendere un normale membro dello spazio un gestore dello spazio specificando role
come
ROLE_MANAGER
in body
che specifica gli attributi dell'abbonamento aggiornati:
Python
- Nella directory di lavoro, crea un file denominato
chat_membership_update_to_manager_app.py
. Includi il seguente codice in
chat_membership_update_to_manager_app.py
:from google.oauth2 import service_account from apiclient.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.app.memberships"] def main(): ''' Authenticates with Chat API using app authentication, then updates a specified space member to change it from a regular member to a space manager. ''' # Specify service account details. creds = ( service_account.Credentials.from_service_account_file('credentials.json') .with_scopes(SCOPES) ) # Build a service endpoint for Chat API. chat = build('chat', 'v1', credentials=creds, discoveryServiceUrl='https://chat.googleapis.com/$discovery/rest?version=v1&labels=DEVELOPER_PREVIEW&key=API_KEY') # Use the service endpoint to call Chat API. result = chat.spaces().members().patch( # The membership to update, and the updated role. # # Replace SPACE with a space name. # Obtain the space name from the spaces resource of Chat API, # or from a space's URL. # # Replace MEMBERSHIP with a membership name. # Obtain the membership name from the membership of Chat API. name='spaces/SPACE/members/MEMBERSHIP', updateMask='role', body={'role': 'ROLE_MANAGER'} ).execute() # Prints details about the updated membership. print(result) if __name__ == '__main__': main()
Nel codice, sostituisci quanto segue:
API_KEY
: la chiave API che hai creato per creare l'endpoint di servizio per l'API Chat.SPACE
: il nome di uno spazio, che che puoi ottenere Metodospaces.list
nell'API Chat o dall'URL di uno spazio.MEMBERSHIP
: il nome di un membro, che che puoi ottenere Metodospaces.members.list
nell'API Chat.
Nella directory di lavoro, compila ed esegui l'esempio:
python3 chat_membership_update_to_manager_app.py
Impostare un gestore dello spazio come membro normale come app Chat
L'autenticazione delle app richiede un'approvazione dell'amministratore una tantum.
crea una chiave API
Per chiamare un metodo dell'API Anteprima per gli sviluppatori, devi utilizzare una versione di anteprima per gli sviluppatori non pubblica del documento di rilevamento API. Per autenticare la richiesta, devi passare una chiave API.
Per creare la chiave API, apri il progetto Google Cloud della tua app ed esegui i seguenti passaggi:
- Nella console Google Cloud, vai a Menu > API e servizi > Credenziali.
- Fai clic su Crea credenziali > Chiave API.
- Viene visualizzata la nuova chiave API.
- Fai clic su Copia per copiare la chiave API da utilizzare nel codice dell'app. La chiave API può anche essere che si trovano nella sezione "Chiavi API" delle credenziali del progetto.
- Fai clic su Limita chiave per aggiornare le impostazioni avanzate e limitare l'utilizzo della chiave API. Per maggiori dettagli, consulta Applicazione di limitazioni relative alle chiavi API.
Scrivi uno script che chiami l'API Chat
L'esempio seguente chiama l'API Chat utilizzando
autenticazione app
per rendere un gestore dello spazio un normale membro dello spazio specificando role
come
ROLE_MEMBER
nel body
che specifica gli attributi di appartenenza aggiornati:
Python
- Nella directory di lavoro, crea un file denominato
chat_membership_update_to_member_app.py
. Includi il seguente codice in
chat_membership_update_to_member_app.py
:from google.oauth2 import service_account from apiclient.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.app.memberships"] def main(): ''' Authenticates with Chat API via user credentials, then updates a specified space member to change it from a regular member to a space manager. ''' # Specify service account details. creds = ( service_account.Credentials.from_service_account_file('credentials.json') .with_scopes(SCOPES) ) # Build a service endpoint for Chat API. chat = build('chat', 'v1', credentials=creds, discoveryServiceUrl='https://chat.googleapis.com/$discovery/rest?version=v1&labels=DEVELOPER_PREVIEW&key=API_KEY') # Use the service endpoint to call Chat API. result = chat.spaces().members().patch( # The membership to update, and the updated role. # # Replace SPACE with a space name. # Obtain the space name from the spaces resource of Chat API, # or from a space's URL. # # Replace MEMBERSHIP with a membership name. # Obtain the membership name from the membership of Chat API. name='spaces/SPACE/members/MEMBERSHIP', updateMask='role', body={'role': 'ROLE_MEMBER'} ).execute() # Prints details about the updated membership. print(result) if __name__ == '__main__': main()
Nel codice, sostituisci quanto segue:
API_KEY
: la chiave API che hai creato per creare l'endpoint di servizio per l'API Chat.SPACE
: il nome di uno spazio, che che puoi ottenere Metodospaces.list
nell'API Chat o dall'URL di uno spazio.MEMBERSHIP
: il nome di un membro, che che puoi ottenere Metodospaces.members.list
nell'API Chat.
Nella directory di lavoro, compila ed esegui l'esempio:
python3 chat_membership_update_to_member_app.py
Aggiornare gli abbonamenti come amministratore di Google Workspace
Se sei un amministratore di Google Workspace, puoi chiamare il update()
per aggiornare gli abbonamenti a qualsiasi spazio di Google Workspace
dell'organizzazione.
Per chiamare questo metodo in qualità di amministratore di Google Workspace:
- Richiama il metodo utilizzando l'autenticazione utente e specifica ambito di autorizzazione che supporta la chiamata al metodo mediante privilegi amministrativi.
- Nella richiesta, specifica il parametro di query
useAdminAccess
pertrue
.
Per ulteriori informazioni ed esempi, vedi Gestire gli spazi di Google Chat come amministratore di Google Workspace.
Argomenti correlati
- Invitare o aggiungere un utente o un'app Google Chat a uno spazio.
- Ottenere dettagli sull'abbonamento di un utente o di un'app di Chat.
- Elenca i membri in uno spazio.
- Rimuovere un utente o l'app Chat da uno spazio.