Z tego przewodnika dowiesz się, jak używać metody
delete()
w zasobie Membership
interfejsu Google Chat API, aby usuwać użytkowników z pokoju, czyli usuwać członkostwo. Menedżerów pokoju nie można usunąć, jeśli są jedynymi menedżerami w pokoju. Zanim usuniesz te członkostwa, przypisz innego użytkownika jako menedżera pokoju.
Jeśli jesteś administratorem Google Workspace, możesz usuwać użytkowników, grupy Google lub aplikacje Google Chat z dowolnego pokoju w organizacji Google Workspace.
Membership
Zasób określa, czy użytkownik lub aplikacja Google Chat jest zaproszony do pokoju, należy do niego czy nie.
Wymagania wstępne
Node.js
- Konto Google Workspace w wersji Business lub Enterprise z dostępem do Google Chat.
- Skonfiguruj środowisko:
- Utwórz projekt Google Cloud.
- Skonfiguruj ekran zgody OAuth.
- Włącz i skonfiguruj interfejs Google Chat API, podając nazwę, ikonę i opis aplikacji do obsługi czatu.
- Zainstaluj bibliotekę klienta Cloud Node.js.
- Utwórz dane logowania, aby uwierzytelniać żądania do interfejsu Google Chat API:
- Aby uwierzytelnić się jako użytkownik Chatu, utwórz dane logowania identyfikatora klienta OAuth i zapisz je jako plik JSON o nazwie
credentials.json
w katalogu lokalnym. - Aby uwierzytelnić się jako aplikacja w Chat, utwórz dane logowania konta usługi i zapisz je w pliku JSON o nazwie
credentials.json
.
- Aby uwierzytelnić się jako użytkownik Chatu, utwórz dane logowania identyfikatora klienta OAuth i zapisz je jako plik JSON o nazwie
- Wybierz zakres autoryzacji w zależności od tego, czy chcesz uwierzytelnić się jako użytkownik, czy jako aplikacja do obsługi czatu.
- pokoju w Google Chat, Aby utworzyć pokój za pomocą interfejsu Google Chat API, zapoznaj się z artykułem Tworzenie pokoju. Aby utworzyć pokój w Chat, zapoznaj się z dokumentacją w Centrum pomocy.
Usuwanie osoby z pokoju przez użytkownika
Aby usunąć użytkownika, grupę Google lub aplikację do obsługi czatu z pokoju z uwierzytelnianiem użytkownika, w żądaniu przekaż te informacje:
- Określ zakres autoryzacji
chat.memberships
. Użytkownik, który autoryzuje działanie, musi mieć uprawnienia do usunięcia użytkownika lub grupy dyskusyjnej Google z pokoju. Aby usunąć aplikację do obsługi czatu, określchat.memberships.app
zakres autoryzacji (aplikacje mogą usuwać tylko swoje członkostwo, a nie członkostwo innych aplikacji). Zalecamy wybranie najbardziej ograniczonego zakresu, który nadal umożliwia działanie aplikacji. - Wywołaj metodę
DeleteMembership()
. - Przekaż
name
subskrypcji do usunięcia. Jeśli członkostwo należy do jedynego menedżera pokoju, przed usunięciem tego członkostwa przypisz innego użytkownika jako menedżera pokoju.
Aby usunąć subskrypcję z uwierzytelnianiem użytkownika:
Node.js
Aby uruchomić ten przykład, zastąp te elementy:
SPACE_NAME
: identyfikator zname
pokoju. Możesz go uzyskać, wywołując metodęListSpaces()
lub z adresu URL pokoju.MEMBER_NAME
: identyfikator z karty uczestnikaname
. Identyfikator możesz uzyskać, wywołując metodęListMemberships()
.
Jeśli operacja się uda, treść odpowiedzi zwróci informacje o członkostwie z wartością 'state': 'NOT_A_MEMBER'
, co oznacza, że użytkownik nie jest już członkiem przestrzeni.
{ "name": "spaces/SPACE_NAME/members/MEMBER_NAME", "state": "NOT_A_MEMBER" }
Usuwanie użytkownika z pokoju za pomocą aplikacji do Google Chat
Uwierzytelnianie aplikacji wymaga jednorazowego zatwierdzenia przez administratora.
Aby usunąć użytkownika, grupę Google lub aplikację do obsługi czatu z przestrzeni z uwierzytelnianiem aplikacji, w żądaniu przekaż te informacje:
- Określ
chat.app.memberships
zakres autoryzacji. Usuwanie członkostwa menedżera pokoju jest obsługiwane tylko w przypadku pokoi utworzonych przez aplikacje do obsługi czatu. - Wywołaj metodę
delete
wmembership
zasobie. - Przekaż
name
subskrypcji do usunięcia. Jeśli członkostwo należy do jedynego menedżera pokoju, przed usunięciem tego członkostwa przypisz innego użytkownika jako menedżera pokoju.
Napisz skrypt, który wywołuje Chat API
Aby usunąć subskrypcję za pomocą uwierzytelniania w aplikacji:
Python
- W katalogu roboczym utwórz plik o nazwie
chat_membership_delete_app.py
. Dodaj do pliku
chat_membership_delete_app.py
ten kod: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 deletes the specified membership. ''' # 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) # 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()
W kodzie zastąp te elementy:
SPACE
: nazwa pokoju, którą możesz uzyskać za pomocąspaces.list
metody w interfejsie Chat API lub z adresu URL pokoju.MEMBER
: nazwa członkostwa, którą możesz uzyskać za pomocąspaces.members.list
metody w Chat API. Aby usunąć subskrypcję aplikacji, zastąpMEMBER
kodemapp
.
W katalogu roboczym skompiluj i uruchom przykład:
python3 chat_membership_delete_app.py
Jeśli operacja się uda, treść odpowiedzi zwróci informacje o członkostwie z wartością 'state': 'NOT_A_MEMBER'
, co oznacza, że użytkownik nie jest już członkiem przestrzeni.
{ "name": "spaces/SPACE/members/MEMBER", "state": "NOT_A_MEMBER" }
Usuwanie użytkowników lub grup Google z pokoju jako administrator Google Workspace
Jeśli jesteś administratorem Google Workspace, możesz wywołać metodę
DeleteMembership()
, aby usunąć użytkowników, grupy Google lub aplikacje Google Chat z dowolnego pokoju w organizacji Google Workspace.
Aby wywołać tę metodę jako administrator Google Workspace, wykonaj te czynności:
- Wywołaj metodę za pomocą uwierzytelniania użytkownika i określ zakres autoryzacji, który obsługuje wywoływanie metody z uprawnieniami administratora.
- W żądaniu ustaw parametr zapytania
useAdminAccess
natrue
.
Więcej informacji i przykłady znajdziesz w artykule Zarządzanie pokojami w Google Chat jako administrator Google Workspace.
Ograniczenia i kwestie do rozważenia
- W przypadku uwierzytelniania aplikacji aplikacja Google Chat może usuwać użytkowników, ale nie grupy Google ani aplikacje Google Chat.
Powiązane artykuły
- Uzyskiwanie szczegółowych informacji o członkostwie użytkownika lub aplikacji na czacie
- Wyświetl listę osób w pokoju.
- Aktualizowanie członkostwa użytkownika w pokoju Google Chat
- Zapraszanie lub dodawanie użytkownika lub aplikacji Google Chat do pokoju