В этом руководстве объясняется, как использовать метод get() ресурса Message в Google Chat API для получения подробной информации о текстовом сообщении или сообщении на карточке.
В API чата сообщение чата представлено ресурсом Message . Хотя пользователи чата могут отправлять только текстовые сообщения, приложения чата могут использовать множество других функций обмена сообщениями, включая отображение статических или интерактивных пользовательских интерфейсов, сбор информации от пользователей и доставку сообщений в приватном режиме. Чтобы узнать больше о функциях обмена сообщениями, доступных в API чата, см. обзор сообщений Google Chat .
Предварительные требования
Node.js
- Корпоративный аккаунт Google Workspace с доступом к Google Chat .
- Настройте свою среду:
- Создайте проект в Google Cloud .
- Настройте экран согласия OAuth .
- Включите и настройте API Google Chat, указав имя, значок и описание для вашего приложения чата.
- Установите библиотеку Node.js Cloud Client .
- Создайте учетные данные доступа в зависимости от того, как вы хотите проходить аутентификацию в запросе к Google Chat API:
- Для аутентификации в качестве пользователя чата создайте учетные данные OAuth-клиента и сохраните их в виде JSON-файла с именем
credentials.jsonв локальной директории. - Для аутентификации в приложении «Чат» создайте учетные данные сервисной учетной записи и сохраните их в JSON-файле с именем
credentials.json.
- Для аутентификации в качестве пользователя чата создайте учетные данные OAuth-клиента и сохраните их в виде JSON-файла с именем
- Выберите область авторизации в зависимости от того, хотите ли вы аутентифицироваться как пользователь или как приложение чата.
- Пространство Google Chat , в котором авторизованный пользователь или приложение для чата является участником. Чтобы авторизоваться как приложение для чата, добавьте приложение для чата в это пространство .
Python
- Корпоративный аккаунт Google Workspace с доступом к Google Chat .
- Настройте свою среду:
- Создайте проект в Google Cloud .
- Настройте экран согласия OAuth .
- Включите и настройте API Google Chat, указав имя, значок и описание для вашего приложения чата.
- Установите библиотеку Python Cloud Client .
- Создайте учетные данные доступа в зависимости от того, как вы хотите проходить аутентификацию в запросе к Google Chat API:
- Для аутентификации в качестве пользователя чата создайте учетные данные OAuth-клиента и сохраните их в виде JSON-файла с именем
credentials.jsonв локальной директории. - Для аутентификации в приложении «Чат» создайте учетные данные сервисной учетной записи и сохраните их в JSON-файле с именем
credentials.json.
- Для аутентификации в качестве пользователя чата создайте учетные данные OAuth-клиента и сохраните их в виде JSON-файла с именем
- Выберите область авторизации в зависимости от того, хотите ли вы аутентифицироваться как пользователь или как приложение чата.
- Пространство Google Chat , в котором авторизованный пользователь или приложение для чата является участником. Чтобы авторизоваться как приложение для чата, добавьте приложение для чата в это пространство .
Java
- Корпоративный аккаунт Google Workspace с доступом к Google Chat .
- Настройте свою среду:
- Создайте проект в Google Cloud .
- Настройте экран согласия OAuth .
- Включите и настройте API Google Chat, указав имя, значок и описание для вашего приложения чата.
- Установите библиотеку Java Cloud Client Library .
- Создайте учетные данные доступа в зависимости от того, как вы хотите проходить аутентификацию в запросе к Google Chat API:
- Для аутентификации в качестве пользователя чата создайте учетные данные OAuth-клиента и сохраните их в виде JSON-файла с именем
credentials.jsonв локальной директории. - Для аутентификации в приложении «Чат» создайте учетные данные сервисной учетной записи и сохраните их в JSON-файле с именем
credentials.json.
- Для аутентификации в качестве пользователя чата создайте учетные данные OAuth-клиента и сохраните их в виде JSON-файла с именем
- Выберите область авторизации в зависимости от того, хотите ли вы аутентифицироваться как пользователь или как приложение чата.
- Пространство Google Chat , в котором авторизованный пользователь или приложение для чата является участником. Чтобы авторизоваться как приложение для чата, добавьте приложение для чата в это пространство .
Apps Script
- Корпоративный аккаунт Google Workspace с доступом к Google Chat .
- Настройте свою среду:
- Создайте проект в Google Cloud .
- Настройте экран согласия OAuth .
- Включите и настройте API Google Chat, указав имя, значок и описание для вашего приложения чата.
- Создайте автономный проект Apps Script и включите расширенную службу чата .
- В этом руководстве необходимо использовать либо аутентификацию пользователя, либо аутентификацию приложения . Для аутентификации в качестве приложения «Чат» создайте учетные данные сервисной учетной записи. Инструкции см. в разделе «Аутентификация и авторизация в качестве приложения Google Chat» .
- Выберите область авторизации в зависимости от того, хотите ли вы аутентифицироваться как пользователь или как приложение чата.
- Пространство Google Chat , в котором авторизованный пользователь или приложение для чата является участником. Чтобы авторизоваться как приложение для чата, добавьте приложение для чата в это пространство .
Получить сообщение с аутентификацией пользователя.
Чтобы получить подробную информацию о сообщении с аутентификацией пользователя , передайте в запросе следующее:
- Укажите область авторизации
chat.messages.readonlyилиchat.messages. - Вызовите метод
GetMessage(). - Укажите
nameресурса, к которому нужно получить сообщение.
В следующем примере получено сообщение с подтверждением аутентификации пользователя :
Node.js
Python
Java
Apps Script
Для запуска этого примера замените следующее:
-
SPACE_NAME: идентификатор изnameпространства. Вы можете получить идентификатор, вызвав методListSpaces()или из URL-адреса пространства. -
MESSAGE_NAME: идентификатор изnameсообщения. Вы можете получить идентификатор из тела ответа, возвращаемого после асинхронного создания сообщения с помощью Chat API, или из пользовательского имени , присвоенного сообщению при создании.
API чата возвращает экземпляр объекта Message , содержащий подробную информацию об указанном сообщении.
Получите сообщение с аутентификацией приложения.
Чтобы получить подробную информацию о сообщении, прошедшем аутентификацию приложения , передайте в запросе следующее:
- Укажите область авторизации. В примерах этого раздела используется область авторизации
chat.bot, которая обычно доступна и не требует одобрения администратора. В качестве альтернативы вы можете авторизоваться как приложение чата с одобрением администратора . - Вызовите метод
GetMessage(). - Укажите
nameресурса, к которому нужно получить сообщение.
В следующем примере получено сообщение с подтверждением авторизации приложения :
Node.js
Python
Java
Apps Script
Для запуска этого примера замените следующее:
-
SPACE_NAME: идентификатор изnameпространства. Вы можете получить идентификатор, вызвав методListSpaces()или из URL-адреса пространства. -
MESSAGE_NAME: идентификатор изnameсообщения. Вы можете получить идентификатор из тела ответа, возвращаемого после асинхронного создания сообщения с помощью Chat API, или из пользовательского имени , присвоенного сообщению при создании.
API чата возвращает экземпляр объекта Message , содержащий подробную информацию об указанном сообщении.
Получите сообщение в виде сообщения в чате с одобрения администратора.
Для аутентификации приложения с использованием области авторизации chat.app.* требуется однократное подтверждение администратора .
Чтобы получить подробную информацию о сообщении с аутентификацией приложения , используя REST API чата , передайте в запросе следующее:
- Вызовите метод
GetMessage(). - Укажите область авторизации
chat.app.messages.readonly. - Укажите
nameресурса, к которому нужно получить сообщение.
Напишите скрипт, который вызывает API чата.
Вот как получить подробную информацию о сообщении с помощью аутентификации приложения и подтверждения администратора, а также REST API чата :
Python
- В рабочей директории создайте файл с именем
chat_messages_get_admin_app.py. Включите следующий код в
chat_messages_get_admin_app.py: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.messages.readonly"] def main(): ''' Authenticates with Chat API using app authentication, then gets details about a message. ''' # 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) # Use the service endpoint to call Chat API. result = chat.spaces().messages().get( # The message to get details about. # # Replace SPACE_NAME with a space name. # Obtain the space name from the spaces resource of Chat API, # or from a space's URL. name='spaces/SPACE_NAME/messages/MESSAGE_NAME', ).execute() # Print Chat API's response in your command line interface. print(result) if __name__ == '__main__': main()В коде замените следующее:
-
SPACE_NAME: идентификатор изnameпространства. Вы можете получить идентификатор, вызвав методListSpaces()или из URL-адреса пространства. -
MESSAGE_NAME: идентификатор изnameсообщения. Вы можете получить идентификатор из тела ответа, возвращаемого после асинхронного создания сообщения с помощью Chat API, или из пользовательского имени , присвоенного сообщению при создании.
-
В рабочей директории соберите и запустите пример:
python3 chat_messages_get_admin_app.py
API чата возвращает экземпляр объекта Message , содержащий подробную информацию об указанном сообщении.
Связанные темы
- Отформатировать сообщение .
- Удалить сообщение .
- Список сообщений в пространстве .
- Обновить сообщение .
- Отправить сообщение .