Z tego przewodnika dowiesz się, jak używać metody create()
w zasobach Membership
interfejsu Google Chat API, aby zaprosić lub dodać użytkownika, grupę dyskusyjną Google lub aplikację Google Chat do pokoju (czyli stworzyć członkostwo). Jeśli podczas tworzenia subskrypcji określonego użytkownika nie jest włączona zasada automatycznego akceptowania, to po otrzymaniu zaproszenia musi on zaakceptować zaproszenie do pokoju, zanim dołączy do pokoju. W przeciwnym razie utworzenie członkostwa spowoduje dodanie użytkownika bezpośrednio do wybranego pokoju.
Jeśli jesteś administratorem Google Workspace, możesz dodawać użytkowników, Grupy dyskusyjne i aplikacje Google Chat do dowolnego pokoju w organizacji Google Workspace.
Membership
Zasób wskazuje, czy użytkownik lub aplikacja Google Chat zostali zaproszeni do pokoju, czy są w nim obecni, czy też są z niego wykluczeni.
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 swojej aplikacji do obsługi czatu.
- Zainstaluj bibliotekę klienta Cloud dla Node.js.
- Utwórz poświadczenia dostępu na podstawie sposobu uwierzytelniania w żądaniu interfejsu Google Chat API:
- Aby uwierzytelnić się jako użytkownik czatu, utwórz dane logowania OAuth z identyfikatorem klienta i zapisz je w katalogu lokalnym w pliku JSON o nazwie
client_secrets.json
. - Aby uwierzytelnić się jako aplikacja Google Chat, utwórz dane logowania do konta usługi 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 w pliku JSON o nazwie
- Wybierz zakres autoryzacji w zależności od tego, czy chcesz uwierzytelnić użytkownika czy aplikację Google Chat.
Python
- 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 swojej aplikacji do obsługi czatu.
- Zainstaluj bibliotekę klienta Cloud w Pythonie.
- Utwórz poświadczenia dostępu na podstawie sposobu uwierzytelniania w żądaniu interfejsu Google Chat API:
- Aby uwierzytelnić się jako użytkownik czatu, utwórz dane logowania OAuth z identyfikatorem klienta i zapisz je w katalogu lokalnym w pliku JSON o nazwie
client_secrets.json
. - Aby uwierzytelnić się jako aplikacja Google Chat, utwórz dane logowania do konta usługi 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 w pliku JSON o nazwie
- Wybierz zakres autoryzacji w zależności od tego, czy chcesz uwierzytelnić użytkownika czy aplikację Google Chat.
Java
- 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 swojej aplikacji do obsługi czatu.
- Zainstaluj bibliotekę klienta Cloud w Javie.
- Utwórz poświadczenia dostępu na podstawie sposobu uwierzytelniania w żądaniu interfejsu Google Chat API:
- Aby uwierzytelnić się jako użytkownik czatu, utwórz dane logowania OAuth z identyfikatorem klienta i zapisz je w katalogu lokalnym w pliku JSON o nazwie
client_secrets.json
. - Aby uwierzytelnić się jako aplikacja Google Chat, utwórz dane logowania do konta usługi 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 w pliku JSON o nazwie
- Wybierz zakres autoryzacji w zależności od tego, czy chcesz uwierzytelnić użytkownika czy aplikację Google Chat.
Google Apps Script
- 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 swojej aplikacji do obsługi czatu.
- Utwórz samodzielny projekt Apps Script i włącz zaawansowaną usługę Google Chat.
- W tym przewodniku musisz użyć uwierzytelniania użytkownika lub aplikacji. Aby uwierzytelnić się jako aplikacja Google Chat, utwórz dane logowania konta usługi. Instrukcje znajdziesz w artykule Uwierzytelnianie i autoryzowanie jako aplikacja Google Chat.
- Wybierz zakres autoryzacji w zależności od tego, czy chcesz uwierzytelnić użytkownika czy aplikację Google Chat.
Zapraszanie użytkownika do pokoju jako użytkownika lub dodawanie go do pokoju
Aby zaprosić użytkownika do pokoju lub dodać go do pokoju z uwierzytelnianiem użytkownika, prześlij w żądaniu:
- Określ zakres upoważnienia
chat.memberships
. - Wywołaj metodę
CreateMembership()
. - Jako nazwę zasobu podaj
parent
, czyli nazwę pokoju, w którym chcesz utworzyć członkostwo. - Przekaż wartość
membership
jako instancja typuMembership
, w której polemember
ma te ustawienia:- W polu
type
ustaw wartośćHUMAN
. - Pole
name
ma wartośćusers/{user}
, gdzie{user}
to osoba, którą chcesz dodać do pokoju. Aby określić użytkownika Google Chat, zastąp{user}
dowolnym z tych elementów:- Identyfikator osoby w People API. Jeśli na przykład w usłudze People API parametr person
resourceName
ma wartośćpeople/123456789
, użyj wartościusers/123456789
. - Identyfikator użytkownika w interfejsie Directory API.
- Adres e-mail użytkownika. Na przykład
users/222larabrown@gmail.com
lubusers/larabrown@cymbalgroup.com
. Jeśli użytkownik korzysta z konta Google lub należy do innej organizacji Google Workspace, musisz użyć jego adresu e-mail.
- Identyfikator osoby w People API. Jeśli na przykład w usłudze People API parametr person
- W polu
W tym przykładzie użytkownik jest dodawany do pokoju z uwierzytelnianiem użytkownika:
Node.js
Python
Java
Google Apps Script
Aby uruchomić przykład, zastąp te wartości:
SPACE_NAME
: identyfikator pokojuname
. Identyfikator możesz uzyskać, wywołując metodęListSpaces()
lub korzystając z adresu URL pokoju.USER_NAME
: identyfikator użytkownika.
Interfejs Chat API zwraca instancję
Membership
z informacjami o utworzonym członkostwie użytkownika.
Zapraszanie grupy dyskusyjnej Google do pokoju lub dodawanie jej
Aby zaprosić lub dodać grupę Google do pokoju przy użyciu uwierzytelniania użytkownika (uwierzytelnianie aplikacji nie obsługuje zapraszania ani dodawania grupy Google do pokoju), prześlij w żądaniu te informacje:
- Określ zakres upoważnienia
chat.memberships
. - Wywołaj metodę
CreateMembership()
. - Jako nazwę zasobu podaj
parent
, czyli nazwę pokoju, w którym chcesz utworzyć członkostwo. - Przekaż
membership
jako instancjęMembership
, w której poluname
obiektugroupMember
ma wartośćgroups/{group}
, gdzie{group}
to identyfikator grupy, dla której chcesz utworzyć członkostwo. Identyfikator grupy można pobrać za pomocą interfejsu Cloud Identity API.
Grup dyskusyjnych Google nie można dodawać do czatu grupowego ani czatu bezpośredniego, a tylko do pokoju o nazwie.
W tym przykładzie grupa jest dodawana do pokoju o nazwie za pomocą uwierzytelniania użytkownika:
Node.js
Python
Java
Google Apps Script
Aby uruchomić przykład, zastąp te wartości:
SPACE_NAME
: identyfikator pokojuname
. Identyfikator możesz uzyskać, wywołując metodęListSpaces()
lub z adresu URL pokoju.GROUP_NAME
: identyfikator grupy.
Interfejs Chat API zwraca wystąpienie
Membership
z informacjami o utworzonym członkostwie użytkownika.
Dodawanie aplikacji Google Chat do pokoju
Aplikacja Google Chat nie może dodać innej aplikacji jako użytkownika pokoju. Aby dodać aplikację Google Chat do pokoju lub wiadomości bezpośredniej między dwoma użytkownikami, prześlij te informacje w żądaniu z uwierzytelnianiem użytkownika (uwierzytelnianie aplikacji nie obsługuje zapraszania ani dodawania aplikacji Google Chat do pokoju):
- Określ zakres upoważnienia
chat.memberships.app
. - Wywołaj metodę
CreateMembership()
. - Jako nazwę zasobu podaj
parent
, czyli nazwę pokoju, w którym chcesz utworzyć członkostwo. - Przekaż wartość
membership
jako instancja typuMembership
, w której polemember
ma te ustawienia:- W polu
type
ustaw wartośćBOT
. - Pole
name
ustawione nausers/app
; alias reprezentujący aplikację wywołującą interfejs Chat API.
- W polu
W tym przykładzie dodaję do pokoju aplikację Google Chat:
Node.js
Python
Java
Google Apps Script
Aby uruchomić próbkę, zastąp SPACE_NAME
identyfikatorem z name
.
Identyfikator możesz uzyskać, wywołując metodę ListSpaces()
lub korzystając z adresu URL pokoju.
Interfejs Chat API zwraca wystąpienie
Membership
z informacjami o utworzonym członkostwie użytkownika.
Zapraszanie lub dodawanie użytkownika do pokoju jako aplikacji Google Chat
Uwierzytelnianie aplikacji wymaga jednorazowego zatwierdzenia przez administratora.
Aby zaprosić użytkownika do pokoju lub dodać go do pokoju przy użyciu uwierzytelniania aplikacji, prześlij w żądaniu te informacje:
- Określ zakres upoważnienia
chat.app.memberships
. - Wywołaj metodę
create
zasobumembership
. - Ustaw wartość
parent
na nazwę zasobu pokoju, w którym chcesz utworzyć członkostwo. - Ustaw wartość
member
nausers/{user}
, gdzie{user}
to osoba, dla której chcesz utworzyć opcję wspierania. Może to być:- Identyfikator osoby w People API. Jeśli na przykład wartość atrybutu person w interfejsie People API jest
people/123456789
, ustaw wartość atrybutumembership.member.name
nausers/123456789
.resourceName
- Identyfikator użytkownika w interfejsie Directory API.
- Adres e-mail użytkownika. Na przykład
users/222larabrown@gmail.com
lubusers/larabrown@cymbalgroup.com
. Jeśli użytkownik korzysta z konta Google lub należy do innej organizacji Google Workspace, musisz użyć jego adresu e-mail.
- Identyfikator osoby w People API. Jeśli na przykład wartość atrybutu person w interfejsie People API jest
Tworzenie klucza interfejsu API
Aby wywołać metodę interfejsu API w wersji przedpremierowej dla programistów, musisz użyć niepublicznej wersji dokumentu dotyczącego wykrywania interfejsu API w wersji przedpremierowej dla programistów. Aby uwierzytelnić żądanie, musisz podać 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.
- Aby zaktualizować ustawienia zaawansowane i ograniczyć użycie klucza API, kliknij Ogranicz klucz. Więcej informacji znajdziesz w artykule Stosowanie ograniczeń kluczy interfejsu API.
Napisać skrypt, który wywołuje interfejs Chat API
W tym przykładzie użytkownik jest dodawany do pokoju za pomocą uwierzytelniania aplikacji:
Python
- W katalogu roboczym utwórz plik o nazwie
chat_membership_app_create.py
. Dodaj do pliku
chat_membership_app_create.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 adds a user to a Chat space by creating a 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, 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().create( # The space in which to create a membership. parent = 'spaces/SPACE', # Specify which user the membership is for. body = { 'member': { 'name':'users/USER', 'type': 'HUMAN' } } ).execute() # Prints details about the created membership. print(result) if __name__ == '__main__': main()
W kodzie zamień:
API_KEY
: klucz interfejsu API utworzony do tworzenia punktu końcowego usługi Chat API.SPACE
: nazwa pokoju, którą możesz uzyskać za pomocą metodyspaces.list
w interfejsie API Google Chat lub z adresu URL pokoju.USER
: identyfikator użytkownika.
W katalogu roboczym skompiluj i uruchom przykład:
python3 chat_membership_app_create.py
Dodawanie użytkowników lub grup dyskusyjnych Google do pokoju jako administrator Google Workspace
Jeśli jesteś administratorem Google Workspace, możesz użyć metody create()
, aby dodać użytkowników, Google Groups lub aplikacje Google Chat do dowolnego 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łady znajdziesz w artykule Zarządzanie pokojami Google Chat przez administratora Google Workspace.
Ograniczenia i uwagi
- Dzięki uwierzytelnianiu aplikacji aplikacja Google Chat może zapraszać użytkowników lub dodawać ich do czatu, ale nie może tego robić aplikacja Grupy Google ani aplikacja Google Chat. Aby dodać się do listy, aplikacja do czatu musi używać uwierzytelniania użytkownika w zakresie autoryzacji
chat.memberships
.
Powiązane artykuły
- Dowiedz się więcej o subskrypcji użytkownika lub aplikacji Google Chat
- Wyświetlanie listy osób w pokoju.
- Aktualizowanie członkostwa użytkownika w pokoju Google Chat
- Usuwanie użytkownika lub aplikacji Google Chat z pokoju.