이 가이드에서는 Google Chat API의 Space
리소스에서 setUp()
메서드를 사용하여 Chat 스페이스를 만들고 구성원을 추가하는 방법을 설명합니다.
Space
리소스는 사용자와 Chat 앱이 메시지를 보내고, 파일을 공유하고, 공동작업할 수 있는 장소를 나타냅니다. 스페이스에는 다음과 같은 여러 유형이 있습니다.
- 채팅 메시지 (DM)는 두 사용자 간의 대화 또는 사용자와 Chat 앱 간의 대화입니다.
- 그룹 채팅은 3명 이상의 사용자와 Chat 앱 간의 대화입니다.
- 이름이 지정된 스페이스는 사용자가 메시지를 보내고, 파일을 공유하고, 공동작업하는 지속적인 공간입니다.
setUp()
메서드를 사용하여 다음 작업을 수행할 수 있습니다.
- 초기 회원이 있는 이름이 지정된 공간을 만듭니다.
- 두 사용자 간에 채팅 메시지를 만듭니다.
- 여러 사용자 간에 그룹 메시지를 설정합니다.
스페이스를 설정할 때는 다음 사항을 고려하세요.
- 호출하는 (인증된) 사용자는 스페이스에 자동으로 추가되므로 요청에서 사용자의 멤버십을 지정할 필요가 없습니다.
- 채팅 메시지 (DM)를 만들 때 두 사용자 간에 DM이 있는 경우 DM이 반환됩니다. 그렇지 않으면 DM이 생성됩니다.
- 그룹 채팅을 만들 때 요청에 제공된 멤버십이 그룹 채팅에 추가되지 않으면(예: 권한 문제) 호출 사용자만 포함된 빈 그룹 채팅이 생성될 수 있습니다.
- 대화목록 답글이 있는 스페이스를 설정하거나 Google Workspace 외부의 사용자를 추가할 수는 없습니다.
- 요청에 제공된 중복 멤버십 (호출 사용자 포함)은 요청 오류가 발생하는 대신 필터링됩니다.
기본 요건
Node.js
- Google Chat에 액세스할 수 있는 비즈니스 또는 엔터프라이즈 Google Workspace 계정
- 환경을 설정합니다.
- Google Cloud 프로젝트를 만듭니다.
- OAuth 동의 화면 구성
- Chat 앱의 이름, 아이콘, 설명을 사용하여 Google Chat API를 사용 설정하고 구성합니다.
- Node.js Cloud 클라이언트 라이브러리를 설치합니다.
- 데스크톱 애플리케이션의
OAuth 클라이언트 ID 사용자 인증 정보 만들기 이 가이드에서 샘플을 실행하려면 사용자 인증 정보를
client_secrets.json
라는 JSON 파일로 로컬 디렉터리에 저장합니다.
- 사용자 인증을 지원하는 승인 범위를 선택합니다.
Python
- Google Chat에 액세스할 수 있는 비즈니스 또는 엔터프라이즈 Google Workspace 계정
- 환경을 설정합니다.
- Google Cloud 프로젝트를 만듭니다.
- OAuth 동의 화면 구성
- Chat 앱의 이름, 아이콘, 설명을 사용하여 Google Chat API를 사용 설정하고 구성합니다.
- Python Cloud 클라이언트 라이브러리를 설치합니다.
- 데스크톱 애플리케이션의
OAuth 클라이언트 ID 사용자 인증 정보 만들기 이 가이드에서 샘플을 실행하려면 사용자 인증 정보를
client_secrets.json
라는 JSON 파일로 로컬 디렉터리에 저장합니다.
- 사용자 인증을 지원하는 승인 범위를 선택합니다.
자바
- Google Chat에 액세스할 수 있는 비즈니스 또는 엔터프라이즈 Google Workspace 계정
- 환경을 설정합니다.
- Google Cloud 프로젝트를 만듭니다.
- OAuth 동의 화면 구성
- Chat 앱의 이름, 아이콘, 설명을 사용하여 Google Chat API를 사용 설정하고 구성합니다.
- Java Cloud 클라이언트 라이브러리를 설치합니다.
- 데스크톱 애플리케이션의
OAuth 클라이언트 ID 사용자 인증 정보 만들기 이 가이드에서 샘플을 실행하려면 사용자 인증 정보를
client_secrets.json
라는 JSON 파일로 로컬 디렉터리에 저장합니다.
- 사용자 인증을 지원하는 승인 범위를 선택합니다.
Apps Script
- Google Chat에 액세스할 수 있는 비즈니스 또는 엔터프라이즈 Google Workspace 계정
- 환경을 설정합니다.
- Google Cloud 프로젝트를 만듭니다.
- OAuth 동의 화면 구성
- Chat 앱의 이름, 아이콘, 설명을 사용하여 Google Chat API를 사용 설정하고 구성합니다.
- 독립형 Apps Script 프로젝트를 만들고 고급 Chat 서비스를 사용 설정합니다.
- 사용자 인증을 지원하는 승인 범위를 선택합니다.
스페이스 설정하기
스페이스를 설정하려면 요청에 다음을 전달합니다.
chat.spaces.create
또는chat.spaces
승인 범위를 지정합니다.SetUpSpace()
메서드를 호출합니다.space
를displayName
또는spaceType
와 같은 모든 필수 필드와 함께Space
의 인스턴스로 전달합니다.memberships
를Membership
인스턴스의 배열로 전달합니다. 각 인스턴스에서 다음을 실행합니다.users/{user}
를 지정하여 사람 사용자를 스페이스 회원으로 추가합니다. 여기서{user}
는 People API의person
에 대한{person_id}
또는 Directory API의user
의 ID입니다. 예를 들어 People API 사용자resourceName
가people/123456789
인 경우users/123456789
를member.name
로 하는 멤버십을 포함하여 사용자를 스페이스에 추가할 수 있습니다.groups/{group}
를 지정하여 그룹을 스페이스 회원으로 추가합니다. 여기서{group}
은 멤버십을 만들 그룹 ID입니다. 그룹의 ID는 Cloud ID API를 사용하여 검색할 수 있습니다. 예를 들어 Cloud Identity API가 이름이groups/123456789
인 그룹을 반환하면membership.groupMember.name
를groups/123456789
로 설정합니다. Google 그룹은 그룹 채팅이나 채팅 메시지에 추가할 수 없으며 이름이 지정된 스페이스에만 추가할 수 있습니다.
호출 사용자와 다른 사람 사이의 DM을 만들려면 요청에 사람 사용자의 멤버십을 지정합니다.
호출 사용자와 호출 앱 간에 채팅 메시지를 만들려면 space.singleUserBotDm
를 true
로 설정하고 멤버십을 지정하지 않습니다. 이 메서드는 통화 앱으로 DM을 설정하는 데만 사용할 수 있습니다. 통화 앱을 스페이스의 구성원 또는 두 사람의 기존 DM에 추가하려면 멤버십 만들기를 참고하세요.
다음 예에서는 이름이 지정된 스페이스를 만들고 두 명의 사용자 (인증된 사용자와 다른 사용자 1명)를 위한 스페이스 멤버십을 하나 만듭니다.
Node.js
Python
자바
Apps Script
샘플을 실행하려면 다음을 바꿉니다.
DISPLAY_NAME
: 새 스페이스의 표시 이름입니다.USER_NAME
: 멤버십을 포함할 다른 사용자의 ID입니다.
스페이스로 이동하려면 스페이스의 리소스 ID를 사용하여 스페이스의 URL을 빌드합니다.
Google Chat 응답 본문의 스페이스 name
에서 리소스 ID를 가져올 수 있습니다. 예를 들어 스페이스의 name
가 spaces/1234567
이면 다음 URL(https://mail.google.com/chat/u/0/#chat/space/1234567
)을 사용하여 스페이스로 이동할 수 있습니다.
관련 주제
- 스페이스 만들기
- 스페이스에 대한 세부정보 가져오기
- 스페이스 목록
- 스페이스를 업데이트합니다.
- 스페이스 삭제하기
- 채팅 메시지 스페이스를 찾습니다.
- 특정 사용자에게 스페이스를 검색 가능하도록 설정