Z tego przewodnika dowiesz się, jak używać metody findDirectMessage
na platformie Space
w interfejsie Google Chat API, aby uzyskać szczegółowe informacje o pokoju czatu.
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ę.
Uwierzytelnianie za pomocą uwierzytelnianie aplikacji pozwala aplikacji Google Chat otrzymywać wiadomości na czacie, Aplikacja Google Chat ma dostęp do w Google Chat (dotyczy to na przykład czatów, których jest członkiem). Uwierzytelnianie za pomocą User authentication (Uwierzytelnianie użytkowników) zwraca czaty uwierzytelniony użytkownik ma dostęp.
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.
Znajdowanie czatu
Aby znaleźć czat w Google Chat, przekaż w Twoja prośba:
- Przy użyciu uwierzytelniania aplikacji określ
Zakres autoryzacji:
chat.bot
. Na uwierzytelnianie użytkownika, określ zakres autoryzacjichat.spaces.readonly
lubchat.spaces
. - Wywołaj funkcję
Metoda
findDirectMessage
wUser
zasobie, przekazującname
użytkownika na czacie. Na uwierzytelnianie użytkownika, ta metoda zwraca czat między użytkownikiem wywołującym a określonym. Na uwierzytelnianie aplikacji, ta metoda zwraca rozmowę na czacie między aplikacją do nawiązywania połączeń a określonym użytkownikiem. - Aby dodać użytkownika jako członka pokoju, wpisz
users/{user}
, gdzie{user}
to{person_id}
dlaperson
z interfejsu People API lub identyfikatoruser
w interfejsie Directory API. Jeśli na przykład osobaresourceName
w interfejsie People API topeople/123456789
, możesz dodać użytkownika do pokoju, dodając z członkostwemusers/123456789
jakomember.name
.
Znajdowanie czatu z uwierzytelnianiem użytkownika
Aby znaleźć czat z: uwierzytelnianie użytkownika:
Python
- W katalogu roboczym utwórz plik o nazwie
chat_space_find_dm_user.py
. Umieść w pliku
chat_space_find_dm_user.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 returns details about a specified DM. ''' # 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().findDirectMessage( # The other user in the direct message (DM) to return. # # Replace USER with a user name. name='users/USER' ).execute() # Prints details about the direct message. print(result) if __name__ == '__main__': main()
W kodzie zastąp
USER
elementemname
typuUser
w Google Chat.W katalogu roboczym skompiluj i uruchom przykład:
python3 chat_space_find_dm_user.py
Node.js
W katalogu roboczym utwórz plik o nazwie
find-direct-message-space.js
Umieść w pliku
find-direct-message-space.js
ten kod:const chat = require('@googleapis/chat'); const {authenticate} = require('@google-cloud/local-auth'); /** * Find a direct message Chat space for a user. * @return {!Promise<!Object>} */ async function findDirectMessageSpace() { 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.findDirectMessage( {name: 'users/USER'}); } findDirectMessageSpace().then(console.log);
W kodzie zastąp
USER
elementemname
typuUser
w Google Chat.W katalogu roboczym uruchom przykładowy kod:
node find-direct-message-space.js
Interfejs Chat API zwraca instancję
Space
który zawiera szczegółowe informacje na temat danego czatu.
Znajdowanie czatu z uwierzytelnianiem w aplikacji
Aby znaleźć czat z: uwierzytelnianie aplikacji:
Python
- W katalogu roboczym utwórz plik o nazwie
chat_space_find_dm_app.py
. Umieść w pliku
chat_space_find_dm_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().findDirectMessage( # The other user in the direct message (DM) to return. # # Replace USER with a user name. name='users/USER' ).execute() print(result)
W kodzie zastąp
USER
elementemname
typuUser
w Google Chat.W katalogu roboczym skompiluj i uruchom przykład:
python3 chat_space_find_dm_app.py
Node.js
W katalogu roboczym utwórz plik o nazwie
app-find-direct-message-space.js
Umieść w pliku
app-find-direct-message-space.js
ten kod:const chat = require('@googleapis/chat'); /** * Find a direct message Chat space for a user. * @return {!Promise<!Object>} */ async function findDirectMessageSpace() { 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.findDirectMessage( {name: 'users/USER'}); } findDirectMessageSpace().then(console.log);
W kodzie zastąp
USER
elementemname
typuUser
w Google Chat.W katalogu roboczym uruchom przykładowy kod:
node app-find-direct-message-space.js
Interfejs Chat API zwraca instancję
Space
ze szczegółami podanego czatu.
Powiązane artykuły
- Tworzenie pokoju
- Skonfiguruj pokój.
- Wyświetlanie informacji o pokoju
- Pokoje listy.
- Aktualizowanie pokoju.
- Usuwanie pokoju