이 가이드에서는 Google Chat API의 Message
리소스에서 list()
메서드를 사용하여 스페이스의 페이지로 나누고 필터링 가능한 메시지 목록을 확인하는 방법을 설명합니다.
Chat API에서 Chat 메시지는 Message
리소스로 표시됩니다. Chat 사용자는 텍스트가 포함된 메시지만 보낼 수 있지만 Chat 앱은 정적 또는 대화형 사용자 인터페이스 표시, 사용자로부터 정보 수집, 비공개로 메시지 전송 등 다양한 메시지 기능을 사용할 수 있습니다. Chat API에서 사용할 수 있는 메시지 기능에 대해 자세히 알아보려면 Google Chat 메시지 개요를 참고하세요.
기본 요건
Node.js
- Google Chat에 액세스할 수 있는 Business 또는 Enterprise Google Workspace 계정
- 환경을 설정합니다.
- Google Cloud 프로젝트를 만듭니다.
- OAuth 동의 화면 구성
- Chat 앱의 이름, 아이콘, 설명으로 Google Chat API를 사용 설정하고 구성합니다.
- Node.js Cloud 클라이언트 라이브러리를 설치합니다.
- Google Chat API 요청에서 인증하려는 방식에 따라 액세스 사용자 인증 정보를 만듭니다.
- Chat 사용자로 인증하려면 OAuth 클라이언트 ID 사용자 인증 정보를 만들고 사용자 인증 정보를
credentials.json
라는 JSON 파일로 로컬 디렉터리에 저장합니다. - Chat 앱으로 인증하려면 서비스 계정 사용자 인증 정보를 만들고 사용자 인증 정보를
credentials.json
라는 JSON 파일로 저장합니다.
- Chat 사용자로 인증하려면 OAuth 클라이언트 ID 사용자 인증 정보를 만들고 사용자 인증 정보를
- 사용자로 인증할지 아니면 Chat 앱으로 인증할지에 따라 승인 범위 선택
Python
- Google Chat에 액세스할 수 있는 Business 또는 Enterprise Google Workspace 계정
- 환경을 설정합니다.
- Google Cloud 프로젝트를 만듭니다.
- OAuth 동의 화면 구성
- Chat 앱의 이름, 아이콘, 설명으로 Google Chat API를 사용 설정하고 구성합니다.
- Python Cloud 클라이언트 라이브러리를 설치합니다.
- Google Chat API 요청에서 인증하려는 방식에 따라 액세스 사용자 인증 정보를 만듭니다.
- Chat 사용자로 인증하려면 OAuth 클라이언트 ID 사용자 인증 정보를 만들고 사용자 인증 정보를
credentials.json
라는 JSON 파일로 로컬 디렉터리에 저장합니다. - Chat 앱으로 인증하려면 서비스 계정 사용자 인증 정보를 만들고 사용자 인증 정보를
credentials.json
라는 JSON 파일로 저장합니다.
- Chat 사용자로 인증하려면 OAuth 클라이언트 ID 사용자 인증 정보를 만들고 사용자 인증 정보를
- 사용자로 인증할지 아니면 Chat 앱으로 인증할지에 따라 승인 범위 선택
자바
- Google Chat에 액세스할 수 있는 Business 또는 Enterprise Google Workspace 계정
- 환경을 설정합니다.
- Google Cloud 프로젝트를 만듭니다.
- OAuth 동의 화면 구성
- Chat 앱의 이름, 아이콘, 설명으로 Google Chat API를 사용 설정하고 구성합니다.
- Java Cloud 클라이언트 라이브러리를 설치합니다.
- Google Chat API 요청에서 인증하려는 방식에 따라 액세스 사용자 인증 정보를 만듭니다.
- Chat 사용자로 인증하려면 OAuth 클라이언트 ID 사용자 인증 정보를 만들고 사용자 인증 정보를
credentials.json
라는 JSON 파일로 로컬 디렉터리에 저장합니다. - Chat 앱으로 인증하려면 서비스 계정 사용자 인증 정보를 만들고 사용자 인증 정보를
credentials.json
라는 JSON 파일로 저장합니다.
- Chat 사용자로 인증하려면 OAuth 클라이언트 ID 사용자 인증 정보를 만들고 사용자 인증 정보를
- 사용자로 인증할지 아니면 Chat 앱으로 인증할지에 따라 승인 범위 선택
Apps Script
- Google Chat에 액세스할 수 있는 Business 또는 Enterprise Google Workspace 계정
- 환경을 설정합니다.
- Google Cloud 프로젝트를 만듭니다.
- OAuth 동의 화면 구성
- Chat 앱의 이름, 아이콘, 설명으로 Google Chat API를 사용 설정하고 구성합니다.
- 독립형 Apps Script 프로젝트를 만들고 고급 Chat 서비스를 사용 설정합니다.
- 이 가이드에서는 사용자 또는 앱 인증을 사용해야 합니다. Chat 앱으로 인증하려면 서비스 계정 사용자 인증 정보를 만드세요. 단계는 Google Chat 앱으로 인증 및 승인하기를 참고하세요.
- 사용자로 인증할지 아니면 Chat 앱으로 인증할지에 따라 승인 범위 선택
사용자로 메시지 나열
사용자 인증으로 메시지를 나열하려면 요청에 다음을 전달하세요.
chat.messages.readonly
또는chat.messages
승인 범위를 지정합니다.ListMessages()
메서드를 호출합니다.
다음 예에서는 Chat 스페이스의 메시지를 나열합니다.
Node.js
Python
자바
Apps Script
이 샘플을 실행하려면 SPACE_NAME
를 스페이스의 name
필드에 있는 ID로 바꿉니다. ListSpaces()
메서드를 호출하거나 스페이스의 URL에서 ID를 가져올 수 있습니다.
Chat API는 지정된 스페이스에서 전송된 메시지 목록을 반환합니다. 요청에 메시지가 없으면 Chat API 응답은 빈 객체를 반환합니다. REST/HTTP 인터페이스를 사용하는 경우 응답에 빈 JSON 객체 {}
가 포함됩니다.
Chat 앱으로 메시지 나열
앱 인증에는 일회성 관리자 승인이 필요합니다.
Chat REST API를 사용하여 앱 인증으로 스페이스의 메시지를 나열하려면 요청에 다음을 전달하세요.
- 다음 승인 범위 중 하나를 지정합니다.
https://www.googleapis.com/auth/chat.app.messages.readonly
messages
리소스에서list
메서드를 호출합니다.- 메시지를 나열할 스페이스의
name
를 전달합니다.
API 키 만들기
개발자 미리보기 API 메서드를 호출하려면 공개되지 않은 개발자 미리보기 버전의 API 검색 문서를 사용해야 합니다. 요청을 인증하려면 API 키를 전달해야 합니다.
API 키를 만들려면 앱의 Google Cloud 프로젝트를 열고 다음 단계를 따르세요.
- Google Cloud 콘솔에서 메뉴 > API 및 서비스 > 사용자 인증 정보로 이동합니다.
- 사용자 인증 정보 만들기 > API 키를 클릭합니다.
- 새 API 키가 표시됩니다.
- 복사 를 클릭하여 앱 코드에서 사용할 API 키를 복사합니다. API 키는 프로젝트 사용자 인증 정보의 'API 키' 섹션에서도 확인할 수 있습니다.
- 무단 사용을 방지하려면 API 키를 사용할 수 있는 위치와 API를 제한하는 것이 좋습니다. 자세한 내용은 API 제한사항 추가를 참고하세요.
Chat API를 호출하는 스크립트 작성
다음은 앱 인증 및 Chat REST API를 사용하여 메시지를 나열하는 방법입니다.
Python
- 작업 디렉터리에
chat_messages_list_app.py
이라는 파일을 만듭니다. chat_messages_list_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 lists messages from a specified space. ''' # 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().messages().list( # The space to list messages from. # # Replace SPACE_NAME with a space name. # Obtain the space name from the spaces resource of Chat API, # or from a space's URL. parent='spaces/SPACE_NAME' ).execute() # Print Chat API's response in your command line interface. print(result) if __name__ == '__main__': main()
코드에서 다음을 바꿉니다.
API_KEY
: Chat API의 서비스 엔드포인트를 빌드하기 위해 만든 API 키입니다.SPACE_NAME
: 스페이스 이름입니다. Chat API의spaces.list
메서드 또는 스페이스의 URL에서 가져올 수 있습니다.
작업 디렉터리에서 샘플을 빌드하고 실행합니다.
python3 chat_messages_list_app.py
Chat API는 지정된 스페이스에서 전송된 메시지 목록을 반환합니다. 요청에 메시지가 없으면 Chat API 응답은 빈 객체를 반환합니다. REST/HTTP 인터페이스를 사용하는 경우 응답에 빈 JSON 객체 {}
가 포함됩니다.