Z tego przewodnika dowiesz się, jak za pomocą metody update()
w zasobach Membership
interfejsu API Google Chat zmienić atrybuty dotyczące członkostwa, np. zmienić członka pokoju na menedżera pokoju lub zmienić menedżera pokoju na członka pokoju.
Jeśli jesteś administratorem Google Workspace, możesz wywołać metodę update()
, aby zaktualizować członkostwo w pokoju w Twojej organizacji Google Workspace.
Membership
zasób
określa zaproszenie użytkownika lub aplikacji Google Chat,
które znajdują się w pokoju lub w ogóle ich nie ma.
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 pod nazwą. ikonę i opis aplikacji Google Chat.
- Zainstaluj bibliotekę klienta Cloud dla Node.js.
- Utwórz dane uwierzytelniające na podstawie sposobu uwierzytelniania w interfejsie Google Chat API
żądanie:
- Aby uwierzytelnić się jako użytkownik czatu, utwórz dane logowania OAuth z identyfikatorem klienta i zapisz je w katalogu lokalnym jako plik JSON o nazwie
client_secrets.json
. - Aby uwierzytelnić się jako aplikacja Google Chat:
utwórz konto usługi
dane logowania i zapisz je w pliku JSON o nazwie
credentials.json
- Aby uwierzytelnić się jako użytkownik czatu, utwórz dane logowania OAuth z identyfikatorem klienta i zapisz je w katalogu lokalnym jako plik JSON o nazwie
- Wybierz zakres autoryzacji w zależności od tego, czy chcesz uwierzytelnić użytkownika czy aplikację Google Chat.
Aktualizowanie subskrypcji
Aby zaktualizować członkostwo w pokoju, w swojej prośbie podaj te informacje:
- Określ zakres autoryzacji:
- W przypadku uwierzytelniania użytkownika określ zakres autoryzacji
chat.memberships
. - Na
uwierzytelnianie aplikacji
(funkcja dostępna w wersji przedpremierowej dla programistów),
określić zakres autoryzacji
chat.app.memberships
. Podczas aktualizowania z uwierzytelnianiem w aplikacji, możesz zaktualizować członkostwo w utworzonych przez aplikacje do obsługi czatu. Uwierzytelnianie aplikacji wymaga jednorazowego do zatwierdzenia przez administratora.
- W przypadku uwierzytelniania użytkownika określ zakres autoryzacji
- Wywołaj funkcję
UpdateMembership()
. - Przekaż
membership
jako instancjęMembership
z tymi parametrami:- W polu
name
ustawiono subskrypcję do aktualizacji, która zawiera identyfikator pokoju oraz identyfikator użytkownika. - pola członkostwa, które mają być aktualizowane, mają nowe wartości.
- W polu
- Przekaż parametr
updateMask
, aby określić aspekty subskrypcji, które mają zostać zaktualizowane. Obejmuje on:role
: rola użytkownika w pokoju czatu, która określa jego dozwolone działania w pokoju. Możliwe wartości to:ROLE_MEMBER
: użytkownik pokoju. Użytkownik ma podstawowe uprawnienia, np. wysyłanie wiadomości do pokoju. W grupie 1:1 i bez nazwy rozmów, każdy ma tę rolę.ROLE_MANAGER
: menedżer pokoju. Użytkownik ma wszystkie podstawowe uprawnienia oraz uprawnienia administracyjne, które umożliwiają zarządzanie pokojem, np. dodawanie i usuwanie użytkowników. Obsługiwane tylko w pokojach, w którychspaceType
ma wartośćSPACE
(spacje z nazwami).
Ustawianie zwykłego uczestnika pokoju jako menedżera pokoju
Ten przykład wywołuje interfejs Chat API za pomocą
uwierzytelnianie użytkownika,
aby zwykły użytkownik pokoju stał się menedżerem pokoju, określ role
jako
ROLE_MANAGER
:
Node.js
Aby uruchomić przykład, zastąp to:
SPACE_NAME
: identyfikatorname
pokoju. Identyfikator możesz uzyskać, wywołując metodęListSpaces()
lub korzystając z adresu URL pokoju.MEMBER_NAME
: identyfikator z subskrypcjiname
Aby go uzyskać, wywołaj metodęListMemberships()
lub z treści odpowiedzi zwróconej po utworzeniu członkostwa asynchronicznie z interfejsem Chat API.ROLE_NAME
: zaktualizowana rola:ROLE_MANAGER
.
Interfejs Google Chat API zmienia podaną wartość na menedżera pokoju i zwraca
wystąpienie
Membership
Ustawianie menedżera pokoju jako zwykłego uczestnika
Ten przykład wywołuje interfejs Chat API za pomocą
uwierzytelnianie użytkownika,
aby menedżer pokoju został zwykłym członkiem pokoju, określając role
jako
ROLE_MEMBER
:
Node.js
Aby uruchomić przykład, zastąp to:
SPACE_NAME
: identyfikatorname
pokoju. Identyfikator możesz uzyskać, wywołując metodęListSpaces()
lub korzystając z adresu URL pokoju.MEMBER_NAME
: identyfikator członkostwaname
. Identyfikator możesz uzyskać, wywołując metodęListMemberships()
lub z treści odpowiedzi zwróconej po utworzeniu członkostwa asynchronicznie za pomocą interfejsu Chat API.ROLE_NAME
: zaktualizowana rola:ROLE_MEMBER
.
Interfejs Google Chat API zmienia podaną wartość na menedżera pokoju i zwraca
wystąpienie
Membership
Ustawianie zwykłego członka pokoju jako menedżera pokoju w aplikacji Google Chat
Aby uwierzytelnić aplikację, musisz jednorazowo zatwierdzić ją przez administratora.
Tworzenie klucza interfejsu API
Aby wywołać metodę interfejsu Developer Preview API, musisz użyć niepublicznej wersji przedpremierowej dla programistów dokumentu opisującego interfejs API. Aby uwierzytelnić żądanie, musisz przekazać klucz interfejsu API.
Aby utworzyć klucz interfejsu API, otwórz projekt Google Cloud aplikacji i wykonaj te czynności:
- W konsoli Google Cloud kliknij Menu > Interfejsy API i usługi > Dane logowania.
- Kliknij Utwórz dane logowania > Klucz interfejsu API.
- Wyświetli się nowy klucz API.
- Kliknij Kopiuj , aby skopiować klucz interfejsu API i użyć go w kodzie aplikacji. Klucz interfejsu API znajdziesz też w sekcji „Klucze interfejsu API” w danych logowania projektu.
- Kliknij Ogranicz klucz, aby zaktualizować ustawienia zaawansowane i ograniczyć korzystanie z klucza swojego klucza interfejsu API. Więcej informacji znajdziesz w artykule Stosowanie ograniczeń kluczy interfejsu API.
Napisać skrypt, który wywołuje interfejs Chat API
Ten przykład wywołuje interfejs Chat API za pomocą
uwierzytelnianie aplikacji
aby zwykły użytkownik pokoju stał się menedżerem pokoju, określ role
jako
ROLE_MANAGER
w body
, który określa zaktualizowane atrybuty członkostwa:
Python
- W katalogu roboczym utwórz plik o nazwie
chat_membership_update_to_manager_app.py
. Dodaj do pliku
chat_membership_update_to_manager_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 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()
W kodzie zamień:
API_KEY
: klucz interfejsu API utworzony przez Ciebie na potrzeby kompilacji. punktu końcowego usługi Chat API.SPACE
: nazwa pokoju, która który znajdziesz w Metodaspaces.list
w interfejsie Chat API lub z adresu URL pokoju.MEMBERSHIP
: nazwa subskrypcji, która który znajdziesz w Metodaspaces.members.list
w interfejsie Chat API.
W katalogu roboczym skompiluj i uruchom przykład:
python3 chat_membership_update_to_manager_app.py
Ustawianie menedżera pokoju jako zwykłego członka jako aplikacji Google Chat
Aby uwierzytelnić aplikację, musisz jednorazowo zatwierdzić ją przez administratora.
Tworzenie klucza interfejsu API
Aby wywołać metodę interfejsu Developer Preview API, musisz użyć niepublicznej wersji przedpremierowej dla programistów dokumentu opisującego interfejs API. Aby uwierzytelnić żądanie, musisz przekazać klucz interfejsu API.
Aby utworzyć klucz interfejsu API, otwórz projekt Google Cloud aplikacji i wykonaj te czynności:
- W konsoli Google Cloud kliknij Menu > Interfejsy API i usługi > Dane logowania.
- Kliknij Utwórz dane logowania > Klucz interfejsu API.
- Wyświetli się Twój nowy klucz interfejsu API.
- Kliknij Kopiuj , aby skopiować klucz interfejsu API i użyć go w kodzie aplikacji. Klucz interfejsu API znajdziesz też w sekcji „Klucze interfejsu API” w danych logowania projektu.
- Kliknij Ogranicz klucz, aby zaktualizować ustawienia zaawansowane i ograniczyć użycie klucza API. Więcej informacji znajdziesz w artykule Stosowanie ograniczeń kluczy interfejsu API.
Napisać skrypt, który wywołuje interfejs Chat API
Ten przykład wywołuje interfejs Chat API za pomocą
uwierzytelnianie aplikacji
aby menedżer pokoju został zwykłym członkiem pokoju, określając role
jako
ROLE_MEMBER
w body
, który określa zaktualizowane atrybuty członkostwa:
Python
- W katalogu roboczym utwórz plik o nazwie
chat_membership_update_to_member_app.py
. Dodaj do pliku
chat_membership_update_to_member_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 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()
W kodzie zamień:
API_KEY
: klucz interfejsu API utworzony przez Ciebie na potrzeby kompilacji. punktu końcowego usługi Chat API.SPACE
: nazwa pokoju, która który znajdziesz w Metodaspaces.list
w interfejsie Chat API lub z adresu URL pokoju.MEMBERSHIP
: nazwa subskrypcji, która który znajdziesz w Metodaspaces.members.list
w interfejsie Chat API.
W katalogu roboczym skompiluj i uruchom przykład:
python3 chat_membership_update_to_member_app.py
Aktualizowanie subskrypcji jako administrator Google Workspace
Jeśli jesteś administratorem Google Workspace, możesz wywołać metodę update()
, aby zaktualizować członkostwo w dowolnym pokoju w organizacji Google Workspace.
Aby wywołać tę metodę jako administrator Google Workspace:
- Wywołaj metodę, używając uwierzytelniania użytkownika, i określ zakres autoryzacji, który obsługuje wywoływanie metody przy użyciu uprawnień administratora.
- W żądaniu ustaw parametr zapytania
useAdminAccess
natrue
.
Więcej informacji i przykładów znajdziesz w materiałach na temat Zarządzanie pokojami Google Chat jako administrator Google Workspace
Powiązane artykuły
- Zaproś lub dodaj użytkownika lub aplikację Google Chat do pokoju.
- Uzyskiwanie informacji o subskrypcji użytkownika lub w aplikacji Google Chat
- Wyświetlanie listy osób w pokoju.
- Usuwanie użytkownika lub aplikacji do obsługi czatu z pokoju