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.
Zasób Membership
informuje, czy użytkownik lub aplikacja Google Chat został zaproszony do pokoju, jego część lub brak w nim.
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 dla Node.js.
- Utwórz dane logowania na podstawie tego, jak chcesz się uwierzytelnić w żądaniu do interfejsu Google Chat API:
- Aby uwierzytelnić się jako użytkownik Google Chat, utwórz dane logowania z identyfikatorem klienta OAuth i zapisz je w pliku JSON o nazwie
client_secrets.json
w katalogu lokalnym. - 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 Google Chat, utwórz dane logowania z identyfikatorem klienta OAuth i zapisz je 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 Google Chat.
- 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 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 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 aplikacji do obsługi czatu.
- Utwórz samodzielny projekt Apps Script i włącz zaawansowaną usługę czatu.
- W tym przewodniku musisz użyć uwierzytelniania użytkownika lub aplikacji. Aby uwierzytelnić się jako aplikacja 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 lub dodawanie użytkownika do pokoju jako użytkownika
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ż
membership
jako instancjęMembership
z polemmember
ustawionym tak:- 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 to:
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
, która zawiera szczegóły dotyczące utworzonej subskrypcji 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 to:
SPACE_NAME
: identyfikator zname
pokoju. 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ż
membership
jako instancjęMembership
z polemmember
ustawionym tak:- 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ć lub dodać użytkownika do pokoju z uwierzytelnianiem aplikacji, przekaż w żądaniu:
- Określ zakres autoryzacji
chat.app.memberships
. - Wywołaj metodę
create
zasobumembership
. - Ustaw
parent
na nazwę zasobu pokoju, w którym chcesz utworzyć subskrypcję. - 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 np. osoba
resourceName
w interfejsie People API topeople/123456789
, ustawmembership.member.name
nausers/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 np. osoba
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 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ę 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
Poniższy przykład pokazuje dodanie użytkownika do pokoju z uwierzytelnianiem 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 utworzenia punktu końcowego usługi dla interfejsu 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 kwestie
- 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
- Uzyskiwanie informacji o subskrypcji użytkownika lub w aplikacji Google Chat
- Wyświetlanie listy osób w pokoju.
- Aktualizowanie subskrypcji użytkownika w pokoju Google Chat
- Usuwanie użytkownika lub aplikacji Google Chat z pokoju.