Google Workspace 구독 만들기

이 페이지에서는 Google Workspace Events API를 사용하여 Google Workspace 리소스에 대한 구독 서비스를 제공합니다 Google Workspace 구독 앱을 사용하면 앱에서 Google Workspace 이벤트에 관한 정보를 수신할 수 있습니다. Google Workspace 리소스의 변경사항을 나타냅니다. 자세히 알아보기 위해 Google Workspace Events API에서 지원하는 리소스와 이벤트 유형은 Google Workspace Events API 개요

이 페이지에서는 Google Workspace를 만들기 위한 다음 단계를 안내합니다. 구독:

  1. 환경을 설정합니다.
  2. Google Cloud Pub/Sub 주제를 만들고 구독합니다. 이 주제를 다음 용도로 사용합니다. Google Workspace 이벤트를 수신할 수 있는 엔드포인트
  3. Google Workspace Events API의 create() 호출 메서드를 Subscription 리소스도 제공합니다
  4. Google Workspace 구독을 테스트하여 Pub/Sub가 주제는 사용자가 구독한 이벤트를 수신합니다.
  5. 원하는 경우 앱의 엔드포인트로 이벤트를 푸시하는 방법을 구성하여 앱이 이벤트를 처리하고 필요한 경우 조치를 취할 수 있어야 합니다.

기본 요건

Apps Script

  • 이 가이드의 Google Cloud CLI 명령어를 사용하려면 다음 안내를 따르세요.
    1. Google Cloud CLI 설치
    2. 받는사람: gcloud CLI를 초기화하려면 다음 코드를 실행합니다.
    3.   gcloud init
        
  • Google Cloud 프로젝트 결제 사용 설정 Chat을 구독하려면 다음 요구사항을 충족해야 합니다. Cloud 프로젝트에서 Chat API를 사용 설정합니다. 앱 이름, 아바타 URL, 설명을 구성합니다. 있습니다. 자세한 내용은 Google Chat 앱을 빌드합니다.
  • 다음에 대해 구성된 OAuth 동의 화면을 사용한 사용자 인증이 필요합니다. 앱 동의 화면을 구성할 때 구독의 각 이벤트 유형을 지원해야 합니다 동의를 구성하려면 다음 단계를 따르세요. 필요한 범위를 식별하려면 범위를 선택합니다.
  • Apps Script 프로젝트:
    • 자동으로 생성된 기본 프로젝트 대신 Google Cloud 프로젝트를 사용합니다. Apps Script
    • OAuth 동의 화면을 구성하기 위해 추가한 모든 범위의 경우 Apps Script 프로젝트의 appsscript.json 파일에 대한 범위를 설정합니다. 예를 들면 다음과 같습니다.
    • "oauthScopes": [
        "https://www.googleapis.com/auth/chat.messages.readonly"
      ]
          
    • 사용 설정 Google Workspace Events 고급 서비스

Python

  • Python 3.6 이상
  • pip 패키지 관리 도구
  • Python용 최신 Google 클라이언트 라이브러리입니다. 설치하거나 업데이트하려면 다음을 실행합니다. 명령어를 실행하면 됩니다
      pip3 install --upgrade google-api-python-client google-auth-oauthlib
      
  • 이 가이드의 Google Cloud CLI 명령어를 사용하려면 다음 안내를 따르세요.
    1. Google Cloud CLI 설치
    2. 받는사람: gcloud CLI를 초기화하려면 다음 코드를 실행합니다.
    3.   gcloud init
        
  • Google Cloud 프로젝트 결제 사용 설정 Chat을 구독하려면 다음 요구사항을 충족해야 합니다. Cloud 프로젝트에서 Chat API를 사용 설정합니다. 앱 이름, 아바타 URL, 설명을 구성합니다. 있습니다. 자세한 내용은 Google Chat 앱을 빌드합니다.
  • 다음에 대해 구성된 OAuth 동의 화면을 사용한 사용자 인증이 필요합니다. 앱 동의 화면을 구성할 때 구독의 각 이벤트 유형을 지원해야 합니다 동의 구성 필요한 범위를 식별하려면 범위를 선택합니다.

환경 설정

다음 섹션에서는 Google Workspace 구독

Google Workspace Events API 및 Google Cloud Pub/Sub API 사용 설정

Google API를 사용하려면 먼저 Google Cloud 프로젝트에서 사용 설정해야 합니다. 단일 Google Cloud 프로젝트에서 하나 이상의 API를 사용 설정할 수 있습니다.

Google Cloud 콘솔

Google Cloud 콘솔에서 앱의 Google Cloud 프로젝트를 열고 Google Workspace Events API 및 Pub/Sub API:

API 사용 설정

gcloud

  1. 작업 디렉터리에서 Google 계정에 로그인합니다.

    gcloud auth login
    
  2. 프로젝트를 앱의 Cloud 프로젝트로 설정합니다.

    gcloud config set project PROJECT_ID
    

    PROJECT_ID를 앱의 Cloud 프로젝트에 대한 프로젝트 ID입니다.

  3. Google Workspace Events API 및 Google Cloud Pub/Sub 사용 설정 API:

    gcloud services enable pubsub.googleapis.com workspaceevents.googleapis.com
    

OAuth 클라이언트 ID 사용자 인증 정보 만들기

OAuth 클라이언트 ID를 만드는 방법에 대한 구체적인 안내를 보려면 애플리케이션 유형을 선택합니다.

웹 애플리케이션

  1. Google Cloud 콘솔에서 메뉴 > API 및 서비스 > 사용자 인증 정보로 이동합니다.

    사용자 인증 정보로 이동

  2. 사용자 인증 정보 만들기 > OAuth 클라이언트 ID를 클릭합니다.
  3. 애플리케이션 유형 > 웹 애플리케이션을 클릭합니다.
  4. 이름 필드에 사용자 인증 정보의 이름을 입력합니다. 이 이름은 Google Cloud 콘솔에만 표시됩니다.
  5. 앱과 관련된 승인된 URI를 추가합니다.
    • 클라이언트 측 앱 (JavaScript): 승인된 자바스크립트 원본에서 URI 추가를 클릭합니다. 그런 다음 브라우저 요청에 사용할 URI를 입력합니다. 애플리케이션에서 OAuth 2.0 서버로 API 요청을 보낼 수 있는 도메인을 식별합니다.
    • 서버 측 앱 (자바, Python 등): 승인된 리디렉션 URI에서 URI 추가를 클릭합니다. 그런 다음 OAuth 2.0 서버가 응답을 보낼 수 있는 엔드포인트 URI를 입력합니다.
  6. 만들기를 클릭합니다. OAuth 클라이언트 생성 화면이 표시되고 새 클라이언트 ID와 클라이언트 비밀번호가 표시됩니다.

    클라이언트 ID를 기록해 둡니다. 클라이언트 비밀번호는 웹 애플리케이션에 사용되지 않습니다.

  7. 확인을 클릭합니다. 새로 생성된 사용자 인증 정보가 OAuth 2.0 클라이언트 ID 아래에 표시됩니다.

Android

  1. Google Cloud 콘솔에서 메뉴 > API 및 서비스 > 사용자 인증 정보로 이동합니다.

    사용자 인증 정보로 이동

  2. 사용자 인증 정보 만들기 > OAuth 클라이언트 ID를 클릭합니다.
  3. 애플리케이션 유형 > Android를 클릭합니다.
  4. '이름' 필드에 사용자 인증 정보의 이름을 입력합니다. 이 이름은 Google Cloud 콘솔에만 표시됩니다.
  5. '패키지 이름' 필드에 AndroidManifest.xml 파일의 패키지 이름을 입력합니다.
  6. 'SHA-1 인증서 지문'에서 필드에 생성된 SHA-1 인증서 지문을 입력합니다.
  7. 만들기를 클릭합니다. OAuth 클라이언트 생성 화면이 나타나고 새 클라이언트 ID가 표시됩니다.
  8. 확인을 클릭합니다. 새로 생성된 사용자 인증 정보가 'OAuth 2.0 클라이언트 ID' 아래에 표시됩니다.

iOS

  1. Google Cloud 콘솔에서 메뉴 > API 및 서비스 > 사용자 인증 정보로 이동합니다.

    사용자 인증 정보로 이동

  2. 사용자 인증 정보 만들기 > OAuth 클라이언트 ID를 클릭합니다.
  3. 애플리케이션 유형 > iOS를 클릭합니다.
  4. '이름' 필드에 사용자 인증 정보의 이름을 입력합니다. 이 이름은 Google Cloud 콘솔에만 표시됩니다.
  5. 'Bundle ID'(번들 ID)에서 필드에 앱의 Info.plist 파일에 나열된 대로 번들 식별자를 입력합니다.
  6. 선택사항: 앱이 Apple App Store에 표시되면 App Store ID를 입력합니다.
  7. 선택사항: '팀 ID' 입력란에 Apple에서 생성하여 팀에 할당한 고유한 10자 문자열을 입력합니다.
  8. 만들기를 클릭합니다. OAuth 클라이언트 생성 화면이 표시되고 새 클라이언트 ID와 클라이언트 비밀번호가 표시됩니다.
  9. 확인을 클릭합니다. 새로 생성된 사용자 인증 정보가 'OAuth 2.0 클라이언트 ID' 아래에 표시됩니다.

Chrome 앱

  1. Google Cloud 콘솔에서 메뉴 > API 및 서비스 > 사용자 인증 정보로 이동합니다.

    사용자 인증 정보로 이동

  2. 사용자 인증 정보 만들기 > OAuth 클라이언트 ID를 클릭합니다.
  3. 애플리케이션 유형 > Chrome 앱을 클릭합니다.
  4. '이름' 필드에 사용자 인증 정보의 이름을 입력합니다. 이 이름은 Google Cloud 콘솔에만 표시됩니다.
  5. '애플리케이션 ID' 필드에 앱의 고유한 32자 ID 문자열을 입력합니다. 이 ID 값은 앱의 Chrome 웹 스토어 URL 및 Chrome 웹 스토어 개발자 대시보드에서 확인할 수 있습니다.
  6. 만들기를 클릭합니다. OAuth 클라이언트 생성 화면이 표시되고 새 클라이언트 ID와 클라이언트 비밀번호가 표시됩니다.
  7. 확인을 클릭합니다. 새로 생성된 사용자 인증 정보가 'OAuth 2.0 클라이언트 ID' 아래에 표시됩니다.

데스크톱 앱

  1. Google Cloud 콘솔에서 메뉴 > API 및 서비스 > 사용자 인증 정보로 이동합니다.

    사용자 인증 정보로 이동

  2. 사용자 인증 정보 만들기 > OAuth 클라이언트 ID를 클릭합니다.
  3. 애플리케이션 유형 > 데스크톱 앱을 클릭합니다.
  4. 이름 필드에 사용자 인증 정보의 이름을 입력합니다. 이 이름은 Google Cloud 콘솔에만 표시됩니다.
  5. 만들기를 클릭합니다. OAuth 클라이언트 생성 화면이 표시되고 새 클라이언트 ID와 클라이언트 비밀번호가 표시됩니다.
  6. 확인을 클릭합니다. 새로 생성된 사용자 인증 정보가 OAuth 2.0 클라이언트 ID 아래에 표시됩니다.

TV 및 제한된 입력 기기

  1. Google Cloud 콘솔에서 메뉴 > API 및 서비스 > 사용자 인증 정보로 이동합니다.

    사용자 인증 정보로 이동

  2. 사용자 인증 정보 만들기 > OAuth 클라이언트 ID를 클릭합니다.
  3. 애플리케이션 유형 > TV 및 제한된 입력 장치.
  4. '이름' 필드에 사용자 인증 정보의 이름을 입력합니다. 이 이름은 Google Cloud 콘솔에만 표시됩니다.
  5. 만들기를 클릭합니다. OAuth 클라이언트 생성 화면이 표시되고 새 클라이언트 ID와 클라이언트 비밀번호가 표시됩니다.
  6. 확인을 클릭합니다. 새로 생성된 사용자 인증 정보가 'OAuth 2.0 클라이언트 ID' 아래에 표시됩니다.

Universal Windows Platform(UWP)

  1. Google Cloud 콘솔에서 메뉴 > API 및 서비스 > 사용자 인증 정보로 이동합니다.

    사용자 인증 정보로 이동

  2. 사용자 인증 정보 만들기 > OAuth 클라이언트 ID를 클릭합니다.
  3. 애플리케이션 유형 > 범용 Windows 플랫폼 (UWP)을 클릭합니다.
  4. '이름' 필드에 사용자 인증 정보의 이름을 입력합니다. 이 이름은 Google Cloud 콘솔에만 표시됩니다.
  5. 'Store ID'에서 입력란에 앱의 고유한 12자리 Microsoft Store ID 값을 입력합니다. 이 ID는 앱의 Microsoft Store URL 및 파트너 센터에서 확인할 수 있습니다.
  6. 만들기를 클릭합니다. OAuth 클라이언트 생성 화면이 표시되고 새 클라이언트 ID와 클라이언트 비밀번호가 표시됩니다.
  7. 확인을 클릭합니다. 새로 생성된 사용자 인증 정보가 'OAuth 2.0 클라이언트 ID' 아래에 표시됩니다.

클라이언트 보안 비밀번호 JSON 파일 다운로드

클라이언트 보안 비밀번호 파일은 OAuth 클라이언트 ID의 JSON 표현입니다. 사용자 인증 정보를 제공할 때 앱에서 참조할 수 있는 사용자 인증 정보를 제공합니다.

  1. Google Cloud 콘솔에서 메뉴 로 이동합니다. > API 및 서비스 > 사용자 인증 정보를 선택합니다.

    사용자 인증 정보로 이동

  2. OAuth 2.0 클라이언트 ID 아래에서 만든 클라이언트 ID를 클릭합니다.

  3. JSON 다운로드를 클릭합니다.

  4. 파일을 client_secrets.json로 저장합니다.

Pub/Sub 주제 만들기 및 구독

이 섹션에서는 Pub/Sub 주제 및 구독을 만듭니다. 주제를 자세히 살펴보겠습니다. Pub/Sub 주제는 Google Workspace 구독이 수신되는 알림 엔드포인트 이벤트를 수신합니다.

Pub/Sub 주제 생성 및 관리에 대한 자세한 내용은 다음을 참조하세요. Pub/Sub는 문서 에서 자세한 내용을 확인하실 수 있습니다.

Pub/Sub 주제를 만들고 구독하려면 다음 안내를 따르세요.

Google Cloud 콘솔

  1. Google Cloud 콘솔에서 Pub/Sub 페이지로 이동합니다.

    Google Cloud Pub/Sub로 이동

    앱의 Cloud 프로젝트가 선택되어 있는지 확인합니다.

  2. 주제 만들기를 클릭합니다. 다음을 수행하세요.

    1. 주제의 이름을 입력합니다(예: workspace-events-topic).
    2. 기본 구독 추가를 선택된 상태로 둡니다. Pub/Sub는 주제 이름과 유사한 기본 구독(예: workspace-events-topic-sub
    3. 선택사항: 추가 속성 업데이트 또는 구성 확인할 수 있습니다
  3. 만들기를 클릭합니다. 전체 주제 이름의 형식은 다음과 같습니다. projects/PROJECT_ID/topics/TOPIC_ID 이후 단계에서 이 전체 이름을 사용합니다.

  4. 주제에 Pub/Sub 메시지를 게시할 액세스 권한을 부여합니다.

    1. 주제 페이지에서 측면 패널로 이동하여 권한
    2. 주 구성원 추가를 클릭합니다.
    3. 주 구성원 추가 필드에서 Google Workspace 애플리케이션이 구독:
      1. Chat 이벤트의 경우 chat-api-push@system.gserviceaccount.com
      2. Meet 이벤트의 경우 meet-api-event-push@system.gserviceaccount.com
    4. 역할 할당 메뉴에서 Pub/Sub Publisher를 선택합니다.
    5. 저장을 클릭합니다. 권한을 업데이트하는 데 몇 분 정도 걸릴 수 있습니다. 확인할 수 있습니다

gcloud

  1. Cloud 프로젝트에서 다음을 실행하여 주제를 만듭니다. 명령어:

    gcloud pubsub topics create TOPIC_ID
    

    TOPIC_ID를 주제의 고유 ID로 바꿉니다. workspace-events-topic 형식으로 전송합니다.

    출력에는 projects/PROJECT_ID/topics/TOPIC_ID 이름을 기록하고 PROJECT_ID는 Cloud 프로젝트 ID입니다. 할 수 있습니다. 다음 단계에서 주제 이름을 사용하여 Google Workspace 구독은 나중에 다시 변경할 수 있습니다

  2. 주제에 메시지를 게시할 액세스 권한을 부여합니다.

    gcloud pubsub topics add-iam-policy-binding TOPIC_NAME --member='serviceAccount:GOOGLE_WORKSPACE_APPLICATION' --role='roles/pubsub.publisher'
    

    다음을 바꿉니다.

    • TOPIC_NAME: 전체 주제 이름으로, 출력됩니다. 형식: projects/PROJECT_ID/topics/TOPIC_ID
    • GOOGLE_WORKSPACE_APPLICATION: 이벤트를 전송해야 하는 Google Workspace 애플리케이션 구독:

      • Chat에서 이벤트를 수신하려면 다음을 사용하세요. chat-api-push@system.gserviceaccount.com
      • Meet에서 일정을 수신하려면 다음을 사용하세요. meet-api-event-push@system.gserviceaccount.com

    주제에 대한 권한을 업데이트하는 데 몇 분 정도 걸릴 수 있습니다.

  3. 주제의 Pub/Sub 구독을 만듭니다.

     gcloud pubsub subscriptions create SUBSCRIPTION_NAME --topic=TOPIC_NAME
    

    다음을 바꿉니다.

    • SUBSCRIPTION_NAME: 구독의 이름입니다. (예: workspace-events-subscription)
    • TOPIC_NAME: 내가 만든 주제의 이름입니다. 이전 단계에서 설명하겠습니다.

Google Workspace 리소스 구독

이 섹션에서는 정의할 수 있습니다

대상 리소스 선택 및 식별

Google Workspace 구독에서 대상 리소스란 사용자가 이벤트를 모니터링하는 Google Workspace 리소스입니다. 대상 리소스는 구독의 targetResource 필드에 표시되며, 형식은 전체 리소스 이름을 지정합니다 예를 들어 구독 서비스를 모니터링하는 구독의 경우 Google Chat 스페이스 (spaces/AAAABBBBBBB)의 targetResource 값은 다음과 같습니다. //chat.googleapis.com/spaces/AAAABBBBBBB입니다.

구독을 만들기 전에 다음 섹션을 사용하여 다음 방법을 알아보세요. 대상 리소스를 식별하고 형식을 지정합니다

Chat을 위한 대상 리소스 파악하기

대상 리소스 방식 제한사항
공백

//chat.googleapis.com/spaces/SPACE

여기서 SPACE Chat API space 리소스의 리소스 이름입니다. ID는 스페이스의 URL에서 가져오거나 spaces.list() 메서드를 사용하여 지도 가장자리에 패딩을 추가할 수 있습니다.

구독을 승인하는 Chat 사용자는 Google Workspace 또는 Google 계정.
사용자의 모든 스페이스

//chat.googleapis.com/spaces/-

구독은 사용자가 있는 스페이스의 이벤트만 수신합니다. Google Workspace 또는 Google 계정을 통한 회원의 액세스 권한
사용자

//cloudidentity.googleapis.com/users/USER

여기서 USER Chat API user 리소스의 리소스 이름입니다. 자세한 내용은 식별 및 설정 Google Chat 사용자

구독은 사용자가 보내는 이벤트만 수신합니다. 정기 결제를 승인했습니다. 사용자가 구독을 승인할 수 없습니다. 할 수 있습니다.

Meet의 대상 리소스 파악하기

대상 리소스 방식 제한사항 (해당하는 경우)
회의 공간 //meet.googleapis.com/spaces/SPACE

여기서 SPACE Meet REST API space 리소스의 리소스 이름입니다. 자세한 내용은 방법 Meet에서 회의 공간을 식별합니다.

사용자 //cloudidentity.googleapis.com/users/USER

여기서 USER Meet REST API participant 리소스의 signedinUser.user 필드입니다. 자세한 내용은 참여자와 작업하기

구독은 사용자는 다음 중 하나입니다.

  • 회의 공간 소유자
  • 주최자 캘린더 일정입니다.

Google Workspace 구독 만들기

구독을 만들려면 Google Workspace Events API의 subscriptions.create() 메서드를 사용하여 Subscription 리소스도 제공합니다 다음 필드를 지정합니다.

  • targetResource: 전체 리소스 이름을 사용하여 형식이 지정된 이전 섹션
  • eventTypes: 수신하려는 하나 이상의 이벤트 유형의 배열 리소스입니다 예를 들어 앱이 새 메시지에 대해서만 알면 되는 경우 Chat 스페이스에 게시한 경우 앱에서 이벤트를 구독하기만 하면 생성된 메시지 정보
  • notificationEndpoint: 알림 엔드포인트 Google Workspace 구독은 이벤트를 제공합니다. 사용자는 이전 섹션에서 만든 Pub/Sub 주제입니다.
  • payloadOptions: 포함할 리소스 데이터 양을 지정하는 옵션 이벤트 페이로드를 호출합니다. 이 구성은 구독하세요. 자세한 내용은 이벤트 데이터)를 참조하세요.

Google Workspace 구독을 만들려면 다음 안내를 따르세요.

Apps Script

  1. Apps Script 프로젝트에서 새 스크립트 파일을 만듭니다. 이름이 createSubscription이고 다음 코드를 추가합니다.

    function createSubscription() {
      // The Google Workspace resource to monitor for events.
      const targetResource = 'TARGET_RESOURCE';
    
      // The types of events to receive.
      const eventTypes = [EVENT_TYPES];
    
      // The endpoint to deliver events to, such as a Google Cloud Pub/Sub topic.
      const pubsubTopic = 'TOPIC_NAME';
    
      // Whether to include resource data or not.
      const resourceData = RESOURCE_DATA;
    
      // Call the Workspace Events API using the advanced service.
      const response = WorkspaceEvents.Subscriptions.create({
        targetResource: targetResource,
        eventTypes: eventTypes,
        notificationEndpoint: {
          pubsubTopic: pubsubTopic,
        },
        payloadOptions: {
          includeResource: resourceData
        }
      });
      console.log(response);
    }
    

    다음을 바꿉니다.

    • TARGET_RESOURCE: Google Workspace 리소스 전체 리소스 이름으로 형식이 지정된 전체 리소스 이름입니다. 대상 예를 들어 스페이스 ID로 Google Chat 스페이스를 구독하는 방법은 다음과 같습니다. AAAABBBB, //chat.googleapis.com/spaces/AAAABBBB 사용
    • EVENT_TYPES: 하나 이상의 이벤트 유형 대상 리소스에서 구독하려는 리소스를 생성합니다 형식 'google.workspace.chat.message.v1.created'와 같은 문자열 배열입니다.
    • TOPIC_NAME: 현재 실행 중인 Pub/Sub 주제의 전체 이름입니다. 볼 수 있습니다 형식: projects/PROJECT_ID/topics/TOPIC_ID
    • RESOURCE_DATA: 구독에는 페이로드에 리소스 데이터가 포함됩니다.

      • True: 모든 리소스 데이터를 포함합니다. 어떤 필드를 포함되어 있으면 fieldMask 필드를 만들고 변경된 리소스에 대해 하나 이상의 필드를 지정해야 합니다. 단 다음을 포함한 Chat 리소스 지원 구독 리소스 데이터입니다.
      • False: 리소스 데이터를 제외합니다.
  2. Google Workspace 구독을 만들려면 함수를 실행하세요. Apps Script 프로젝트의 createSubscription.

Python

  1. 작업 디렉터리에 create_subscription.py라는 파일을 만듭니다. 그리고 다음 코드를 추가합니다.

    """Create subscription."""
    
    from google_auth_oauthlib.flow import InstalledAppFlow
    from googleapiclient.discovery import build
    
    # Specify required scopes.
    SCOPES = [SCOPES]
    
    # Authenticate with Google Workspace and get user authentication.
    flow = InstalledAppFlow.from_client_secrets_file('client_secrets.json', SCOPES)
    CREDENTIALS = flow.run_local_server()
    
    # The Google Workspace resource to monitor for events.
    TARGET_RESOURCE = 'TARGET_RESOURCE'
    
    # The types of events to receive.
    EVENT_TYPES = [EVENT_TYPES]
    
    # The endpoint to deliver events to, such as a Google Cloud Pub/Sub topic.
    TOPIC = 'TOPIC_NAME'
    
    # Call the Workspace Events API using the service endpoint.
    service = build(
        'workspaceevents',
        'v1',
        credentials=CREDENTIALS,
    )
    
    BODY = {
        'target_resource': TARGET_RESOURCE,
        'event_types': EVENT_TYPES,
        'notification_endpoint': {'pubsub_topic': TOPIC},
        'payload_options': {'include_resource': RESOURCE_DATA},
    }
    response = service.subscriptions().create(body=BODY).execute()
    print(response)
    

    다음을 바꿉니다.

    • SCOPES: 각 이벤트 유형을 지원하는 하나 이상의 OAuth 범위 구독의 역할을 합니다 문자열 배열로 형식이 지정됩니다. 여러 범위를 나열하려면 쉼표로 구분합니다. 'https://www.googleapis.com/auth/chat.spaces.readonly', 'https://www.googleapis.com/auth/chat.memberships.readonly'를 예로 들 수 있습니다.
    • TARGET_RESOURCE: Google Workspace 리소스 전체 리소스 이름으로 형식이 지정된 전체 리소스 이름입니다. 대상 예를 들어 스페이스 ID로 Google Chat 스페이스를 구독하는 방법은 다음과 같습니다. AAAABBBB, //chat.googleapis.com/spaces/AAAABBBB 사용
    • EVENT_TYPES: 하나 이상의 이벤트 유형 대상 리소스에서 구독하려는 리소스를 생성합니다 형식 'google.workspace.chat.message.v1.created'와 같은 문자열 배열입니다.
    • TOPIC_NAME: 현재 실행 중인 Pub/Sub 주제의 전체 이름입니다. 볼 수 있습니다 형식: projects/PROJECT_ID/topics/TOPIC_ID
    • RESOURCE_DATA: 구독에는 페이로드에 리소스 데이터가 포함됩니다.

      • True: 모든 리소스 데이터를 포함합니다. 어떤 필드를 포함되어 있으면 fieldMask 필드를 하나 이상 지정하고 변경된 리소스에 대해 하나 이상의 필드를 지정해야 합니다. 단 다음을 포함한 Chat 리소스 지원 구독 리소스 데이터입니다.
      • False: 리소스 데이터를 제외합니다.
  2. Google Workspace 구독을 만들려면 다음 명령어를 실행합니다. 터미널:

    python3 create_subscription.py
    

Google Workspace Events API는 완료된 장기 실행 시간 연산에 포함되어야 합니다. 생성한 Subscription 리소스의 인스턴스입니다.

Google Workspace 구독 테스트하기

Google Workspace 이벤트가 수신되는지 테스트하려면 이벤트를 가져오고 메시지를 Pub/Sub 구독으로 가져옵니다.

Google Workspace 구독을 테스트하려면 다음 안내를 따르세요.

Google Cloud 콘솔

  1. 캠페인의 타겟 리소스에서 하나 이상의 이벤트 유형을 트리거하세요. Google Workspace 구독 예를 들어 메시지를 게시하고 스페이스에 메시지를 게시하세요.

  2. Google Cloud 콘솔에서 Pub/Sub 페이지로 이동합니다.

    Pub/Sub로 이동

    앱의 Cloud 프로젝트가 선택되어 있는지 확인합니다.

  3. Pub/Sub 메뉴에서 구독을 클릭합니다.

  4. 표에서 주제에 대한 Pub/Sub 구독을 찾아 클릭합니다. 구독 이름을 지정합니다

  5. 메시지 탭을 클릭합니다.

  6. 가져오기를 클릭합니다. 이벤트에서 Pub/Sub 메시지

gcloud

  1. 캠페인의 타겟 리소스에서 하나 이상의 이벤트 유형을 트리거하세요. Google Workspace 구독 예를 들어, 메시지를 게시하고 스페이스에 메시지를 게시하세요.

  2. 다음 명령어를 실행합니다.

    gcloud pubsub subscriptions pull PUBSUB_SUBSCRIPTION_NAME --format=json --limit=MESSAGE_COUNT --auto-ack
    

    다음을 바꿉니다.

    • PUBSUB_SUBSCRIPTION_NAME: 다음 형식으로 된 Pub/Sub 구독 projects/SUBSCRIPTION_ID/subscriptions/SUBSCRIPTION_ID입니다.
    • MESSAGE_COUNT: 가져올 최대 Pub/Sub 메시지 수입니다.

    이벤트에서 Pub/Sub를 생성하는 데 최대 몇 분이 걸릴 수 있습니다. 메시지가 표시됩니다.

트리거한 각 Google Workspace 이벤트에 대해 메시지가 표시됩니다. 이벤트가 포함된 Pub/Sub 구독에 전달됩니다. 자세한 내용은 이벤트를 Google Cloud Pub/Sub 메시지로 수신

앱의 이벤트 수신 방법 구성

생성한 Pub/Sub 구독은 가져오기 기반입니다. 테스트 완료 후 전송 유형을 업데이트하는 경우 앱에서 이벤트를 수신합니다. 예를 들어 Pub/Sub를 구성하여 푸시 전달 유형으로 설정하여 앱에서 이벤트를 수신할 수 있도록 함 앱 엔드포인트에 직접 연결할 수 있습니다

Pub/Sub 구독을 구성하는 방법에 대한 자세한 내용은 Pub/Sub 구독을 참조하세요. 문서를 참조하세요.