Z tego przewodnika dowiesz się, jak korzystać z zasobu list
w zasobie Space
interfejsu Google Chat API do wyświetlania listy pokoi. Pokoje z informacjami o pokojach z informacjami o pokojach wyświetlają podział na strony i można je filtrować
listę pokoi.
Space
zasób
to miejsce, w którym użytkownicy i aplikacje do obsługi czatu mogą wysyłać wiadomości,
udostępniać pliki i współpracować. Jest kilka rodzajów pokoi:
- Czaty to rozmowy między 2 użytkownikami lub użytkownikiem aplikacji do obsługi czatu.
- Czaty grupowe to rozmowy między co najmniej 3 użytkownikami komunikatory;
- Pokoje nazwane to trwałe miejsca, w których użytkownicy wysyłają wiadomości, udostępniają pliki i współpracę.
Wizytówka pokoi z uwierzytelnianie aplikacji zawiera listę pokoi, do których aplikacja Google Chat ma dostęp. Informacje o usłudze pokoje z Uwierzytelnianie użytkowników zawiera listę pokoi, do których ma dostęp uwierzytelniony użytkownik.
Wymagania wstępne
Python
- Firmy lub przedsiębiorstwa Konto Google Workspace 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 Python Biblioteka klienta interfejsów API Google.
- Utwórz dane uwierzytelniające na podstawie sposobu uwierzytelniania w interfejsie Google Chat API
żądanie:
- Aby uwierzytelnić się jako użytkownik Google Chat:
utwórz identyfikator klienta OAuth
dane logowania i zapisz je w pliku JSON o nazwie
client_secrets.json
do katalogu lokalnego. - 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 Google Chat:
utwórz identyfikator klienta OAuth
dane logowania i zapisz je w pliku JSON o nazwie
- Wybierz zakres autoryzacji w zależności od tego, czy chcesz się uwierzytelnić jako użytkownik, czy jako aplikacja Google Chat.
Node.js
- Firmy lub przedsiębiorstwa Konto Google Workspace 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 Node.js Biblioteka klienta interfejsów API Google.
- Utwórz dane uwierzytelniające na podstawie sposobu uwierzytelniania w interfejsie Google Chat API
żądanie:
- Aby uwierzytelnić się jako użytkownik Google Chat:
utwórz identyfikator klienta OAuth
dane logowania i zapisz je w pliku JSON o nazwie
client_secrets.json
do katalogu lokalnego. - 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 Google Chat:
utwórz identyfikator klienta OAuth
dane logowania i zapisz je w pliku JSON o nazwie
- Wybierz zakres autoryzacji w zależności od tego, czy chcesz się uwierzytelnić jako użytkownik, czy jako aplikacja Google Chat.
Wyświetlanie listy pokoi z uwierzytelnianiem użytkowników
Aby wyświetlić listę pokoi w Google Chat, przekaż te informacje w żądanie:
- Na
uwierzytelnianie użytkownika,
określ zakres autoryzacji
chat.spaces.readonly
lubchat.spaces
. - Wywołaj funkcję
Metoda
list
wSpace
zasób.
W przykładzie poniżej znajdziesz nazwane pokoje i czaty grupowe (ale nie bezpośrednie) odfiltrowane wiadomości) są widoczne dla uwierzytelnionego użytkownika:
Python
- W katalogu roboczym utwórz plik o nazwie
chat_space_list.py
. Umieść w pliku
chat_space_list.py
ten kod:from google_auth_oauthlib.flow import InstalledAppFlow from googleapiclient.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.spaces.readonly"] def main(): ''' Authenticates with Chat API via user credentials, then lists named spaces and group chats (but not direct messages) visible to the authenticated user. ''' # Authenticate with Google Workspace # and get user authorization. flow = InstalledAppFlow.from_client_secrets_file( 'client_secrets.json', SCOPES) creds = flow.run_local_server() # Build a service endpoint for Chat API. chat = build('chat', 'v1', credentials=creds) # Use the service endpoint to call Chat API. result = chat.spaces().list( # An optional filter that returns named spaces or unnamed group chats, # but not direct messages (DMs). filter='spaceType = "SPACE" OR spaceType = "GROUP_CHAT"' ).execute() # Prints the returned list of spaces. print(result) if __name__ == '__main__': main()
W katalogu roboczym skompiluj i uruchom przykład:
python3 chat_space_list.py
Node.js
- W katalogu roboczym utwórz plik o nazwie
list-spaces.js
. Umieść w pliku
list-spaces.js
ten kod:const chat = require('@googleapis/chat'); const {authenticate} = require('@google-cloud/local-auth'); /** * List Chat spaces. * @return {!Promise<!Object>} */ async function listSpaces() { const scopes = [ 'https://www.googleapis.com/auth/chat.spaces.readonly', ]; const authClient = await authenticate({scopes, keyfilePath: 'client_secrets.json'}); const chatClient = await chat.chat({version: 'v1', auth: authClient}); return await chatClient.spaces.list({ filter: 'spaceType = "SPACE" OR spaceType = "GROUP_CHAT"' }); } listSpaces().then(console.log);
W katalogu roboczym uruchom przykładowy kod:
node list-spaces.js
Interfejs Chat API zwraca błąd tablica z podzielonymi na strony pokojami i czatami grupowymi
Wyświetlanie listy pokoi z uwierzytelnianiem aplikacji
Aby wyświetlić listę pokoi w Google Chat, przekaż te informacje w żądanie:
- Na
uwierzytelnianie aplikacji,
określić zakres autoryzacji
chat.bot
. - Wywołaj funkcję
Metoda
list
wSpace
zasób.
W przykładzie poniżej znajdziesz nazwane pokoje i czaty grupowe (ale nie bezpośrednie) wiadomości) widoczne dla aplikacji Google Chat:
Python
- W katalogu roboczym utwórz plik o nazwie
chat_space_list_app.py
. Umieść w pliku
chat_space_list_app.py
ten kod:from google.oauth2 import service_account from apiclient.discovery import build # Specify required scopes. SCOPES = ['https://www.googleapis.com/auth/chat.bot'] # Specify service account details. CREDENTIALS = ( service_account.Credentials.from_service_account_file('credentials.json') .with_scopes(SCOPES) ) # Build the URI and authenticate with the service account. chat = build('chat', 'v1', credentials=CREDENTIALS) # Use the service endpoint to call Chat API. result = chat.spaces().list( # An optional filter that returns named spaces or unnamed # group chats, but not direct messages (DMs). filter='spaceType = "SPACE" OR spaceType = "GROUP_CHAT"' ).execute() print(result)
W katalogu roboczym skompiluj i uruchom przykład:
python3 chat_space_list_app.py
Node.js
- W katalogu roboczym utwórz plik o nazwie
app-list-spaces.js
. Umieść w pliku
app-list-spaces.js
ten kod:const chat = require('@googleapis/chat'); /** * List Chat spaces. * @return {!Promise<!Object>} */ async function listSpaces() { const scopes = [ 'https://www.googleapis.com/auth/chat.bot', ]; const auth = new chat.auth.GoogleAuth({ scopes, keyFilename: 'credentials.json', }); const authClient = await auth.getClient(); const chatClient = await chat.chat({version: 'v1', auth: authClient}); return await chatClient.spaces.list({ filter: 'spaceType = "SPACE" OR spaceType = "GROUP_CHAT"' }); } listSpaces().then(console.log);
W katalogu roboczym uruchom przykładowy kod:
node app-list-spaces.js
Interfejs Chat API zwraca tablicę pokoi podzieloną na strony.
Dostosuj podział na strony lub filtruj listę
Aby wyświetlić listę pokoi w Google Chat, przekaż te opcjonalne informacje: parametry zapytania w celu dostosowania podziału na strony lub filtrowania wymienionych pokoi:
pageSize
: maksymalna liczba spacji do zwrócenia. Usługa może wrócić jest mniejsza od tej wartości. Jeśli nie określono inaczej, zwracanych jest maksymalnie 100 spacji. maksymalna wartość to 1000; wartości powyżej 1000 są automatycznie zmieniane na 1000.pageToken
: token strony otrzymany z poprzedniego wywołania listy pokoi. Podaj ten token, aby pobrać kolejną stronę. Przy dzieleniu na strony wartość filtra powinna pasować do wywołania, które dostarczyło token strony. Podanie wyniku może prowadzić do nieoczekiwanych rezultatów.filter
: filtr zapytania. Szczegółowe informacje o obsługiwanych zapytaniach znajdziesz w Metodaspaces.list
.
Powiązane artykuły
- Tworzenie pokoju
- Skonfiguruj pokój.
- Wyświetlanie informacji o pokoju
- Aktualizowanie pokoju.
- Usuwanie pokoju
- Znajdź pokój czatu.